From d14ae374a40a367c7e840d14d863ef2cd322f311 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Thu, 9 Jul 2015 14:26:07 +0200 Subject: [PATCH] Big refresh --- .bowerrc | 3 + .gitignore | 2 + README.md | 52 +- bower.json | 21 + css/dropkick.css | 201 - css/enhancementpager.css | 124 - css/index.css | 188 +- css/jquery-ui-1.8.16.custom.css | 409 -- css/min.css | 11 - css/slick-default-theme.css | 118 - css/slick.grid.css | 157 - images/actions.gif | Bin 170 -> 0 bytes images/ajax-loader-small.gif | Bin 1849 -> 0 bytes images/ajax-loader.gif | Bin 1849 -> 0 bytes images/arrow_redo.png | Bin 572 -> 0 bytes images/arrow_refresh.png | Bin 685 -> 0 bytes images/arrow_right_peppermint.png | Bin 128 -> 0 bytes images/arrow_right_spearmint.png | Bin 128 -> 0 bytes images/arrow_undo.png | Bin 578 -> 0 bytes images/bullet_blue.png | Bin 241 -> 0 bytes images/bullet_star.png | Bin 279 -> 0 bytes images/bullet_toggle_minus.png | Bin 154 -> 0 bytes images/bullet_toggle_plus.png | Bin 156 -> 0 bytes images/calendar.gif | Bin 1035 -> 0 bytes images/collapse.gif | Bin 846 -> 0 bytes images/comment_yellow.gif | Bin 257 -> 0 bytes images/dk_arrows.png | Bin 983 -> 0 bytes images/dk_arrows_white.png | Bin 960 -> 0 bytes images/down.gif | Bin 59 -> 0 bytes images/drag-handle.png | Bin 1130 -> 0 bytes images/drop.png | Bin 766 -> 0 bytes images/editor-helper-bg.gif | Bin 1164 -> 0 bytes images/expand.gif | Bin 851 -> 0 bytes images/header-bg.gif | Bin 872 -> 0 bytes images/header-columns-bg.gif | Bin 836 -> 0 bytes images/header-columns-over-bg.gif | Bin 823 -> 0 bytes images/help.png | Bin 345 -> 0 bytes images/info.gif | Bin 80 -> 0 bytes images/lightbulb.png | Bin 303 -> 0 bytes images/listview.gif | Bin 2380 -> 0 bytes images/pageminus.png | Bin 242 -> 0 bytes images/pageplus.png | Bin 224 -> 0 bytes images/pencil.gif | Bin 914 -> 0 bytes images/resultset_first.png | Bin 522 -> 0 bytes images/resultset_last.png | Bin 524 -> 0 bytes images/resultset_next.png | Bin 395 -> 0 bytes images/resultset_previous.png | Bin 389 -> 0 bytes images/row-over-bg.gif | Bin 823 -> 0 bytes images/screen_adminvpn.png | Bin 67536 -> 0 bytes images/sort-asc.gif | Bin 830 -> 0 bytes images/sort-asc.png | Bin 105 -> 0 bytes images/sort-desc.gif | Bin 833 -> 0 bytes images/sort-desc.png | Bin 107 -> 0 bytes images/spacer.png | Bin 209 -> 0 bytes images/stripes.png | Bin 1125 -> 0 bytes images/tag_red.png | Bin 537 -> 0 bytes images/tick.png | Bin 484 -> 0 bytes images/ui-bg_flat_0_aaaaaa_40x100.png | Bin 180 -> 0 bytes images/ui-bg_flat_75_ffffff_40x100.png | Bin 178 -> 0 bytes images/ui-bg_glass_55_fbf9ee_1x400.png | Bin 120 -> 0 bytes images/ui-bg_glass_65_ffffff_1x400.png | Bin 105 -> 0 bytes images/ui-bg_glass_75_dadada_1x400.png | Bin 111 -> 0 bytes images/ui-bg_glass_75_e6e6e6_1x400.png | Bin 110 -> 0 bytes images/ui-bg_glass_95_fef1ec_1x400.png | Bin 119 -> 0 bytes .../ui-bg_highlight-soft_75_cccccc_1x100.png | Bin 101 -> 0 bytes images/ui-icons_222222_256x240.png | Bin 4369 -> 0 bytes images/ui-icons_2e83ff_256x240.png | Bin 4369 -> 0 bytes images/ui-icons_454545_256x240.png | Bin 4369 -> 0 bytes images/ui-icons_888888_256x240.png | Bin 4369 -> 0 bytes images/ui-icons_cd0a0a_256x240.png | Bin 4369 -> 0 bytes images/user_identity.gif | Bin 905 -> 0 bytes images/user_identity_plus.gif | Bin 546 -> 0 bytes include/ajax.php | 181 - include/config.php | 7 + include/config.php.example | 7 - include/{connexion_bdd.php => connect.php} | 2 +- include/functions.php | 37 + include/grids.php | 205 + include/html/form/configuration.php | 35 + include/html/form/installation.php | 36 + include/html/form/login.php | 27 + include/html/grids.php | 41 + include/html/menu.php | 12 + index.php | 282 +- install.sh | 200 + .../client-conf}/gnu-linux/client.conf | 6 +- .../client-conf}/gnu-linux/update-resolv.sh | 0 .../client-conf}/windows/client.conf | 6 +- .../scripts/config.sh | 2 +- .../scripts/connect.sh | 2 +- .../scripts/disconnect.sh | 2 +- .../serveur => installation}/scripts/login.sh | 2 +- installation/server.conf | 90 + js/grids.js | 365 ++ js/index.js | 366 -- js/jquery-1.7.min.js | 4 - js/jquery-ui-1.8.16.custom.min.js | 611 --- js/jquery.dropkick-1.0.0.js | 402 -- js/jquery.event.drag-2.2.js | 402 -- js/jquery.json-2.3.min.js | 23 - js/min.js | 644 ---- js/sha1-min.js | 9 - js/slick.core.js | 467 --- js/slick.editors.js | 513 --- js/slick.enhancementpager.js | 264 -- js/slick.formatters.js | 59 - js/slick.grid.js | 3422 ----------------- openvpn-conf/serveur/serveur.conf | 84 - sql/import.sql | 2 +- 109 files changed, 1333 insertions(+), 8772 deletions(-) create mode 100644 .bowerrc create mode 100644 .gitignore create mode 100644 bower.json delete mode 100644 css/dropkick.css delete mode 100644 css/enhancementpager.css delete mode 100644 css/jquery-ui-1.8.16.custom.css delete mode 100644 css/min.css delete mode 100644 css/slick-default-theme.css delete mode 100644 css/slick.grid.css delete mode 100644 images/actions.gif delete mode 100644 images/ajax-loader-small.gif delete mode 100644 images/ajax-loader.gif delete mode 100644 images/arrow_redo.png delete mode 100644 images/arrow_refresh.png delete mode 100644 images/arrow_right_peppermint.png delete mode 100644 images/arrow_right_spearmint.png delete mode 100644 images/arrow_undo.png delete mode 100644 images/bullet_blue.png delete mode 100644 images/bullet_star.png delete mode 100644 images/bullet_toggle_minus.png delete mode 100644 images/bullet_toggle_plus.png delete mode 100644 images/calendar.gif delete mode 100644 images/collapse.gif delete mode 100644 images/comment_yellow.gif delete mode 100644 images/dk_arrows.png delete mode 100644 images/dk_arrows_white.png delete mode 100644 images/down.gif delete mode 100644 images/drag-handle.png delete mode 100644 images/drop.png delete mode 100644 images/editor-helper-bg.gif delete mode 100644 images/expand.gif delete mode 100644 images/header-bg.gif delete mode 100644 images/header-columns-bg.gif delete mode 100644 images/header-columns-over-bg.gif delete mode 100644 images/help.png delete mode 100644 images/info.gif delete mode 100644 images/lightbulb.png delete mode 100644 images/listview.gif delete mode 100644 images/pageminus.png delete mode 100644 images/pageplus.png delete mode 100644 images/pencil.gif delete mode 100644 images/resultset_first.png delete mode 100644 images/resultset_last.png delete mode 100644 images/resultset_next.png delete mode 100644 images/resultset_previous.png delete mode 100644 images/row-over-bg.gif delete mode 100644 images/screen_adminvpn.png delete mode 100644 images/sort-asc.gif delete mode 100644 images/sort-asc.png delete mode 100644 images/sort-desc.gif delete mode 100644 images/sort-desc.png delete mode 100644 images/spacer.png delete mode 100644 images/stripes.png delete mode 100644 images/tag_red.png delete mode 100644 images/tick.png delete mode 100644 images/ui-bg_flat_0_aaaaaa_40x100.png delete mode 100644 images/ui-bg_flat_75_ffffff_40x100.png delete mode 100644 images/ui-bg_glass_55_fbf9ee_1x400.png delete mode 100644 images/ui-bg_glass_65_ffffff_1x400.png delete mode 100644 images/ui-bg_glass_75_dadada_1x400.png delete mode 100644 images/ui-bg_glass_75_e6e6e6_1x400.png delete mode 100644 images/ui-bg_glass_95_fef1ec_1x400.png delete mode 100644 images/ui-bg_highlight-soft_75_cccccc_1x100.png delete mode 100644 images/ui-icons_222222_256x240.png delete mode 100644 images/ui-icons_2e83ff_256x240.png delete mode 100644 images/ui-icons_454545_256x240.png delete mode 100644 images/ui-icons_888888_256x240.png delete mode 100644 images/ui-icons_cd0a0a_256x240.png delete mode 100644 images/user_identity.gif delete mode 100644 images/user_identity_plus.gif delete mode 100644 include/ajax.php create mode 100644 include/config.php delete mode 100644 include/config.php.example rename include/{connexion_bdd.php => connect.php} (55%) create mode 100644 include/functions.php create mode 100644 include/grids.php create mode 100644 include/html/form/configuration.php create mode 100644 include/html/form/installation.php create mode 100644 include/html/form/login.php create mode 100644 include/html/grids.php create mode 100644 include/html/menu.php create mode 100755 install.sh rename {openvpn-conf/client => installation/client-conf}/gnu-linux/client.conf (90%) rename {openvpn-conf/client => installation/client-conf}/gnu-linux/update-resolv.sh (100%) rename {openvpn-conf/client => installation/client-conf}/windows/client.conf (88%) rename {openvpn-conf/serveur => installation}/scripts/config.sh (94%) rename {openvpn-conf/serveur => installation}/scripts/connect.sh (93%) rename {openvpn-conf/serveur => installation}/scripts/disconnect.sh (96%) rename {openvpn-conf/serveur => installation}/scripts/login.sh (94%) create mode 100644 installation/server.conf create mode 100644 js/grids.js delete mode 100644 js/index.js delete mode 100644 js/jquery-1.7.min.js delete mode 100644 js/jquery-ui-1.8.16.custom.min.js delete mode 100644 js/jquery.dropkick-1.0.0.js delete mode 100644 js/jquery.event.drag-2.2.js delete mode 100644 js/jquery.json-2.3.min.js delete mode 100644 js/min.js delete mode 100644 js/sha1-min.js delete mode 100644 js/slick.core.js delete mode 100644 js/slick.editors.js delete mode 100644 js/slick.enhancementpager.js delete mode 100644 js/slick.formatters.js delete mode 100644 js/slick.grid.js delete mode 100644 openvpn-conf/serveur/serveur.conf diff --git a/.bowerrc b/.bowerrc new file mode 100644 index 0000000..6866ac2 --- /dev/null +++ b/.bowerrc @@ -0,0 +1,3 @@ +{ + "directory": "vendor" +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..a88b536 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +vendor/ +*.komodoproject diff --git a/README.md b/README.md index 3ec034c..900aff4 100644 --- a/README.md +++ b/README.md @@ -1,27 +1,47 @@ # OpenVPN Admin -## Résumé -Administrer son OpenVPN via une interface web (visualisation des logs, modifications des utilisateurs pouvant se connecter...) selon un VPN configuré pour fonctionner avec SQL ([cf article de blog](http://blog.sandrocazzaniga.fr/?p=808)). +## Summary +Administrate its OpenVPN with a web interface (logs visualisations, users managing...) and a SQL database. -![Prévisualisation](/images/screen_adminvpn.png "Prévisualisation de l'interface web") +![Previsualisation](http://lutim.cpy.re/wRzijuCg) -Les configurations ainsi que les scripts d'OpenVPN adaptés à cette interface sont présents dans le dossier openvpn-conf. +## Prerequisite + * GNU/Linux with Bash and root access + * Fresh install of OpenVPN + * Web server (NGinx, Apache...) + * MySQL + * PHP >= 5.5 with modules: + * zip + * pdo_mysql + +## Tests -## Prérequis -Serveur Web (NGinx, Apache...), PHP, SQL (MySQL, Postgre...). +Only tested on Debian Jessie. Feel free to open issues. ## Installation -* Importer les bases SQL via le fichier sql/import.sql -* Supprimer le dossier sql -* Ajouter un administrateur en spécifiant un nom et un mot de passe (hashé avec sha1) - INSERT INTO admin (admin_id, admin_pass) VALUES ("superadmin", SHA1('monmdp')); + * Setup OpenVPN and the web application: -* Copier le fichier include/config.php.example vers include/config.php -* Modifier le fichier config.php en rentrant les identifiants de votre BDD -* Vous pouvez utiliser le dossier openvpn-conf, mais en production le site ne doit pas contenir ce dossier (supprimez le ou déplacez le) + cd ~/my_coding_workspace + git clone https://github.com/Chocobozzz/OpenVPN-Admin openvpn-admin + cd openvpn-admin + ./install.sh www_base_dir web_user web_group -## Notes -Utilisation du projet [SlickGrid](https://github.com/mleibman/SlickGrid) ainsi que de [SlickGridEnhancementPager](https://github.com/kingleema/SlickGridEnhancementPager) pour la pagination. -Utilisation des scripts de [pajhome](http://pajhome.org.uk/crypt/md5/index.html) pour l'algorithme sha1 en JavaScript. + * Setup the web server (Apache, NGinx...) to serve the web application. + * Create the admin of the web application by visiting http://your-installation/index.php?installation + +## Usage + + * Start OpenVPN on the server (for example `systemctl start openvpn@server`) + * Connect to the web application as an admin + * Create an user + * User get the configurations files via the web application + * User run OpenVPN (for example `systemctl start openvpn@client`) + +## Use of + + * [Bootstrap](https://github.com/twbs/bootstrap) + * [SlickGrid](https://github.com/mleibman/SlickGrid) + * [SlickGridEnhancementPager](https://github.com/kingleema/SlickGridEnhancementPager) ([forked](https://github.com/Chocobozzz/SlickGridEnhancementPager/)) + * [js-sha1](https://github.com/emn178/js-sha1) diff --git a/bower.json b/bower.json new file mode 100644 index 0000000..d3daee4 --- /dev/null +++ b/bower.json @@ -0,0 +1,21 @@ +{ + "name": "openvpn-admin", + "version": "0.0.1", + "description": "Setup and administration of openvpn with a web interface", + "dependencies": { + "bootstrap": "^3.3.5", + "slickgrid": "git://github.com/mleibman/SlickGrid.git#master", + "js-sha1": "^0.3.0", + "slickgrid-enhancement-pager": "git://github.com/Chocobozzz/SlickGridEnhancementPager#master" + }, + "keywords": [ + "openvpn", + "admin", + "setup" + ], + "authors": [ + "Florian Bigard " + ], + "license": "GPLv3", + "private": true +} \ No newline at end of file diff --git a/css/dropkick.css b/css/dropkick.css deleted file mode 100644 index 8f33fa1..0000000 --- a/css/dropkick.css +++ /dev/null @@ -1,201 +0,0 @@ -/** - * Default DropKick theme - * - * Feel free to edit the default theme - * or even add your own. - * - * See the readme for themeing help - * - */ - -/***** Begin Theme, feel free to edit in here! ******/ - -/* One container to bind them... */ -.dk_container { - background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f5f5f5)); - background: -moz-linear-gradient(top, #fff, #f5f5f5); - background: -o-linear-gradient(top, #fff, #f5f5f5); - background-color: #f5f5f5; - font-family: 'Helvetica', Arial, sans-serif; - font-size: 12px; - font-weight: bold; - line-height: 14px; - border-radius: 5px; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; -} - .dk_container:focus { - outline: 0; - } - .dk_container a { - cursor: pointer; - text-decoration: none; - } - -/* Opens the dropdown and holds the menu label */ -.dk_toggle { - /** - * Help: Arrow image not appearing - * Try updating this property to your correct dk_arrows.png path - */ - background-image: url('../images/dk_arrows.png'); - background-repeat: no-repeat; - background-position: 90% center; - border: 1px solid #ccc; - color: #333; - margin-top: 2px; - margin-left: 2px; - padding: 4px 2px 2px 4px; - text-shadow: #fff 1px 1px 0; - border-radius: 5px; - -moz-border-radius: 5px; - -webkit-border-radius: 5px; - -webkit-transition: border-color .5s; - -moz-transition: border-color .5s; - -o-transition: border-color .5s; - transition: border-color .5s; -} - .dk_toggle:hover { - border-color: #8c8c8c; - } - /* Applied when the dropdown is focused */ - .dk_focus .dk_toggle { - border-color: #40b5e2; - } - .dk_focus .dk_toggle { - box-shadow: 0 0 5px #40b5e2; - -moz-box-shadow: 0 0 5px #40b5e2; - -webkit-box-shadow: 0 0 5px #40b5e2; - } - -/* Applied whenever the dropdown is open */ -.dk_open { - box-shadow: 0 0 5px #40b5e2; - -moz-box-shadow: 0 0 5px #40b5e2; - -webkit-box-shadow: 0 0 5px #40b5e2; - /** - * Help: Dropdown menu is covered by something - * Try setting this value higher - */ - z-index: 10; -} - .dk_open .dk_toggle { - background-color: #ececec; - border-color: #8c8c8c; - color: #ccc; - box-shadow: inset 0 -2px 5px #ccc; - border-radius: 5px 5px 0 0; - -moz-border-radius: 5px 5px 0 0; - -webkit-border-radius: 5px 5px 0 0; - } - -/* The outer container of the options */ -.dk_options { - box-shadow: rgba(0, 0, 0, .2) 0 2px 8px; - -moz-box-shadow: rgba(0, 0, 0, .2) 0 2px 8px; - -webkit-box-shadow: rgba(0, 0, 0, .2) 0 2px 8px; - border-radius: 0 0 5px 5px; - -moz-border-radius: 0 0 5px 5px; - -webkit-border-radius: 0 0 5px 5px; -} - .dk_options a { - background-color: #fff; - border-bottom: 1px solid #999; - font-weight: bold; - padding: 8px 10px; - } - .dk_options li:last-child a { - border-bottom: none; - } - .dk_options a:hover, - .dk_option_current a { - background-color: #0084c7; - border-bottom-color: #004c72; - color: #fff; - text-decoration: none; - text-shadow: rgba(0, 0, 0, .5) 0 1px 0; - } - -/* Inner container for options, this is what makes the scrollbar possible. */ -.dk_options_inner { - border: 1px solid #8c8c8e; - border-bottom-width: 2px; - border-bottom-color: #999; - color: #333; - max-height: 250px; - text-shadow: #fff 0 1px 0; - border-radius: 0 0 5px 5px; - -moz-border-radius: 0 0 5px 5px; - -webkit-border-radius: 0 0 5px 5px; -} - -/* Set a max-height on the options inner */ -.dk_options_inner, -.dk_touch .dk_options { - max-height: 250px; -} - -/****** End Theme ******/ - -/***** Critical to the continued enjoyment of working dropdowns ******/ - -.dk_container { - display: none; - float: left; - position: relative; -} - .dk_container a { - outline: 0; - } - -.dk_toggle { - display: -moz-inline-stack; - display: inline-block; - *display: inline; - position: relative; - zoom: 1; -} - -.dk_open { - position: relative; -} - .dk_open .dk_options { - display: block; - } - .dk_open .dk_label { - color: inherit; - } - -.dk_options { - display: none; - margin-top: -1px; - position: absolute; - right: 0; - width: 100%; -} - .dk_options a, - .dk_options a:link, - .dk_options a:visited { - display: block; - } - .dk_options_inner { - overflow: auto; - position: relative; - } - -.dk_touch .dk_options { - overflow: hidden; -} - -.dk_touch .dk_options_inner { - max-height: none; - overflow: visible; -} - -.dk_fouc select { - position: relative; - top: -99999em; - visibility: hidden; -} - -/***** End Critical to the continued enjoyment of working dropdowns ******/ diff --git a/css/enhancementpager.css b/css/enhancementpager.css deleted file mode 100644 index 83d5704..0000000 --- a/css/enhancementpager.css +++ /dev/null @@ -1,124 +0,0 @@ -.slick-enhancement-pager { - width: 100%; - height: 26px; - border: 1px solid gray; - border-top: 0; - background: url('../images/header-columns-bg.gif') repeat-x center bottom; - vertical-align: middle; - position: relative; -} - -.button-base-class { - display: inline-block; - border: #CCC solid 1px; - margin: 4px; - width:16px; - height:16px; - cursor: pointer; - vertical-align: middle; - border-radius: 3px; - -moz-border-radius: 3px; - -webkit-border-radius: 3px; -} - -.resultset_first{ - background: url('../images/resultset_first.png') no-repeat; -} - -.resultset_first:hover{ - background: #CEF url('../images/resultset_first.png') no-repeat; -} - -.resultset_prev{ - background: url('../images/resultset_previous.png') no-repeat; -} - -.resultset_prev:hover{ - background: #CEF url('../images/resultset_previous.png') no-repeat; -} - -.resultset_next{ - background: url('../images/resultset_next.png') no-repeat; -} - -.resultset_next:hover{ - background: #CEF url('../images/resultset_next.png') no-repeat; -} - -.resultset_last{ - background: url('../images/resultset_last.png') no-repeat; -} - -.resultset_last:hover{ - background: #CEF url('../images/resultset_last.png') no-repeat; -} - -.spacer{ - width: 1px; - margin: 4px; - display: inline-block; - background: url('../images/spacer.png') no-repeat; -} - -.refresh{ - background: url('../images/arrow_refresh.png') no-repeat; -} - -.refresh:hover{ - background: #CEF url('../images/arrow_refresh.png') no-repeat; -} - -.dataloading{ - display: inline-block; - margin: 4px; - background: url('../images/ajax-loader.gif') no-repeat; - width:16px; - height:16px; - cursor: pointer; - vertical-align: middle; -} - -.pageplus{ - background: url('../images/pageplus.png') no-repeat; -} - -.pageplus:hover{ - background: #CEF url('../images/pageplus.png') no-repeat; -} - -.pageminus{ - background: url('../images/pageminus.png') no-repeat; -} - -.pageminus:hover{ - background: #CEF url('../images/pageminus.png') no-repeat; -} - -.currentrecords{ - position:absolute;right:0px; - background: url('../images/lightbulb.png') no-repeat; -} - -.currentrecords:hover{ - position:absolute;right:0px; - background: #CEF url('../images/lightbulb.png') no-repeat; -} - -.pagerslider{ - display:inline-block; - width:80px; - margin:4px 9px 4px 4px; - vertical-align: middle; -} - -.recordsperpage{ - display:inline-block; - vertical-align: middle; - width:80px; -} - -.recordstate{ - position:absolute; - top:6px; - right:26px; -} \ No newline at end of file diff --git a/css/index.css b/css/index.css index cb22006..70dd35f 100644 --- a/css/index.css +++ b/css/index.css @@ -1,134 +1,47 @@ -* { - font-family: arial; - font-size: 8pt; -} - body { - background: beige; - padding: 0; - margin: 8px; + margin: auto; + padding: 10px; + + /* Overide jquery ui style with bootstrap */ + font-family: "Helvetica Neue",Helvetica,Arial,sans-serif !important; + font-size: 14px !important; + line-height: 1.42857 !important; + color: #333 !important; } -h2 { - font-size: 10pt; - border-bottom: 1px dotted gray; +a.glyphicon { + color: #333 !important; } -ul { - margin-left: 0; - padding: 0; - cursor: default; +.delete { + cursor: pointer; } -li { - background: url("../images/arrow_right_spearmint.png") no-repeat center left; - padding: 0 0 0 14px; - - list-style: none; - margin: 0; +#header_admin { + margin : 10px; } -.grid:not(#grid_log) { - background: white; - outline: 0; - border: 1px solid gray; - margin-bottom: 20px; +.block-grid { + margin: 20px; } -#pagination { - margin-bottom: 20px; +.grid { + border: 1px solid rgba(0, 0, 0, 0.2); } -.grid-header { - border: 1px solid gray; - border-bottom: 0; - border-top: 0; - background: url('../images/header-bg.gif') repeat-x center top; - color: black; - height: 24px; - line-height: 24px; -} - -.grid-header label { - display: inline-block; +/*.slick-header-column { font-weight: bold; - margin: auto auto auto 6px; + border-bottom: 2px solid rgba(0, 0, 0, 0.2) !important; +}*/ + +/* Fix with slickgrid and bootstrap association */ +.slick-header *, *:before, *.after { + -moz-box-sizing: content-box; + box-sizing: content-box; } -.grid-header .ui-icon { - margin: 4px 4px auto 6px; - background-color: transparent; - border-color: transparent; -} - -.grid-header .ui-icon.ui-state-hover { - background-color: white; -} - -.grid-header #txtSearch { - margin: 0 4px 0 4px; - padding: 2px 2px; - -moz-border-radius: 2px; - -webkit-border-radius: 2px; - border: 1px solid silver; -} - -.options-panel { - -moz-border-radius: 6px; - -webkit-border-radius: 6px; - border: 1px solid silver; - background: #f0f0f0; - padding: 4px; - margin-bottom: 20px; - width: 320px; - position: absolute; - top: 0px; - left: 650px; -} - -/* Individual cell styles */ -.slick-cell.task-name { - font-weight: bold; - text-align: right; -} - -.slick-cell.task-percent { - text-align: right; -} - -.slick-cell.cell-move-handle { - font-weight: bold; - text-align: right; - border-right: solid gray; - - background: #efefef; - cursor: move; -} - -.cell-move-handle:hover { - background: #b6b9bd; -} - -.slick-row.selected .cell-move-handle { - background: #D5DC8D; -} - -.slick-row .cell-actions { - text-align: left; -} - -.slick-row.complete { - background-color: #DFD; - color: #555; -} - -.percent-complete-bar { - display: inline-block; - height: 6px; - -moz-border-radius: 3px; - -webkit-border-radius: 3px; -} +/* Editor */ /* Slick.Editors.Text, Slick.Editors.Date */ input.editor-text { width: 100%; @@ -228,49 +141,4 @@ input.editor-checkbox { height: 100%; padding: 0; border: 0; -} - - -.delete { - cursor: pointer; -} - - -#bloc_connexion { - margin-top: 200px; - text-align: center; -} - -#form_connexion label { - font-weight: bold; - display: inline-block; - width: 100px; - text-align: right; - margin-right: 10px; -} - -#presentation_administrateur { - margin : 10px; -} - - -.cell-title { - font-weight: bold; -} - -.cell-effort-driven { - text-align: center; -} - -.cell-selection { - border-right-color: silver; - border-right-style: solid; - background: #f5f5f5; - color: gray; - text-align: right; - font-size: 10px; -} - -.slick-row.selected .cell-selection { - background-color: transparent; /* show default selected row background */ -} +} \ No newline at end of file diff --git a/css/jquery-ui-1.8.16.custom.css b/css/jquery-ui-1.8.16.custom.css deleted file mode 100644 index d8dc127..0000000 --- a/css/jquery-ui-1.8.16.custom.css +++ /dev/null @@ -1,409 +0,0 @@ -/* - * jQuery UI CSS Framework 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API - */ - -/* Layout helpers -----------------------------------*/ -.ui-helper-hidden { display: none; } -.ui-helper-hidden-accessible { position: absolute !important; clip: rect(1px 1px 1px 1px); clip: rect(1px,1px,1px,1px); } -.ui-helper-reset { margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; } -.ui-helper-clearfix:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; } -.ui-helper-clearfix { display: inline-block; } -/* required comment for clearfix to work in Opera \*/ -* html .ui-helper-clearfix { height:1%; } -.ui-helper-clearfix { display:block; } -/* end clearfix */ -.ui-helper-zfix { width: 100%; height: 100%; top: 0; left: 0; position: absolute; opacity: 0; filter:Alpha(Opacity=0); } - - -/* Interaction Cues -----------------------------------*/ -.ui-state-disabled { cursor: default !important; } - - -/* Icons -----------------------------------*/ - -/* states and ../images */ -.ui-icon { display: block; text-indent: -99999px; overflow: hidden; background-repeat: no-repeat; } - - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ui-widget-overlay { position: absolute; top: 0; left: 0; width: 100%; height: 100%; } - - -/* - * jQuery UI CSS Framework 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API - * - * To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana,Arial,sans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=03_highlight_soft.png&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=01_flat.png&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=02_glass.png&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=02_glass.png&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=02_glass.png&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=02_glass.png&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=02_glass.png&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=01_flat.png&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=01_flat.png&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px - */ - - -/* Component containers -----------------------------------*/ -.ui-widget { font-family: Verdana,Arial,sans-serif; font-size: 1.1em; } -.ui-widget .ui-widget { font-size: 1em; } -.ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button { font-family: Verdana,Arial,sans-serif; font-size: 1em; } -.ui-widget-content { border: 1px solid #aaaaaa; background: #ffffff url(../images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x; color: #222222; } -.ui-widget-content a { color: #222222; } -.ui-widget-header { border: 1px solid #aaaaaa; background: #cccccc url(../images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x; color: #222222; font-weight: bold; } -.ui-widget-header a { color: #222222; } - -/* Interaction states -----------------------------------*/ -.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default { border: 1px solid #d3d3d3; background: #e6e6e6 url(../images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #555555; } -.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: #555555; text-decoration: none; } -.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: 1px solid #999999; background: #dadada url(../images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; } -.ui-state-hover a, .ui-state-hover a:hover { color: #212121; text-decoration: none; } -.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: 1px solid #aaaaaa; background: #ffffff url(../images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x; font-weight: normal; color: #212121; } -.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited { color: #212121; text-decoration: none; } -.ui-widget :active { outline: none; } - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {border: 1px solid #fcefa1; background: #fbf9ee url(../images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x; color: #363636; } -.ui-state-highlight a, .ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a { color: #363636; } -.ui-state-error, .ui-widget-content .ui-state-error, .ui-widget-header .ui-state-error {border: 1px solid #cd0a0a; background: #fef1ec url(../images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x; color: #cd0a0a; } -.ui-state-error a, .ui-widget-content .ui-state-error a, .ui-widget-header .ui-state-error a { color: #cd0a0a; } -.ui-state-error-text, .ui-widget-content .ui-state-error-text, .ui-widget-header .ui-state-error-text { color: #cd0a0a; } -.ui-priority-primary, .ui-widget-content .ui-priority-primary, .ui-widget-header .ui-priority-primary { font-weight: bold; } -.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary { opacity: .7; filter:Alpha(Opacity=70); font-weight: normal; } -.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled { opacity: .35; filter:Alpha(Opacity=35); background-image: none; } - -/* Icons -----------------------------------*/ - -/* states and ../images */ -.ui-icon { width: 16px; height: 16px; background-image: url(../images/ui-icons_222222_256x240.png); } -.ui-widget-content .ui-icon {background-image: url(../images/ui-icons_222222_256x240.png); } -.ui-widget-header .ui-icon {background-image: url(../images/ui-icons_222222_256x240.png); } -.ui-state-default .ui-icon { background-image: url(../images/ui-icons_888888_256x240.png); } -.ui-state-hover .ui-icon, .ui-state-focus .ui-icon {background-image: url(../images/ui-icons_454545_256x240.png); } -.ui-state-active .ui-icon {background-image: url(../images/ui-icons_454545_256x240.png); } -.ui-state-highlight .ui-icon {background-image: url(../images/ui-icons_2e83ff_256x240.png); } -.ui-state-error .ui-icon, .ui-state-error-text .ui-icon {background-image: url(../images/ui-icons_cd0a0a_256x240.png); } - -/* positioning */ -.ui-icon-carat-1-n { background-position: 0 0; } -.ui-icon-carat-1-ne { background-position: -16px 0; } -.ui-icon-carat-1-e { background-position: -32px 0; } -.ui-icon-carat-1-se { background-position: -48px 0; } -.ui-icon-carat-1-s { background-position: -64px 0; } -.ui-icon-carat-1-sw { background-position: -80px 0; } -.ui-icon-carat-1-w { background-position: -96px 0; } -.ui-icon-carat-1-nw { background-position: -112px 0; } -.ui-icon-carat-2-n-s { background-position: -128px 0; } -.ui-icon-carat-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -64px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -64px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 0 -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-off { background-position: -96px -144px; } -.ui-icon-radio-on { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-start { background-position: -80px -160px; } -/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-all, .ui-corner-top, .ui-corner-left, .ui-corner-tl { -moz-border-radius-topleft: 4px; -webkit-border-top-left-radius: 4px; -khtml-border-top-left-radius: 4px; border-top-left-radius: 4px; } -.ui-corner-all, .ui-corner-top, .ui-corner-right, .ui-corner-tr { -moz-border-radius-topright: 4px; -webkit-border-top-right-radius: 4px; -khtml-border-top-right-radius: 4px; border-top-right-radius: 4px; } -.ui-corner-all, .ui-corner-bottom, .ui-corner-left, .ui-corner-bl { -moz-border-radius-bottomleft: 4px; -webkit-border-bottom-left-radius: 4px; -khtml-border-bottom-left-radius: 4px; border-bottom-left-radius: 4px; } -.ui-corner-all, .ui-corner-bottom, .ui-corner-right, .ui-corner-br { -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 4px; -khtml-border-bottom-right-radius: 4px; border-bottom-right-radius: 4px; } - -/* Overlays */ -.ui-widget-overlay { background: #aaaaaa url(../images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); } -.ui-widget-shadow { margin: -8px 0 0 -8px; padding: 8px; background: #aaaaaa url(../images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x; opacity: .30;filter:Alpha(Opacity=30); -moz-border-radius: 8px; -khtml-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px; }/* - * jQuery UI Resizable 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Resizable#theming - */ -.ui-resizable { position: relative;} -.ui-resizable-handle { position: absolute;font-size: 0.1px;z-index: 99999; display: block; } -.ui-resizable-disabled .ui-resizable-handle, .ui-resizable-autohide .ui-resizable-handle { display: none; } -.ui-resizable-n { cursor: n-resize; height: 7px; width: 100%; top: -5px; left: 0; } -.ui-resizable-s { cursor: s-resize; height: 7px; width: 100%; bottom: -5px; left: 0; } -.ui-resizable-e { cursor: e-resize; width: 7px; right: -5px; top: 0; height: 100%; } -.ui-resizable-w { cursor: w-resize; width: 7px; left: -5px; top: 0; height: 100%; } -.ui-resizable-se { cursor: se-resize; width: 12px; height: 12px; right: 1px; bottom: 1px; } -.ui-resizable-sw { cursor: sw-resize; width: 9px; height: 9px; left: -5px; bottom: -5px; } -.ui-resizable-nw { cursor: nw-resize; width: 9px; height: 9px; left: -5px; top: -5px; } -.ui-resizable-ne { cursor: ne-resize; width: 9px; height: 9px; right: -5px; top: -5px;}/* - * jQuery UI Selectable 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Selectable#theming - */ -.ui-selectable-helper { position: absolute; z-index: 100; border:1px dotted black; } -/* - * jQuery UI Slider 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Slider#theming - */ -.ui-slider { position: relative; text-align: left; } -.ui-slider .ui-slider-handle { position: absolute; z-index: 2; width: 1.2em; height: 1.2em; cursor: default; } -.ui-slider .ui-slider-range { position: absolute; z-index: 1; font-size: .7em; display: block; border: 0; background-position: 0 0; } - -.ui-slider-horizontal { height: .8em; } -.ui-slider-horizontal .ui-slider-handle { top: -.3em; margin-left: -.6em; } -.ui-slider-horizontal .ui-slider-range { top: 0; height: 100%; } -.ui-slider-horizontal .ui-slider-range-min { left: 0; } -.ui-slider-horizontal .ui-slider-range-max { right: 0; } - -.ui-slider-vertical { width: .8em; height: 100px; } -.ui-slider-vertical .ui-slider-handle { left: -.3em; margin-left: 0; margin-bottom: -.6em; } -.ui-slider-vertical .ui-slider-range { left: 0; width: 100%; } -.ui-slider-vertical .ui-slider-range-min { bottom: 0; } -.ui-slider-vertical .ui-slider-range-max { top: 0; }/* - * jQuery UI Datepicker 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Datepicker#theming - */ -.ui-datepicker { width: 17em; padding: .2em .2em 0; display: none; } -.ui-datepicker .ui-datepicker-header { position:relative; padding:.2em 0; } -.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position:absolute; top: 2px; width: 1.8em; height: 1.8em; } -.ui-datepicker .ui-datepicker-prev-hover, .ui-datepicker .ui-datepicker-next-hover { top: 1px; } -.ui-datepicker .ui-datepicker-prev { left:2px; } -.ui-datepicker .ui-datepicker-next { right:2px; } -.ui-datepicker .ui-datepicker-prev-hover { left:1px; } -.ui-datepicker .ui-datepicker-next-hover { right:1px; } -.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; } -.ui-datepicker .ui-datepicker-title { margin: 0 2.3em; line-height: 1.8em; text-align: center; } -.ui-datepicker .ui-datepicker-title select { font-size:1em; margin:1px 0; } -.ui-datepicker select.ui-datepicker-month-year {width: 100%;} -.ui-datepicker select.ui-datepicker-month, -.ui-datepicker select.ui-datepicker-year { width: 49%;} -.ui-datepicker table {width: 100%; font-size: .9em; border-collapse: collapse; margin:0 0 .4em; } -.ui-datepicker th { padding: .7em .3em; text-align: center; font-weight: bold; border: 0; } -.ui-datepicker td { border: 0; padding: 1px; } -.ui-datepicker td span, .ui-datepicker td a { display: block; padding: .2em; text-align: right; text-decoration: none; } -.ui-datepicker .ui-datepicker-buttonpane { background-image: none; margin: .7em 0 0 0; padding:0 .2em; border-left: 0; border-right: 0; border-bottom: 0; } -.ui-datepicker .ui-datepicker-buttonpane button { float: right; margin: .5em .2em .4em; cursor: pointer; padding: .2em .6em .3em .6em; width:auto; overflow:visible; } -.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float:left; } - -/* with multiple calendars */ -.ui-datepicker.ui-datepicker-multi { width:auto; } -.ui-datepicker-multi .ui-datepicker-group { float:left; } -.ui-datepicker-multi .ui-datepicker-group table { width:95%; margin:0 auto .4em; } -.ui-datepicker-multi-2 .ui-datepicker-group { width:50%; } -.ui-datepicker-multi-3 .ui-datepicker-group { width:33.3%; } -.ui-datepicker-multi-4 .ui-datepicker-group { width:25%; } -.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { border-left-width:0; } -.ui-datepicker-multi .ui-datepicker-buttonpane { clear:left; } -.ui-datepicker-row-break { clear:both; width:100%; font-size:0em; } - -/* RTL support */ -.ui-datepicker-rtl { direction: rtl; } -.ui-datepicker-rtl .ui-datepicker-prev { right: 2px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next { left: 2px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-prev:hover { right: 1px; left: auto; } -.ui-datepicker-rtl .ui-datepicker-next:hover { left: 1px; right: auto; } -.ui-datepicker-rtl .ui-datepicker-buttonpane { clear:right; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button { float: left; } -.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current { float:right; } -.ui-datepicker-rtl .ui-datepicker-group { float:right; } -.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header { border-right-width:0; border-left-width:1px; } -.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { border-right-width:0; border-left-width:1px; } - -/* IE6 IFRAME FIX (taken from datepicker 1.5.3 */ -.ui-datepicker-cover { - display: none; /*sorry for IE5*/ - display/**/: block; /*sorry for IE5*/ - position: absolute; /*must have*/ - z-index: -1; /*must have*/ - filter: mask(); /*must have*/ - top: -4px; /*must have*/ - left: -4px; /*must have*/ - width: 200px; /*must have*/ - height: 200px; /*must have*/ -} diff --git a/css/min.css b/css/min.css deleted file mode 100644 index ec04923..0000000 --- a/css/min.css +++ /dev/null @@ -1,11 +0,0 @@ -/* This file results from the fusion of the following files : dropkick.css, enhancementpager.css, index.css, jquery-ui-1.8.16.custom.css, slick-default-theme.css, slick.grid.css, */ - - -/* * jQuery UI CSS Framework 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Theming/API */ -.dk_container{background:-webkit-gradient(linear,left top,left bottom,from(#fff),to(#f5f5f5));background:-moz-linear-gradient(top,#fff,#f5f5f5);background:-o-linear-gradient(top,#fff,#f5f5f5);background-color:#f5f5f5;font-family:'Helvetica',Arial,sans-serif;font-size:12px;font-weight:bold;line-height:14px;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;}.dk_container:focus{outline:0;}.dk_container a{cursor:pointer;text-decoration:none;}.dk_toggle{background-image:url('../images/dk_arrows.png');background-repeat:no-repeat;background-position:90% center;border:1px solid #ccc;color:#333;margin-top:2px;margin-left:2px;padding:4px 2px 2px 4px;text-shadow:#fff 1px 1px 0;border-radius:5px;-moz-border-radius:5px;-webkit-border-radius:5px;-webkit-transition:border-color .5s;-moz-transition:border-color .5s;-o-transition:border-color .5s;transition:border-color .5s;}.dk_toggle:hover{border-color:#8c8c8c;}.dk_focus .dk_toggle{border-color:#40b5e2;}.dk_focus .dk_toggle{box-shadow:0 0 5px #40b5e2;-moz-box-shadow:0 0 5px #40b5e2;-webkit-box-shadow:0 0 5px #40b5e2;}.dk_open{box-shadow:0 0 5px #40b5e2;-moz-box-shadow:0 0 5px #40b5e2;-webkit-box-shadow:0 0 5px #40b5e2;z-index:10;}.dk_open .dk_toggle{background-color:#ececec;border-color:#8c8c8c;color:#ccc;box-shadow:inset 0 -2px 5px #ccc;border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;-webkit-border-radius:5px 5px 0 0;}.dk_options{box-shadow:rgba(0,0,0,.2) 0 2px 8px;-moz-box-shadow:rgba(0,0,0,.2) 0 2px 8px;-webkit-box-shadow:rgba(0,0,0,.2) 0 2px 8px;border-radius:0 0 5px 5px;-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0 0 5px 5px;}.dk_options a{background-color:#fff;border-bottom:1px solid #999;font-weight:bold;padding:8px 10px;}.dk_options li:last-child a{border-bottom:none;}.dk_options a:hover,.dk_option_current a{background-color:#0084c7;border-bottom-color:#004c72;color:#fff;text-decoration:none;text-shadow:rgba(0,0,0,.5) 0 1px 0;}.dk_options_inner{border:1px solid #8c8c8e;border-bottom-width:2px;border-bottom-color:#999;color:#333;max-height:250px;text-shadow:#fff 0 1px 0;border-radius:0 0 5px 5px;-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0 0 5px 5px;}.dk_options_inner,.dk_touch .dk_options{max-height:250px;}.dk_container{display:none;float:left;position:relative;}.dk_container a{outline:0;}.dk_toggle{display:-moz-inline-stack;display:inline-block;*display:inline;position:relative;zoom:1;}.dk_open{position:relative;}.dk_open .dk_options{display:block;}.dk_open .dk_label{color:inherit;}.dk_options{display:none;margin-top:-1px;position:absolute;right:0;width:100%;}.dk_options a,.dk_options a:link,.dk_options a:visited{display:block;}.dk_options_inner{overflow:auto;position:relative;}.dk_touch .dk_options{overflow:hidden;}.dk_touch .dk_options_inner{max-height:none;overflow:visible;}.dk_fouc select{position:relative;top:-99999em;visibility:hidden;}.slick-enhancement-pager{width:100%;height:26px;border:1px solid gray;border-top:0;background:url('../images/header-columns-bg.gif') repeat-x center bottom;vertical-align:middle;position:relative;}.button-base-class{display:inline-block;border:#CCC solid 1px;margin:4px;width:16px;height:16px;cursor:pointer;vertical-align:middle;border-radius:3px;-moz-border-radius:3px;-webkit-border-radius:3px;}.resultset_first{background:url('../images/resultset_first.png') no-repeat;}.resultset_first:hover{background:#CEF url('../images/resultset_first.png') no-repeat;}.resultset_prev{background:url('../images/resultset_previous.png') no-repeat;}.resultset_prev:hover{background:#CEF url('../images/resultset_previous.png') no-repeat;}.resultset_next{background:url('../images/resultset_next.png') no-repeat;}.resultset_next:hover{background:#CEF url('../images/resultset_next.png') no-repeat;}.resultset_last{background:url('../images/resultset_last.png') no-repeat;}.resultset_last:hover{background:#CEF url('../images/resultset_last.png') no-repeat;}.spacer{width:1px;margin:4px;display:inline-block;background:url('../images/spacer.png') no-repeat;}.refresh{background:url('../images/arrow_refresh.png') no-repeat;}.refresh:hover{background:#CEF url('../images/arrow_refresh.png') no-repeat;}.dataloading{display:inline-block;margin:4px;background:url('../images/ajax-loader.gif') no-repeat;width:16px;height:16px;cursor:pointer;vertical-align:middle;}.pageplus{background:url('../images/pageplus.png') no-repeat;}.pageplus:hover{background:#CEF url('../images/pageplus.png') no-repeat;}.pageminus{background:url('../images/pageminus.png') no-repeat;}.pageminus:hover{background:#CEF url('../images/pageminus.png') no-repeat;}.currentrecords{position:absolute;right:0px;background:url('../images/lightbulb.png') no-repeat;}.currentrecords:hover{position:absolute;right:0px;background:#CEF url('../images/lightbulb.png') no-repeat;}.pagerslider{display:inline-block;width:80px;margin:4px 9px 4px 4px;vertical-align:middle;}.recordsperpage{display:inline-block;vertical-align:middle;width:80px;}.recordstate{position:absolute;top:6px;right:26px;}*{font-family:arial;font-size:8pt;}body{background:beige;padding:0;margin:8px;}h2{font-size:10pt;border-bottom:1px dotted gray;}ul{margin-left:0;padding:0;cursor:default;}li{background:url("../images/arrow_right_spearmint.png") no-repeat center left;padding:0 0 0 14px;list-style:none;margin:0;}.grid:not(#grid_log){background:white;outline:0;border:1px solid gray;margin-bottom:20px;}#pagination{margin-bottom:20px;}.grid-header{border:1px solid gray;border-bottom:0;border-top:0;background:url('../images/header-bg.gif') repeat-x center top;color:black;height:24px;line-height:24px;}.grid-header label{display:inline-block;font-weight:bold;margin:auto auto auto 6px;}.grid-header .ui-icon{margin:4px 4px auto 6px;background-color:transparent;border-color:transparent;}.grid-header .ui-icon.ui-state-hover{background-color:white;}.grid-header #txtSearch{margin:0 4px 0 4px;padding:2px 2px;-moz-border-radius:2px;-webkit-border-radius:2px;border:1px solid silver;}.options-panel{-moz-border-radius:6px;-webkit-border-radius:6px;border:1px solid silver;background:#f0f0f0;padding:4px;margin-bottom:20px;width:320px;position:absolute;top:0px;left:650px;}.slick-cell.task-name{font-weight:bold;text-align:right;}.slick-cell.task-percent{text-align:right;}.slick-cell.cell-move-handle{font-weight:bold;text-align:right;border-right:solid gray;background:#efefef;cursor:move;}.cell-move-handle:hover{background:#b6b9bd;}.slick-row.selected .cell-move-handle{background:#D5DC8D;}.slick-row .cell-actions{text-align:left;}.slick-row.complete{background-color:#DFD;color:#555;}.percent-complete-bar{display:inline-block;height:6px;-moz-border-radius:3px;-webkit-border-radius:3px;}input.editor-text{width:100%;height:100%;border:0;margin:0;background:transparent;outline:0;padding:0;}.ui-datepicker-trigger{margin-top:2px;padding:0;vertical-align:top;}input.editor-percentcomplete{width:100%;height:100%;border:0;margin:0;background:transparent;outline:0;padding:0;float:left;}.editor-percentcomplete-picker{position:relative;display:inline-block;width:16px;height:100%;background:url("../images/pencil.gif") no-repeat center center;overflow:visible;z-index:1000;float:right;}.editor-percentcomplete-helper{border:0 solid gray;position:absolute;top:-2px;left:-9px;background:url("../images/editor-helper-bg.gif") no-repeat top left;padding-left:9px;width:120px;height:140px;display:none;overflow:visible;}.editor-percentcomplete-wrapper{background:beige;padding:20px 8px;width:100%;height:98px;border:1px solid gray;border-left:0;}.editor-percentcomplete-buttons{float:right;}.editor-percentcomplete-buttons button{width:80px;}.editor-percentcomplete-slider{float:left;}.editor-percentcomplete-picker:hover .editor-percentcomplete-helper{display:block;}.editor-percentcomplete-helper:hover{display:block;}select.editor-yesno{width:100%;margin:0;vertical-align:middle;}input.editor-checkbox{margin:0;height:100%;padding:0;border:0;}.delete{cursor:pointer;}#bloc_connexion{margin-top:200px;text-align:center;}#form_connexion label{font-weight:bold;display:inline-block;width:100px;text-align:right;margin-right:10px;}#presentation_administrateur{margin:10px;}.cell-title{font-weight:bold;}.cell-effort-driven{text-align:center;}.cell-selection{border-right-color:silver;border-right-style:solid;background:#f5f5f5;color:gray;text-align:right;font-size:10px;}.slick-row.selected .cell-selection{background-color:transparent;}.ui-helper-hidden{display:none;}.ui-helper-hidden-accessible{position:absolute !important;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px);}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none;}.ui-helper-clearfix:after{content:".";display:block;height:0;clear:both;visibility:hidden;}.ui-helper-clearfix{display:inline-block;}* html .ui-helper-clearfix{height:1%;}.ui-helper-clearfix{display:block;}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0);}.ui-state-disabled{cursor:default !important;}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat;}.ui-widget-overlay{position:absolute;top:0;left:0;width:100%;height:100%;}.ui-widget{font-family:Verdana,Arial,sans-serif;font-size:1.1em;}.ui-widget .ui-widget{font-size:1em;}.ui-widget input,.ui-widget select,.ui-widget textarea,.ui-widget button{font-family:Verdana,Arial,sans-serif;font-size:1em;}.ui-widget-content{border:1px solid #aaaaaa;background:#ffffff url(../images/ui-bg_flat_75_ffffff_40x100.png) 50% 50% repeat-x;color:#222222;}.ui-widget-content a{color:#222222;}.ui-widget-header{border:1px solid #aaaaaa;background:#cccccc url(../images/ui-bg_highlight-soft_75_cccccc_1x100.png) 50% 50% repeat-x;color:#222222;font-weight:bold;}.ui-widget-header a{color:#222222;}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #d3d3d3;background:#e6e6e6 url(../images/ui-bg_glass_75_e6e6e6_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#555555;}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#555555;text-decoration:none;}.ui-state-hover,.ui-widget-content .ui-state-hover,.ui-widget-header .ui-state-hover,.ui-state-focus,.ui-widget-content .ui-state-focus,.ui-widget-header .ui-state-focus{border:1px solid #999999;background:#dadada url(../images/ui-bg_glass_75_dadada_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121;}.ui-state-hover a,.ui-state-hover a:hover{color:#212121;text-decoration:none;}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #aaaaaa;background:#ffffff url(../images/ui-bg_glass_65_ffffff_1x400.png) 50% 50% repeat-x;font-weight:normal;color:#212121;}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#212121;text-decoration:none;}.ui-widget :active{outline:none;}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fcefa1;background:#fbf9ee url(../images/ui-bg_glass_55_fbf9ee_1x400.png) 50% 50% repeat-x;color:#363636;}.ui-state-highlight a,.ui-widget-content .ui-state-highlight a,.ui-widget-header .ui-state-highlight a{color:#363636;}.ui-state-error,.ui-widget-content .ui-state-error,.ui-widget-header .ui-state-error{border:1px solid #cd0a0a;background:#fef1ec url(../images/ui-bg_glass_95_fef1ec_1x400.png) 50% 50% repeat-x;color:#cd0a0a;}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#cd0a0a;}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#cd0a0a;}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold;}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal;}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none;}.ui-icon{width:16px;height:16px;background-image:url(../images/ui-icons_222222_256x240.png);}.ui-widget-content .ui-icon{background-image:url(../images/ui-icons_222222_256x240.png);}.ui-widget-header .ui-icon{background-image:url(../images/ui-icons_222222_256x240.png);}.ui-state-default .ui-icon{background-image:url(../images/ui-icons_888888_256x240.png);}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url(../images/ui-icons_454545_256x240.png);}.ui-state-active .ui-icon{background-image:url(../images/ui-icons_454545_256x240.png);}.ui-state-highlight .ui-icon{background-image:url(../images/ui-icons_2e83ff_256x240.png);}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url(../images/ui-icons_cd0a0a_256x240.png);}.ui-icon-carat-1-n{background-position:0 0;}.ui-icon-carat-1-ne{background-position:-16px 0;}.ui-icon-carat-1-e{background-position:-32px 0;}.ui-icon-carat-1-se{background-position:-48px 0;}.ui-icon-carat-1-s{background-position:-64px 0;}.ui-icon-carat-1-sw{background-position:-80px 0;}.ui-icon-carat-1-w{background-position:-96px 0;}.ui-icon-carat-1-nw{background-position:-112px 0;}.ui-icon-carat-2-n-s{background-position:-128px 0;}.ui-icon-carat-2-e-w{background-position:-144px 0;}.ui-icon-triangle-1-n{background-position:0 -16px;}.ui-icon-triangle-1-ne{background-position:-16px -16px;}.ui-icon-triangle-1-e{background-position:-32px -16px;}.ui-icon-triangle-1-se{background-position:-48px -16px;}.ui-icon-triangle-1-s{background-position:-64px -16px;}.ui-icon-triangle-1-sw{background-position:-80px -16px;}.ui-icon-triangle-1-w{background-position:-96px -16px;}.ui-icon-triangle-1-nw{background-position:-112px -16px;}.ui-icon-triangle-2-n-s{background-position:-128px -16px;}.ui-icon-triangle-2-e-w{background-position:-144px -16px;}.ui-icon-arrow-1-n{background-position:0 -32px;}.ui-icon-arrow-1-ne{background-position:-16px -32px;}.ui-icon-arrow-1-e{background-position:-32px -32px;}.ui-icon-arrow-1-se{background-position:-48px -32px;}.ui-icon-arrow-1-s{background-position:-64px -32px;}.ui-icon-arrow-1-sw{background-position:-80px -32px;}.ui-icon-arrow-1-w{background-position:-96px -32px;}.ui-icon-arrow-1-nw{background-position:-112px -32px;}.ui-icon-arrow-2-n-s{background-position:-128px -32px;}.ui-icon-arrow-2-ne-sw{background-position:-144px -32px;}.ui-icon-arrow-2-e-w{background-position:-160px -32px;}.ui-icon-arrow-2-se-nw{background-position:-176px -32px;}.ui-icon-arrowstop-1-n{background-position:-192px -32px;}.ui-icon-arrowstop-1-e{background-position:-208px -32px;}.ui-icon-arrowstop-1-s{background-position:-224px -32px;}.ui-icon-arrowstop-1-w{background-position:-240px -32px;}.ui-icon-arrowthick-1-n{background-position:0 -48px;}.ui-icon-arrowthick-1-ne{background-position:-16px -48px;}.ui-icon-arrowthick-1-e{background-position:-32px -48px;}.ui-icon-arrowthick-1-se{background-position:-48px -48px;}.ui-icon-arrowthick-1-s{background-position:-64px -48px;}.ui-icon-arrowthick-1-sw{background-position:-80px -48px;}.ui-icon-arrowthick-1-w{background-position:-96px -48px;}.ui-icon-arrowthick-1-nw{background-position:-112px -48px;}.ui-icon-arrowthick-2-n-s{background-position:-128px -48px;}.ui-icon-arrowthick-2-ne-sw{background-position:-144px -48px;}.ui-icon-arrowthick-2-e-w{background-position:-160px -48px;}.ui-icon-arrowthick-2-se-nw{background-position:-176px -48px;}.ui-icon-arrowthickstop-1-n{background-position:-192px -48px;}.ui-icon-arrowthickstop-1-e{background-position:-208px -48px;}.ui-icon-arrowthickstop-1-s{background-position:-224px -48px;}.ui-icon-arrowthickstop-1-w{background-position:-240px -48px;}.ui-icon-arrowreturnthick-1-w{background-position:0 -64px;}.ui-icon-arrowreturnthick-1-n{background-position:-16px -64px;}.ui-icon-arrowreturnthick-1-e{background-position:-32px -64px;}.ui-icon-arrowreturnthick-1-s{background-position:-48px -64px;}.ui-icon-arrowreturn-1-w{background-position:-64px -64px;}.ui-icon-arrowreturn-1-n{background-position:-80px -64px;}.ui-icon-arrowreturn-1-e{background-position:-96px -64px;}.ui-icon-arrowreturn-1-s{background-position:-112px -64px;}.ui-icon-arrowrefresh-1-w{background-position:-128px -64px;}.ui-icon-arrowrefresh-1-n{background-position:-144px -64px;}.ui-icon-arrowrefresh-1-e{background-position:-160px -64px;}.ui-icon-arrowrefresh-1-s{background-position:-176px -64px;}.ui-icon-arrow-4{background-position:0 -80px;}.ui-icon-arrow-4-diag{background-position:-16px -80px;}.ui-icon-extlink{background-position:-32px -80px;}.ui-icon-newwin{background-position:-48px -80px;}.ui-icon-refresh{background-position:-64px -80px;}.ui-icon-shuffle{background-position:-80px -80px;}.ui-icon-transfer-e-w{background-position:-96px -80px;}.ui-icon-transferthick-e-w{background-position:-112px -80px;}.ui-icon-folder-collapsed{background-position:0 -96px;}.ui-icon-folder-open{background-position:-16px -96px;}.ui-icon-document{background-position:-32px -96px;}.ui-icon-document-b{background-position:-48px -96px;}.ui-icon-note{background-position:-64px -96px;}.ui-icon-mail-closed{background-position:-80px -96px;}.ui-icon-mail-open{background-position:-96px -96px;}.ui-icon-suitcase{background-position:-112px -96px;}.ui-icon-comment{background-position:-128px -96px;}.ui-icon-person{background-position:-144px -96px;}.ui-icon-print{background-position:-160px -96px;}.ui-icon-trash{background-position:-176px -96px;}.ui-icon-locked{background-position:-192px -96px;}.ui-icon-unlocked{background-position:-208px -96px;}.ui-icon-bookmark{background-position:-224px -96px;}.ui-icon-tag{background-position:-240px -96px;}.ui-icon-home{background-position:0 -112px;}.ui-icon-flag{background-position:-16px -112px;}.ui-icon-calendar{background-position:-32px -112px;}.ui-icon-cart{background-position:-48px -112px;}.ui-icon-pencil{background-position:-64px -112px;}.ui-icon-clock{background-position:-80px -112px;}.ui-icon-disk{background-position:-96px -112px;}.ui-icon-calculator{background-position:-112px -112px;}.ui-icon-zoomin{background-position:-128px -112px;}.ui-icon-zoomout{background-position:-144px -112px;}.ui-icon-search{background-position:-160px -112px;}.ui-icon-wrench{background-position:-176px -112px;}.ui-icon-gear{background-position:-192px -112px;}.ui-icon-heart{background-position:-208px -112px;}.ui-icon-star{background-position:-224px -112px;}.ui-icon-link{background-position:-240px -112px;}.ui-icon-cancel{background-position:0 -128px;}.ui-icon-plus{background-position:-16px -128px;}.ui-icon-plusthick{background-position:-32px -128px;}.ui-icon-minus{background-position:-48px -128px;}.ui-icon-minusthick{background-position:-64px -128px;}.ui-icon-close{background-position:-80px -128px;}.ui-icon-closethick{background-position:-96px -128px;}.ui-icon-key{background-position:-112px -128px;}.ui-icon-lightbulb{background-position:-128px -128px;}.ui-icon-scissors{background-position:-144px -128px;}.ui-icon-clipboard{background-position:-160px -128px;}.ui-icon-copy{background-position:-176px -128px;}.ui-icon-contact{background-position:-192px -128px;}.ui-icon-image{background-position:-208px -128px;}.ui-icon-video{background-position:-224px -128px;}.ui-icon-script{background-position:-240px -128px;}.ui-icon-alert{background-position:0 -144px;}.ui-icon-info{background-position:-16px -144px;}.ui-icon-notice{background-position:-32px -144px;}.ui-icon-help{background-position:-48px -144px;}.ui-icon-check{background-position:-64px -144px;}.ui-icon-bullet{background-position:-80px -144px;}.ui-icon-radio-off{background-position:-96px -144px;}.ui-icon-radio-on{background-position:-112px -144px;}.ui-icon-pin-w{background-position:-128px -144px;}.ui-icon-pin-s{background-position:-144px -144px;}.ui-icon-play{background-position:0 -160px;}.ui-icon-pause{background-position:-16px -160px;}.ui-icon-seek-next{background-position:-32px -160px;}.ui-icon-seek-prev{background-position:-48px -160px;}.ui-icon-seek-end{background-position:-64px -160px;}.ui-icon-seek-start{background-position:-80px -160px;}.ui-icon-seek-first{background-position:-80px -160px;}.ui-icon-stop{background-position:-96px -160px;}.ui-icon-eject{background-position:-112px -160px;}.ui-icon-volume-off{background-position:-128px -160px;}.ui-icon-volume-on{background-position:-144px -160px;}.ui-icon-power{background-position:0 -176px;}.ui-icon-signal-diag{background-position:-16px -176px;}.ui-icon-signal{background-position:-32px -176px;}.ui-icon-battery-0{background-position:-48px -176px;}.ui-icon-battery-1{background-position:-64px -176px;}.ui-icon-battery-2{background-position:-80px -176px;}.ui-icon-battery-3{background-position:-96px -176px;}.ui-icon-circle-plus{background-position:0 -192px;}.ui-icon-circle-minus{background-position:-16px -192px;}.ui-icon-circle-close{background-position:-32px -192px;}.ui-icon-circle-triangle-e{background-position:-48px -192px;}.ui-icon-circle-triangle-s{background-position:-64px -192px;}.ui-icon-circle-triangle-w{background-position:-80px -192px;}.ui-icon-circle-triangle-n{background-position:-96px -192px;}.ui-icon-circle-arrow-e{background-position:-112px -192px;}.ui-icon-circle-arrow-s{background-position:-128px -192px;}.ui-icon-circle-arrow-w{background-position:-144px -192px;}.ui-icon-circle-arrow-n{background-position:-160px -192px;}.ui-icon-circle-zoomin{background-position:-176px -192px;}.ui-icon-circle-zoomout{background-position:-192px -192px;}.ui-icon-circle-check{background-position:-208px -192px;}.ui-icon-circlesmall-plus{background-position:0 -208px;}.ui-icon-circlesmall-minus{background-position:-16px -208px;}.ui-icon-circlesmall-close{background-position:-32px -208px;}.ui-icon-squaresmall-plus{background-position:-48px -208px;}.ui-icon-squaresmall-minus{background-position:-64px -208px;}.ui-icon-squaresmall-close{background-position:-80px -208px;}.ui-icon-grip-dotted-vertical{background-position:0 -224px;}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px;}.ui-icon-grip-solid-vertical{background-position:-32px -224px;}.ui-icon-grip-solid-horizontal{background-position:-48px -224px;}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px;}.ui-icon-grip-diagonal-se{background-position:-80px -224px;}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{-moz-border-radius-topleft:4px;-webkit-border-top-left-radius:4px;-khtml-border-top-left-radius:4px;border-top-left-radius:4px;}.ui-corner-all,.ui-corner-top,.ui-corner-right,.ui-corner-tr{-moz-border-radius-topright:4px;-webkit-border-top-right-radius:4px;-khtml-border-top-right-radius:4px;border-top-right-radius:4px;}.ui-corner-all,.ui-corner-bottom,.ui-corner-left,.ui-corner-bl{-moz-border-radius-bottomleft:4px;-webkit-border-bottom-left-radius:4px;-khtml-border-bottom-left-radius:4px;border-bottom-left-radius:4px;}.ui-corner-all,.ui-corner-bottom,.ui-corner-right,.ui-corner-br{-moz-border-radius-bottomright:4px;-webkit-border-bottom-right-radius:4px;-khtml-border-bottom-right-radius:4px;border-bottom-right-radius:4px;}.ui-widget-overlay{background:#aaaaaa url(../images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.30;filter:Alpha(Opacity=30);}.ui-widget-shadow{margin:-8px 0 0 -8px;padding:8px;background:#aaaaaa url(../images/ui-bg_flat_0_aaaaaa_40x100.png) 50% 50% repeat-x;opacity:.30;filter:Alpha(Opacity=30);-moz-border-radius:8px;-khtml-border-radius:8px;-webkit-border-radius:8px;border-radius:8px;}.ui-resizable{position:relative;}.ui-resizable-handle{position:absolute;font-size:0.1px;z-index:99999;display:block;}.ui-resizable-disabled .ui-resizable-handle,.ui-resizable-autohide .ui-resizable-handle{display:none;}.ui-resizable-n{cursor:n-resize;height:7px;width:100%;top:-5px;left:0;}.ui-resizable-s{cursor:s-resize;height:7px;width:100%;bottom:-5px;left:0;}.ui-resizable-e{cursor:e-resize;width:7px;right:-5px;top:0;height:100%;}.ui-resizable-w{cursor:w-resize;width:7px;left:-5px;top:0;height:100%;}.ui-resizable-se{cursor:se-resize;width:12px;height:12px;right:1px;bottom:1px;}.ui-resizable-sw{cursor:sw-resize;width:9px;height:9px;left:-5px;bottom:-5px;}.ui-resizable-nw{cursor:nw-resize;width:9px;height:9px;left:-5px;top:-5px;}.ui-resizable-ne{cursor:ne-resize;width:9px;height:9px;right:-5px;top:-5px;}.ui-selectable-helper{position:absolute;z-index:100;border:1px dotted black;}.ui-slider{position:relative;text-align:left;}.ui-slider .ui-slider-handle{position:absolute;z-index:2;width:1.2em;height:1.2em;cursor:default;}.ui-slider .ui-slider-range{position:absolute;z-index:1;font-size:.7em;display:block;border:0;background-position:0 0;}.ui-slider-horizontal{height:.8em;}.ui-slider-horizontal .ui-slider-handle{top:-.3em;margin-left:-.6em;}.ui-slider-horizontal .ui-slider-range{top:0;height:100%;}.ui-slider-horizontal .ui-slider-range-min{left:0;}.ui-slider-horizontal .ui-slider-range-max{right:0;}.ui-slider-vertical{width:.8em;height:100px;}.ui-slider-vertical .ui-slider-handle{left:-.3em;margin-left:0;margin-bottom:-.6em;}.ui-slider-vertical .ui-slider-range{left:0;width:100%;}.ui-slider-vertical .ui-slider-range-min{bottom:0;}.ui-slider-vertical .ui-slider-range-max{top:0;}.ui-datepicker{width:17em;padding:.2em .2em 0;display:none;}.ui-datepicker .ui-datepicker-header{position:relative;padding:.2em 0;}.ui-datepicker .ui-datepicker-prev,.ui-datepicker .ui-datepicker-next{position:absolute;top:2px;width:1.8em;height:1.8em;}.ui-datepicker .ui-datepicker-prev-hover,.ui-datepicker .ui-datepicker-next-hover{top:1px;}.ui-datepicker .ui-datepicker-prev{left:2px;}.ui-datepicker .ui-datepicker-next{right:2px;}.ui-datepicker .ui-datepicker-prev-hover{left:1px;}.ui-datepicker .ui-datepicker-next-hover{right:1px;}.ui-datepicker .ui-datepicker-prev span,.ui-datepicker .ui-datepicker-next span{display:block;position:absolute;left:50%;margin-left:-8px;top:50%;margin-top:-8px;}.ui-datepicker .ui-datepicker-title{margin:0 2.3em;line-height:1.8em;text-align:center;}.ui-datepicker .ui-datepicker-title select{font-size:1em;margin:1px 0;}.ui-datepicker select.ui-datepicker-month-year{width:100%;}.ui-datepicker select.ui-datepicker-month,.ui-datepicker select.ui-datepicker-year{width:49%;}.ui-datepicker table{width:100%;font-size:.9em;border-collapse:collapse;margin:0 0 .4em;}.ui-datepicker th{padding:.7em .3em;text-align:center;font-weight:bold;border:0;}.ui-datepicker td{border:0;padding:1px;}.ui-datepicker td span,.ui-datepicker td a{display:block;padding:.2em;text-align:right;text-decoration:none;}.ui-datepicker .ui-datepicker-buttonpane{background-image:none;margin:.7em 0 0 0;padding:0 .2em;border-left:0;border-right:0;border-bottom:0;}.ui-datepicker .ui-datepicker-buttonpane button{float:right;margin:.5em .2em .4em;cursor:pointer;padding:.2em .6em .3em .6em;width:auto;overflow:visible;}.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current{float:left;}.ui-datepicker.ui-datepicker-multi{width:auto;}.ui-datepicker-multi .ui-datepicker-group{float:left;}.ui-datepicker-multi .ui-datepicker-group table{width:95%;margin:0 auto .4em;}.ui-datepicker-multi-2 .ui-datepicker-group{width:50%;}.ui-datepicker-multi-3 .ui-datepicker-group{width:33.3%;}.ui-datepicker-multi-4 .ui-datepicker-group{width:25%;}.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header{border-left-width:0;}.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header{border-left-width:0;}.ui-datepicker-multi .ui-datepicker-buttonpane{clear:left;}.ui-datepicker-row-break{clear:both;width:100%;font-size:0em;}.ui-datepicker-rtl{direction:rtl;}.ui-datepicker-rtl .ui-datepicker-prev{right:2px;left:auto;}.ui-datepicker-rtl .ui-datepicker-next{left:2px;right:auto;}.ui-datepicker-rtl .ui-datepicker-prev:hover{right:1px;left:auto;}.ui-datepicker-rtl .ui-datepicker-next:hover{left:1px;right:auto;}.ui-datepicker-rtl .ui-datepicker-buttonpane{clear:right;}.ui-datepicker-rtl .ui-datepicker-buttonpane button{float:left;}.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current{float:right;}.ui-datepicker-rtl .ui-datepicker-group{float:right;}.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header{border-right-width:0;border-left-width:1px;}.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header{border-right-width:0;border-left-width:1px;}.ui-datepicker-cover{display:none;display:block;position:absolute;z-index:-1;filter:mask();top:-4px;left:-4px;width:200px;height:200px;}.slick-header-columns{background:url('../images/header-columns-bg.gif') repeat-x center bottom;border-bottom:1px solid silver;}.slick-header-column{background:url('../images/header-columns-bg.gif') repeat-x center bottom;border-right:1px solid silver;}.slick-header-column:hover,.slick-header-column-active{background:white url('../images/header-columns-over-bg.gif') repeat-x center bottom;}.slick-headerrow{background:#fafafa;}.slick-headerrow-column{background:#fafafa;border-bottom:0;height:100%;}.slick-row.ui-state-active{background:#F5F7D7;}.slick-row{position:absolute;background:white;border:0px;line-height:20px;}.slick-row.selected{z-index:10;background:#DFE8F6;}.slick-cell{padding-left:4px;padding-right:4px;}.slick-group{border-bottom:2px solid silver;}.slick-group-toggle{width:9px;height:9px;margin-right:5px;}.slick-group-toggle.expanded{background:url(../images/collapse.gif) no-repeat center center;}.slick-group-toggle.collapsed{background:url(../images/expand.gif) no-repeat center center;}.slick-group-totals{color:gray;background:white;}.slick-cell.selected{background-color:beige;}.slick-cell.active{border-color:gray;border-style:solid;}.slick-sortable-placeholder{background:silver !important;}.slick-row.odd{background:#fafafa;}.slick-row.ui-state-active{background:#F5F7D7;}.slick-row.loading{opacity:0.5;filter:alpha(opacity = 50);}.slick-cell.invalid{border-color:red;-moz-animation-duration:0.2s;-webkit-animation-duration:0.2s;-moz-animation-name:slickgrid-invalid-hilite;-webkit-animation-name:slickgrid-invalid-hilite;}@-moz-keyframesslickgrid-invalid-hilite{from{box-shadow:0 0 6px red;}to{box-shadow:none;}}@-webkit-keyframesslickgrid-invalid-hilite{from{box-shadow:0 0 6px red;}to{box-shadow:none;}}.slick-header.ui-state-default,.slick-headerrow.ui-state-default{width:100%;overflow:hidden;border-left:0px;}.slick-header-columns,.slick-headerrow-columns{position:relative;white-space:nowrap;cursor:default;overflow:hidden;}.slick-header-column.ui-state-default{position:relative;display:inline-block;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;height:16px;line-height:16px;margin:0;padding:4px;border-right:1px solid silver;border-left:0px;border-top:0px;border-bottom:0px;float:left;}.slick-headerrow-column.ui-state-default{padding:4px;}.slick-header-column-sorted{font-style:italic;}.slick-sort-indicator{display:inline-block;width:8px;height:5px;margin-left:4px;margin-top:6px;float:left;}.slick-sort-indicator-desc{background:url(images/sort-desc.gif);}.slick-sort-indicator-asc{background:url(images/sort-asc.gif);}.slick-resizable-handle{position:absolute;font-size:0.1px;display:block;cursor:col-resize;width:4px;right:0px;top:0;height:100%;}.slick-sortable-placeholder{background:silver;}.grid-canvas{position:relative;outline:0;}.slick-row.ui-widget-content,.slick-row.ui-state-active{position:absolute;border:0px;width:100%;}.slick-cell,.slick-headerrow-column{position:absolute;border:1px solid transparent;border-right:1px dotted silver;border-bottom-color:silver;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;vertical-align:middle;z-index:1;padding:1px 2px 2px 1px;margin:0;white-space:nowrap;cursor:default;}.slick-group{}.slick-group-toggle{display:inline-block;}.slick-cell.highlighted{background:lightskyblue;background:rgba(0,0,255,0.2);-webkit-transition:all 0.5s;-moz-transition:all 0.5s;-o-transition:all 0.5s;transition:all 0.5s;}.slick-cell.flashing{border:1px solid red !important;}.slick-cell.editable{z-index:11;overflow:visible;background:white;border-color:black;border-style:solid;}.slick-cell:focus{outline:none;}.slick-reorder-proxy{display:inline-block;background:blue;opacity:0.15;filter:alpha(opacity = 15);cursor:move;}.slick-reorder-guide{display:inline-block;height:2px;background:blue;opacity:0.7;filter:alpha(opacity = 70);}.slick-selection{z-index:10;position:absolute;border:2px dashed black;} \ No newline at end of file diff --git a/css/slick-default-theme.css b/css/slick-default-theme.css deleted file mode 100644 index 3b6601b..0000000 --- a/css/slick-default-theme.css +++ /dev/null @@ -1,118 +0,0 @@ -/* -IMPORTANT: -In order to preserve the uniform grid appearance, all cell styles need to have padding, margin and border sizes. -No built-in (selected, editable, highlight, flashing, invalid, loading, :focus) or user-specified CSS -classes should alter those! -*/ - -.slick-header-columns { - background: url('../images/header-columns-bg.gif') repeat-x center bottom; - border-bottom: 1px solid silver; -} - -.slick-header-column { - background: url('../images/header-columns-bg.gif') repeat-x center bottom; - border-right: 1px solid silver; -} - -.slick-header-column:hover, .slick-header-column-active { - background: white url('../images/header-columns-over-bg.gif') repeat-x center bottom; -} - -.slick-headerrow { - background: #fafafa; -} - -.slick-headerrow-column { - background: #fafafa; - border-bottom: 0; - height: 100%; -} - -.slick-row.ui-state-active { - background: #F5F7D7; -} - -.slick-row { - position: absolute; - background: white; - border: 0px; - line-height: 20px; -} - -.slick-row.selected { - z-index: 10; - background: #DFE8F6; -} - -.slick-cell { - padding-left: 4px; - padding-right: 4px; -} - -.slick-group { - border-bottom: 2px solid silver; -} - -.slick-group-toggle { - width: 9px; - height: 9px; - margin-right: 5px; -} - -.slick-group-toggle.expanded { - background: url(../images/collapse.gif) no-repeat center center; -} - -.slick-group-toggle.collapsed { - background: url(../images/expand.gif) no-repeat center center; -} - -.slick-group-totals { - color: gray; - background: white; -} - -.slick-cell.selected { - background-color: beige; -} - -.slick-cell.active { - border-color: gray; - border-style: solid; -} - -.slick-sortable-placeholder { - background: silver !important; -} - -.slick-row.odd { - background: #fafafa; -} - -.slick-row.ui-state-active { - background: #F5F7D7; -} - -.slick-row.loading { - opacity: 0.5; - filter: alpha(opacity = 50); -} - -.slick-cell.invalid { - border-color: red; - -moz-animation-duration: 0.2s; - -webkit-animation-duration: 0.2s; - -moz-animation-name: slickgrid-invalid-hilite; - -webkit-animation-name: slickgrid-invalid-hilite; -} - -@-moz-keyframes slickgrid-invalid-hilite { - from { box-shadow: 0 0 6px red; } - to { box-shadow: none; } -} - -@-webkit-keyframes slickgrid-invalid-hilite { - from { box-shadow: 0 0 6px red; } - to { box-shadow: none; } -} diff --git a/css/slick.grid.css b/css/slick.grid.css deleted file mode 100644 index 6a416db..0000000 --- a/css/slick.grid.css +++ /dev/null @@ -1,157 +0,0 @@ -/* -IMPORTANT: -In order to preserve the uniform grid appearance, all cell styles need to have padding, margin and border sizes. -No built-in (selected, editable, highlight, flashing, invalid, loading, :focus) or user-specified CSS -classes should alter those! -*/ - -.slick-header.ui-state-default, .slick-headerrow.ui-state-default { - width: 100%; - overflow: hidden; - border-left: 0px; -} - -.slick-header-columns, .slick-headerrow-columns { - position: relative; - white-space: nowrap; - cursor: default; - overflow: hidden; -} - -.slick-header-column.ui-state-default { - position: relative; - display: inline-block; - overflow: hidden; - -o-text-overflow: ellipsis; - text-overflow: ellipsis; - height: 16px; - line-height: 16px; - margin: 0; - padding: 4px; - border-right: 1px solid silver; - border-left: 0px; - border-top: 0px; - border-bottom: 0px; - float: left; -} - -.slick-headerrow-column.ui-state-default { - padding: 4px; -} - -.slick-header-column-sorted { - font-style: italic; -} - -.slick-sort-indicator { - display: inline-block; - width: 8px; - height: 5px; - margin-left: 4px; - margin-top: 6px; - float: left; -} - -.slick-sort-indicator-desc { - background: url(images/sort-desc.gif); -} - -.slick-sort-indicator-asc { - background: url(images/sort-asc.gif); -} - -.slick-resizable-handle { - position: absolute; - font-size: 0.1px; - display: block; - cursor: col-resize; - width: 4px; - right: 0px; - top: 0; - height: 100%; -} - -.slick-sortable-placeholder { - background: silver; -} - -.grid-canvas { - position: relative; - outline: 0; -} - -.slick-row.ui-widget-content, .slick-row.ui-state-active { - position: absolute; - border: 0px; - width: 100%; -} - -.slick-cell, .slick-headerrow-column { - position: absolute; - border: 1px solid transparent; - border-right: 1px dotted silver; - border-bottom-color: silver; - overflow: hidden; - -o-text-overflow: ellipsis; - text-overflow: ellipsis; - vertical-align: middle; - z-index: 1; - padding: 1px 2px 2px 1px; - margin: 0; - white-space: nowrap; - cursor: default; -} - -.slick-group { -} - -.slick-group-toggle { - display: inline-block; -} - -.slick-cell.highlighted { - background: lightskyblue; - background: rgba(0, 0, 255, 0.2); - -webkit-transition: all 0.5s; - -moz-transition: all 0.5s; - -o-transition: all 0.5s; - transition: all 0.5s; -} - -.slick-cell.flashing { - border: 1px solid red !important; -} - -.slick-cell.editable { - z-index: 11; - overflow: visible; - background: white; - border-color: black; - border-style: solid; -} - -.slick-cell:focus { - outline: none; -} - -.slick-reorder-proxy { - display: inline-block; - background: blue; - opacity: 0.15; - filter: alpha(opacity = 15); - cursor: move; -} - -.slick-reorder-guide { - display: inline-block; - height: 2px; - background: blue; - opacity: 0.7; - filter: alpha(opacity = 70); -} - -.slick-selection { - z-index: 10; - position: absolute; - border: 2px dashed black; -} diff --git a/images/actions.gif b/images/actions.gif deleted file mode 100644 index 026dd108edb433b2592695258f5a26fead66a7bf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 170 zcmV;b09F4-Nk%w1VG{ro0HOx~|NsBFxw+Wb*vQDp?Ck8An3!f}X8-^HA^8LW000L7 zEC2ui022Tc000ATcq&u=F9=14Bp_=*L>SeujoScvWSU8mntBE1j)XI(_C4mS;s1uf zhSviMhXoE{2?+d-ON=ebbPB1`WJl1!Tm@h-z_A1mz|k1KkDxg* Yaq4(_7$y}LDRLkb2QUy25)=slJ8Q{ByZ`_I diff --git a/images/ajax-loader-small.gif b/images/ajax-loader-small.gif deleted file mode 100644 index 5b33f7e54f4e55b6b8774d86d96895db9af044b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1849 zcma*odr(tX9tZI2z31lM+(&YVk%mZ}5P~KlG2s=WSbGzm0!x7^P##Mnh7t-jP!X0Q zk_SQ}Po-L1tlDK;6l?(>v)e5ZBQx4|Y-Q?nr@Px3?9h(3ZWr3^tj=`TP57gKr87N$ zp2wWee1GRRCwo_xahnw)5cxNPJbCg2L6DV|6`#+yw6v6!mDS$f9-JvFD^n;GQ&UrZ zzh5jCkByB101O60U0q#p_1BM>Cv-vP?&s4@g_((4_1L=L$(a91)0=J91Gas#R{McE znYG^9*0A5YZ>#;~+Wkn(W5B0^yELIYLP!K}mB~<)AM@1&nqekynuaEGqPrzoH|KodRXJy)%+w_fu3nE5>@Bd_b zqC$EQ;{c`T&?EsNO|igL9gC7Ygxv?aQUEXMq?~>wg{EyW;VcJ37CUF#HjrT=KQO_* zS>M9yydXk18D(+QDJ1>r);Lav_uYKp$T?4vr{Q$lTo&pKv^?(>L-)G2*lwH!Ah7k? z7oH<8h-(KTKt5V6$8gF)C7Io&P5=SjTh)=zV=E2EUhQZP##L8S{d%UK>>+y82>+FV+#^BzW7u3F)Bb>=lYQ%%j`F>ASe zo*cw@V#u6T`A2He;70mR(V&iV&-7{qP~=SRf&jm9-T{*ZeZ}$rd0#6c&fLG^xJcf5 z+p<`wJYgW+_s*V{uI$nMB;%8`S_3>PfGOj3Rq}@Cx^+j?rk92fANSFDBYnOqQ>Vdj z)(|$AhP4t&Lb=Gvo2#3Gl%9<=Gv`Mz?Po@P4iLF!x}GUWJICDlFk-hS^Whyh7x~VH z@0vD1>HYD4&e+~yzS*-sFR{9`{QEEZO1zg7>R&7cHts-6j!xHVdA8eI+ZlVzd%`es zJT@$#GX(gvCJ1oJN%yLBK}{V=V;seo;!w|Yte!W1%5qLNFWqvZW>h&IiH+oPT=b@E zPhGzv5=(Un*X>v`>%8h_nj^NdYcE6NHS_ifkCV$*D)Tqrbu`s;<=t<4 zAHNqNV?6(g<1PY-w@#I-WYFViz?9TrkMr)u0g`O`u|>T;k|2sV*YF^punvT;$SuTy{j3Gv)yqD!R_CF>yR)MzmmYS5v+~R zXAdD%ng9?df;wd8GxR#%3O+gz};Vo;)sK%Bj-q>Oq%R7JU-KD?vYu>#2UjaDo z&8$>5xW~?KPD_#XFToU1hIb*VOMidUr6iYiO0N|i-7s`T8!cFT`rN!^1Pt78J93i6 z5HI1wIM$94m{3SLDvISDe6$ZG1;eq_D9RTaaC>=cO{@Bs>$IlPCPJJ$h$)-3vzNUQ6OsN#_zWxey!_9%hxwH2_dEJi=yY|1c7nDm2_Lm!Cof8-R_+9UkS zcBE(o47yE)oMR(Q=dp1a2wTX5KvvGyLqlWTa7V&!A*|w|)ax~1_~aJ0=_Lilg*0iQk7#ZD EAHN$8j{pDw diff --git a/images/ajax-loader.gif b/images/ajax-loader.gif deleted file mode 100644 index 70235ac559aa6539cd1e0b339e454dca7954be56..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1849 zcmb8wdr(wW90&00z31+|dmp=p6=_+?S(Zh2mtA*xEvuN_T|f|sfCP$1?1D=!K`tah zg}^=#7I`YEn5GsLiWcBwdV#nyqdhE{oSI%U+E9aO2AZXlWxM>*U)vx3{ycNeoX>oJ z=Qk&H{W`-c3q&CD8-hG|@E~zkar^$Q!Q17VxYG7q#bzY@9^g~HU26X=ek6j|OQk5v5C3rpO*WC|jlIKZVV)}&yvIZ* z&RRyWHaW-YtIueYvfiVlY zd>!Y*xWmb`dD$l_QO{EPQcjPSbB(rZ1W@FNYk>eicf=0k1f982e|)GB5eH{a*^iSK z-ZD>TD|YKi*VRJ@By)M%`%*qhtJJ`)1ehX9TOzA^yj8nhWqh`;c~=LW(cjroVr3PEah0@*1KtXUZ71r4fF?~p2{R1=E(ruZUJw0O~&^o_!?FV%B(tTj?DxcJI-yO^Q)#RQ&;U=4ge zyA9!@KqFunR7gA$MG?`vH2f4xJX)m;Y*|P~xqoKp)fLA58Ao=$bLE>Z^=qg95`bNv zlww7dYyXkuiSg2|D==P^?3oH}(akP95$m)Z(`iIImh_&|gbAh}K0GPz2i@mf_O!TQ zi0AWRBx}P6Oem!6MY*y@KH7LMQqTjeZg`adGj?w1O`p zE{u;nECn>li=@_K1WV#HL&c~7Aw)Y+p3tVE`C1%b4F{s+7`8RArq2Ir7Bp2wN99+k zv2<8d^t!i(i5)QK6x|iXFLvBr9V+N}c@C_9GF&%VYfLtXnWU}5y&nbR-=$?&*n%cz zY)DQ&=y4gdIr~zW#A73q5jL9#fiNdd&)_}`Yb&>*kj$#o)w6D8;F0>bODmb0i6Kgz ziqdbVL!?&mPFQ-cfg#(H=4Mnu9c|l9C)ERz?$)1|i`P)Cj?RQ9SVL~s8a0iz!Zpzwgs_B%QhUom-<}n0&9icf^J^0QAJIbn E0~KQ$>;M1& diff --git a/images/arrow_redo.png b/images/arrow_redo.png deleted file mode 100644 index 4f7f55d6f2f41754d868fe3ffb85212b57d939ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 572 zcmV-C0>k}@P)NJfvOJ_l;h3;paDW_*7b%<&cRZj{sffO2Rl5h%hh1`v?3y*u&33Na0JSeF* zS=E%TtxTZ0yc+RX9Et?F!(Ct`n20yoX=Fdn4LrH@qCXA*UE}9cF7Mr+IFN3r-h*Wp z5ev#d7qogj(pqmu&{zQgaR3mNNp5dS*H`TZod`)}Kfgo%Qyyy;jA-1Ige1((=Y}V) zyu4g0(6Mt{4T`n|$ua(Rd_mOc$l0-rr3-5xJUlJq)I|Se*SZu)wN;i^AwUd;F9p!J z;qyugylckurL#By&vbP0_981efn4O!8Em+9GSMOgxn90uI+t=?X{w%KSLxQ=W zNZ=|^qBcjl{o0`vO&O9MGPRMalPM+&lH>R7a^!B!2O9*oQojI+$7t(~S^v8L0000< KMNUMnLSTZd%K~Ho diff --git a/images/arrow_refresh.png b/images/arrow_refresh.png deleted file mode 100644 index 0de26566d4102eec080253c2d08985ec58b14838..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 685 zcmV;e0#f~nP)`!iy8(2_#ButL^3%VaH2WCpD^U)OZxp@C)2#hU)y+@T%ZNzJigNk%37 zz-WYJwT%teVfiEI+B*@v4ey@58(ld4VY_&5-ox`e@AKg+0U-I`y79bmuw_~y6+4rZ zBG5EdFDS+@M0OSE`>d7SUDOzKZ&h*4eB1iX7tOd9RiYtW2mQ--bUahxr1`i{RG@dM zL#}_X=DDO1{;UI$pFu=dLYT_=5d8WC-sLfjr7UO-HKMAwa=!>)kEhvuwre zuW3yF@ZxFCkI*+ad|5kOX%5zu8IQjhan)UqgSrFGA_0nQFn@Z08DSEUToCSz4Z1ls z&fDbq$T&7|6iq$_uDI$@q1_kQ@dfqk*0>{SDL6V)94@)ete)j++*>bIc9sj}Y;R1o z#OpH+Yt-^4wfv{nern^iVag8c|ld3 zfw*RuJ)53N+g?6V%;4+AGwtA31YGgH1C<`IzMQjhaW6&S-tHKv^^B bLn6cdCt=3@AFg}=8p+`4>gTe~DWM4f6ACMK diff --git a/images/arrow_right_spearmint.png b/images/arrow_right_spearmint.png deleted file mode 100644 index 277ddde3848ebd8322c3d1d047314faee841078e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 128 zcmeAS@N?(olHy`uVBq!ia0vp^+#t-s1|(OmDOUqh?w&4=ArhC9fBgS%&%9B>IpO@` zD!m|)dZr|~B+>uukMeJrJP6{se88{gQN6<-zK)rlfjmJc+h%=f|9dwf(9%g4aS)WM)q*I}2pNLl&_yaJNO5p*5tmXOS`@)TClx^? zLr~D*BBB<=EKauh#M)qKk?`3{Am-k4pF>GBRXIdnXwgxf;#;tS zH}7Viy}J7L_=a4_pDT=tXs*0eMhG6Zb#y>P_pYHDXy{EbBG3MHYY5F=D{ zeGXJ~T12ydf(OP9Oh{cbU6C$SrHV>WfeMQ)OU&LIx)tk;533RC=7@m1pT$}?%3r<-J$Ez&e(l@%_gtJbL)NP)2Fa&r_Le z5{PJBRUsxY2hb5_gc@OvsMTs%305(;?8Be+^HdxEFy)t9l6d0g(aBgOdQoYZU-$%- zUpY|aS1OBC7D(o1r#?2L4Ch?42gdeK_g~xh{`c9xy2S;l>xhaz_@CeS6BGG`lIj)Z Q?EnA(07*qoM6N<$f+QpeF#rGn diff --git a/images/bullet_blue.png b/images/bullet_blue.png deleted file mode 100644 index 79d978c36a5bd95d9a255d96a06970f2ca7e98d7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 241 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`J3L(+Lo80eowS?tPymB#f0Bd1 zl|x=GF$dzpPjn??PjdhN%8Sz+w@DVg~unR@e6pyL@H@@U)!y% p@iLf0V7f$QuN~L__?>nSc&BIwO{&S)mjU{L!PC{xWt~$(695MMT*?3d diff --git a/images/bullet_star.png b/images/bullet_star.png deleted file mode 100644 index 142ea482a527acce8042adbb0e42f19a083b677f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 279 zcmV+y0qFjTP)!4VR90UF@T9gOGS^q(7QZ-)!X?pU+0f>#k27ttf(%9D4@PEOAqW^~u zMg9N(KNyJZ{~tNx3=~WL-_}-(-yo1pXU`@AHAMn(CJ@g8;&vc50b&uLoH>5)fJ|?0 zZv21ah7V9fHW1GN;!Ys80E%h=lp=GiDS6HR(Y$mjf|BP%MYIzyvB;KaSZ z|G)pW|LOl<|F!??-|Kcgc<+DvgMw@II$YZrRIfEXT=-vjgJuNtl!gZ9|F<`4M)agO z*_yF#o^U6i&G%qSY3%>#hAQp<)Bl{0H#bo9+{VOkVzPWyu<80%pk)l6u6{1-oD!M< D81X<* diff --git a/images/bullet_toggle_plus.png b/images/bullet_toggle_plus.png deleted file mode 100644 index a96505342397eca5b40c767dfaba1422f5fc8cce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 156 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6l097;KaSZ z|G)pW|LOl<|F!??-|Kcgc<+DvgMw@II$YZrRImN}&wr%-pZ|en3A_PJOniUyk1tCw zoW%L{hR7MGB4)@S9f&o11MQ?xO!cw>Iaru@>)1r=M0E4P+ZZ7mII zIULeKgDU;7-PP>>t`%1~&E2Rss zmoK_ev+zRIlAE$=f(b?AOC-O$p6(*{}&|uUzqrRQPTg#DgT!MQR@E+qCNbq%HSb);wrm_poFAqn?eAdp14k-|}?A)@PHqKcBko;gs#qr|o(M^svF)$&Z_>+Z^f#E-c4#;{?o?zg3!SJ6`#$&^S1A0Mo zOd^|}cuZ7utZDF2x^QZKw}f%r8-))i=S!QW?1-3n$c0l#`Co>>jVJxRayDfzPBbdB z@d(x%aio0O$kr>VAGIN%@zD`^9;T^(W-@hfEzoLM$MA{iMIURU+pmy=lUPqr(`R8} zQ7}$#a!{(>!NA06dGg`n cVfH2m1!<$04Gs?(n;)OBm5A{(P++hI0EaJh%K!iX diff --git a/images/collapse.gif b/images/collapse.gif deleted file mode 100644 index 01e691450c48632dc92a40a8c2b509bf99987225..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 846 zcmZ?wbhEHb$FyaIl$)g-gQVfI}k_i-?$k!^A~S3=)P?0Tm31hZvXy UI%HM~I5JIC=Ul}jAi!V^09i~Z*8l(j diff --git a/images/comment_yellow.gif b/images/comment_yellow.gif deleted file mode 100644 index df7158a47713eaba957b506048235a44ea204b7e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 257 zcmV+c0sj6+Nk%w1VGsZi0K@S*iEN$I#V?9xjA@}>Xoga7rz|MtxP@t*(f zd;jyT|Ma^5_}BT?cIUw`|L>9O(^dcLa{u(R|L~Uo`Rwb_Gym_4@6JNjmm=$!66@0} z+@UAy$58+O|NsC0A^8LW0018VEC2ui01yBW000Gk;3tk`NqT6imL3tk1c6!B=8c}C zdO&j^2-_#;K`0>!^J;~z6ZDHs9;W~Bl^UnZaZ;+06}(2;hL4znh3g1tj?q9BWLTXmFHw$R##p;r zBQ^cJY+{EqA`BNg9%VC3E+2Y^xsC{^qlWD&?DuESSzucVyPDRa?iEqfp6~i-rMp-) zyX&T8vH2O03uP+cAYy>f*>D3nRM?)bO!v_-&w?I=tSjt(P&IuC6tRy$nuAFbW+2E2 zoRFHzX0vC32nEPPkr%|Ikd;%S3?b-0EcNDFYjQ;`_kB@IVVi__GS9c$ZLXc-u;1VX zNs=NBQA|=qGU&L(2$OD*7$~SHFn!x2Hg-XzXw-3wC@hV1KLy7d%DO?nOtfHpXn4H9 z!6>BxP}lztb(|qOAQf~F?>~iuYR5x-1qHa}o3wFjiO7{F7ky+9>{l_~7*uhoi3tvx z*aO9tG|&yxb|bro*L7KQ17f%)(o}_|3Y=|QaxnvoP|BpGl28(a5-db-0nV1Ev(tiF zP7Sy!Hd_vI$$)Dea5E#h(I_|`^{gV_zKX1}j~&oUS++;Vk{YSk=USs diff --git a/images/dk_arrows_white.png b/images/dk_arrows_white.png deleted file mode 100644 index f1a31f02deaa6130a09685551773ae46ed1f44c6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 960 zcmaJ=%Wl&^6m?6XC8Df>)yM&{A@cG2uxD*R@pA0Z)hVBrzvFo3|_=anOa6=5bJ=SxcBaeiVn_;9h zj5%8nYI|wydSlGM01tym7k^%U5kcVV;!(+gPHf;&aBx9!=i;#IU5q`=7x#8SEk#@) z#LNY0cp4=r)y1hU;`3}<7Qqz4#=1B&)pJ_FAQXd=1PdN4Lr_*ErMOe6RGt78Do}>1 ztf&R0f{H4F5X_s%qf!3^wM}~-i?4KX#8`}Ec`}(ulcGfEP*yZe%QRHAz!8PyJYsHI zh?4w5!NiG2gO~**0-2&aAZJV$xzpJZ!gwhgCG%_I7bd4}EGrVsjp<-lE>@q^Tgq$vJu{9!$BqI_7qf-Ko>jhD^p5h$` zHKT;Nk%yb6E^-Aa2z*pEp;fOopk}FMMX_K#`|7Y^S1VP;w2KR_NxZWVM{L3Muei#! z+^iJBm`64-4PIj3rX&Q@Bcou27o!XfsFfRnh>nx7iSum1vk9VG|= diff --git a/images/down.gif b/images/down.gif deleted file mode 100644 index 9bd9447552a7ee77440787a945ce61f26bd9a079..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 59 zcmZ?wbhEHbHn@mvv4FO#mmc9hm?C diff --git a/images/drop.png b/images/drop.png deleted file mode 100644 index ad0ca7dcfb07652ddb22638782385973ee2dce65..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 766 zcmVnMo$E=Fzli zl4?r}V&XzAB7zI|f(Y&eS1w!${uzIOZ(M1+6GbT^ZN=77V{C0}(oWmNOeZsw$IN7A zt}~IiaM=SFE+6MR=R4oImm-AVBtZ`^Ymw6G0W~Srs9g2`q}sJR)gx-^P>)_#|ABtT zGJWEpQj6 z*y7s5VyB})Y|7~NWaxbr8Hvm#@}wVnx9OhV{UVE6!ZTZSl#*f-ml zK+;%$v#~z6TfRgM*CEk`z0Qq7ZiWe=ts79IEF8;3iV-2}UdO~JdM`dTQ>2mh^Vy-h zBB8?ZnuBInLM#$Tq^2N70ae}r<$A^IGI$8QE;G&37;9~lz|N55 wNB+ylNki=!?LfXpN*Cdi2IidfTm2DW00*T>?HIC{y8r+H07*qoM6N<$f;q2dXaE2J diff --git a/images/editor-helper-bg.gif b/images/editor-helper-bg.gif deleted file mode 100644 index 2daa973bc525c83872e4a0357b756727ca7eaa49..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1164 zcmZ?wbhEHbYF9fS*UcPPtW$y zAC1e8&dfF|PCBwPc)8m=``RLrQxnq8EOwjBBztRfX25cv`Ch$VTVDjNcFA@+x-0Z` z$h!EwVWQk+I+s?bT%LD!*S7528}iR;rCMLljonfHbWv~gw)MC6)cyQ-m%G9s_D~1E z_O{tGJ|^wyRkXimZCQ|baE5+%pU=&W=_lt~H_Pen+LC&1xwbUl+*x0Syf|Ke-=FW_A3xmP?_a;~@8`E4XYbdGudo02^{2Q(!*@ZAgvM7- z(;qZ(zPtXQo}W)bvFVLvgkp=h*9^s0F29Ng?L2uLi`o^-G?F^SX01r-(n;F!s9yG{ Q#^WB7YZ;4s85tR@0d|1E6951J diff --git a/images/expand.gif b/images/expand.gif deleted file mode 100644 index 1b24ef1248de55c6140895f6760758a1579f14cf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 851 zcmZ?wbhEHb$FyaIl$)g-gPK!J(0fMMMlpH!w1DF=kxpFl=aGX3~-h X>0od?I!Q%XL14k81*aJp85yhr3QsCm diff --git a/images/header-bg.gif b/images/header-bg.gif deleted file mode 100644 index fe7dd1c1ebedc02d4e1aabf91fe43e1bcae824e7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 872 zcmZ?wbhEHbWMt4`Y-eC-S#V_a@i#lpzuR@;-JVPD_g;R#|H_AhS3exO_Tk8lkH>C) zJaOyO$=jb!-~D{{-ski8KVNw8<p u#Ky(P`xTtKWIQ)5IXPLwHYwudrlqH+8zi5a#gWNI1yM!7mYUVnf4WCKe8!85Rx=4Ga>@3=9GS G4Auam1ttan diff --git a/images/header-columns-over-bg.gif b/images/header-columns-over-bg.gif deleted file mode 100644 index f9c07af1347fc44dcabb1a9d22458deb195fd92b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 823 zcmZ?wbhEHbWMU9wXlGzpb>`d67r$SB{>v~5Mnhoag@EEu7NDp9Gw6W44$2b@93l*? Z95Nmo7Bnz$2y4ZhC{SczU}R*l1^^j55kLR{ diff --git a/images/help.png b/images/help.png deleted file mode 100644 index 85eca0950fbe19e870f7701b0bfac6b9a96b317b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 345 zcmV-f0jB>q#r{5kRU>(_?Ij~}ZrFfcGd)iA&mE_?s&(f^0@ zatoLS@jrk5y!OzcLs~!$%wWYJ6G0N!UT*&1F{$)_aaGFy+O}LUA0+C;Z2Vs4NP z3?QpPCS858@&D4zJzzRBKNd`b#J_y`avrEq42W4l&iDbc8YBtAArZd+XDw?6vq9oO z!+ru4$^kJa1IRNllR;ANF3+ z|Now@9z3X(ePaYrF?UIjUoeB9lCeu@TF1;)|Ccw$i2#K;3p^r=fwDp%%y{W;-5;Q! zScz*yiE~kEVo7Fxo&AvGDG%5p1n_cixq%|F?hQA KxvXd}YS~ diff --git a/images/listview.gif b/images/listview.gif deleted file mode 100644 index 3ec25ca71979f1e2f0632060d8a295b5c668cb4b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2380 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 SWx5Yk$KdJe=d#Wzp$Pz3g-HAW diff --git a/images/pageplus.png b/images/pageplus.png deleted file mode 100644 index 46f553065508d114ace6476508f17972c2a0663a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 224 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!D3?x-;bCrM;bFq_W2nPqp?T7vkfLyi!pAgso z|Nr-N^~~t+3jm5Rl?3?(GyIR9sI(Qx<1FxqEM{Qf76M_$OLy!300qTLTq8=Hi&7Iy zGV}8kLNaqx84N7+jm-58jcg4jZ3e242dN0oPb(=;EJ|hYO-wGz&rMCqOjK~oEJ`iU zFUl@fu-KY$sRCq}r;B3<$IRpe2c{n0fFu7ITOP!yFff!Ev9h|G>f`}cFnGH9xvX&N*bUuz`Z)T=HlYuZ}Y zeygzWRpG1!El$hZvwt_r|DUA)f2P^*T~hxSS{;~Hd~tr+?PVcn7nJ|s>;C_U{Qs+x z|L@EFzbF6WpvwOv`u|U<{6DMo|De(TQ%3)-*Q=zkmP#{rBIW-~a#rXBY*eApi>j9S{SQ7Z^Co85VNLyhu55pgBO~OvC~f z#cpY{ECY**BaPhhCQ>pg29KJ!Bn{a9%_wkcX=G%c&GEuP=}@Brb9|1$N5+HAjczst z8j1@KOm5T;TJVE`@%RBbMU#dF2@eyvm28Yu5{d%cC(23`Dey2XaN<#PIHVNGq{?}y Jk&%(X8US2;)^z{? diff --git a/images/resultset_first.png b/images/resultset_first.png deleted file mode 100644 index b03eaf8b5416fa6878165d95116e73003f8445f5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 522 zcmV+l0`>igP)ufs8f5Kzx*fI63}@)AAFXgQp7K#X5)&2^7g z_9O9^7^ARqyc%qAP{1M7?|}io8xW>dotf=a%%ZSXBBI&Rf<-t`#(~H!2g~*8&15{# zVXjXMwHZYVJ6lk!gb6?r$g;SuO>QI;yeQ51#0H@Z6sk_ajqECPZEqLq!PMf5MQ5gS1i(Owi(ut_CY*w|Psf-Iy6=08Y` zHnsuDs6h)+OwcBqopImX_v1c`5LkrSCWWWFUvW71z%eN$cB714YVYtd`}$X<%JbQ) zM;;CHJDu;#-swg0iul07{S&4s!M>4O+`c|6_tW_i^y+I%|aPsIlEx5K=^ki~8LwqDy-)t}thx1D9 zB6|#ECQ%2a60OQQ<{6-)5|okv)6E>1Xpv+@iIv@MJ8v15 zR{N~1_2z$e&R$WgNhIQelIl1rK}5XruIN#GDZA_4bJqcqID*^mXXFcgt1K5iK7HPL zwLW*@#tu()#Cyd@CHc^75Ul6pYT4PCpSeBE)hh4bY>IO8de(|Ml<%@O-40!dwX61{2C5s-llVw2V@@N0oo_PPieZ!0Y2~+R( zk!(QTf=B;X9DnzJ@u9c>OP4(U@7{849!UlyO@H`*;lVfmCvAW6f9CF&{}ZR*{jXDW zb_vl21ozzrYJBy-Vb$aRjjJF3@7nm}zjw#A|58cE9uZ}LbIY~=6ShA8U$XeY|MDdd zfQCH!?_7WRzhvaG%|sbsT7Kz&`}!yUix%Do#>T_{_Ei`DO9UTSBkH=Hg(w4*^UnUS zTk-IJ<+2C=ZObqG7Z2FGlB7VCN;>(!bn*TFHYMl(i+Sx`L~=ArL>~EXU3lidsO!!J pWF;gqzXSh89JkLNxXeT<1_12n>%V}Y6R`jQ002ovPDHLkV1iLCz99er diff --git a/images/resultset_previous.png b/images/resultset_previous.png deleted file mode 100644 index 18f9cc10948f025fde708328fa704b520161e5f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 389 zcmV;00eb$4P)K{b{Xc8(tN&i@ zH%T)fYQpV#rAr?FpSkE_eXe+_wJd|K3f{{%aMTC(eL? z&YO?2=RWv9b;pbUjjJF3FIss2fAiYM|D{t;5@!?n%vQ}6um-u(1``H~0!(`ViJ zU$yMvf616*#2KJfaGFIu@9Y|n)@%Q3RzCcnHskjH!iD$#iw7MbEf6JRj;ypTzwkeA z{@wqXv+w*Db>B;RG>UocU1Xkp@_*9QTmMBIcK#6ciK{6%`g178e&67#J8C85tTH8XFrM z92^`S9UUGX9v>ecARr(iAt53nA|oRsBqSsyB_$>%CMPE+C@3f?DJd!{Dl021EG#T7 zEiEoCE-x=HFfcGNF)=bSGBYzXG&D3dH8nOiHa9mnI5;>tIXOByIy*Z%JUl!-Jv}}? zK0iM{KtMo2K|w-7LPJACL_|bIMMXwNMn^|SNJvOYNl8jdN=r*iOiWBoO-)WtPESuy zP*6}&QBhJ-Qd3h?R8&+|RaI72R##V7SXfwDSy@_IT3cINTwGjTU0q&YUSD5dU|?Wj zVPRroVq;@tWMpJzWo2e&W@l$-XlQ6@X=!R|YHMq2Y;0_8ZEbFDZf|dIaBy&OadC2T za&vQYbaZreb#-=jc6WDoczAeud3kzzdV70&e0+R;eSLm@et&;|fPjF3fq{a8f`fyD zgoK2Jg@uNOhKGlTh=_=ZiHVAeii?YjjEszpjg5|uj*pLzkdTm(k&%*;l9Q8@l$4Z} zm6ev3mY0{8n3$NEnVFiJnwy)OoSdAUot>VZo}ZteprD|kp`oIpqNAguq@<*!rKP5( zrl+T;sHmu^si~@}s;jH3tgNi9t*x%EuCK4Ju&}VPv9YqUva_?Zw6wIfwY9dkwzs#p zxVX5vxw*Q!y1To(yu7@dCU$jHda z$;ryf%FD~k%*@Qq&CSlv&d<-!(9qD)(b3Y<($mw^)YR0~)z#M4*4Nk9*x1lt)=I7_<=;-L_>FMg~>g((4 z?Ck9A?d|UF?(gsK@bK{Q@$vHV^7Hfa^z`)g_4W4l_V@Sq`1ttw`T6?#`uqF){QUg= z{r&#_{{R2~A^8LV00930EC2ui0096U000OS0Po$iSC8I2dGX-ATgb4XLx%wY06VC` Bj$r@* diff --git a/images/screen_adminvpn.png b/images/screen_adminvpn.png deleted file mode 100644 index 937f975baa9e0313cae47046d28fa3b04be260ce..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67536 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 R51)aOh^MQc%Q~loCIDZo7(W02 diff --git a/images/tag_red.png b/images/tag_red.png deleted file mode 100644 index d290fcd791ec801429fc32f166878c1f22c7e8ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 537 zcmV+!0_OdRP)9$ZJdfg>dNa3k@+gXb+5WI?DVQXrenz6(((GBwjQDwIm4il%AcoXa`^^Z7hdsnkJ; zLQ~B~VP1>KfzLPemr z1_MfgSS+>!QN)h=QW&U-F$O*tlO1;O+i&0xcVJhS7NpIU!??8IJ9;JZa@0Sos$>nmY*ioO0=@QcIVtsi5e!m5AT!1AL z^1RdOPzrdx-Vgr+2wLc^FaV991g3& zU{I%@Xg)ESMSaKoE`SsW1Z?7_b^2gkvC1LyQ2@#3^VvKek4|Q%)46BgXv&DUBPdr>$12LrM(Cr5I|C#1xbu5|>)lhG!5j zp}PE)Xu^dU5*Pp7zt-OS+iME|2>$W}|8AgOYvNm$>YcwbP^~udrei(&4_HX}D(*)H z%3uROc+`d2dpEo{R_M0WsPGioz9m+yNO|L-4%2ZLrs7U?ZnvV+TZ|HikV=0tUa~cY zGp6UWSiUUfQ!P)%oCw4mZqj-Bh8>RhTHU=Tm8j{pZ@+-cb9aFU(;&HV(~}EJ0um$rdG3hCK$ps2$#04jmf` zl#YuMVp|^dVU0Z}noRv+8_ZV&n0xTR8@9rDq=V^1kBP7a?pq6(bva6$!k0qpM{#-t zW=Bqw$}olWZ*%&iHn<{YxWZ;=)>=}qk|Hjb`Z7oa7A;$lpnJC+?#L({H^XQP%0OTx zMV1`uTS=76SJQPfm84|_)GN&(u#&>jZ0bi*Ci|t!C&VDIo(s&`8Na#(0*lTc$;$Yb aYkUR1qNzMm3Ij+00000N1x91EQ4=4yQ7#`R^ z$vje}bP0l+XkK DSH>_4 diff --git a/images/ui-bg_flat_75_ffffff_40x100.png b/images/ui-bg_flat_75_ffffff_40x100.png deleted file mode 100644 index ac8b229af950c29356abf64a6c4aa894575445f0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 178 zcmeAS@N?(olHy`uVBq!ia0vp^8bF-F!3HG1q!d*FsY*{5$B>N1x91EQ4=4yQYz+E8 zPo9&<{J;c_6SHRil>2s{Zw^OT)6@jj2u|u!(plXsM>LJD`vD!n;OXk;vd$@?2>^GI BH@yG= diff --git a/images/ui-bg_glass_55_fbf9ee_1x400.png b/images/ui-bg_glass_55_fbf9ee_1x400.png deleted file mode 100644 index ad3d6346e00f246102f72f2e026ed0491988b394..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 120 zcmeAS@N?(olHy`uVBq!ia0vp^j6gJjgAK^akKnour0hLi978O6-<~(*I$*%ybaDOn z{W;e!B}_MSUQoPXhYd^Y6RUoS1yepnPx`2Kz)7OXQG!!=-jY=F+d2OOy?#DnJ32>z UEim$g7SJdLPgg&ebxsLQ09~*s;{X5v diff --git a/images/ui-bg_glass_65_ffffff_1x400.png b/images/ui-bg_glass_65_ffffff_1x400.png deleted file mode 100644 index 42ccba269b6e91bef12ad0fa18be651b5ef0ee68..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 105 zcmeAS@N?(olHy`uVBq!ia0vp^j6gJjgAK^akKnouqzpV=978O6-=0?FV^9z|eBtf= z|7WztIJ;WT>{+tN>ySr~=F{k$>;_x^_y?afmf9pRKH0)6?eSP?3s5hEr>mdKI;Vst E0O;M1& diff --git a/images/ui-bg_glass_75_dadada_1x400.png b/images/ui-bg_glass_75_dadada_1x400.png deleted file mode 100644 index 5a46b47cb16631068aee9e0bd61269fc4e95e5cd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 111 zcmeAS@N?(olHy`uVBq!ia0vp^j6gJjgAK^akKnouq|7{B978O6lPf+wIa#m9#>Unb zm^4K~wN3Zq+uP{vDV26o)#~38k_!`W=^oo1w6ixmPC4R1b Tyd6G3lNdZ*{an^LB{Ts5`idse diff --git a/images/ui-bg_highlight-soft_75_cccccc_1x100.png b/images/ui-bg_highlight-soft_75_cccccc_1x100.png deleted file mode 100644 index 7c9fa6c6edcfcdd3e5b77e6f547b719e6fc66e30..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 101 zcmeAS@N?(olHy`uVBq!ia0vp^j6j^i!3HGVb)pi0l#Zv1V~E7mPmYTG^FX}c% zlGE{DS1Q;~I7-6ze&TN@+F-xsI6sd%SwK#*O5K|pDRZqEy< zJg0Nd8F@!OxqElm`~U#piM22@u@8B<moyKE%ct`B(jysxK+1m?G)UyIFs1t0}L zemGR&?jGaM1YQblj?v&@0iXS#fi-VbR9zLEnHLP?xQ|=%Ihrc7^yPWR!tW$yH!zrw z#I2}_!JnT^(qk)VgJr`NGdPtT^dmQIZc%=6nTAyJDXk+^3}wUOilJuwq>s=T_!9V) zr1)DT6VQ2~rgd@!Jlrte3}}m~j}juCS`J4(d-5+e-3@EzzTJNCE2z)w(kJ90z*QE) zBtnV@4mM>jTrZZ*$01SnGov0&=A-JrX5Ge%Pce1Vj}=5YQqBD^W@n4KmFxxpFK`uH zP;(xKV+6VJ2|g+?_Lct7`uElL<&jzGS8Gfva2+=8A@#V+xsAj9|Dkg)vL5yhX@~B= zN2KZSAUD%QH`x>H+@Ou(D1~Pyv#0nc&$!1kI?IO01yw3jD0@80qvc?T*Nr8?-%rC8 z@5$|WY?Hqp`ixmEkzeJTz_`_wsSRi1%Zivd`#+T{Aib6-rf$}M8sz6v zb6ERbr-SniO2wbOv!M4)nb}6UVzoVZEh5kQWh_5x4rYy3c!871NeaM(_p=4(kbS6U#x<*k8Wg^KHs2ttCz<+pBxQ$Z zQMv;kVm5_fF_vH`Mzrq$Y&6u?j6~ftIV0Yg)Nw7JysIN_ z-_n*K_v1c&D}-1{NbBwS2h#m1y0a5RiEcYil+58$8IDh49bPnzE7R8In6P%V{2IZU z7#clr=V4yyrRe@oXNqbqo^^LvlLE?%8XaI&N(Np90-psU}7kqmbWk zZ;YBwJNnNs$~d!mx9oMGyT( znaBoj0d}gpQ^aRr?6nW)$4god*`@Uh2e+YpS@0(Mw{|z|6ko3NbTvDiCu3YO+)egL z>uW(^ahKFj>iJ-JF!^KhKQyPTznJa;xyHYwxJgr16&Wid_9)-%*mEwo{B_|M9t@S1 zf@T@q?b2Qgl!~_(Roe;fdK)y|XG0;ls;ZbT)w-aOVttk#daQcY7$cpY496H*`m@+L zeP#$&yRbBjFWv}B)|5-1v=(66M_;V1SWv6MHnO}}1=vby&9l+gaP?|pXwp0AFDe#L z&MRJ^*qX6wgxhA_`*o=LGZ>G_NTX%AKHPz4bO^R72ZYK}ale3lffDgM8H!Wrw{B7A z{?c_|dh2J*y8b04c37OmqUw;#;G<* z@nz@dV`;7&^$)e!B}cd5tl0{g(Q>5_7H^@bEJi7;fQ4B$NGZerH#Ae1#8WDTH`iB&) zC6Et3BYY#mcJxh&)b2C^{aLq~psFN)Q1SucCaBaBUr%5PYX{~-q{KGEh)*;n;?75k z=hq%i^I}rd;z-#YyI`8-OfMpWz5kgJE3I!3ean6=UZi!BxG7i(YBk? z02HM7wS0)Wni{dWbQMRtd-A)_Az!t>F;IwWf~!*)-Az4}yryNkz&9)w>ElA80Oc`6 zHo#9H!Y3*Qx9n@Jn)!w6G^hb;e_n8zpIyXCN`JFkPc)^Q?2MsLNFhMgrcZI-<#1ne zjH;KFf?4eAT9mQZ}ZfHLGA#d%s;SZK4p0FwZT2S^{ zQ2BG1xJsbK6?yrHTjJi|5C0u=!|r!?*4FL%y%3q#(d+e>b_2I9!*iI!30}42Ia0bq zUf`Z?LGSEvtz8s``Tg5o_CP(FbR0X$FlE0yCnB7suDPmI2=yOg^*2#cY9o`X z;NY-3VBHZjnVcGS){GZ98{e+lq~O$u6pEcgd0CrnIsWffN1MbCZDH<7c^hv+Z0Ucf0{w zSzi^qKuUHD9Dgp0EAGg@@$zr32dQx>N=ws`MESEsmzgT2&L;?MSTo&ky&!-JR3g~1 zPGTt515X)wr+Bx(G9lWd;@Y3^Vl}50Wb&6-Tiy;HPS0drF`rC}qYq22K4)G#AoD0X zYw$E+Bz@Zr^50MAwu@$?%f9$r4WHH?*2|67&FXFhXBrVFGmg)6?h3^-1?t;UzH0*I zNVf9wQLNLnG2@q>6CGm>&y|lC`iCFfYd}9i%+xkl^5oBJ?<;aneCfcHqJh7Yl5uLS z9Fx-(kMdcNyZejXh22N{mCw_rX1O!cOE&3>e(ZH81PR95wQC37En4O{w;{3q9n1t&;p)D%&Z%Nw$gSPa!nz8Slh7=ko2am)XARwOWw zpsz0~K!s{(dM$NB=(A=kkp>T(*yU6<_dwIx>cH4+LWl282hXa6-EUq>R3t?G2623< z*RwTN%-fgBmD{fu*ejNn)1@KG?Sg*8z3hYtkQJQjB6 zQ|x>wA=o$=O)+nLmgTXW3_6diA;b4EY{*i*R%6dO2EMg z@6g?M3rpbnfB@hOdUeb96=~I?OIA3@BWAGmTwiQ{x5Cqq<8c10L!P zd@Qk^BseTX%$Q7^s}5n%HB|)gKx}H$d8Sb$bBnq9-AglT2dGR2(+I;_fL|R4p$odJ zllfb0NqI)7=^z~qAm1V{(PkpxXsQ#4*NH9yYZ`Vf@)?#ueGgtCmGGY|9U#v|hRdg- zQ%0#cGIfXCd{Y)JB~qykO;KPvHu|5Ck&(Hn%DF~cct@}j+87xhs2ew;fLm5#2+mb| z8{9e*YI(u|gt|{x1G+U=DA3y)9s2w7@cvQ($ZJIA)x$e~5_3LKFV~ASci8W}jF&VeJoPDUy(BB>ExJpck;%;!`0AAo zAcHgcnT8%OX&UW_n|%{2B|<6Wp2MMGvd5`T2KKv;ltt_~H+w00x6+SlAD`{K4!9zx z*1?EpQ%Lwiik){3n{-+YNrT;fH_niD_Ng9|58@m8RsKFVF!6pk@qxa{BH-&8tsim0 zdAQ(GyC^9ane7_KW*#^vMIoeQdpJqmPp%%px3GIftbwESu#+vPyI*YTuJ6+4`z{s? zpkv~0x4c_PFH`-tqafw5)>4AuQ78SkZ!$8}INLK;Egr;2tS18hEO5=t;QDmZ-qu?I zG+=DN`nR72Xto{{bJp||`k}-2G;5#xg8E~xgz22)^_Z;=K|4@(E&5J)SY2of=olcw z5)@L)_Ntcm!*5nEy0M9v0`S33;pO4TN;>4(Z+19p_0>u#e-vE zXCU(6gAvu~I7Cw(xd%0e59MNLw^U37ZDbsBrj%eDCexw8a3G`nTcXVNL6{B7Hj@i& zbVB{;ApEtHk76q08DJ48dSxd$C(;$K6=FpU<~l9pVoT9arW^Vu{%Bcn4`eIpkOVC| z$)AKYG_`ypM{0@BUb3^9lqi_c?ONH|4UJMJWDowMVjacycX7}9g={O7swOB+{;+?; zjBo!9?+nd)ie#x5IbFW-zBOo0c4q@9wGVt5;pNt`=-~Zgcw#*`m($6ibxtZ`H=e=} zF#GZ~5$%AUn};8U#tRem0J(JTR}d4vR(dgK2ML~lZsPhayJ2h1%sD4FVst| zKF)+@`iNzLRjg4=K8@**0=5cE>%?FDc({I^+g9USk<8$&^qD~@%W0i4b|yMG*p4`N zh}I!ltTRI8Ex$+@V{02Br%xq#O?UlhO{r8WsaZnZCZq0MK9%AXU%MDLT;3=0A9(BV z9VxxxJd7jo$hw3q;3o?yBLmA=azBUrd9>-<_ANs0n3?-Ic*6&ytb@H~?0E(*d>T5n z-HiH2jsDf6uWhID%#n>SzOqrFCPDfUcu5QPd?<(=w6pv1BE#nsxS{n!UnC9qAha1< z;3cpZ9A-e$+Y)%b;w@!!YRA9p%Kf9IHGGg^{+p`mh;q8i7}&e@V3EQaMsItEMS&=X plT@$;k0WcB_jb;cn%_Idz4HO$QU*abf4}+wi?e96N>fbq{{i|W0@(ln diff --git a/images/ui-icons_2e83ff_256x240.png b/images/ui-icons_2e83ff_256x240.png deleted file mode 100644 index 09d1cdc856c292c4ab6dd818c7543ac0828bd616..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4369 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 diff --git a/images/ui-icons_454545_256x240.png b/images/ui-icons_454545_256x240.png deleted file mode 100644 index 59bd45b907c4fd965697774ce8c5fc6b2fd9c105..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4369 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 oBo%DI*Kv;w;*%(i9W@f3_WCF#rGn diff --git a/images/ui-icons_cd0a0a_256x240.png b/images/ui-icons_cd0a0a_256x240.png deleted file mode 100644 index 2ab019b73ec11a485fa09378f3a0e155194f6a5d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4369 zcmd^?`8O2)_s3@pGmLE*`#M>&Z`mr_kcwz5Nh&gy7G+@45H9p05OJ)J0CH2owMSaGIN$+5!N; z<11j56?ANg=9hMl-IBGX-T8hf$N$b*H?$f4Xt&I`oABt1nR=k%#z{{*a!Axm|t}hCz zJg0Ln7;M4Zjx{$mwhMW+kWN;|j>qTx_-zNX!GzqEZRa}QF8_0yk6+=w}$QD^&hM4%OkT=uh$q9;5u~NL-I+NQyaVc|3l+iWI5~|(hA-G z08i8AMr@{uY_cWTxo^y|Qyb33mlZLvc7H2Zm~>mB7&=-1X^@|D z&0*~i?GBE&NM(Pv&Vt^zWu_bD3e|R?wTL{cSFwD^Ij9v%g=aLY@1U2Bxn#Te*{>%D zOOW-O-bfnJ7T8jd<*>8`Z2DsFQi~S$%^npJwXam5>>p zMd}QEjM)@~##n$LXpz1Hkl|2UGXi-JFFePXBWL+-5f%!S>L#KL3>Vl0w#d^21Jn<~_7q zWx^Xg1(>PsPGO&cu{S;(pRQ;=Vw2J<9NdQVWx<+g-`ia=Q@puS)75M+?u>DTa95e9 zt#1T?#a)uWC>Mia!K6>g|InPW{&Kp9$tC_3*;R_Xsz6^Eu|xW1$6j#0?XLs7^l+%O zlxddE)h^|=K(2UqS*0ECuDe0ic|H_^t*VOoTCKx0Qmn_^LyJ|b8l$Jvl3{2=3x8&7 z$1ik&YG>w#@x@y~$r`fhlUDo;yXecc6$`30m`3K8s{k8G&3RVp8n#|l6h(Xw`Axw9 z%6Y^J6k0P@4YAuSd%q7=eg)&u8EMoEmq$CWj1GY|rGQWw3ida!FHk&wCqrQh_0Bcw z!ZBS3CbxgZ+}~wzgGIQ#QId%T_TE~_qdUqxjqS#8#jPxdwO@(@-5_nSP&uT?aGYYD z6km36K9=gjUjImwO=5Hl#u85VF?r0HbW)#h^SR|s_L47Tl$&Z&Rz*ksl!t*(2O2;D z+8`6$qpLn}LchhCmv*X}moGMX5?F@juGeHQAddAn}0~r zS_0|d3*0v%Y)8+8K{ zGyoYPb|W9Grm9M4E?vb^@16ePbI4omZv+(NoZ##fLUmKlB(G_jEbtDCM*27t$v`JovAZa+%*Q5dDXF*Ftt*n!O>#ohCM4lZ)h5rdKV-3A za}2AO6@!`W>ROk5FN*>2Zza^Z%}8KT%*jBGH|rml2X1LR{wZhWx8V4>|5i}; zMnLIHn3!^)`87GYh}&Y`KMwyLbA#^pch}Z!`@P_qH&N^LS9SxpEy8mc!wFusq&Z@` zeO}<6PC@VNaII|=n(^cNUiLseig*$;NjG7;IwvfYCBN>kzv@v-V2eBQZ@oIs^)NLqMR935k|1}U;5<{s(Ebdj4r`?QtrrAPfQooq zmPs_(YTy|??+nitNIFDoR7~qLPPFFCf^_~8OUt{#!|9o*3Q{!@9ZAI$7O~piD!;WX8#v&RxNH27i59$`1{o zEYU_zE{bKEI%f3BbE0Fc;f2!4LjUlC`wgh4@R{1?O78r5t$hWKiLV{#QWWq{QZiPx zm3?x$;&DDRVt0SByRiFczw$-e)GSvpCRbzk^=E zz=(+LjEc{Ps_2(OYg=G(93!oS=IeJ|WA8STv+LgI*Oj1c-QC06N~mvJ&KKx{arGp5 zswvJ6{%BvBYo>#2$%O$~TITuh?Rr^jCpAUXh)}m74`O|aOU>w2KI`k<#efwa5=-l4Xx!o>Z9Evg`RLN5W7SQp3$@D3_hY4EV!0( ztMm6>zBcgY{RvHZ{9Ey&&)jr2B4s0qDPBUh1ITaAp&>rj3ng*B=VGXz* zs@eR<;J(XkpD6Q1U3}#FR)wlafiFMU(-=&e9(eQ`isrS-9aNwJ)7frS8RiXM4*SbC zL|4*c?h^jfYvSOpn%Z$W?C|TuZ;uy2pFWHXuGW`ZkGV&kPJsKqJJQ!NswAE!!cb2k zumi=AE$YIkm})cVlg>nn&PBjBRI*@mfhhRMsa5U8k#A!ztfiw)d7I_UyAif8$5sJ9a7WUv5!o%fL z(J7-8EQzv1YIc)BNeWkLK~m%y4vqe&q@|_ZR5;eC3-9rkf*T{_19jtuWKhdW4Bn|~ zZ-YyFLN!k)0AKg{dO)|v3K?=oy+dzb4%T1F4}JsByncB1Z(`2p@O0!E!JQelouN^* z%Q^YfQUh66D$Zx-RDZvLctsr9`_+1p#tz&4SMd@i_-8()tyg3OyhU~?Gt#-a{NKFN z0VGf+AH%@o6;-_*?$$T4QX-f_>Ny-5CV8Ccq+@>gNSeovbFr0@b}RiTcJbLx>ws&r zsvY!rR{4al#MpVKut~?&kTmF>_v3UaC!gvuxgg%5-{l{20}~&F6CUarF9N=u)BG71 zoQDlAwT+T=mfo&$Xy%4-kmW;4wuh6{{ABClybHV6L>t&k4?9_Ny8A_^?)ff#dEjhL z2RbC~cFVbz^fJ`$I0%prYc0g-9(7X3eUp}^#Mzv)Z1EsGW;qr3cY$+e2HU5d_O9L% zpbljP*1!A0PqpzNo3W&y(hD87qgweq5YQWYEkxrOuSain2-q@Z*P`x*ht-9)Fr5Ho zSTKduvc9h6`S^#$i)LgjDi3_PQ+RbaGP!!di^Y;4kB0lGo$y{if)rJIaXTbpRgO#B z1El6|18;s}$0FRjgK-7~ZwmI`_1{a`32+Y>&O_iTpm%vz6hNkjGR(#*! zpfJ2>OAQbTFba9S3j9BlRHXaG{)Zt(J<3ppA?}j+7F#{bV{M7zU)5e@~R&J_xf$+GKK~ z3{R;Y9fZGe^ifEqKL;!VMXv26=R~^TG(#*2!JKCWoo&c^$utAs#Gfq-?t!c&9TH5- zj&i5L4NWbdNs*djvsY}bC&ddUbh=iyc0;3-@Y#d^s8|Ql{ax(yenFcG#i|K%lRxy| zFys4w!@EPXp2AsbMUGc*eP|7uliAq-O6~(+MR>V(EZTd&9G+MY&gF2lZ=I8j*o`OC z`AxrmOGMeD=H_9Cq47clT|h34>-EI=%;E!my;o&wU(aKV&PymBzrV9q2uA62XS@JrjKYANZAU>;8mag#BU?Nv`+ZVhlAPV`HF_gKY_O zhbV2L`8qvR&f=@M5vH~geD+L&*L2s<)|5)clA0yt9TM{X)iWtx@wJO_!{vR#|AD6t z*OAg2&P_i8jjW5y0DdtOGcqvrCHD*1Uq_q1ZQmngPnf!2fHizH%sSX>#$2Rh!>1ur z+s(*-)abDuePc6~XNG8m@|KMXHVM#G4?~+V z1z!An!D0GD-7WqXE8ddUXLkI%u01$fTEhhyphCpI>2{dBys(sIwpFWDz^b5`?95CI)&S&yhXMcq diff --git a/images/user_identity_plus.gif b/images/user_identity_plus.gif deleted file mode 100644 index b276a81c786561a82422555b598bbc07e63bf82b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 546 zcmZ?wbhEHb!lchi~8b7yvx zhlk4?-L>w+!;3T8%cr#zy}WUJPJ8K&IgO7`ZD`I3>n%>ZR_fBqWElN7JYt`JY zvd_2nAK0?|(~Z5KA6>k%Ywn`{iZiJ$v>W7x^ZI1k2m*@ZCy08t@!iZBj>ivKDus3QITpr{ordpS$wvCCZh^f8h0exu+Lk$Bh>jMgM zY_{C4H(guY@7{B9dwAQ^-Q(GF_Xm%jK7af2_1kx^T;F{3c<=V*+cWo;Mh0sD^HazS diff --git a/include/ajax.php b/include/ajax.php deleted file mode 100644 index 515a5f1..0000000 --- a/include/ajax.php +++ /dev/null @@ -1,181 +0,0 @@ -prepare('SELECT * FROM user'); - $req->execute(); - - if($data = $req->fetch()) { - do{ - $list[] = array("user_id" => $data['user_id'], - "user_pass" => $data['user_pass'], - "user_mail" => $data['user_mail'], - "user_phone" => $data['user_phone'], - "user_online" => $data['user_online'], - "user_enable" => $data['user_enable'], - "user_start_date" => datefromsql($data['user_start_date']), - "user_end_date" => datefromsql($data['user_end_date'])); - } while($data = $req->fetch()); - - echo json_encode($list); - } - else{ - $list = array(); - echo json_encode($list); - } - } - // Log du VPN - else if($_POST['select'] == "log"){ - // Création du LIMIT de la requête SQL en fonction de la page - if(isset($_POST['pageIndex'], $_POST['pageSize'])) { - $page_actuelle = ($_POST['pageIndex']-1) * $_POST['pageSize']; - $page_max = $_POST['pageSize']; - $page = " LIMIT " . $page_actuelle . ", " . $page_max; - } - else { - $page = ""; - } - - // Sélection des logs - $string_requete = 'SELECT * FROM log ORDER BY log_id DESC' . $page; - $req = $bdd->prepare($string_requete); - $req->execute(); - - $list = array(); - - while($data = $req->fetch()) { - // C'est mieux exprimé en Mo ou Ko - $received = ($data['log_received'] > 100000) ? $data['log_received']/100000 . " Mo" : $data['log_received']/100 . " Ko"; - $sent = ($data['log_send'] > 100000) ? $data['log_send']/100000 . " Mo" : $data['log_send']/100 . " Ko"; - $start_time_array = explode(' ', $data['log_start_time']); - $start_time = datefromsql($start_time_array[0]) . ' ' . $start_time_array[1]; - $end_time_array = explode(' ', $data['log_end_time']); - $end_time = datefromsql($end_time_array[0]) . ' ' . $end_time_array[1]; - - // On ajoute à notre tableau la nouvelle ligne de log - array_push($list, array("log_id" => $data['log_id'], - "user_id" => $data['user_id'], - "log_trusted_ip" => $data['log_trusted_ip'], - "log_trusted_port" => $data['log_trusted_port'], - "log_remote_ip" => $data['log_remote_ip'], - "log_remote_port" => $data['log_remote_port'], - "log_start_time" => $start_time, - "log_end_time" => $end_time, - "log_received" => $received, - "log_send" => $sent)); - } - - // Récupération du nombre lignes de log - $req_nb = $bdd->prepare('SELECT COUNT(*) AS nb FROM log'); - $req_nb->execute(); - $data_nb = $req_nb->fetch()['nb']; - - // On affiche la réponse JSON - $result = array('Total' => $data_nb, 'Rows' => json_encode($list)); - - echo json_encode($result); - } - // Affichage des personnes pouvant se connecter à l'interface d'administration - else if($_POST['select'] == "admin"){ - $req = $bdd->prepare('SELECT * FROM admin'); - $req->execute(); - - if($data = $req->fetch()) { - do{ - $list[] = array("admin_id" => $data['admin_id'], - "admin_pass" => $data['admin_pass'], - ); - } while($data = $req->fetch()); - - echo json_encode($list); - } - else{ - $list = array(); - echo json_encode($list); - } - } - } - // Ajout d'un utilisateur du VPN - else if(isset($_POST['add_user'])){ - $id = $_POST['user_id']; - $pass = ""; - $mail = ""; - $phone = ""; - $online = 0; - $enable = 1; - $start = "0000-00-00"; - $end = "0000-00-00"; - - $req = $bdd->prepare('INSERT INTO user (user_id, user_pass, user_mail, user_phone, user_online, user_enable, user_start_date, user_end_date) - VALUES (?, ?, ?, ?, ?, ?, ?, ?)'); - $req->execute(array($id, $pass, $mail, $phone, $online, $enable, $start, $end)); - } - // Modification d'un utilisateur du VPN - else if(isset($_POST['set_user'])){ - $valid = array("user_id", "user_pass", "user_mail", "user_phone", "user_enable", "user_start_date", "user_end_date"); - $set_field = $set_value = array(); - - // Algo pour mettre à jour seulement ce qui a été modifié - foreach($_POST as $key => $value){ - if(in_array($key, $valid)){ - array_push($set_field, $key . "=?"); - - if($key == "user_pass") - if($value == "") - array_push($set_value, $value); - else - array_push($set_value, sha1($value)); - else if($key == "user_start_date" || $key == "user_end_date") - array_push($set_value, datetosql($value)); - else - array_push($set_value, $value); - } - } - // Construction de la requête - array_push($set_value, $_POST['set_user']); - - $req_string = 'UPDATE user SET ' . implode(',', $set_field) . ' WHERE user_id = ?'; - $req = $bdd->prepare($req_string); - $req->execute($set_value); - } - // Suppression d'un utilisateur du VPN - else if(isset($_POST['del_user_id'])){ - $req = $bdd->prepare('DELETE FROM user WHERE user_id = ?'); - $req->execute(array($_POST['del_user_id'])); - } - // Ajout d'un admin - else if(isset($_POST['add_admin'])){ - $req = $bdd->prepare('INSERT INTO admin(admin_id, admin_pass) VALUES (?, ?)'); - $req->execute(array($_POST['admin_id'], "")); - } - // Modification d'un admin - else if(isset($_POST['set_admin'])){ - $mdp = $_POST['admin_pass'] ? sha1($_POST['admin_pass']) : ""; - - $req = $bdd->prepare('UPDATE admin SET admin_id = ?, admin_pass = ? WHERE admin_id = ?'); - $req->execute(array($_POST['admin_id'], $mdp, $_POST['set_admin'])); - } - // Suppression d'un admin - else if(isset($_POST['del_admin_id'])){ - $req = $bdd->prepare('DELETE FROM admin WHERE admin_id = ?'); - $req->execute(array($_POST['del_admin_id'])); - } - -?> diff --git a/include/config.php b/include/config.php new file mode 100644 index 0000000..8d6a3de --- /dev/null +++ b/include/config.php @@ -0,0 +1,7 @@ + diff --git a/include/config.php.example b/include/config.php.example deleted file mode 100644 index 818ae45..0000000 --- a/include/config.php.example +++ /dev/null @@ -1,7 +0,0 @@ - diff --git a/include/connexion_bdd.php b/include/connect.php similarity index 55% rename from include/connexion_bdd.php rename to include/connect.php index 4d3ff8f..9808810 100644 --- a/include/connexion_bdd.php +++ b/include/connect.php @@ -2,5 +2,5 @@ require(dirname(__FILE__) . "/config.php"); $options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION; - $bdd = new PDO("mysql:host=$hote;port=$port;dbname=$bd", $utilisateur, $mdp, $options); + $bdd = new PDO("mysql:host=$host;port=$port;dbname=$db", $user, $pass, $options); ?> diff --git a/include/functions.php b/include/functions.php new file mode 100644 index 0000000..7e7dd8b --- /dev/null +++ b/include/functions.php @@ -0,0 +1,37 @@ +' . $str . ''; + } + + function printSuccess($str) { + echo '

'; + } + + function isInstalled($bdd) { + $req = $bdd->prepare("SHOW TABLES LIKE 'admin'"); + $req->execute(); + + if(!$req->fetch()) + return false; + + return true; + } + + function hashPass($pass) { + return password_hash($pass, PASSWORD_DEFAULT); + } + + function passEqual($pass, $hash) { + return password_verify($pass, $hash); + } + +?> \ No newline at end of file diff --git a/include/grids.php b/include/grids.php new file mode 100644 index 0000000..6313a96 --- /dev/null +++ b/include/grids.php @@ -0,0 +1,205 @@ +prepare('SELECT * FROM user'); + $req->execute(); + + if($data = $req->fetch()) { + do { + $list[] = array("user_id" => $data['user_id'], + "user_pass" => $data['user_pass'], + "user_mail" => $data['user_mail'], + "user_phone" => $data['user_phone'], + "user_online" => $data['user_online'], + "user_enable" => $data['user_enable'], + "user_start_date" => dateFromSql($data['user_start_date']), + "user_end_date" => dateFromSql($data['user_end_date'])); + } while($data = $req->fetch()); + + echo json_encode($list); + } + // If it is an empty answer, we need to encore an empty json object + else{ + $list = array(); + echo json_encode($list); + } + } + + // Select the logs + else if($_POST['select'] == "log"){ + // Creation of the LIMIT for build different pages + if(isset($_POST['pageIndex'], $_POST['pageSize'])) { + $actual_page = ($_POST['pageIndex']-1) * $_POST['pageSize']; + $max_page = $_POST['pageSize']; + $page = "LIMIT $actual_page, $max_page"; + } + else { + $page = ""; + } + + // Select the logs + $string_requete = "SELECT *, (SELECT COUNT(*) FROM log) AS nb FROM log ORDER BY log_id DESC $page"; + $req = $bdd->prepare($string_requete); + $req->execute(); + + $list = array(); + + $data = $req->fetch(); + + if($data) { + $nb = $data['nb']; + + do { + // Better in Kb or Mb + $received = ($data['log_received'] > 100000) ? $data['log_received']/100000 . " Mo" : $data['log_received']/100 . " Ko"; + $sent = ($data['log_send'] > 100000) ? $data['log_send']/100000 . " Mo" : $data['log_send']/100 . " Ko"; + $start_time_array = explode(' ', $data['log_start_time']); + $start_time = dateFromSql($start_time_array[0]) . ' ' . $start_time_array[1]; + $end_time_array = explode(' ', $data['log_end_time']); + $end_time = dateFromSql($end_time_array[0]) . ' ' . $end_time_array[1]; + + // We add to the array the new line of logs + array_push($list, array( + "log_id" => $data['log_id'], + "user_id" => $data['user_id'], + "log_trusted_ip" => $data['log_trusted_ip'], + "log_trusted_port" => $data['log_trusted_port'], + "log_remote_ip" => $data['log_remote_ip'], + "log_remote_port" => $data['log_remote_port'], + "log_start_time" => $start_time, + "log_end_time" => $end_time, + "log_received" => $received, + "log_send" => $sent)); + + + } while ($data = $req->fetch()); + } + else { + $nb = 0; + } + + // We finally print the result + $result = array('Total' => $nb, 'Rows' => json_encode($list)); + + echo json_encode($result); + } + + // Select the admins + else if($_POST['select'] == "admin"){ + $req = $bdd->prepare('SELECT * FROM admin'); + $req->execute(); + + if($data = $req->fetch()) { + do{ + $list[] = array( + "admin_id" => $data['admin_id'], + "admin_pass" => $data['admin_pass'] + ); + } while($data = $req->fetch()); + + echo json_encode($list); + } + else{ + $list = array(); + echo json_encode($list); + } + } + } + + // ---------------- ADD USER ---------------- + else if(isset($_POST['add_user'])){ + // Put some default values + $id = $_POST['user_id']; + $pass = ""; + $mail = ""; + $phone = ""; + $online = 0; + $enable = 1; + $start = "0000-00-00"; + $end = "0000-00-00"; + + $req = $bdd->prepare('INSERT INTO user (user_id, user_pass, user_mail, user_phone, user_online, user_enable, user_start_date, user_end_date) + VALUES (?, ?, ?, ?, ?, ?, ?, ?)'); + $req->execute(array($id, $pass, $mail, $phone, $online, $enable, $start, $end)); + + $res = array("user_id" => $id, + "user_pass" => $pass, + "user_mail" => $mail , + "user_phone" => $phone, + "user_online" => $online, + "user_enable" => $enable, + "user_start_date" => dateFromSql($start), + "user_end_date" => dateFromSql($end) + ); + + echo json_encode($res); + } + + // ---------------- UPDATE USER ---------------- + else if(isset($_POST['set_user'])){ + $valid = array("user_id", "user_pass", "user_mail", "user_phone", "user_enable", "user_start_date", "user_end_date"); + $set_field = $set_value = array(); + + // Only update what was modified + foreach($_POST as $key => $value){ + if(in_array($key, $valid)){ + array_push($set_field, $key . "=?"); + + if($key == "user_pass") + if($value == "") + array_push($set_value, $value); + else + array_push($set_value, hashPass($value)); + else if($key == "user_start_date" || $key == "user_end_date") + array_push($set_value, dateToSql($value)); + else + array_push($set_value, $value); + } + } + // Build the request + array_push($set_value, $_POST['set_user']); + + $req_string = 'UPDATE user SET ' . implode(',', $set_field) . ' WHERE user_id = ?'; + $req = $bdd->prepare($req_string); + $req->execute($set_value); + } + + // ---------------- REMOVE USER ---------------- + else if(isset($_POST['del_user_id'])){ + $req = $bdd->prepare('DELETE FROM user WHERE user_id = ?'); + $req->execute(array($_POST['del_user_id'])); + } + + // ---------------- ADD ADMIN ---------------- + else if(isset($_POST['add_admin'])){ + $req = $bdd->prepare('INSERT INTO admin(admin_id, admin_pass) VALUES (?, ?)'); + $req->execute(array($_POST['admin_id'], "")); + } + + // ---------------- UPDATE ADMIN ---------------- + else if(isset($_POST['set_admin'])){ + $mdp = $_POST['admin_pass'] ? hashPass($_POST['admin_pass']) : ""; + + $req = $bdd->prepare('UPDATE admin SET admin_id = ?, admin_pass = ? WHERE admin_id = ?'); + $req->execute(array($_POST['admin_id'], $mdp, $_POST['set_admin'])); + } + + // ---------------- REMOVE ADMIN ---------------- + else if(isset($_POST['del_admin_id'])){ + $req = $bdd->prepare('DELETE FROM admin WHERE admin_id = ?'); + $req->execute(array($_POST['del_admin_id'])); + } + +?> diff --git a/include/html/form/configuration.php b/include/html/form/configuration.php new file mode 100644 index 0000000..5079503 --- /dev/null +++ b/include/html/form/configuration.php @@ -0,0 +1,35 @@ +
+
+ +
+ +
+

Get the configuration files

+
+ +
+
+ + +
+ +
+ + +
+ +
+ + +
+ + +
+ +
+ +
+
\ No newline at end of file diff --git a/include/html/form/installation.php b/include/html/form/installation.php new file mode 100644 index 0000000..9a41250 --- /dev/null +++ b/include/html/form/installation.php @@ -0,0 +1,36 @@ +
+
+ +
+ +
+

Installation

+
+ +
+
+ + +
+ +

+ +
+ + +
+ +
+ + +
+ +

+ + +
+ +
+ +
+
\ No newline at end of file diff --git a/include/html/form/login.php b/include/html/form/login.php new file mode 100644 index 0000000..7ac06fb --- /dev/null +++ b/include/html/form/login.php @@ -0,0 +1,27 @@ +
+
+ +
+ +
+

Administrator

+
+ +
+
+ + +
+ +
+ + +
+ + +
+ +
+ +
+
\ No newline at end of file diff --git a/include/html/grids.php b/include/html/grids.php new file mode 100644 index 0000000..8d21d3c --- /dev/null +++ b/include/html/grids.php @@ -0,0 +1,41 @@ + +
+
+ +
+
+
+ + +
+
+ +
+
+
+
+ + +
+
+ +
+
+
+ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/include/html/menu.php b/include/html/menu.php new file mode 100644 index 0000000..e95a7c9 --- /dev/null +++ b/include/html/menu.php @@ -0,0 +1,12 @@ +
\ No newline at end of file diff --git a/index.php b/index.php index ff64f45..2d215d5 100644 --- a/index.php +++ b/index.php @@ -1,119 +1,189 @@ prepare('SELECT * FROM user WHERE user_id = ?'); + $req->execute(array($_POST['configuration_username'])); + $data = $req->fetch(); - if(isset($_GET['deconnexion'])){ - session_destroy(); - header("Location: ."); + // Error ? + if($data && passEqual($_POST['configuration_pass'], $data['user_pass'])) { + // Thanks http://stackoverflow.com/questions/4914750/how-to-zip-a-whole-folder-using-php + if($_POST['configuration_os'] == "gnu_linux") { + $conf_dir = 'gnu-linux'; + } + else { + $conf_dir = 'windows'; + } + $rootPath = realpath("./client-conf/$conf_dir"); + + // Initialize archive object + $archive_name = "openvpn-$conf_dir.zip"; + $archive_path = "./client-conf/$archive_name"; + $zip = new ZipArchive(); + $zip->open($archive_path, ZipArchive::CREATE | ZipArchive::OVERWRITE); + + $files = new RecursiveIteratorIterator( + new RecursiveDirectoryIterator($rootPath), + RecursiveIteratorIterator::LEAVES_ONLY + ); + + foreach ($files as $name => $file) { + // Skip directories (they would be added automatically) + if (!$file->isDir()) { + // Get real and relative path for current file + $filePath = $file->getRealPath(); + $relativePath = substr($filePath, strlen($rootPath) + 1); + + // Add current file to archive + $zip->addFile($filePath, $relativePath); + } + } + + // Zip archive will be created only after closing object + $zip->close(); + + //then send the headers to foce download the zip file + header("Content-type: application/zip"); + header("Content-Disposition: attachment; filename=$archive_name"); + header("Pragma: no-cache"); + header("Expires: 0"); + readfile($archive_path); } + else { + $error = true; + } + } + + // Admin login attempt ? + else if(isset($_POST['admin_login'], $_POST['admin_username'], $_POST['admin_pass']) && !empty($_POST['admin_pass'])){ - // Tentative de connexion ? - if(isset($_POST['id'], $_POST['pass'])){ - require(dirname(__FILE__) . '/include/connexion_bdd.php'); - - $req = $bdd->prepare('SELECT * FROM admin WHERE admin_id = ? AND admin_pass = ?'); - $req->execute(array($_POST['id'], sha1($_POST['pass']))); - - if($data = $req->fetch()){ - $_SESSION['admin_id'] = $data['admin_id']; - header("Location: ."); - } - else { - $connexion_erreur = true; - } + $req = $bdd->prepare('SELECT * FROM admin WHERE admin_id = ?'); + $req->execute(array($_POST['admin_username'])); + $data = $req->fetch(); + + // Error ? + if($data && passEqual($_POST['admin_pass'], $data['admin_pass'])) { + $_SESSION['admin_id'] = $data['admin_id']; + header("Location: index.php?admin"); + exit -1; } + else { + $error = true; + } + } ?> - - + + + + + + + + + + + + + + + - - - - - --> + if($admin_pass != $admin_repeat_pass) { + printError('The passwords do not correspond.'); + exit -1; + } - - - - exec($sql); + } + catch (PDOException $e) { + printError($e->getMessage()); + exit -1; + } - // Si pas connecté on affiche le formulaire - if(!isset($_SESSION['admin_id'])){ - if($connexion_erreur) - echo "Erreur connexion"; - ?> -
-
- - - -

- - - - -

- - -
-
- -
- Administrateur : / Déconnexion ? -
- -
-
- -
-
-
- -
-
- -
-
- -
- -
-
- -
-
-
- - - - - - - - + // Generate the hash + $hash_pass = hashPass($admin_pass); + + // Insert the new admin + $req = $bdd->prepare('INSERT INTO admin (admin_id, admin_pass) VALUES (?, ?)'); + $req->execute(array($admin_username, $hash_pass)); + + unlink($sql_file); + rmdir(dirname(__FILE__) . '/sql'); + printSuccess('Well done, OpenVPN-Admin is installed.'); + } + // Print the installation form + else { + require(dirname(__FILE__) . '/include/html/menu.php'); + require(dirname(__FILE__) . '/include/html/form/installation.php'); + } + + exit -1; + } + + // --------------- CONFIGURATION --------------- + if(!isset($_GET['admin'])) { + if(isset($error) && $error == true) + printError('Login error'); + + require(dirname(__FILE__) . '/include/html/menu.php'); + require(dirname(__FILE__) . '/include/html/form/configuration.php'); + } + + + // --------------- LOGIN --------------- + else if(!isset($_SESSION['admin_id'])){ + if(isset($error) && $error == true) + printError('Login error'); + + require(dirname(__FILE__) . '/include/html/menu.php'); + require(dirname(__FILE__) . '/include/html/form/login.php'); + } + + // --------------- GRIDS --------------- + else{ + ?> + + + + diff --git a/install.sh b/install.sh new file mode 100755 index 0000000..b8c17cc --- /dev/null +++ b/install.sh @@ -0,0 +1,200 @@ +#!/bin/bash + +print_help () { + echo -e "./install.sh www_basedir user group" + echo -e "\tbase_dir: The place where the web application will be put in" + echo -e "\tuser: User of the web application" + echo -e "\tgroup: Group of the web application" +} + +# Ensure to be root +if [ "$EUID" -ne 0 ]; then + echo "Please run as root" + exit +fi + +# Ensure there are enought arguments +if [ "$#" -ne 3 ]; then + print_help + exit +fi + +www=$1 +user=$2 +group=$3 +openvpn_admin="$www/openvpn-admin" + + +# Check the validity of the arguments +if [ ! -d "$www" ] || ! grep -q "$user" "/etc/passwd" || ! grep -q "$group" "/etc/group" ; then + print_help + exit +fi + +base_path=$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd ) + +printf "\n################## Server informations ##################\n" + +echo -n "Server ip: " +read ip_server + + +# Get root pass (to create the database and the user) +mysql_root_pass="" +status_code=1 + +while [ $status_code -ne 0 ]; do + echo -n "Server MySQL root password: " + read mysql_root_pass + echo "SHOW DATABASES" | mysql -u root --password="$mysql_root_pass" &> /dev/null + status_code=$? +done + +sql_result=$(echo "SHOW DATABASES" | mysql -u root --password="$mysql_root_pass" | grep -e "^openvpn-admin$") +# Check if the database doesn't already exist +if [ "$sql_result" != "" ]; then + echo "The database openvpn-admin already exists." + exit +fi + +# Check if the user doesn't already exist +echo -n "Server MySQL openvpn-admin user (will be created): " +read mysql_user + +echo "SHOW GRANTS FOR $mysql_user@localhost" | mysql -u root --password="$mysql_root_pass" &> /dev/null +if [ $? -eq 0 ]; then + echo "The MySQL user already exists." + exit +fi + +echo -n "Server MySQL openvpn-admin user password: " +read mysql_pass + + +# TODO MySQL port & host ? + + +printf "\n################## Certificates informations ##################\n" +key_size="0" + +while [ "$key_size" != "1024" -a "$key_size" != "2048" -a "$key_size" != "4096" ]; do + echo -n "Key size (1024, 2048 or 4096): " + read key_size +done + +echo -n "Root certificate expiration (in days): " +read ca_expire + +echo -n "Certificate expiration (in days): " +read key_expire + +echo -n "Country: " +read key_country + +echo -n "Province: " +read key_province + +echo -n "City: " +read key_city + +echo -n "Organization: " +read key_org + +echo -n "Email: " +read key_email + + +printf "\n################## Creating the certificates ##################\n" + +# Get the rsa keys +mkdir /etc/openvpn/easy-rsa/ +wget https://github.com/OpenVPN/easy-rsa/archive/2.2.2.zip +unzip 2.2.2.zip +mv easy-rsa-2.2.2/easy-rsa/2.0/* /etc/openvpn/easy-rsa/ +rm -r 2.2.2.zip easy-rsa-2.2.2 +cd /etc/openvpn/easy-rsa + +source vars + +export KEY_SIZE=$key_size +export CA_EXPIRE=$ca_expire +export KEY_EXPIRE=$key_expire +export KEY_COUNTRY=$key_country +export KEY_PROVINCE=$key_province +export KEY_CITY=$key_city +export KEY_ORG=$key_org +export KEY_EMAIL=$key_email + +./clean-all +./build-dh +./pkitool --initca +./pkitool --server server +openvpn --genkey --secret keys/ta.key + + + +printf "\n################## Setup OpenVPN ##################\n" + +# Copy certificates and the server configuration in the openvpn directory +cp /etc/openvpn/easy-rsa/keys/{ca.crt,ta.key,server.crt,server.key,dh${KEY_SIZE}.pem} "/etc/openvpn/" +cp "$base_path/installation/server.conf" "/etc/openvpn/" + + +printf "\n################## Setup firewall ##################\n" + +# Make ip forwading and make it persistent +echo 1 > "/proc/sys/net/ipv4/ip_forward" +echo "net.ipv4.ip_forward = 1" >> "/etc/sysctl.conf" + +# Iptable rules +iptables -I FORWARD -i tun0 -j ACCEPT +iptables -I FORWARD -o tun0 -j ACCEPT +iptables -I OUTPUT -o tun0 -j ACCEPT + +iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT +iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE +iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE +iptables -t nat -A POSTROUTING -s 10.8.0.2/24 -o eth0 -j MASQUERADE + +printf "\n################## Setup MySQL database ##################\n" + +echo "CREATE DATABASE \`openvpn-admin\`" | mysql -u root --password="$mysql_root_pass" +echo "CREATE USER $mysql_user@localhost IDENTIFIED BY '$mysql_pass'" | mysql -u root --password="$mysql_root_pass" +echo "GRANT ALL PRIVILEGES ON \`openvpn-admin\`.* TO $mysql_user@localhost" | mysql -u root --password="$mysql_root_pass" +echo "FLUSH PRIVILEGES" | mysql -u root --password="$mysql_root_pass" + + +printf "\n################## Setup web application ##################\n" + +# Copy bash scripts (which will insert row in MySQL) +cp -r "$base_path/installation/scripts" "/etc/openvpn/" + +# Create the directory of the web application +mkdir "$openvpn_admin" +cp -r "$base_path/"{index.php,sql,bower.json,.bowerrc,js,include,css,installation/client-conf} "$openvpn_admin" + +# New workspace +cd "$openvpn_admin" + +# Replace config.php variables +sed -i "s/\$user = '';/\$user = '$mysql_user';/" "./include/config.php" +sed -i "s/\$pass = '';/\$pass = '$mysql_pass';/" "./include/config.php" + +# Replace in the client configurations with the ip of the server +sed -i "s/remote xxx\.xxx\.xxx\.xxx 443/remote $ip_server 443/" "./client-conf/gnu-linux/client.conf" +sed -i "s/remote xxx\.xxx\.xxx\.xxx 443/remote $ip_server 443/" "./client-conf/windows/client.conf" + +# Copy ta.key inside the client-conf directory +cp "/etc/openvpn/ta.key" "./client-conf/gnu-linux/" +cp "/etc/openvpn/ta.key" "./client-conf/windows/" + +# Install third parties +bower --allow-root install +chown -R "$user:$group" "$openvpn_admin" + + +printf "\n################## Finish ##################\n" + +echo "Congratulation, you have successfuly setup openvpn-admin. Please, finish the installation by configuring your web server (Apache, NGinx...) and install the web application by visiting http://your-installation/index.php?installation" +echo "Then, you will be able to run OpenVPN with systemctl start openvpn@server" +echo "Please, report any issues here https://github.com/Chocobozzz/OpenVPN-Admin" diff --git a/openvpn-conf/client/gnu-linux/client.conf b/installation/client-conf/gnu-linux/client.conf similarity index 90% rename from openvpn-conf/client/gnu-linux/client.conf rename to installation/client-conf/gnu-linux/client.conf index d1a300f..fc9ea4d 100644 --- a/openvpn-conf/client/gnu-linux/client.conf +++ b/installation/client-conf/gnu-linux/client.conf @@ -6,8 +6,8 @@ resolv-retry infinite cipher AES-256-CBC redirect-gateway -# Cles -# Prouver l'identité +# Keys +# Identity ca ca.crt tls-auth ta.key 1 key-direction 1 @@ -15,7 +15,7 @@ ns-cert-type server auth-user-pass auth-nocache -# Securite +# Security nobind persist-key persist-tun diff --git a/openvpn-conf/client/gnu-linux/update-resolv.sh b/installation/client-conf/gnu-linux/update-resolv.sh similarity index 100% rename from openvpn-conf/client/gnu-linux/update-resolv.sh rename to installation/client-conf/gnu-linux/update-resolv.sh diff --git a/openvpn-conf/client/windows/client.conf b/installation/client-conf/windows/client.conf similarity index 88% rename from openvpn-conf/client/windows/client.conf rename to installation/client-conf/windows/client.conf index cddb1a9..bc3ff7c 100644 --- a/openvpn-conf/client/windows/client.conf +++ b/installation/client-conf/windows/client.conf @@ -6,8 +6,8 @@ resolv-retry infinite cipher AES-256-CBC redirect-gateway -# Cles -# Prouver l'identité +# Keys +# Identity ca ca.crt tls-auth ta.key 1 key-direction 1 @@ -15,7 +15,7 @@ ns-cert-type server auth-user-pass auth-nocache -# Securite +# Security nobind persist-key persist-tun diff --git a/openvpn-conf/serveur/scripts/config.sh b/installation/scripts/config.sh similarity index 94% rename from openvpn-conf/serveur/scripts/config.sh rename to installation/scripts/config.sh index fa0db7d..0605c0a 100644 --- a/openvpn-conf/serveur/scripts/config.sh +++ b/installation/scripts/config.sh @@ -8,4 +8,4 @@ USER='vpn_user' # Password PASS='mdp' # Nom de la base de données -DB='vpn' +DB='vpn' \ No newline at end of file diff --git a/openvpn-conf/serveur/scripts/connect.sh b/installation/scripts/connect.sh similarity index 93% rename from openvpn-conf/serveur/scripts/connect.sh rename to installation/scripts/connect.sh index f966d02..473cb0d 100644 --- a/openvpn-conf/serveur/scripts/connect.sh +++ b/installation/scripts/connect.sh @@ -5,4 +5,4 @@ mysql -h$HOST -P$PORT -u$USER -p$PASS $DB -e "INSERT INTO log (log_id, user_id, log_trusted_ip, log_trusted_port, log_remote_ip, log_remote_port, log_start_time, log_end_time, log_received, log_send) VALUES(NULL, '$common_name','$trusted_ip', '$trusted_port','$ifconfig_pool_remote_ip', '$remote_port_1', now(),'0000-00-00 00:00:00', '$bytes_received', '$bytes_sent')" # On spécifie que l'utilisateur est en ligne -mysql -h$HOST -P$PORT -u$USER -p$PASS $DB -e "UPDATE user SET user_online=1 WHERE user_id='$common_name'" +mysql -h$HOST -P$PORT -u$USER -p$PASS $DB -e "UPDATE user SET user_online=1 WHERE user_id='$common_name'" \ No newline at end of file diff --git a/openvpn-conf/serveur/scripts/disconnect.sh b/installation/scripts/disconnect.sh similarity index 96% rename from openvpn-conf/serveur/scripts/disconnect.sh rename to installation/scripts/disconnect.sh index e1399f5..44efd30 100644 --- a/openvpn-conf/serveur/scripts/disconnect.sh +++ b/installation/scripts/disconnect.sh @@ -5,4 +5,4 @@ mysql -h$HOST -P$PORT -u$USER -p$PASS $DB -e "UPDATE user SET user_online=0 WHERE user_id='$common_name'" # On insert le datetime de déconnexion -mysql -h$HOST -P$PORT -u$USER -p$PASS $DB -e "UPDATE log SET log_end_time=now(), log_received='$bytes_received', log_send='$bytes_sent' WHERE log_trusted_ip='$trusted_ip' AND log_trusted_port='$trusted_port' AND user_id='$common_name' AND log_end_time='0000-00-00 00:00:00'" +mysql -h$HOST -P$PORT -u$USER -p$PASS $DB -e "UPDATE log SET log_end_time=now(), log_received='$bytes_received', log_send='$bytes_sent' WHERE log_trusted_ip='$trusted_ip' AND log_trusted_port='$trusted_port' AND user_id='$common_name' AND log_end_time='0000-00-00 00:00:00'" \ No newline at end of file diff --git a/openvpn-conf/serveur/scripts/login.sh b/installation/scripts/login.sh similarity index 94% rename from openvpn-conf/serveur/scripts/login.sh rename to installation/scripts/login.sh index 7c510d8..93317e6 100644 --- a/openvpn-conf/serveur/scripts/login.sh +++ b/installation/scripts/login.sh @@ -5,4 +5,4 @@ user_id=$(mysql -h$HOST -P$PORT -u$USER -p$PASS $DB -sN -e "SELECT user_id FROM user WHERE user_id = '$username' AND user_pass = SHA1('$password') AND user_enable=1 AND (TO_DAYS(now()) >= TO_DAYS(user_start_date) OR user_start_date='0000-00-00') AND (TO_DAYS(now()) <= TO_DAYS(user_end_date) OR user_end_date='0000-00-00')") # Vérification de l'utilisateur -[ "$user_id" != '' ] && [ "$user_id" = "$username" ] && echo "user : $username" && echo 'authentication ok.' && exit 0 || echo 'authentication failed.'; exit 1 +[ "$user_id" != '' ] && [ "$user_id" = "$username" ] && echo "user : $username" && echo 'authentication ok.' && exit 0 || echo 'authentication failed.'; exit 1 \ No newline at end of file diff --git a/installation/server.conf b/installation/server.conf new file mode 100644 index 0000000..c0a5266 --- /dev/null +++ b/installation/server.conf @@ -0,0 +1,90 @@ +## GENERAL ## + +# TCP, port 443, tunneling +mode server +proto tcp +port 443 +dev tun + +## KEY, CERTS AND NETWORK CONFIGURATION ## +# Identity +ca ca.crt +# Public key +cert server.crt +# Private key +key server.key +# Symmetric encryption +dh dh1024.pem +# Improve security (DDOS, port flooding...) +# 0 for the server, 1 for the client +tls-auth ta.key 0 +# Encryption protocol +cipher AES-256-CBC + +# Network +# Subnetwork, the server will be the 10.8.0.1 and clients will take the other ips +server 10.8.0.0 255.255.255.0 + +# Redirect all IP network traffic originating on client machines to pass through the OpenVPN server +push "redirect-gateway def1" + +# Alternatives DNS (FDN) +push "dhcp-option DNS 80.67.169.12" +push "dhcp-option DNS 80.67.169.40" + +# (OpenDNS) +# push "dhcp-option DNS 208.67.222.222" +# push "dhcp-option DNS 208.67.220.220" + +# (Google) +# push "dhcp-option DNS 8.8.8.8" +# push "dhcp-option DNS 8.8.4.4" + +# Ping every 10 seconds and if after 120 seconds the client doesn't respond we disconnect +keepalive 10 120 +# Regenerate key each 5 hours (disconnect the client) +reneg-sec 18000 + +## SECURITY ## + +# Downgrade privileges of the daemon +user nobody +group nogroup + +# Persist keys (because we are nobody, so we couldn't read them again) +persist-key +# Don't close and re open TUN/TAP device +persist-tun +# Enable compression +comp-lzo + +## LOG ## + +# Verbosity +# 3/4 for a normal utilisation +verb 3 +# Max 20 messages of the same category +mute 20 +# Log gile where we put the clients status +status openvpn-status.log +# Log file +log-append /var/log/openvpn.log +# Configuration directory of the clients +client-config-dir ccd + +## PASS ## + +# Autoriser l'exécution de scripts externes en passant les mots de passe via les variables d'environnement +script-security 3 system + +# Use the authenticated username as the common name, rather than the common name from the client cert +username-as-common-name +# Client certificate non requried +client-cert-not-required +# Use the connection script when a user wants to login +auth-user-pass-verify scripts/login.sh via-env +# Maximum of clients +max-clients 50 +# Run this scripts when the client connects/disconnects +client-connect scripts/connect.sh +client-disconnect scripts/disconnect.sh \ No newline at end of file diff --git a/js/grids.js b/js/grids.js new file mode 100644 index 0000000..faeb23e --- /dev/null +++ b/js/grids.js @@ -0,0 +1,365 @@ +$(function () { + "use strict"; + + // -------------------- USERS -------------------- + $.ajax({ + type: "POST", + url: "include/grids.php", + dataType: 'json', + data: "select=user", + success: function (json) { + // Button to format a cell and remove an user + function buttonFormatter(row, cell, value, columnDef, dataContext) { + var button = ""; + return button; + } + + var i; + var columns = [ + { id: "user_id", name: "ID", field: "user_id", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "user_pass", name: "Pass", field: "user_pass", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "user_mail", name: "Mail", field: "user_mail", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "user_phone", name: "Phone", field: "user_phone", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "user_online", name: "Online", field: "user_online", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "user_enable", name: "Enabled", field: "user_enable", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "user_start_date", name: "Start Date", field: "user_start_date", width: 120, cssClass: "cell-title", editor: Slick.Editors.Date }, + { id: "user_end_date", name: "End Date", field: "user_end_date", width: 120, cssClass: "cell-title", editor: Slick.Editors.Date }, + { id: "user_del", name: 'Delete', field: "user_del", width: 250, formatter: buttonFormatter } + ]; + + // Grid options + var options = { + editable: true, + enableAddRow: true, + enableCellNavigation: true, + asyncEditorLoading: false, + autoEdit: false, + autoHeight: true + }; + + var data = []; + + // Save the old user_id when the admin update an user + var save = null; + + var grid = null; + + // Action when we want to remove an user + $('#user-grid').on('click', '.del_user', function () { + + // Remove from the database + var me = $(this), id = me.attr('id'); + var data = grid.getData(); + + $.ajax({ + type: "POST", + url: "include/grids.php", + dataType: "json", + data: { del_user_id: id }, + success: function() { + // Remove the line + data.splice(me.attr('data-row'), 1); + grid.setData(data); + grid.render(); + }, + error: function () { + alert("Error: cannot update the database."); + } + }); + }); + + + for (i = 0; i < json.length; i += 1) { + data[i] = { + user_id: json[i].user_id, + user_pass: json[i].user_pass, + user_mail: json[i].user_mail, + user_phone: json[i].user_phone, + user_online: json[i].user_online, + user_enable: json[i].user_enable, + user_start_date: json[i].user_start_date, + user_end_date: json[i].user_end_date + }; + } + + // Grid of the users + grid = new Slick.Grid($("#grid_user"), data, columns, options); + + $("#grid_user").on('click', function () { + var $active = grid.getActiveCell(); + + if ($active && $active.cell === 0) { + save = $(grid.getActiveCellNode()).html(); + } else { + save = null; + } + }); + + // When we want to modify an user + grid.onCellChange.subscribe(function (e, args) { + var item = args.item; + + if (save) + item.set_user = save; + else + item.set_user = item.user_id; + + // Remove in the database + $.ajax({ + type: "POST", + url: "include/grids.php", + dataType: "json", + data: item, + success: function () { + // If we edited the password, hash it + if(args.cell === 1) { + grid.invalidateRow(args.row); + data[args.row][grid.getColumns()[args.cell].field] = sha1(data[args.row][grid.getColumns()[args.cell].field]); + grid.render(); + } + }, + error: function () { + alert("Error : cannot update the database."); + } + }); + + delete item.set_user; + }); + + // Add a new user + grid.onAddNewRow.subscribe(function (e, args) { + var item = args.item; + + // We only can add a new user if we specify his id + if (!item.user_id) + return; + + item.add_user = true; + + // Update the database + $.ajax({ + type: "POST", + url: "include/grids.php", + dataType: "json", + data: item, + success: function(res) { + // Update the grid + grid.invalidateRow(data.length); + data.push(res); + grid.updateRowCount(); + grid.render(); + }, + error: function () { + alert("Error : cannot update the database."); + } + }); + + delete item.add_user; + }); + + grid.autosizeColumns(); + }, + error: function () { + alert('Error : cannot get the data.'); + } + }); + + + // -------------------- ADMINISTRATORS -------------------- + $.ajax({ + type: "POST", + url: "include/grids.php", + dataType: 'json', + data: "select=admin", + success: function (json) { + // Create the button to remove an administrator + function buttonFormatter(row, cell, value, columnDef, dataContext) { + var button = ""; + return button; + } + + var i; + + // Header + var columns = [ + { id: "admin_id", name: "Admin ID", field: "admin_id", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "admin_pass", name: "Admin Pass", field: "admin_pass", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "admin_del", name: 'Delete', field: "admin_del", width: 250, formatter: buttonFormatter } + ]; + + // Grid options + var options = { + editable: true, + enableAddRow: true, + enableCellNavigation: true, + asyncEditorLoading: false, + autoEdit: false, + autoHeight: true + }; + + var data = []; + var grid = null; + + // Save the old admin id when we update one + var save = null; + + // When we want to remove an administrator + $('#admin-grid').on('click', '.del_admin', function () { + var me = $(this); + var id = me.attr('id'); + var data = grid.getData(); + + // Update the database + $.ajax({ + type: "POST", + url: "include/grids.php", + dataType: "json", + data: { del_admin_id: id }, + success: function() { + // Update the grid + data.splice(me.attr('data-row'), 1); + grid.setData(data); + grid.render(); + }, + error: function () { + alert("Error : cannot update the database."); + } + }); + }); + + + for (i = 0; i < json.length; i += 1) { + data[i] = { + admin_id: json[i].admin_id, + admin_pass: json[i].admin_pass + }; + } + + grid = new Slick.Grid($("#grid_admin"), data, columns, options); + + $("#grid_admin").on('click', function () { + var $active = grid.getActiveCell(); + + if ($active !== undefined && $active.cell === 0) + save = $(grid.getActiveCellNode()).html(); + else + save = null; + }); + + // When we update the administrator + grid.onCellChange.subscribe(function (e, args) { + var item = args.item; + + // We save the old admin id + if (save) + item.set_admin = save; + else + item.set_admin = item.admin_id; + + // Update the database + $.ajax({ + type: "POST", + url: "include/grids.php", + dataType: "json", + data: item, + success: function() { + // Hash the password + if(args.cell === 1) { + grid.invalidateRow(args.row); + data[args.row][grid.getColumns()[args.cell].field] = sha1(data[args.row][grid.getColumns()[args.cell].field]); + grid.render(); + } + }, + error: function () { + alert("Error : cannot update the database"); + } + }); + + delete item.set_admin; + }); + + // When we want to add a new administrator + grid.onAddNewRow.subscribe(function (e, args) { + var item = args.item; + + // We only add an administrator if we specify the ID + if (!item.admin_id) + return; + + item.add_admin = true; + + // Update the database + $.ajax({ + type: "POST", + url: "include/grids.php", + dataType: "json", + data: item, + success: function() { + // Update the grid + grid.invalidateRow(data.length); + data.push(item); + grid.updateRowCount(); + grid.render(); + }, + error: function () { + alert("Error : cannot update the database."); + } + }); + + delete item.add_admin; + + + }); + + grid.autosizeColumns(); + }, + error: function () { + alert('Erreur dans la récupération des données...'); + } + }); + + + + // -------------------- LOGS -------------------- + var i; + + // Headers + var columns = [ + { id: "log_id", name: "Log ID", field: "log_id", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "user_id", name: "User ID", field: "user_id", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "log_trusted_ip", name: "Trusted IP", field: "log_trusted_ip", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "log_trusted_port", name: "Trusted Port", field: "log_trusted_port", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "log_remote_ip", name: "Remote IP", field: "log_remote_ip", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "log_remote_port", name: "Remote Port", field: "log_remote_port", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "log_start_time", name: "Start Time", field: "log_start_time", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "log_end_time", name: "End Time", field: "log_end_time", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "log_received", name: "Receveid", field: "log_received", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text }, + { id: "log_send", name: "Sent", field: "log_send", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text } + ]; + + // Grid options + var options = { + editable: false, + enableAddRow: false, + enableCellNavigation: true, + asyncEditorLoading: false, + autoEdit: false, + autoHeight: true + }; + + var data = []; + + // Creation of the grid + var grid = new Slick.Grid($("#grid_log"), data, columns, options); + + var pager = new Slick.Controls.EnhancementPager({ + container: $("#pager"), + remoteUrl: "include/grids.php", + params: { select: "log" }, + datagrid: grid, + pagerType: "" + }); + + grid.autosizeColumns(); + +}); diff --git a/js/index.js b/js/index.js deleted file mode 100644 index ffbf18b..0000000 --- a/js/index.js +++ /dev/null @@ -1,366 +0,0 @@ -/*jslint browser: true*/ -/*global $, Slick, grid, jQuery, alert*/ - -$(function () { - "use strict"; - - // Selection des users - $.ajax({ - type: "POST", - url: "include/ajax.php", - dataType: 'json', - data: "select=user", - success: function (json) { - // Bouton pour formater la cellule pour supprimer un user - function buttonFormatter(row, cell, value, columnDef, dataContext) { - var button = ""; - return button; - } - - var - i, - columns = [ - {id: "user_id", name: "ID", field: "user_id", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "user_pass", name: "Pass", field: "user_pass", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "user_mail", name: "Mail", field: "user_mail", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "user_phone", name: "Phone", field: "user_phone", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "user_online", name: "Online", field: "user_online", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "user_enable", name: "Enabled", field: "user_enable", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "user_start_date", name: "Start Date", field: "user_start_date", width: 120, cssClass: "cell-title", editor: Slick.Editors.Date}, - {id: "user_end_date", name: "End Date", field: "user_end_date", width: 120, cssClass: "cell-title", editor: Slick.Editors.Date}, - {id: "user_del", name: 'Delete', field: "user_del", width: 250, formatter: buttonFormatter} - ], - - // Options de la grid - options = { - editable: true, - enableAddRow: true, - enableCellNavigation: true, - asyncEditorLoading: false, - autoEdit: false, - autoHeight: true - }, - - // Création des données - data = [], - - // Permet de sauvegarder l'ancien user_id lorsque l'admin modifie un utilisateur du VPN - save = null, - - grid = null; - - - - // Action lorsqu'on veut supprimer un user - $('.del_user').live('click', function () { - - // Suppression dans la bdd - var me = $(this), id = me.attr('id'), - data = grid.getData(); - - $.ajax({ - type: "POST", - url: "include/ajax.php", - dataType: "json", - data: {del_user_id: id}, - error: function () { - alert("Erreur dans la suppression de la donnée..."); - } - }); - - // Suppression de la ligne en question - data.splice(me.attr('data-row'), 1); - grid.setData(data); - grid.render(); - }); - - - for (i = 0; i < json.length; i += 1) { - data[i] = { - user_id: json[i].user_id, - user_pass: json[i].user_pass, - user_mail: json[i].user_mail, - user_phone: json[i].user_phone, - user_online: json[i].user_online, - user_enable: json[i].user_enable, - user_start_date: json[i].user_start_date, - user_end_date: json[i].user_end_date - }; - } - - // Grille des utilisateurs du VPN - grid = new Slick.Grid($("#grid_user"), data, columns, options); - - $("#grid_user").on('click', function () { - var $active = grid.getActiveCell(); - - if ($active !== undefined && $active.cell === 0) { - save = $(grid.getActiveCellNode()).html(); - } else { - save = null; - } - }); - - // Lorsqu'on modifie une cellule d'un utilisateur - grid.onCellChange.subscribe(function (e, args) { - var item = args.item; - - // On sauvegarde l'ancien user_id - if (save) { - item.set_user = save; - } else { - item.set_user = item.user_id; - } - - // Suppression dans la bdd - $.ajax({ - type: "POST", - url: "include/ajax.php", - dataType: "json", - data: item, - success: function () { - // Transformation en sha1 du mdp - if(args.cell == 1) { - grid.invalidateRow(args.row); - data[args.row][grid.getColumns()[args.cell].field] = hex_sha1(data[args.row][grid.getColumns()[args.cell].field]); - grid.render(); - } - }, - error: function () { - alert("Erreur dans la modification des données..."); - } - }); - - delete item.set_user; - }); - - // Ajout d'un nouvel utilisateur - grid.onAddNewRow.subscribe(function (e, args) { - var item = args.item; - - // On ne peut ajouter un utilisateur qu'en saisissant son id - if (!item.user_id) { - return; - } - - // Modification dans la bdd - item.add_user = true; - - $.ajax({ - type: "POST", - url: "include/ajax.php", - dataType: "json", - data: item, - error: function () { - alert("Erreur dans l'insertion des données..."); - } - }); - - delete item.add_user; - - // Maj de la grille - grid.invalidateRow(data.length); - data.push(item); - grid.updateRowCount(); - grid.render(); - }); - - grid.autosizeColumns(); - }, - error: function () { - alert('Erreur dans la récupération des données...'); - } - }); - - - // Selection des admins - $.ajax({ - type: "POST", - url: "include/ajax.php", - dataType: 'json', - data: "select=admin", - success: function (json) { - // Fonction créant la cellule pour supprimer un admin - function buttonFormatter(row, cell, value, columnDef, dataContext) { - var button = ""; - return button; - } - - var - i, - - // Header des colonnes - columns = [ - {id: "admin_id", name: "Admin ID", field: "admin_id", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "admin_pass", name: "Admin Pass", field: "admin_pass", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "admin_del", name: 'Delete', field: "admin_del", width: 250, formatter: buttonFormatter} - ], - - // Option de la grille - options = { - editable: true, - enableAddRow: true, - enableCellNavigation: true, - asyncEditorLoading: false, - autoEdit: false, - autoHeight: true - }, - - data = [], - grid = null, - - // Sauvegarder l'ancien admin_id lorsqu'on modifie un admin - save = null; - - - - // Lorsqu'on veut supprimer un admin - $('.del_admin').live('click', function () { - // Suppression dans la bdd - var me = $(this), id = me.attr('id'), data = grid.getData(); - $.ajax({ - type: "POST", - url: "include/ajax.php", - dataType: "json", - data: {del_admin_id: id}, - error: function () { - alert("Erreur dans la suppression de la donnée..."); - } - }); - - // Maj de la grille - data.splice(me.attr('data-row'), 1); - grid.setData(data); - grid.render(); - }); - - - for (i = 0; i < json.length; i += 1) { - data[i] = { - admin_id: json[i].admin_id, - admin_pass: json[i].admin_pass - }; - } - - grid = new Slick.Grid($("#grid_admin"), data, columns, options); - - $("#grid_admin").on('click', function () { - var $active = grid.getActiveCell(); - - if ($active !== undefined && $active.cell === 0) { - save = $(grid.getActiveCellNode()).html(); - } else { - save = null; - } - }); - - // Lorsqu'on modifie un admin - grid.onCellChange.subscribe(function (e, args) { - var item = args.item; - - // On stocke l'ancien admin_id - if (save) { - item.set_admin = save; - } else { - item.set_admin = item.admin_id; - } - - // Modification de la bdd - $.ajax({ - type: "POST", - url: "include/ajax.php", - dataType: "json", - data: item, - error: function () { - alert("Erreur dans la modification des données..."); - } - }); - - delete item.set_admin; - }); - - // Ajout d'un nouvel admin - grid.onAddNewRow.subscribe(function (e, args) { - var item = args.item; - - // On peut ajouter un admin seulement en ajoutant un ID - if (!item.admin_id) { - return; - } - - item.add_admin = true; - - // Maj de la bdd - $.ajax({ - type: "POST", - url: "include/ajax.php", - dataType: "json", - data: item, - error: function () { - alert("Erreur dans l'insertion des données..."); - } - }); - - delete item.add_admin; - - // Maj de la grille - grid.invalidateRow(data.length); - data.push(item); - grid.updateRowCount(); - grid.render(); - }); - - grid.autosizeColumns(); - }, - error: function () { - alert('Erreur dans la récupération des données...'); - } - }); - - - - // Sélection des logs - var - i, - - // Header des colonnes - columns = [ - {id: "log_id", name: "Log ID", field: "log_id", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "user_id", name: "User ID", field: "user_id", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "log_trusted_ip", name: "Trusted IP", field: "log_trusted_ip", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "log_trusted_port", name: "Trusted Port", field: "log_trusted_port", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "log_remote_ip", name: "Remote IP", field: "log_remote_ip", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "log_remote_port", name: "Remote Port", field: "log_remote_port", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "log_start_time", name: "Start Time", field: "log_start_time", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "log_end_time", name: "End Time", field: "log_end_time", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "log_received", name: "Receveid", field: "log_received", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text}, - {id: "log_send", name: "Sent", field: "log_send", width: 120, cssClass: "cell-title", editor: Slick.Editors.Text} - ], - - // Options de la grille - options = { - editable: false, - enableAddRow: false, - enableCellNavigation: true, - asyncEditorLoading: false, - autoEdit: false, - autoHeight: true - }, - - data = [], - - // Création de la grille - grid = new Slick.Grid($("#grid_log"), data, columns, options), - - // Pagination - pager = new Slick.Controls.EnhancementPager({ - container: $("#pagination"), - remoteUrl: "include/ajax.php", - params: {select: "log"}, - datagrid: grid, - pagerType: "" - }); - - grid.autosizeColumns(); - -}); diff --git a/js/jquery-1.7.min.js b/js/jquery-1.7.min.js deleted file mode 100644 index 3ca5e0f..0000000 --- a/js/jquery-1.7.min.js +++ /dev/null @@ -1,4 +0,0 @@ -/*! jQuery v1.7 jquery.com | jquery.org/license */ -(function(a,b){function cA(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cx(a){if(!cm[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cn||(cn=c.createElement("iframe"),cn.frameBorder=cn.width=cn.height=0),b.appendChild(cn);if(!co||!cn.createElement)co=(cn.contentWindow||cn.contentDocument).document,co.write((c.compatMode==="CSS1Compat"?"":"")+""),co.close();d=co.createElement(a),co.body.appendChild(d),e=f.css(d,"display"),b.removeChild(cn)}cm[a]=e}return cm[a]}function cw(a,b){var c={};f.each(cs.concat.apply([],cs.slice(0,b)),function(){c[this]=a});return c}function cv(){ct=b}function cu(){setTimeout(cv,0);return ct=f.now()}function cl(){try{return new a.ActiveXObject("Microsoft.XMLHTTP")}catch(b){}}function ck(){try{return new a.XMLHttpRequest}catch(b){}}function ce(a,c){a.dataFilter&&(c=a.dataFilter(c,a.dataType));var d=a.dataTypes,e={},g,h,i=d.length,j,k=d[0],l,m,n,o,p;for(g=1;g0){c!=="border"&&f.each(e,function(){c||(d-=parseFloat(f.css(a,"padding"+this))||0),c==="margin"?d+=parseFloat(f.css(a,c+this))||0:d-=parseFloat(f.css(a,"border"+this+"Width"))||0});return d+"px"}d=bB(a,b,b);if(d<0||d==null)d=a.style[b]||0;d=parseFloat(d)||0,c&&f.each(e,function(){d+=parseFloat(f.css(a,"padding"+this))||0,c!=="padding"&&(d+=parseFloat(f.css(a,"border"+this+"Width"))||0),c==="margin"&&(d+=parseFloat(f.css(a,c+this))||0)});return d+"px"}function br(a,b){b.src?f.ajax({url:b.src,async:!1,dataType:"script"}):f.globalEval((b.text||b.textContent||b.innerHTML||"").replace(bi,"/*$0*/")),b.parentNode&&b.parentNode.removeChild(b)}function bq(a){var b=(a.nodeName||"").toLowerCase();b==="input"?bp(a):b!=="script"&&typeof a.getElementsByTagName!="undefined"&&f.grep(a.getElementsByTagName("input"),bp)}function bp(a){if(a.type==="checkbox"||a.type==="radio")a.defaultChecked=a.checked}function bo(a){return typeof a.getElementsByTagName!="undefined"?a.getElementsByTagName("*"):typeof a.querySelectorAll!="undefined"?a.querySelectorAll("*"):[]}function bn(a,b){var c;if(b.nodeType===1){b.clearAttributes&&b.clearAttributes(),b.mergeAttributes&&b.mergeAttributes(a),c=b.nodeName.toLowerCase();if(c==="object")b.outerHTML=a.outerHTML;else if(c!=="input"||a.type!=="checkbox"&&a.type!=="radio"){if(c==="option")b.selected=a.defaultSelected;else if(c==="input"||c==="textarea")b.defaultValue=a.defaultValue}else a.checked&&(b.defaultChecked=b.checked=a.checked),b.value!==a.value&&(b.value=a.value);b.removeAttribute(f.expando)}}function bm(a,b){if(b.nodeType===1&&!!f.hasData(a)){var c,d,e,g=f._data(a),h=f._data(b,g),i=g.events;if(i){delete h.handle,h.events={};for(c in i)for(d=0,e=i[c].length;d=0===c})}function V(a){return!a||!a.parentNode||a.parentNode.nodeType===11}function N(){return!0}function M(){return!1}function n(a,b,c){var d=b+"defer",e=b+"queue",g=b+"mark",h=f._data(a,d);h&&(c==="queue"||!f._data(a,e))&&(c==="mark"||!f._data(a,g))&&setTimeout(function(){!f._data(a,e)&&!f._data(a,g)&&(f.removeData(a,d,!0),h.fire())},0)}function m(a){for(var b in a){if(b==="data"&&f.isEmptyObject(a[b]))continue;if(b!=="toJSON")return!1}return!0}function l(a,c,d){if(d===b&&a.nodeType===1){var e="data-"+c.replace(k,"-$1").toLowerCase();d=a.getAttribute(e);if(typeof d=="string"){try{d=d==="true"?!0:d==="false"?!1:d==="null"?null:f.isNumeric(d)?parseFloat(d):j.test(d)?f.parseJSON(d):d}catch(g){}f.data(a,c,d)}else d=b}return d}function h(a){var b=g[a]={},c,d;a=a.split(/\s+/);for(c=0,d=a.length;c)[^>]*$|#([\w\-]*)$)/,j=/\S/,k=/^\s+/,l=/\s+$/,m=/\d/,n=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,o=/^[\],:{}\s]*$/,p=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,q=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,r=/(?:^|:|,)(?:\s*\[)+/g,s=/(webkit)[ \/]([\w.]+)/,t=/(opera)(?:.*version)?[ \/]([\w.]+)/,u=/(msie) ([\w.]+)/,v=/(mozilla)(?:.*? rv:([\w.]+))?/,w=/-([a-z]|[0-9])/ig,x=/^-ms-/,y=function(a,b){return(b+"").toUpperCase()},z=d.userAgent,A,B,C,D=Object.prototype.toString,E=Object.prototype.hasOwnProperty,F=Array.prototype.push,G=Array.prototype.slice,H=String.prototype.trim,I=Array.prototype.indexOf,J={};e.fn=e.prototype={constructor:e,init:function(a,d,f){var g,h,j,k;if(!a)return this;if(a.nodeType){this.context=this[0]=a,this.length=1;return this}if(a==="body"&&!d&&c.body){this.context=c,this[0]=c.body,this.selector=a,this.length=1;return this}if(typeof a=="string"){a.charAt(0)!=="<"||a.charAt(a.length-1)!==">"||a.length<3?g=i.exec(a):g=[null,a,null];if(g&&(g[1]||!d)){if(g[1]){d=d instanceof e?d[0]:d,k=d?d.ownerDocument||d:c,j=n.exec(a),j?e.isPlainObject(d)?(a=[c.createElement(j[1])],e.fn.attr.call(a,d,!0)):a=[k.createElement(j[1])]:(j=e.buildFragment([g[1]],[k]),a=(j.cacheable?e.clone(j.fragment):j.fragment).childNodes);return e.merge(this,a)}h=c.getElementById(g[2]);if(h&&h.parentNode){if(h.id!==g[2])return f.find(a);this.length=1,this[0]=h}this.context=c,this.selector=a;return this}return!d||d.jquery?(d||f).find(a):this.constructor(d).find(a)}if(e.isFunction(a))return f.ready(a);a.selector!==b&&(this.selector=a.selector,this.context=a.context);return e.makeArray(a,this)},selector:"",jquery:"1.7",length:0,size:function(){return this.length},toArray:function(){return G.call(this,0)},get:function(a){return a==null?this.toArray():a<0?this[this.length+a]:this[a]},pushStack:function(a,b,c){var d=this.constructor();e.isArray(a)?F.apply(d,a):e.merge(d,a),d.prevObject=this,d.context=this.context,b==="find"?d.selector=this.selector+(this.selector?" ":"")+c:b&&(d.selector=this.selector+"."+b+"("+c+")");return d},each:function(a,b){return e.each(this,a,b)},ready:function(a){e.bindReady(),B.add(a);return this},eq:function(a){return a===-1?this.slice(a):this.slice(a,+a+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(G.apply(this,arguments),"slice",G.call(arguments).join(","))},map:function(a){return this.pushStack(e.map(this,function(b,c){return a.call(b,c,b)}))},end:function(){return this.prevObject||this.constructor(null)},push:F,sort:[].sort,splice:[].splice},e.fn.init.prototype=e.fn,e.extend=e.fn.extend=function(){var a,c,d,f,g,h,i=arguments[0]||{},j=1,k=arguments.length,l=!1;typeof i=="boolean"&&(l=i,i=arguments[1]||{},j=2),typeof i!="object"&&!e.isFunction(i)&&(i={}),k===j&&(i=this,--j);for(;j0)return;B.fireWith(c,[e]),e.fn.trigger&&e(c).trigger("ready").unbind("ready")}},bindReady:function(){if(!B){B=e.Callbacks("once memory");if(c.readyState==="complete")return setTimeout(e.ready,1);if(c.addEventListener)c.addEventListener("DOMContentLoaded",C,!1),a.addEventListener("load",e.ready,!1);else if(c.attachEvent){c.attachEvent("onreadystatechange",C),a.attachEvent("onload",e.ready);var b=!1;try{b=a.frameElement==null}catch(d){}c.documentElement.doScroll&&b&&K()}}},isFunction:function(a){return e.type(a)==="function"},isArray:Array.isArray||function(a){return e.type(a)==="array"},isWindow:function(a){return a&&typeof a=="object"&&"setInterval"in a},isNumeric:function(a){return a!=null&&m.test(a)&&!isNaN(a)},type:function(a){return a==null?String(a):J[D.call(a)]||"object"},isPlainObject:function(a){if(!a||e.type(a)!=="object"||a.nodeType||e.isWindow(a))return!1;try{if(a.constructor&&!E.call(a,"constructor")&&!E.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(c){return!1}var d;for(d in a);return d===b||E.call(a,d)},isEmptyObject:function(a){for(var b in a)return!1;return!0},error:function(a){throw a},parseJSON:function(b){if(typeof b!="string"||!b)return null;b=e.trim(b);if(a.JSON&&a.JSON.parse)return a.JSON.parse(b);if(o.test(b.replace(p,"@").replace(q,"]").replace(r,"")))return(new Function("return "+b))();e.error("Invalid JSON: "+b)},parseXML:function(c){var d,f;try{a.DOMParser?(f=new DOMParser,d=f.parseFromString(c,"text/xml")):(d=new ActiveXObject("Microsoft.XMLDOM"),d.async="false",d.loadXML(c))}catch(g){d=b}(!d||!d.documentElement||d.getElementsByTagName("parsererror").length)&&e.error("Invalid XML: "+c);return d},noop:function(){},globalEval:function(b){b&&j.test(b)&&(a.execScript||function(b){a.eval.call(a,b)})(b)},camelCase:function(a){return a.replace(x,"ms-").replace(w,y)},nodeName:function(a,b){return a.nodeName&&a.nodeName.toUpperCase()===b.toUpperCase()},each:function(a,c,d){var f,g=0,h=a.length,i=h===b||e.isFunction(a);if(d){if(i){for(f in a)if(c.apply(a[f],d)===!1)break}else for(;g0&&a[0]&&a[j-1]||j===0||e.isArray(a));if(k)for(;i1?i.call(arguments,0):b,j.notifyWith(k,e)}}function l(a){return function(c){b[a]=arguments.length>1?i.call(arguments,0):c,--g||j.resolveWith(j,b)}}var b=i.call(arguments,0),c=0,d=b.length,e=Array(d),g=d,h=d,j=d<=1&&a&&f.isFunction(a.promise)?a:f.Deferred(),k=j.promise();if(d>1){for(;c
a",d=a.getElementsByTagName("*"),e=a.getElementsByTagName("a")[0];if(!d||!d.length||!e)return{};g=c.createElement("select"),h=g.appendChild(c.createElement("option")),i=a.getElementsByTagName("input")[0],k={leadingWhitespace:a.firstChild.nodeType===3,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(e.getAttribute("style")),hrefNormalized:e.getAttribute("href")==="/a",opacity:/^0.55/.test(e.style.opacity),cssFloat:!!e.style.cssFloat,unknownElems:!!a.getElementsByTagName("nav").length,checkOn:i.value==="on",optSelected:h.selected,getSetAttribute:a.className!=="t",enctype:!!c.createElement("form").enctype,submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0},i.checked=!0,k.noCloneChecked=i.cloneNode(!0).checked,g.disabled=!0,k.optDisabled=!h.disabled;try{delete a.test}catch(v){k.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function(){k.noCloneEvent=!1}),a.cloneNode(!0).fireEvent("onclick")),i=c.createElement("input"),i.value="t",i.setAttribute("type","radio"),k.radioValue=i.value==="t",i.setAttribute("checked","checked"),a.appendChild(i),l=c.createDocumentFragment(),l.appendChild(a.lastChild),k.checkClone=l.cloneNode(!0).cloneNode(!0).lastChild.checked,a.innerHTML="",a.style.width=a.style.paddingLeft="1px",m=c.getElementsByTagName("body")[0],o=c.createElement(m?"div":"body"),p={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},m&&f.extend(p,{position:"absolute",left:"-999px",top:"-999px"});for(t in p)o.style[t]=p[t];o.appendChild(a),n=m||b,n.insertBefore(o,n.firstChild),k.appendChecked=i.checked,k.boxModel=a.offsetWidth===2,"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,k.inlineBlockNeedsLayout=a.offsetWidth===2,a.style.display="",a.innerHTML="
",k.shrinkWrapBlocks=a.offsetWidth!==2),a.innerHTML="
t
",q=a.getElementsByTagName("td"),u=q[0].offsetHeight===0,q[0].style.display="",q[1].style.display="none",k.reliableHiddenOffsets=u&&q[0].offsetHeight===0,a.innerHTML="",c.defaultView&&c.defaultView.getComputedStyle&&(j=c.createElement("div"),j.style.width="0",j.style.marginRight="0",a.appendChild(j),k.reliableMarginRight=(parseInt((c.defaultView.getComputedStyle(j,null)||{marginRight:0}).marginRight,10)||0)===0);if(a.attachEvent)for(t in{submit:1,change:1,focusin:1})s="on"+t,u=s in a,u||(a.setAttribute(s,"return;"),u=typeof a[s]=="function"),k[t+"Bubbles"]=u;f(function(){var a,b,d,e,g,h,i=1,j="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;",l="visibility:hidden;border:0;",n="style='"+j+"border:5px solid #000;padding:0;'",p="
"+""+"
";m=c.getElementsByTagName("body")[0];!m||(a=c.createElement("div"),a.style.cssText=l+"width:0;height:0;position:static;top:0;margin-top:"+i+"px",m.insertBefore(a,m.firstChild),o=c.createElement("div"),o.style.cssText=j+l,o.innerHTML=p,a.appendChild(o),b=o.firstChild,d=b.firstChild,g=b.nextSibling.firstChild.firstChild,h={doesNotAddBorder:d.offsetTop!==5,doesAddBorderForTableAndCells:g.offsetTop===5},d.style.position="fixed",d.style.top="20px",h.fixedPosition=d.offsetTop===20||d.offsetTop===15,d.style.position=d.style.top="",b.style.overflow="hidden",b.style.position="relative",h.subtractsBorderForOverflowNotVisible=d.offsetTop===-5,h.doesNotIncludeMarginInBodyOffset=m.offsetTop!==i,m.removeChild(a),o=a=null,f.extend(k,h))}),o.innerHTML="",n.removeChild(o),o=l=g=h=m=j=a=i=null;return k}(),f.boxModel=f.support.boxModel;var j=/^(?:\{.*\}|\[.*\])$/,k=/([A-Z])/g;f.extend({cache:{},uuid:0,expando:"jQuery"+(f.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?f.cache[a[f.expando]]:a[f.expando];return!!a&&!m(a)},data:function(a,c,d,e){if(!!f.acceptData(a)){var g,h,i,j=f.expando,k=typeof c=="string",l=a.nodeType,m=l?f.cache:a,n=l?a[f.expando]:a[f.expando]&&f.expando,o=c==="events";if((!n||!m[n]||!o&&!e&&!m[n].data)&&k&&d===b)return;n||(l?a[f.expando]=n=++f.uuid:n=f.expando),m[n]||(m[n]={},l||(m[n].toJSON=f.noop));if(typeof c=="object"||typeof c=="function")e?m[n]=f.extend(m[n],c):m[n].data=f.extend(m[n].data,c);g=h=m[n],e||(h.data||(h.data={}),h=h.data),d!==b&&(h[f.camelCase(c)]=d);if(o&&!h[c])return g.events;k?(i=h[c],i==null&&(i=h[f.camelCase(c)])):i=h;return i}},removeData:function(a,b,c){if(!!f.acceptData(a)){var d,e,g,h=f.expando,i=a.nodeType,j=i?f.cache:a,k=i?a[f.expando]:f.expando;if(!j[k])return;if(b){d=c?j[k]:j[k].data;if(d){f.isArray(b)?b=b:b in d?b=[b]:(b=f.camelCase(b),b in d?b=[b]:b=b.split(" "));for(e=0,g=b.length;e-1)return!0;return!1},val:function(a){var c,d,e,g=this[0];if(!arguments.length){if(g){c=f.valHooks[g.nodeName.toLowerCase()]||f.valHooks[g.type];if(c&&"get"in c&&(d=c.get(g,"value"))!==b)return d;d=g.value;return typeof d=="string"?d.replace(q,""):d==null?"":d}return b}e=f.isFunction(a);return this.each(function(d){var g=f(this),h;if(this.nodeType===1){e?h=a.call(this,d,g.val()):h=a,h==null?h="":typeof h=="number"?h+="":f.isArray(h)&&(h=f.map(h,function(a){return a==null?"":a+""})),c=f.valHooks[this.nodeName.toLowerCase()]||f.valHooks[this.type];if(!c||!("set"in c)||c.set(this,h,"value")===b)this.value=h}})}}),f.extend({valHooks:{option:{get:function(a){var b=a.attributes.value;return!b||b.specified?a.value:a.text}},select:{get:function(a){var b,c,d,e,g=a.selectedIndex,h=[],i=a.options,j=a.type==="select-one";if(g<0)return null;c=j?g:0,d=j?g+1:i.length;for(;c=0}),c.length||(a.selectedIndex=-1);return c}}},attrFn:{val:!0,css:!0,html:!0,text:!0,data:!0,width:!0,height:!0,offset:!0},attr:function(a,c,d,e){var g,h,i,j=a.nodeType;if(!a||j===3||j===8||j===2)return b;if(e&&c in f.attrFn)return f(a)[c](d);if(!("getAttribute"in a))return f.prop(a,c,d);i=j!==1||!f.isXMLDoc(a),i&&(c=c.toLowerCase(),h=f.attrHooks[c]||(u.test(c)?x:w));if(d!==b){if(d===null){f.removeAttr(a,c);return b}if(h&&"set"in h&&i&&(g=h.set(a,d,c))!==b)return g;a.setAttribute(c,""+d);return d}if(h&&"get"in h&&i&&(g=h.get(a,c))!==null)return g;g=a.getAttribute(c);return g===null?b:g},removeAttr:function(a,b){var c,d,e,g,h=0;if(a.nodeType===1){d=(b||"").split(p),g=d.length;for(;h=0}})});var z=/\.(.*)$/,A=/^(?:textarea|input|select)$/i,B=/\./g,C=/ /g,D=/[^\w\s.|`]/g,E=/^([^\.]*)?(?:\.(.+))?$/,F=/\bhover(\.\S+)?/,G=/^key/,H=/^(?:mouse|contextmenu)|click/,I=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,J=function(a){var b=I.exec(a);b&& -(b[1]=(b[1]||"").toLowerCase(),b[3]=b[3]&&new RegExp("(?:^|\\s)"+b[3]+"(?:\\s|$)"));return b},K=function(a,b){return(!b[1]||a.nodeName.toLowerCase()===b[1])&&(!b[2]||a.id===b[2])&&(!b[3]||b[3].test(a.className))},L=function(a){return f.event.special.hover?a:a.replace(F,"mouseenter$1 mouseleave$1")};f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=L(c).split(" ");for(k=0;k=0&&(h=h.slice(0,-1),k=!0),h.indexOf(".")>=0&&(i=h.split("."),h=i.shift(),i.sort());if((!e||f.event.customEvent[h])&&!f.event.global[h])return;c=typeof c=="object"?c[f.expando]?c:new f.Event(h,c):new f.Event(h),c.type=h,c.isTrigger=!0,c.exclusive=k,c.namespace=i.join("."),c.namespace_re=c.namespace?new RegExp("(^|\\.)"+i.join("\\.(?:.*\\.)?")+"(\\.|$)"):null,o=h.indexOf(":")<0?"on"+h:"",(g||!e)&&c.preventDefault();if(!e){j=f.cache;for(l in j)j[l].events&&j[l].events[h]&&f.event.trigger(c,d,j[l].handle.elem,!0);return}c.result=b,c.target||(c.target=e),d=d!=null?f.makeArray(d):[],d.unshift(c),p=f.event.special[h]||{};if(p.trigger&&p.trigger.apply(e,d)===!1)return;r=[[e,p.bindType||h]];if(!g&&!p.noBubble&&!f.isWindow(e)){s=p.delegateType||h,n=null;for(m=e.parentNode;m;m=m.parentNode)r.push([m,s]),n=m;n&&n===e.ownerDocument&&r.push([n.defaultView||n.parentWindow||a,s])}for(l=0;l=0:t===b&&(t=o[s]=r.quick?K(m,r.quick):f(m).is(s)),t&&q.push(r);q.length&&j.push({elem:m,matches:q})}d.length>e&&j.push({elem:this,matches:d.slice(e)});for(k=0;k0?this.bind(b,a,c):this.trigger(b)},f.attrFn&&(f.attrFn[b]=!0),G.test(b)&&(f.event.fixHooks[b]=f.event.keyHooks),H.test(b)&&(f.event.fixHooks[b]=f.event.mouseHooks)}),function(){function x(a,b,c,e,f,g){for(var h=0,i=e.length;h0){k=j;break}}j=j[a]}e[h]=k}}}function w(a,b,c,e,f,g){for(var h=0,i=e.length;h+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,d="sizcache"+(Math.random()+"").replace(".",""),e=0,g=Object.prototype.toString,h=!1,i=!0,j=/\\/g,k=/\r\n/g,l=/\W/;[0,0].sort(function(){i=!1;return 0});var m=function(b,d,e,f){e=e||[],d=d||c;var h=d;if(d.nodeType!==1&&d.nodeType!==9)return[];if(!b||typeof b!="string")return e;var i,j,k,l,n,q,r,t,u=!0,v=m.isXML(d),w=[],x=b;do{a.exec(""),i=a.exec(x);if(i){x=i[3],w.push(i[1]);if(i[2]){l=i[3];break}}}while(i);if(w.length>1&&p.exec(b))if(w.length===2&&o.relative[w[0]])j=y(w[0]+w[1],d,f);else{j=o.relative[w[0]]?[d]:m(w.shift(),d);while(w.length)b=w.shift(),o.relative[b]&&(b+=w.shift()),j=y(b,j,f)}else{!f&&w.length>1&&d.nodeType===9&&!v&&o.match.ID.test(w[0])&&!o.match.ID.test(w[w.length-1])&&(n=m.find(w.shift(),d,v),d=n.expr?m.filter(n.expr,n.set)[0]:n.set[0]);if(d){n=f?{expr:w.pop(),set:s(f)}:m.find(w.pop(),w.length===1&&(w[0]==="~"||w[0]==="+")&&d.parentNode?d.parentNode:d,v),j=n.expr?m.filter(n.expr,n.set):n.set,w.length>0?k=s(j):u=!1;while(w.length)q=w.pop(),r=q,o.relative[q]?r=w.pop():q="",r==null&&(r=d),o.relative[q](k,r,v)}else k=w=[]}k||(k=j),k||m.error(q||b);if(g.call(k)==="[object Array]")if(!u)e.push.apply(e,k);else if(d&&d.nodeType===1)for(t=0;k[t]!=null;t++)k[t]&&(k[t]===!0||k[t].nodeType===1&&m.contains(d,k[t]))&&e.push(j[t]);else for(t=0;k[t]!=null;t++)k[t]&&k[t].nodeType===1&&e.push(j[t]);else s(k,e);l&&(m(l,h,e,f),m.uniqueSort(e));return e};m.uniqueSort=function(a){if(u){h=i,a.sort(u);if(h)for(var b=1;b0},m.find=function(a,b,c){var d,e,f,g,h,i;if(!a)return[];for(e=0,f=o.order.length;e":function(a,b){var c,d=typeof b=="string",e=0,f=a.length;if(d&&!l.test(b)){b=b.toLowerCase();for(;e=0)?c||d.push(h):c&&(b[g]=!1));return!1},ID:function(a){return a[1].replace(j,"")},TAG:function(a,b){return a[1].replace(j,"").toLowerCase()},CHILD:function(a){if(a[1]==="nth"){a[2]||m.error(a[0]),a[2]=a[2].replace(/^\+|\s*/g,"");var b=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(a[2]==="even"&&"2n"||a[2]==="odd"&&"2n+1"||!/\D/.test(a[2])&&"0n+"+a[2]||a[2]);a[2]=b[1]+(b[2]||1)-0,a[3]=b[3]-0}else a[2]&&m.error(a[0]);a[0]=e++;return a},ATTR:function(a,b,c,d,e,f){var g=a[1]=a[1].replace(j,"");!f&&o.attrMap[g]&&(a[1]=o.attrMap[g]),a[4]=(a[4]||a[5]||"").replace(j,""),a[2]==="~="&&(a[4]=" "+a[4]+" ");return a},PSEUDO:function(b,c,d,e,f){if(b[1]==="not")if((a.exec(b[3])||"").length>1||/^\w/.test(b[3]))b[3]=m(b[3],null,null,c);else{var g=m.filter(b[3],c,d,!0^f);d||e.push.apply(e,g);return!1}else if(o.match.POS.test(b[0])||o.match.CHILD.test(b[0]))return!0;return b},POS:function(a){a.unshift(!0);return a}},filters:{enabled:function(a){return a.disabled===!1&&a.type!=="hidden"},disabled:function(a){return a.disabled===!0},checked:function(a){return a.checked===!0},selected:function(a){a.parentNode&&a.parentNode.selectedIndex;return a.selected===!0},parent:function(a){return!!a.firstChild},empty:function(a){return!a.firstChild},has:function(a,b,c){return!!m(c[3],a).length},header:function(a){return/h\d/i.test(a.nodeName)},text:function(a){var b=a.getAttribute("type"),c=a.type;return a.nodeName.toLowerCase()==="input"&&"text"===c&&(b===c||b===null)},radio:function(a){return a.nodeName.toLowerCase()==="input"&&"radio"===a.type},checkbox:function(a){return a.nodeName.toLowerCase()==="input"&&"checkbox"===a.type},file:function(a){return a.nodeName.toLowerCase()==="input"&&"file"===a.type},password:function(a){return a.nodeName.toLowerCase()==="input"&&"password"===a.type},submit:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"submit"===a.type},image:function(a){return a.nodeName.toLowerCase()==="input"&&"image"===a.type},reset:function(a){var b=a.nodeName.toLowerCase();return(b==="input"||b==="button")&&"reset"===a.type},button:function(a){var b=a.nodeName.toLowerCase();return b==="input"&&"button"===a.type||b==="button"},input:function(a){return/input|select|textarea|button/i.test(a.nodeName)},focus:function(a){return a===a.ownerDocument.activeElement}},setFilters:{first:function(a,b){return b===0},last:function(a,b,c,d){return b===d.length-1},even:function(a,b){return b%2===0},odd:function(a,b){return b%2===1},lt:function(a,b,c){return bc[3]-0},nth:function(a,b,c){return c[3]-0===b},eq:function(a,b,c){return c[3]-0===b}},filter:{PSEUDO:function(a,b,c,d){var e=b[1],f=o.filters[e];if(f)return f(a,c,b,d);if(e==="contains")return(a.textContent||a.innerText||n([a])||"").indexOf(b[3])>=0;if(e==="not"){var g=b[3];for(var h=0,i=g.length;h=0}},ID:function(a,b){return a.nodeType===1&&a.getAttribute("id")===b},TAG:function(a,b){return b==="*"&&a.nodeType===1||!!a.nodeName&&a.nodeName.toLowerCase()===b},CLASS:function(a,b){return(" "+(a.className||a.getAttribute("class"))+" ").indexOf(b)>-1},ATTR:function(a,b){var c=b[1],d=m.attr?m.attr(a,c):o.attrHandle[c]?o.attrHandle[c](a):a[c]!=null?a[c]:a.getAttribute(c),e=d+"",f=b[2],g=b[4];return d==null?f==="!=":!f&&m.attr?d!=null:f==="="?e===g:f==="*="?e.indexOf(g)>=0:f==="~="?(" "+e+" ").indexOf(g)>=0:g?f==="!="?e!==g:f==="^="?e.indexOf(g)===0:f==="$="?e.substr(e.length-g.length)===g:f==="|="?e===g||e.substr(0,g.length+1)===g+"-":!1:e&&d!==!1},POS:function(a,b,c,d){var e=b[2],f=o.setFilters[e];if(f)return f(a,c,b,d)}}},p=o.match.POS,q=function(a,b){return"\\"+(b-0+1)};for(var r in o.match)o.match[r]=new RegExp(o.match[r].source+/(?![^\[]*\])(?![^\(]*\))/.source),o.leftMatch[r]=new RegExp(/(^(?:.|\r|\n)*?)/.source+o.match[r].source.replace(/\\(\d+)/g,q));var s=function(a,b){a=Array.prototype.slice.call(a,0);if(b){b.push.apply(b,a);return b}return a};try{Array.prototype.slice.call(c.documentElement.childNodes,0)[0].nodeType}catch(t){s=function(a,b){var c=0,d=b||[];if(g.call(a)==="[object Array]")Array.prototype.push.apply(d,a);else if(typeof a.length=="number")for(var e=a.length;c",e.insertBefore(a,e.firstChild),c.getElementById(d)&&(o.find.ID=function(a,c,d){if(typeof c.getElementById!="undefined"&&!d){var e=c.getElementById(a[1]);return e?e.id===a[1]||typeof e.getAttributeNode!="undefined"&&e.getAttributeNode("id").nodeValue===a[1]?[e]:b:[]}},o.filter.ID=function(a,b){var c=typeof a.getAttributeNode!="undefined"&&a.getAttributeNode("id");return a.nodeType===1&&c&&c.nodeValue===b}),e.removeChild(a),e=a=null}(),function(){var a=c.createElement("div");a.appendChild(c.createComment("")),a.getElementsByTagName("*").length>0&&(o.find.TAG=function(a,b){var c=b.getElementsByTagName(a[1]);if(a[1]==="*"){var d=[];for(var e=0;c[e];e++)c[e].nodeType===1&&d.push(c[e]);c=d}return c}),a.innerHTML="",a.firstChild&&typeof a.firstChild.getAttribute!="undefined"&&a.firstChild.getAttribute("href")!=="#"&&(o.attrHandle.href=function(a){return a.getAttribute("href",2)}),a=null}(),c.querySelectorAll&&function(){var a=m,b=c.createElement("div"),d="__sizzle__";b.innerHTML="

";if(!b.querySelectorAll||b.querySelectorAll(".TEST").length!==0){m=function(b,e,f,g){e=e||c;if(!g&&!m.isXML(e)){var h=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b);if(h&&(e.nodeType===1||e.nodeType===9)){if(h[1])return s(e.getElementsByTagName(b),f);if(h[2]&&o.find.CLASS&&e.getElementsByClassName)return s(e.getElementsByClassName(h[2]),f)}if(e.nodeType===9){if(b==="body"&&e.body)return s([e.body],f);if(h&&h[3]){var i=e.getElementById(h[3]);if(!i||!i.parentNode)return s([],f);if(i.id===h[3])return s([i],f)}try{return s(e.querySelectorAll(b),f)}catch(j){}}else if(e.nodeType===1&&e.nodeName.toLowerCase()!=="object"){var k=e,l=e.getAttribute("id"),n=l||d,p=e.parentNode,q=/^\s*[+~]/.test(b);l?n=n.replace(/'/g,"\\$&"):e.setAttribute("id",n),q&&p&&(e=e.parentNode);try{if(!q||p)return s(e.querySelectorAll("[id='"+n+"'] "+b),f)}catch(r){}finally{l||k.removeAttribute("id")}}}return a(b,e,f,g)};for(var e in a)m[e]=a[e];b=null}}(),function(){var a=c.documentElement,b=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(b){var d=!b.call(c.createElement("div"),"div"),e=!1;try{b.call(c.documentElement,"[test!='']:sizzle")}catch(f){e=!0}m.matchesSelector=function(a,c){c=c.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!m.isXML(a))try{if(e||!o.match.PSEUDO.test(c)&&!/!=/.test(c)){var f=b.call(a,c);if(f||!d||a.document&&a.document.nodeType!==11)return f}}catch(g){}return m(c,null,null,[a]).length>0}}}(),function(){var a=c.createElement("div");a.innerHTML="
";if(!!a.getElementsByClassName&&a.getElementsByClassName("e").length!==0){a.lastChild.className="e";if(a.getElementsByClassName("e").length===1)return;o.order.splice(1,0,"CLASS"),o.find.CLASS=function(a,b,c){if(typeof b.getElementsByClassName!="undefined"&&!c)return b.getElementsByClassName(a[1])},a=null}}(),c.documentElement.contains?m.contains=function(a,b){return a!==b&&(a.contains?a.contains(b):!0)}:c.documentElement.compareDocumentPosition?m.contains=function(a,b){return!!(a.compareDocumentPosition(b)&16)}:m.contains=function(){return!1},m.isXML=function(a){var b=(a?a.ownerDocument||a:0).documentElement;return b?b.nodeName!=="HTML":!1};var y=function(a,b,c){var d,e=[],f="",g=b.nodeType?[b]:b;while(d=o.match.PSEUDO.exec(a))f+=d[0],a=a.replace(o.match.PSEUDO,"");a=o.relative[a]?a+"*":a;for(var h=0,i=g.length;h0)for(h=g;h=0:f.filter(a,this).length>0:this.filter(a).length>0)},closest:function(a,b){var c=[],d,e,g=this[0];if(f.isArray(a)){var h=1;while(g&&g.ownerDocument&&g!==b){for(d=0;d-1:f.find.matchesSelector(g,a)){c.push(g);break}g=g.parentNode;if(!g||!g.ownerDocument||g===b||g.nodeType===11)break}}c=c.length>1?f.unique(c):c;return this.pushStack(c,"closest",a)},index:function(a){if(!a)return this[0]&&this[0].parentNode?this.prevAll().length:-1;if(typeof a=="string")return f.inArray(this[0],f(a));return f.inArray(a.jquery?a[0]:a,this)},add:function(a,b){var c=typeof a=="string"?f(a,b):f.makeArray(a&&a.nodeType?[a]:a),d=f.merge(this.get(),c);return this.pushStack(V(c[0])||V(d[0])?d:f.unique(d))},andSelf:function(){return this.add(this.prevObject)}}),f.each({parent:function(a){var b=a.parentNode;return b&&b.nodeType!==11?b:null},parents:function(a){return f.dir(a,"parentNode")},parentsUntil:function(a,b,c){return f.dir(a,"parentNode",c)},next:function(a){return f.nth(a,2,"nextSibling")},prev:function(a){return f.nth(a,2,"previousSibling")},nextAll:function(a){return f.dir(a,"nextSibling")},prevAll:function(a){return f.dir(a,"previousSibling")},nextUntil:function(a,b,c){return f.dir(a,"nextSibling",c)},prevUntil:function(a,b,c){return f.dir(a,"previousSibling",c)},siblings:function(a){return f.sibling(a.parentNode.firstChild,a)},children:function(a){return f.sibling(a.firstChild)},contents:function(a){return f.nodeName(a,"iframe")?a.contentDocument||a.contentWindow.document:f.makeArray(a.childNodes)}},function(a,b){f.fn[a]=function(c,d){var e=f.map(this,b,c),g=S.call(arguments);O.test(a)||(d=c),d&&typeof d=="string"&&(e=f.filter(d,e)),e=this.length>1&&!U[a]?f.unique(e):e,(this.length>1||Q.test(d))&&P.test(a)&&(e=e.reverse());return this.pushStack(e,a,g.join(","))}}),f.extend({filter:function(a,b,c){c&&(a=":not("+a+")");return b.length===1?f.find.matchesSelector(b[0],a)?[b[0]]:[]:f.find.matches(a,b)},dir:function(a,c,d){var e=[],g=a[c];while(g&&g.nodeType!==9&&(d===b||g.nodeType!==1||!f(g).is(d)))g.nodeType===1&&e.push(g),g=g[c];return e},nth:function(a,b,c,d){b=b||1;var e=0;for(;a;a=a[c])if(a.nodeType===1&&++e===b)break;return a},sibling:function(a,b){var c=[];for(;a;a=a.nextSibling)a.nodeType===1&&a!==b&&c.push(a);return c}});var Y="abbr article aside audio canvas datalist details figcaption figure footer header hgroup mark meter nav output progress section summary time video",Z=/ jQuery\d+="(?:\d+|null)"/g,$=/^\s+/,_=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,ba=/<([\w:]+)/,bb=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},bk=X(c);bj.optgroup=bj.option,bj.tbody=bj.tfoot=bj.colgroup=bj.caption=bj.thead,bj.th=bj.td,f.support.htmlSerialize||(bj._default=[1,"div
","
"]),f.fn.extend({text:function(a){if(f.isFunction(a))return this.each(function(b){var c=f(this);c.text(a.call(this,b,c.text()))});if(typeof a!="object"&&a!==b)return this.empty().append((this[0]&&this[0].ownerDocument||c).createTextNode(a));return f.text(this)},wrapAll:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapAll(a.call(this,b))});if(this[0]){var b=f(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&b.insertBefore(this[0]),b.map(function(){var a=this;while(a.firstChild&&a.firstChild.nodeType===1)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){if(f.isFunction(a))return this.each(function(b){f(this).wrapInner(a.call(this,b))});return this.each(function(){var b=f(this),c=b.contents();c.length?c.wrapAll(a):b.append(a)})},wrap:function(a){return this.each(function(){f(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){f.nodeName(this,"body")||f(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){this.nodeType===1&&this.insertBefore(a,this.firstChild)})},before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=f(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after" -,arguments);a.push.apply(a,f(arguments[0]).toArray());return a}},remove:function(a,b){for(var c=0,d;(d=this[c])!=null;c++)if(!a||f.filter(a,[d]).length)!b&&d.nodeType===1&&(f.cleanData(d.getElementsByTagName("*")),f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function(){for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(Z,""):null;if(typeof a=="string"&&!bd.test(a)&&(f.support.leadingWhitespace||!$.test(a))&&!bj[(ba.exec(a)||["",""])[1].toLowerCase()]){a=a.replace(_,"<$1>");try{for(var c=0,d=this.length;c1&&l0?this.clone(!0):this).get();f(e[h])[b](j),d=d.concat(j)}return this.pushStack(d,a,e.selector)}}),f.extend({clone:function(a,b,c){var d=a.cloneNode(!0),e,g,h;if((!f.support.noCloneEvent||!f.support.noCloneChecked)&&(a.nodeType===1||a.nodeType===11)&&!f.isXMLDoc(a)){bn(a,d),e=bo(a),g=bo(d);for(h=0;e[h];++h)g[h]&&bn(e[h],g[h])}if(b){bm(a,d);if(c){e=bo(a),g=bo(d);for(h=0;e[h];++h)bm(e[h],g[h])}}e=g=null;return d},clean:function(a,b,d,e){var g;b=b||c,typeof b.createElement=="undefined"&&(b=b.ownerDocument||b[0]&&b[0].ownerDocument||c);var h=[],i;for(var j=0,k;(k=a[j])!=null;j++){typeof k=="number"&&(k+="");if(!k)continue;if(typeof k=="string")if(!bc.test(k))k=b.createTextNode(k);else{k=k.replace(_,"<$1>");var l=(ba.exec(k)||["",""])[1].toLowerCase(),m=bj[l]||bj._default,n=m[0],o=b.createElement("div");b===c?bk.appendChild(o):X(b).appendChild(o),o.innerHTML=m[1]+k+m[2];while(n--)o=o.lastChild;if(!f.support.tbody){var p=bb.test(k),q=l==="table"&&!p?o.firstChild&&o.firstChild.childNodes:m[1]===""&&!p?o.childNodes:[];for(i=q.length-1;i>=0;--i)f.nodeName(q[i],"tbody")&&!q[i].childNodes.length&&q[i].parentNode.removeChild(q[i])}!f.support.leadingWhitespace&&$.test(k)&&o.insertBefore(b.createTextNode($.exec(k)[0]),o.firstChild),k=o.childNodes}var r;if(!f.support.appendChecked)if(k[0]&&typeof (r=k.length)=="number")for(i=0;i=0)return b+"px"}}}),f.support.opacity||(f.cssHooks.opacity={get:function(a,b){return bt.test((b&&a.currentStyle?a.currentStyle.filter:a.style.filter)||"")?parseFloat(RegExp.$1)/100+"":b?"1":""},set:function(a,b){var c=a.style,d=a.currentStyle,e=f.isNumeric(b)?"alpha(opacity="+b*100+")":"",g=d&&d.filter||c.filter||"";c.zoom=1;if(b>=1&&f.trim(g.replace(bs,""))===""){c.removeAttribute("filter");if(d&&!d.filter)return}c.filter=bs.test(g)?g.replace(bs,e):g+" "+e}}),f(function(){f.support.reliableMarginRight||(f.cssHooks.marginRight={get:function(a,b){var c;f.swap(a,{display:"inline-block"},function(){b?c=bB(a,"margin-right","marginRight"):c=a.style.marginRight});return c}})}),c.defaultView&&c.defaultView.getComputedStyle&&(bC=function(a,c){var d,e,g;c=c.replace(bu,"-$1").toLowerCase();if(!(e=a.ownerDocument.defaultView))return b;if(g=e.getComputedStyle(a,null))d=g.getPropertyValue(c),d===""&&!f.contains(a.ownerDocument.documentElement,a)&&(d=f.style(a,c));return d}),c.documentElement.currentStyle&&(bD=function(a,b){var c,d,e,f=a.currentStyle&&a.currentStyle[b],g=a.style;f===null&&g&&(e=g[b])&&(f=e),!bv.test(f)&&bw.test(f)&&(c=g.left,d=a.runtimeStyle&&a.runtimeStyle.left,d&&(a.runtimeStyle.left=a.currentStyle.left),g.left=b==="fontSize"?"1em":f||0,f=g.pixelLeft+"px",g.left=c,d&&(a.runtimeStyle.left=d));return f===""?"auto":f}),bB=bC||bD,f.expr&&f.expr.filters&&(f.expr.filters.hidden=function(a){var b=a.offsetWidth,c=a.offsetHeight;return b===0&&c===0||!f.support.reliableHiddenOffsets&&(a.style&&a.style.display||f.css(a,"display"))==="none"},f.expr.filters.visible=function(a){return!f.expr.filters.hidden(a)});var bF=/%20/g,bG=/\[\]$/,bH=/\r?\n/g,bI=/#.*$/,bJ=/^(.*?):[ \t]*([^\r\n]*)\r?$/mg,bK=/^(?:color|date|datetime|datetime-local|email|hidden|month|number|password|range|search|tel|text|time|url|week)$/i,bL=/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/,bM=/^(?:GET|HEAD)$/,bN=/^\/\//,bO=/\?/,bP=/)<[^<]*)*<\/script>/gi,bQ=/^(?:select|textarea)/i,bR=/\s+/,bS=/([?&])_=[^&]*/,bT=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,bU=f.fn.load,bV={},bW={},bX,bY,bZ=["*/"]+["*"];try{bX=e.href}catch(b$){bX=c.createElement("a"),bX.href="",bX=bX.href}bY=bT.exec(bX.toLowerCase())||[],f.fn.extend({load:function(a,c,d){if(typeof a!="string"&&bU)return bU.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(e>=0){var g=a.slice(e,a.length);a=a.slice(0,e)}var h="GET";c&&(f.isFunction(c)?(d=c,c=b):typeof c=="object"&&(c=f.param(c,f.ajaxSettings.traditional),h="POST"));var i=this;f.ajax({url:a,type:h,dataType:"html",data:c,complete:function(a,b,c){c=a.responseText,a.isResolved()&&(a.done(function(a){c=a}),i.html(g?f("
").append(c.replace(bP,"")).find(g):c)),d&&i.each(d,[c,b,a])}});return this},serialize:function(){return f.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?f.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||bQ.test(this.nodeName)||bK.test(this.type))}).map(function(a,b){var c=f(this).val();return c==null?null:f.isArray(c)?f.map(c,function(a,c){return{name:b.name,value:a.replace(bH,"\r\n")}}):{name:b.name,value:c.replace(bH,"\r\n")}}).get()}}),f.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,b){f.fn[b]=function(a){return this.bind(b,a)}}),f.each(["get","post"],function(a,c){f[c]=function(a,d,e,g){f.isFunction(d)&&(g=g||e,e=d,d=b);return f.ajax({type:c,url:a,data:d,success:e,dataType:g})}}),f.extend({getScript:function(a,c){return f.get(a,b,c,"script")},getJSON:function(a,b,c){return f.get(a,b,c,"json")},ajaxSetup:function(a,b){b?cb(a,f.ajaxSettings):(b=a,a=f.ajaxSettings),cb(a,b);return a},ajaxSettings:{url:bX,isLocal:bL.test(bY[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":bZ},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":f.parseJSON,"text xml":f.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:b_(bV),ajaxTransport:b_(bW),ajax:function(a,c){function w(a,c,l,m){if(s!==2){s=2,q&&clearTimeout(q),p=b,n=m||"",v.readyState=a>0?4:0;var o,r,u,w=c,x=l?cd(d,v,l):b,y,z;if(a>=200&&a<300||a===304){if(d.ifModified){if(y=v.getResponseHeader("Last-Modified"))f.lastModified[k]=y;if(z=v.getResponseHeader("Etag"))f.etag[k]=z}if(a===304)w="notmodified",o=!0;else try{r=ce(d,x),w="success",o=!0}catch(A){w="parsererror",u=A}}else{u=w;if(!w||a)w="error",a<0&&(a=0)}v.status=a,v.statusText=""+(c||w),o?h.resolveWith(e,[r,w,v]):h.rejectWith(e,[v,w,u]),v.statusCode(j),j=b,t&&g.trigger("ajax"+(o?"Success":"Error"),[v,d,o?r:u]),i.fireWith(e,[v,w]),t&&(g.trigger("ajaxComplete",[v,d]),--f.active||f.event.trigger("ajaxStop"))}}typeof a=="object"&&(c=a,a=b),c=c||{};var d=f.ajaxSetup({},c),e=d.context||d,g=e!==d&&(e.nodeType||e instanceof f)?f(e):f.event,h=f.Deferred(),i=f.Callbacks("once memory"),j=d.statusCode||{},k,l={},m={},n,o,p,q,r,s=0,t,u,v={readyState:0,setRequestHeader:function(a,b){if(!s){var c=a.toLowerCase();a=m[c]=m[c]||a,l[a]=b}return this},getAllResponseHeaders:function(){return s===2?n:null},getResponseHeader:function(a){var c;if(s===2){if(!o){o={};while(c=bJ.exec(n))o[c[1].toLowerCase()]=c[2]}c=o[a.toLowerCase()]}return c===b?null:c},overrideMimeType:function(a){s||(d.mimeType=a);return this},abort:function(a){a=a||"abort",p&&p.abort(a),w(0,a);return this}};h.promise(v),v.success=v.done,v.error=v.fail,v.complete=i.add,v.statusCode=function(a){if(a){var b;if(s<2)for(b in a)j[b]=[j[b],a[b]];else b=a[v.status],v.then(b,b)}return this},d.url=((a||d.url)+"").replace(bI,"").replace(bN,bY[1]+"//"),d.dataTypes=f.trim(d.dataType||"*").toLowerCase().split(bR),d.crossDomain==null&&(r=bT.exec(d.url.toLowerCase()),d.crossDomain=!(!r||r[1]==bY[1]&&r[2]==bY[2]&&(r[3]||(r[1]==="http:"?80:443))==(bY[3]||(bY[1]==="http:"?80:443)))),d.data&&d.processData&&typeof d.data!="string"&&(d.data=f.param(d.data,d.traditional)),ca(bV,d,c,v);if(s===2)return!1;t=d.global,d.type=d.type.toUpperCase(),d.hasContent=!bM.test(d.type),t&&f.active++===0&&f.event.trigger("ajaxStart");if(!d.hasContent){d.data&&(d.url+=(bO.test(d.url)?"&":"?")+d.data,delete d.data),k=d.url;if(d.cache===!1){var x=f.now(),y=d.url.replace(bS,"$1_="+x);d.url=y+(y===d.url?(bO.test(d.url)?"&":"?")+"_="+x:"")}}(d.data&&d.hasContent&&d.contentType!==!1||c.contentType)&&v.setRequestHeader("Content-Type",d.contentType),d.ifModified&&(k=k||d.url,f.lastModified[k]&&v.setRequestHeader("If-Modified-Since",f.lastModified[k]),f.etag[k]&&v.setRequestHeader("If-None-Match",f.etag[k])),v.setRequestHeader("Accept",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(d.dataTypes[0]!=="*"?", "+bZ+"; q=0.01":""):d.accepts["*"]);for(u in d.headers)v.setRequestHeader(u,d.headers[u]);if(d.beforeSend&&(d.beforeSend.call(e,v,d)===!1||s===2)){v.abort();return!1}for(u in{success:1,error:1,complete:1})v[u](d[u]);p=ca(bW,d,c,v);if(!p)w(-1,"No Transport");else{v.readyState=1,t&&g.trigger("ajaxSend",[v,d]),d.async&&d.timeout>0&&(q=setTimeout(function(){v.abort("timeout")},d.timeout));try{s=1,p.send(l,w)}catch(z){s<2?w(-1,z):f.error(z)}}return v},param:function(a,c){var d=[],e=function(a,b){b=f.isFunction(b)?b():b,d[d.length]=encodeURIComponent(a)+"="+encodeURIComponent(b)};c===b&&(c=f.ajaxSettings.traditional);if(f.isArray(a)||a.jquery&&!f.isPlainObject(a))f.each(a,function(){e(this.name,this.value)});else for(var g in a)cc(g,a[g],c,e);return d.join("&").replace(bF,"+")}}),f.extend({active:0,lastModified:{},etag:{}});var cf=f.now(),cg=/(\=)\?(&|$)|\?\?/i;f.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return f.expando+"_"+cf++}}),f.ajaxPrefilter("json jsonp",function(b,c,d){var e=b.contentType==="application/x-www-form-urlencoded"&&typeof b.data=="string";if(b.dataTypes[0]==="jsonp"||b.jsonp!==!1&&(cg.test(b.url)||e&&cg.test(b.data))){var g,h=b.jsonpCallback=f.isFunction(b.jsonpCallback)?b.jsonpCallback():b.jsonpCallback,i=a[h],j=b.url,k=b.data,l="$1"+h+"$2";b.jsonp!==!1&&(j=j.replace(cg,l),b.url===j&&(e&&(k=k.replace(cg,l)),b.data===k&&(j+=(/\?/.test(j)?"&":"?")+b.jsonp+"="+h))),b.url=j,b.data=k,a[h]=function(a){g=[a]},d.always(function(){a[h]=i,g&&f.isFunction(i)&&a[h](g[0])}),b.converters["script json"]=function(){g||f.error(h+" was not called");return g[0]},b.dataTypes[0]="json";return"script"}}),f.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/},converters:{"text script":function(a){f.globalEval(a);return a}}}),f.ajaxPrefilter("script",function(a){a.cache===b&&(a.cache=!1),a.crossDomain&&(a.type="GET",a.global=!1)}),f.ajaxTransport("script",function(a){if(a.crossDomain){var d,e=c.head||c.getElementsByTagName("head")[0]||c.documentElement;return{send:function(f,g){d=c.createElement("script"),d.async="async",a.scriptCharset&&(d.charset=a.scriptCharset),d.src=a.url,d.onload=d.onreadystatechange=function(a,c){if(c||!d.readyState||/loaded|complete/.test(d.readyState))d.onload=d.onreadystatechange=null,e&&d.parentNode&&e.removeChild(d),d=b,c||g(200,"success")},e.insertBefore(d,e.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var ch=a.ActiveXObject?function(){for(var a in cj)cj[a](0,1)}:!1,ci=0,cj;f.ajaxSettings.xhr=a.ActiveXObject?function(){return!this.isLocal&&ck()||cl()}:ck,function(a){f.extend(f.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})}(f.ajaxSettings.xhr()),f.support.ajax&&f.ajaxTransport(function(c){if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m,n;try{if(d&&(e||h.readyState===4)){d=b,i&&(h.onreadystatechange=f.noop,ch&&delete cj[i]);if(e)h.readyState!==4&&h.abort();else{j=h.status,l=h.getAllResponseHeaders(),m={},n=h.responseXML,n&&n.documentElement&&(m.xml=n),m.text=h.responseText;try{k=h.statusText}catch(o){k=""}!j&&c.isLocal&&!c.crossDomain?j=m.text?200:404:j===1223&&(j=204)}}}catch(p){e||g(-1,p)}m&&g(j,k,m,l)},!c.async||h.readyState===4?d():(i=++ci,ch&&(cj||(cj={},f(a).unload(ch)),cj[i]=d),h.onreadystatechange=d)},abort:function(){d&&d(0,1)}}}});var cm={},cn,co,cp=/^(?:toggle|show|hide)$/,cq=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,cr,cs=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],ct;f.fn.extend({show:function(a,b,c){var d,e;if(a||a===0)return this.animate(cw("show",3),a,b,c);for(var g=0,h=this.length;g=i.duration+this.startTime){this.now=this.end,this.pos=this.state=1,this.update(),i.animatedProperties[this.prop]=!0;for(b in i.animatedProperties)i.animatedProperties[b]!==!0&&(g=!1);if(g){i.overflow!=null&&!f.support.shrinkWrapBlocks&&f.each(["","X","Y"],function(a,b){h.style["overflow"+b]=i.overflow[a]}),i.hide&&f(h).hide();if(i.hide||i.show)for(b in i.animatedProperties)f.style(h,b,i.orig[b]),f.removeData(h,"fxshow"+b,!0),f.removeData(h,"toggle"+b,!0);d=i.complete,d&&(i.complete=!1,d.call(h))}return!1}i.duration==Infinity?this.now=e:(c=e-this.startTime,this.state=c/i.duration,this.pos=f.easing[i.animatedProperties[this.prop]](this.state,c,0,1,i.duration),this.now=this.start+(this.end-this.start)*this.pos),this.update();return!0}},f.extend(f.fx,{tick:function(){var a,b=f.timers,c=0;for(;c-1,k={},l={},m,n;j?(l=e.position(),m=l.top,n=l.left):(m=parseFloat(h)||0,n=parseFloat(i)||0),f.isFunction(b)&&(b=b.call(a,c,g)),b.top!=null&&(k.top=b.top-g.top+m),b.left!=null&&(k.left=b.left-g.left+n),"using"in b?b.using.call(a,k):e.css(k)}},f.fn.extend({position:function(){if(!this[0])return null;var a=this[0],b=this.offsetParent(),c=this.offset(),d=cz.test(b[0].nodeName)?{top:0,left:0}:b.offset();c.top-=parseFloat(f.css(a,"marginTop"))||0,c.left-=parseFloat(f.css(a,"marginLeft"))||0,d.top+=parseFloat(f.css(b[0],"borderTopWidth"))||0,d.left+=parseFloat(f.css(b[0],"borderLeftWidth"))||0;return{top:c.top-d.top,left:c.left-d.left}},offsetParent:function(){return this.map(function(){var a=this.offsetParent||c.body;while(a&&!cz.test(a.nodeName)&&f.css(a,"position")==="static")a=a.offsetParent;return a})}}),f.each(["Left","Top"],function(a,c){var d="scroll"+c;f.fn[d]=function(c){var e,g;if(c===b){e=this[0];if(!e)return null;g=cA(e);return g?"pageXOffset"in g?g[a?"pageYOffset":"pageXOffset"]:f.support.boxModel&&g.document.documentElement[d]||g.document.body[d]:e[d]}return this.each(function(){g=cA(this),g?g.scrollTo(a?f(g).scrollLeft():c,a?c:f(g).scrollTop()):this[d]=c})}}),f.each(["Height","Width"],function(a,c){var d=c.toLowerCase();f.fn["inner"+c]=function(){var a=this[0];return a?a.style?parseFloat(f.css(a,d,"padding")):this[d]():null},f.fn["outer"+c]=function(a){var b=this[0];return b?b.style?parseFloat(f.css(b,d,a?"margin":"border")):this[d]():null},f.fn[d]=function(a){var e=this[0];if(!e)return a==null?null:this;if(f.isFunction(a))return this.each(function(b){var c=f(this);c[d](a.call(this,b,c[d]()))});if(f.isWindow(e)){var g=e.document.documentElement["client"+c],h=e.document.body;return e.document.compatMode==="CSS1Compat"&&g||h&&h["client"+c]||g}if(e.nodeType===9)return Math.max(e.documentElement["client"+c],e.body["scroll"+c],e.documentElement["scroll"+c],e.body["offset"+c],e.documentElement["offset"+c]);if(a===b){var i=f.css(e,d),j=parseFloat(i);return f.isNumeric(j)?j:i}return this.css(d,typeof a=="string"?a:a+"px")}}),a.jQuery=a.$=f})(window); \ No newline at end of file diff --git a/js/jquery-ui-1.8.16.custom.min.js b/js/jquery-ui-1.8.16.custom.min.js deleted file mode 100644 index 7e3093a..0000000 --- a/js/jquery-ui-1.8.16.custom.min.js +++ /dev/null @@ -1,611 +0,0 @@ -/*! - * jQuery UI 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI - */ -(function(c,j){function k(a,b){var d=a.nodeName.toLowerCase();if("area"===d){b=a.parentNode;d=b.name;if(!a.href||!d||b.nodeName.toLowerCase()!=="map")return false;a=c("img[usemap=#"+d+"]")[0];return!!a&&l(a)}return(/input|select|textarea|button|object/.test(d)?!a.disabled:"a"==d?a.href||b:b)&&l(a)}function l(a){return!c(a).parents().andSelf().filter(function(){return c.curCSS(this,"visibility")==="hidden"||c.expr.filters.hidden(this)}).length}c.ui=c.ui||{};if(!c.ui.version){c.extend(c.ui,{version:"1.8.16", -keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,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,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});c.fn.extend({propAttr:c.fn.prop||c.fn.attr,_focus:c.fn.focus,focus:function(a,b){return typeof a==="number"?this.each(function(){var d= -this;setTimeout(function(){c(d).focus();b&&b.call(d)},a)}):this._focus.apply(this,arguments)},scrollParent:function(){var a;a=c.browser.msie&&/(static|relative)/.test(this.css("position"))||/absolute/.test(this.css("position"))?this.parents().filter(function(){return/(relative|absolute|fixed)/.test(c.curCSS(this,"position",1))&&/(auto|scroll)/.test(c.curCSS(this,"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0):this.parents().filter(function(){return/(auto|scroll)/.test(c.curCSS(this, -"overflow",1)+c.curCSS(this,"overflow-y",1)+c.curCSS(this,"overflow-x",1))}).eq(0);return/fixed/.test(this.css("position"))||!a.length?c(document):a},zIndex:function(a){if(a!==j)return this.css("zIndex",a);if(this.length){a=c(this[0]);for(var b;a.length&&a[0]!==document;){b=a.css("position");if(b==="absolute"||b==="relative"||b==="fixed"){b=parseInt(a.css("zIndex"),10);if(!isNaN(b)&&b!==0)return b}a=a.parent()}}return 0},disableSelection:function(){return this.bind((c.support.selectstart?"selectstart": -"mousedown")+".ui-disableSelection",function(a){a.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});c.each(["Width","Height"],function(a,b){function d(f,g,m,n){c.each(e,function(){g-=parseFloat(c.curCSS(f,"padding"+this,true))||0;if(m)g-=parseFloat(c.curCSS(f,"border"+this+"Width",true))||0;if(n)g-=parseFloat(c.curCSS(f,"margin"+this,true))||0});return g}var e=b==="Width"?["Left","Right"]:["Top","Bottom"],h=b.toLowerCase(),i={innerWidth:c.fn.innerWidth,innerHeight:c.fn.innerHeight, -outerWidth:c.fn.outerWidth,outerHeight:c.fn.outerHeight};c.fn["inner"+b]=function(f){if(f===j)return i["inner"+b].call(this);return this.each(function(){c(this).css(h,d(this,f)+"px")})};c.fn["outer"+b]=function(f,g){if(typeof f!=="number")return i["outer"+b].call(this,f);return this.each(function(){c(this).css(h,d(this,f,true,g)+"px")})}});c.extend(c.expr[":"],{data:function(a,b,d){return!!c.data(a,d[3])},focusable:function(a){return k(a,!isNaN(c.attr(a,"tabindex")))},tabbable:function(a){var b=c.attr(a, -"tabindex"),d=isNaN(b);return(d||b>=0)&&k(a,!d)}});c(function(){var a=document.body,b=a.appendChild(b=document.createElement("div"));c.extend(b.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});c.support.minHeight=b.offsetHeight===100;c.support.selectstart="onselectstart"in b;a.removeChild(b).style.display="none"});c.extend(c.ui,{plugin:{add:function(a,b,d){a=c.ui[a].prototype;for(var e in d){a.plugins[e]=a.plugins[e]||[];a.plugins[e].push([b,d[e]])}},call:function(a,b,d){if((b=a.plugins[b])&& -a.element[0].parentNode)for(var e=0;e0)return true;a[b]=1;d=a[b]>0;a[b]=0;return d},isOverAxis:function(a,b,d){return a>b&&a=9)&&!a.button)return this._mouseUp(a);if(this._mouseStarted){this._mouseDrag(a);return a.preventDefault()}if(this._mouseDistanceMet(a)&&this._mouseDelayMet(a))(this._mouseStarted=this._mouseStart(this._mouseDownEvent,a)!==false)?this._mouseDrag(a):this._mouseUp(a);return!this._mouseStarted},_mouseUp:function(a){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted= -false;a.target==this._mouseDownEvent.target&&b.data(a.target,this.widgetName+".preventClickEvent",true);this._mouseStop(a)}return false},_mouseDistanceMet:function(a){return Math.max(Math.abs(this._mouseDownEvent.pageX-a.pageX),Math.abs(this._mouseDownEvent.pageY-a.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return true}})})(jQuery); -;/* - * jQuery UI Position 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Position - */ -(function(c){c.ui=c.ui||{};var n=/left|center|right/,o=/top|center|bottom/,t=c.fn.position,u=c.fn.offset;c.fn.position=function(b){if(!b||!b.of)return t.apply(this,arguments);b=c.extend({},b);var a=c(b.of),d=a[0],g=(b.collision||"flip").split(" "),e=b.offset?b.offset.split(" "):[0,0],h,k,j;if(d.nodeType===9){h=a.width();k=a.height();j={top:0,left:0}}else if(d.setTimeout){h=a.width();k=a.height();j={top:a.scrollTop(),left:a.scrollLeft()}}else if(d.preventDefault){b.at="left top";h=k=0;j={top:b.of.pageY, -left:b.of.pageX}}else{h=a.outerWidth();k=a.outerHeight();j=a.offset()}c.each(["my","at"],function(){var f=(b[this]||"").split(" ");if(f.length===1)f=n.test(f[0])?f.concat(["center"]):o.test(f[0])?["center"].concat(f):["center","center"];f[0]=n.test(f[0])?f[0]:"center";f[1]=o.test(f[1])?f[1]:"center";b[this]=f});if(g.length===1)g[1]=g[0];e[0]=parseInt(e[0],10)||0;if(e.length===1)e[1]=e[0];e[1]=parseInt(e[1],10)||0;if(b.at[0]==="right")j.left+=h;else if(b.at[0]==="center")j.left+=h/2;if(b.at[1]==="bottom")j.top+= -k;else if(b.at[1]==="center")j.top+=k/2;j.left+=e[0];j.top+=e[1];return this.each(function(){var f=c(this),l=f.outerWidth(),m=f.outerHeight(),p=parseInt(c.curCSS(this,"marginLeft",true))||0,q=parseInt(c.curCSS(this,"marginTop",true))||0,v=l+p+(parseInt(c.curCSS(this,"marginRight",true))||0),w=m+q+(parseInt(c.curCSS(this,"marginBottom",true))||0),i=c.extend({},j),r;if(b.my[0]==="right")i.left-=l;else if(b.my[0]==="center")i.left-=l/2;if(b.my[1]==="bottom")i.top-=m;else if(b.my[1]==="center")i.top-= -m/2;i.left=Math.round(i.left);i.top=Math.round(i.top);r={left:i.left-p,top:i.top-q};c.each(["left","top"],function(s,x){c.ui.position[g[s]]&&c.ui.position[g[s]][x](i,{targetWidth:h,targetHeight:k,elemWidth:l,elemHeight:m,collisionPosition:r,collisionWidth:v,collisionHeight:w,offset:e,my:b.my,at:b.at})});c.fn.bgiframe&&f.bgiframe();f.offset(c.extend(i,{using:b.using}))})};c.ui.position={fit:{left:function(b,a){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();b.left= -d>0?b.left-d:Math.max(b.left-a.collisionPosition.left,b.left)},top:function(b,a){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();b.top=d>0?b.top-d:Math.max(b.top-a.collisionPosition.top,b.top)}},flip:{left:function(b,a){if(a.at[0]!=="center"){var d=c(window);d=a.collisionPosition.left+a.collisionWidth-d.width()-d.scrollLeft();var g=a.my[0]==="left"?-a.elemWidth:a.my[0]==="right"?a.elemWidth:0,e=a.at[0]==="left"?a.targetWidth:-a.targetWidth,h=-2*a.offset[0];b.left+= -a.collisionPosition.left<0?g+e+h:d>0?g+e+h:0}},top:function(b,a){if(a.at[1]!=="center"){var d=c(window);d=a.collisionPosition.top+a.collisionHeight-d.height()-d.scrollTop();var g=a.my[1]==="top"?-a.elemHeight:a.my[1]==="bottom"?a.elemHeight:0,e=a.at[1]==="top"?a.targetHeight:-a.targetHeight,h=-2*a.offset[1];b.top+=a.collisionPosition.top<0?g+e+h:d>0?g+e+h:0}}}};if(!c.offset.setOffset){c.offset.setOffset=function(b,a){if(/static/.test(c.curCSS(b,"position")))b.style.position="relative";var d=c(b), -g=d.offset(),e=parseInt(c.curCSS(b,"top",true),10)||0,h=parseInt(c.curCSS(b,"left",true),10)||0;g={top:a.top-g.top+e,left:a.left-g.left+h};"using"in a?a.using.call(b,g):d.css(g)};c.fn.offset=function(b){var a=this[0];if(!a||!a.ownerDocument)return null;if(b)return this.each(function(){c.offset.setOffset(this,b)});return u.call(this)}}})(jQuery); -;/* - * jQuery UI Draggable 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Draggables - * - * Depends: - * jquery.ui.core.js - * jquery.ui.mouse.js - * jquery.ui.widget.js - */ -(function(d){d.widget("ui.draggable",d.ui.mouse,{widgetEventPrefix:"drag",options:{addClasses:true,appendTo:"parent",axis:false,connectToSortable:false,containment:false,cursor:"auto",cursorAt:false,grid:false,handle:false,helper:"original",iframeFix:false,opacity:false,refreshPositions:false,revert:false,revertDuration:500,scope:"default",scroll:true,scrollSensitivity:20,scrollSpeed:20,snap:false,snapMode:"both",snapTolerance:20,stack:false,zIndex:false},_create:function(){if(this.options.helper== -"original"&&!/^(?: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(){if(this.element.data("draggable")){this.element.removeData("draggable").unbind(".draggable").removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled");this._mouseDestroy();return this}},_mouseCapture:function(a){var b= -this.options;if(this.helper||b.disabled||d(a.target).is(".ui-resizable-handle"))return false;this.handle=this._getHandle(a);if(!this.handle)return false;if(b.iframeFix)d(b.iframeFix===true?"iframe":b.iframeFix).each(function(){d('
').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1E3}).css(d(this).offset()).appendTo("body")});return true},_mouseStart:function(a){var b=this.options; -this.helper=this._createHelper(a);this._cacheHelperProportions();if(d.ui.ddmanager)d.ui.ddmanager.current=this;this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.positionAbs=this.element.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}); -this.originalPosition=this.position=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);b.containment&&this._setContainment();if(this._trigger("start",a)===false){this._clear();return false}this._cacheHelperProportions();d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.helper.addClass("ui-draggable-dragging");this._mouseDrag(a,true);d.ui.ddmanager&&d.ui.ddmanager.dragStart(this,a);return true}, -_mouseDrag:function(a,b){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");if(!b){b=this._uiHash();if(this._trigger("drag",a,b)===false){this._mouseUp({});return false}this.position=b.position}if(!this.options.axis||this.options.axis!="y")this.helper[0].style.left=this.position.left+"px";if(!this.options.axis||this.options.axis!="x")this.helper[0].style.top=this.position.top+"px";d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);return false},_mouseStop:function(a){var b= -false;if(d.ui.ddmanager&&!this.options.dropBehaviour)b=d.ui.ddmanager.drop(this,a);if(this.dropped){b=this.dropped;this.dropped=false}if((!this.element[0]||!this.element[0].parentNode)&&this.options.helper=="original")return false;if(this.options.revert=="invalid"&&!b||this.options.revert=="valid"&&b||this.options.revert===true||d.isFunction(this.options.revert)&&this.options.revert.call(this.element,b)){var c=this;d(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration, -10),function(){c._trigger("stop",a)!==false&&c._clear()})}else this._trigger("stop",a)!==false&&this._clear();return false},_mouseUp:function(a){this.options.iframeFix===true&&d("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)});d.ui.ddmanager&&d.ui.ddmanager.dragStop(this,a);return d.ui.mouse.prototype._mouseUp.call(this,a)},cancel:function(){this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear();return this},_getHandle:function(a){var b=!this.options.handle|| -!d(this.options.handle,this.element).length?true:false;d(this.options.handle,this.element).find("*").andSelf().each(function(){if(this==a.target)b=true});return b},_createHelper:function(a){var b=this.options;a=d.isFunction(b.helper)?d(b.helper.apply(this.element[0],[a])):b.helper=="clone"?this.element.clone().removeAttr("id"):this.element;a.parents("body").length||a.appendTo(b.appendTo=="parent"?this.element[0].parentNode:b.appendTo);a[0]!=this.element[0]&&!/(fixed|absolute)/.test(a.css("position"))&& -a.css("position","absolute");return a},_adjustOffsetFromHelper:function(a){if(typeof a=="string")a=a.split(" ");if(d.isArray(a))a={left:+a[0],top:+a[1]||0};if("left"in a)this.offset.click.left=a.left+this.margins.left;if("right"in a)this.offset.click.left=this.helperProportions.width-a.right+this.margins.left;if("top"in a)this.offset.click.top=a.top+this.margins.top;if("bottom"in a)this.offset.click.top=this.helperProportions.height-a.bottom+this.margins.top},_getParentOffset:function(){this.offsetParent= -this.helper.offsetParent();var a=this.offsetParent.offset();if(this.cssPosition=="absolute"&&this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0])){a.left+=this.scrollParent.scrollLeft();a.top+=this.scrollParent.scrollTop()}if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&this.offsetParent[0].tagName.toLowerCase()=="html"&&d.browser.msie)a={top:0,left:0};return{top:a.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:a.left+(parseInt(this.offsetParent.css("borderLeftWidth"), -10)||0)}},_getRelativeOffset:function(){if(this.cssPosition=="relative"){var a=this.element.position();return{top:a.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}else 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 a=this.options;if(a.containment=="parent")a.containment=this.helper[0].parentNode;if(a.containment=="document"||a.containment=="window")this.containment=[a.containment=="document"?0:d(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,a.containment=="document"?0:d(window).scrollTop()-this.offset.relative.top-this.offset.parent.top, -(a.containment=="document"?0:d(window).scrollLeft())+d(a.containment=="document"?document:window).width()-this.helperProportions.width-this.margins.left,(a.containment=="document"?0:d(window).scrollTop())+(d(a.containment=="document"?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(!/^(document|window|parent)$/.test(a.containment)&&a.containment.constructor!=Array){a=d(a.containment);var b=a[0];if(b){a.offset();var c=d(b).css("overflow")!= -"hidden";this.containment=[(parseInt(d(b).css("borderLeftWidth"),10)||0)+(parseInt(d(b).css("paddingLeft"),10)||0),(parseInt(d(b).css("borderTopWidth"),10)||0)+(parseInt(d(b).css("paddingTop"),10)||0),(c?Math.max(b.scrollWidth,b.offsetWidth):b.offsetWidth)-(parseInt(d(b).css("borderLeftWidth"),10)||0)-(parseInt(d(b).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(c?Math.max(b.scrollHeight,b.offsetHeight):b.offsetHeight)-(parseInt(d(b).css("borderTopWidth"), -10)||0)-(parseInt(d(b).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom];this.relative_container=a}}else if(a.containment.constructor==Array)this.containment=a.containment},_convertPositionTo:function(a,b){if(!b)b=this.position;a=a=="absolute"?1:-1;var c=this.cssPosition=="absolute"&&!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName);return{top:b.top+ -this.offset.relative.top*a+this.offset.parent.top*a-(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollTop():f?0:c.scrollTop())*a),left:b.left+this.offset.relative.left*a+this.offset.parent.left*a-(d.browser.safari&&d.browser.version<526&&this.cssPosition=="fixed"?0:(this.cssPosition=="fixed"?-this.scrollParent.scrollLeft():f?0:c.scrollLeft())*a)}},_generatePosition:function(a){var b=this.options,c=this.cssPosition=="absolute"&& -!(this.scrollParent[0]!=document&&d.ui.contains(this.scrollParent[0],this.offsetParent[0]))?this.offsetParent:this.scrollParent,f=/(html|body)/i.test(c[0].tagName),e=a.pageX,h=a.pageY;if(this.originalPosition){var g;if(this.containment){if(this.relative_container){g=this.relative_container.offset();g=[this.containment[0]+g.left,this.containment[1]+g.top,this.containment[2]+g.left,this.containment[3]+g.top]}else g=this.containment;if(a.pageX-this.offset.click.leftg[2])e=g[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>g[3])h=g[3]+this.offset.click.top}if(b.grid){h=b.grid[1]?this.originalPageY+Math.round((h-this.originalPageY)/b.grid[1])*b.grid[1]:this.originalPageY;h=g?!(h-this.offset.click.topg[3])?h:!(h-this.offset.click.topg[2])?e:!(e-this.offset.click.left=0;i--){var j=c.snapElements[i].left,l=j+c.snapElements[i].width,k=c.snapElements[i].top,m=k+c.snapElements[i].height;if(j-e=j&&f<=l||h>=j&&h<=l||fl)&&(e>= -i&&e<=k||g>=i&&g<=k||ek);default:return false}};d.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(a,b){var c=d.ui.ddmanager.droppables[a.options.scope]||[],e=b?b.type:null,g=(a.currentItem||a.element).find(":data(droppable)").andSelf(),f=0;a:for(;f
').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("resizable",this.element.data("resizable"));this.elementIsWrapper=true;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=a.handles||(!e(".ui-resizable-handle",this.element).length?"e,s,se":{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"});if(this.handles.constructor==String){if(this.handles=="all")this.handles="n,e,s,w,se,sw,ne,nw";var c=this.handles.split(",");this.handles={};for(var d=0;d');/sw|se|ne|nw/.test(f)&&g.css({zIndex:++a.zIndex});"se"==f&&g.addClass("ui-icon ui-icon-gripsmall-diagonal-se");this.handles[f]=".ui-resizable-"+f;this.element.append(g)}}this._renderAxis=function(h){h=h||this.element;for(var i in this.handles){if(this.handles[i].constructor== -String)this.handles[i]=e(this.handles[i],this.element).show();if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var j=e(this.handles[i],this.element),l=0;l=/sw|ne|nw|se|n|s/.test(i)?j.outerHeight():j.outerWidth();j=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join("");h.css(j,l);this._proportionallyResize()}e(this.handles[i])}};this._renderAxis(this.element);this._handles=e(".ui-resizable-handle",this.element).disableSelection(); -this._handles.mouseover(function(){if(!b.resizing){if(this.className)var h=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);b.axis=h&&h[1]?h[1]:"se"}});if(a.autoHide){this._handles.hide();e(this.element).addClass("ui-resizable-autohide").hover(function(){if(!a.disabled){e(this).removeClass("ui-resizable-autohide");b._handles.show()}},function(){if(!a.disabled)if(!b.resizing){e(this).addClass("ui-resizable-autohide");b._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy(); -var b=function(c){e(c).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){b(this.element);var a=this.element;a.after(this.originalElement.css({position:a.css("position"),width:a.outerWidth(),height:a.outerHeight(),top:a.css("top"),left:a.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);b(this.originalElement);return this},_mouseCapture:function(b){var a= -false;for(var c in this.handles)if(e(this.handles[c])[0]==b.target)a=true;return!this.options.disabled&&a},_mouseStart:function(b){var a=this.options,c=this.element.position(),d=this.element;this.resizing=true;this.documentScroll={top:e(document).scrollTop(),left:e(document).scrollLeft()};if(d.is(".ui-draggable")||/absolute/.test(d.css("position")))d.css({position:"absolute",top:c.top,left:c.left});e.browser.opera&&/relative/.test(d.css("position"))&&d.css({position:"relative",top:"auto",left:"auto"}); -this._renderProxy();c=m(this.helper.css("left"));var f=m(this.helper.css("top"));if(a.containment){c+=e(a.containment).scrollLeft()||0;f+=e(a.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:c,top:f};this.size=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalSize=this._helper?{width:d.outerWidth(),height:d.outerHeight()}:{width:d.width(),height:d.height()};this.originalPosition={left:c,top:f};this.sizeDiff= -{width:d.outerWidth()-d.width(),height:d.outerHeight()-d.height()};this.originalMousePosition={left:b.pageX,top:b.pageY};this.aspectRatio=typeof a.aspectRatio=="number"?a.aspectRatio:this.originalSize.width/this.originalSize.height||1;a=e(".ui-resizable-"+this.axis).css("cursor");e("body").css("cursor",a=="auto"?this.axis+"-resize":a);d.addClass("ui-resizable-resizing");this._propagate("start",b);return true},_mouseDrag:function(b){var a=this.helper,c=this.originalMousePosition,d=this._change[this.axis]; -if(!d)return false;c=d.apply(this,[b,b.pageX-c.left||0,b.pageY-c.top||0]);this._updateVirtualBoundaries(b.shiftKey);if(this._aspectRatio||b.shiftKey)c=this._updateRatio(c,b);c=this._respectSize(c,b);this._propagate("resize",b);a.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize();this._updateCache(c);this._trigger("resize",b,this.ui());return false}, -_mouseStop:function(b){this.resizing=false;var a=this.options,c=this;if(this._helper){var d=this._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName);d=f&&e.ui.hasScroll(d[0],"left")?0:c.sizeDiff.height;f=f?0:c.sizeDiff.width;f={width:c.helper.width()-f,height:c.helper.height()-d};d=parseInt(c.element.css("left"),10)+(c.position.left-c.originalPosition.left)||null;var g=parseInt(c.element.css("top"),10)+(c.position.top-c.originalPosition.top)||null;a.animate||this.element.css(e.extend(f, -{top:g,left:d}));c.helper.height(c.size.height);c.helper.width(c.size.width);this._helper&&!a.animate&&this._proportionallyResize()}e("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",b);this._helper&&this.helper.remove();return false},_updateVirtualBoundaries:function(b){var a=this.options,c,d,f;a={minWidth:k(a.minWidth)?a.minWidth:0,maxWidth:k(a.maxWidth)?a.maxWidth:Infinity,minHeight:k(a.minHeight)?a.minHeight:0,maxHeight:k(a.maxHeight)?a.maxHeight: -Infinity};if(this._aspectRatio||b){b=a.minHeight*this.aspectRatio;d=a.minWidth/this.aspectRatio;c=a.maxHeight*this.aspectRatio;f=a.maxWidth/this.aspectRatio;if(b>a.minWidth)a.minWidth=b;if(d>a.minHeight)a.minHeight=d;if(cb.width,h=k(b.height)&&a.minHeight&&a.minHeight>b.height;if(g)b.width=a.minWidth;if(h)b.height=a.minHeight;if(d)b.width=a.maxWidth;if(f)b.height=a.maxHeight;var i=this.originalPosition.left+this.originalSize.width,j=this.position.top+this.size.height,l=/sw|nw|w/.test(c);c=/nw|ne|n/.test(c);if(g&&l)b.left=i-a.minWidth;if(d&&l)b.left=i-a.maxWidth;if(h&&c)b.top=j-a.minHeight;if(f&&c)b.top=j-a.maxHeight;if((a=!b.width&&!b.height)&&!b.left&&b.top)b.top=null;else if(a&&!b.top&&b.left)b.left= -null;return b},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var b=this.helper||this.element,a=0;a');var a=e.browser.msie&&e.browser.version<7,c=a?1:0;a=a?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+ -a,height:this.element.outerHeight()+a,position:"absolute",left:this.elementOffset.left-c+"px",top:this.elementOffset.top-c+"px",zIndex:++b.zIndex});this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(b,a){return{width:this.originalSize.width+a}},w:function(b,a){return{left:this.originalPosition.left+a,width:this.originalSize.width-a}},n:function(b,a,c){return{top:this.originalPosition.top+c,height:this.originalSize.height-c}},s:function(b,a,c){return{height:this.originalSize.height+ -c}},se:function(b,a,c){return e.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[b,a,c]))},sw:function(b,a,c){return e.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[b,a,c]))},ne:function(b,a,c){return e.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[b,a,c]))},nw:function(b,a,c){return e.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[b,a,c]))}},_propagate:function(b,a){e.ui.plugin.call(this,b,[a,this.ui()]); -b!="resize"&&this._trigger(b,a,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}}});e.extend(e.ui.resizable,{version:"1.8.16"});e.ui.plugin.add("resizable","alsoResize",{start:function(){var b=e(this).data("resizable").options,a=function(c){e(c).each(function(){var d=e(this);d.data("resizable-alsoresize",{width:parseInt(d.width(), -10),height:parseInt(d.height(),10),left:parseInt(d.css("left"),10),top:parseInt(d.css("top"),10),position:d.css("position")})})};if(typeof b.alsoResize=="object"&&!b.alsoResize.parentNode)if(b.alsoResize.length){b.alsoResize=b.alsoResize[0];a(b.alsoResize)}else e.each(b.alsoResize,function(c){a(c)});else a(b.alsoResize)},resize:function(b,a){var c=e(this).data("resizable");b=c.options;var d=c.originalSize,f=c.originalPosition,g={height:c.size.height-d.height||0,width:c.size.width-d.width||0,top:c.position.top- -f.top||0,left:c.position.left-f.left||0},h=function(i,j){e(i).each(function(){var l=e(this),q=e(this).data("resizable-alsoresize"),p={},r=j&&j.length?j:l.parents(a.originalElement[0]).length?["width","height"]:["width","height","top","left"];e.each(r,function(n,o){if((n=(q[o]||0)+(g[o]||0))&&n>=0)p[o]=n||null});if(e.browser.opera&&/relative/.test(l.css("position"))){c._revertToRelativePosition=true;l.css({position:"absolute",top:"auto",left:"auto"})}l.css(p)})};typeof b.alsoResize=="object"&&!b.alsoResize.nodeType? -e.each(b.alsoResize,function(i,j){h(i,j)}):h(b.alsoResize)},stop:function(){var b=e(this).data("resizable"),a=b.options,c=function(d){e(d).each(function(){var f=e(this);f.css({position:f.data("resizable-alsoresize").position})})};if(b._revertToRelativePosition){b._revertToRelativePosition=false;typeof a.alsoResize=="object"&&!a.alsoResize.nodeType?e.each(a.alsoResize,function(d){c(d)}):c(a.alsoResize)}e(this).removeData("resizable-alsoresize")}});e.ui.plugin.add("resizable","animate",{stop:function(b){var a= -e(this).data("resizable"),c=a.options,d=a._proportionallyResizeElements,f=d.length&&/textarea/i.test(d[0].nodeName),g=f&&e.ui.hasScroll(d[0],"left")?0:a.sizeDiff.height;f={width:a.size.width-(f?0:a.sizeDiff.width),height:a.size.height-g};g=parseInt(a.element.css("left"),10)+(a.position.left-a.originalPosition.left)||null;var h=parseInt(a.element.css("top"),10)+(a.position.top-a.originalPosition.top)||null;a.element.animate(e.extend(f,h&&g?{top:h,left:g}:{}),{duration:c.animateDuration,easing:c.animateEasing, -step:function(){var i={width:parseInt(a.element.css("width"),10),height:parseInt(a.element.css("height"),10),top:parseInt(a.element.css("top"),10),left:parseInt(a.element.css("left"),10)};d&&d.length&&e(d[0]).css({width:i.width,height:i.height});a._updateCache(i);a._propagate("resize",b)}})}});e.ui.plugin.add("resizable","containment",{start:function(){var b=e(this).data("resizable"),a=b.element,c=b.options.containment;if(a=c instanceof e?c.get(0):/parent/.test(c)?a.parent().get(0):c){b.containerElement= -e(a);if(/document/.test(c)||c==document){b.containerOffset={left:0,top:0};b.containerPosition={left:0,top:0};b.parentData={element:e(document),left:0,top:0,width:e(document).width(),height:e(document).height()||document.body.parentNode.scrollHeight}}else{var d=e(a),f=[];e(["Top","Right","Left","Bottom"]).each(function(i,j){f[i]=m(d.css("padding"+j))});b.containerOffset=d.offset();b.containerPosition=d.position();b.containerSize={height:d.innerHeight()-f[3],width:d.innerWidth()-f[1]};c=b.containerOffset; -var g=b.containerSize.height,h=b.containerSize.width;h=e.ui.hasScroll(a,"left")?a.scrollWidth:h;g=e.ui.hasScroll(a)?a.scrollHeight:g;b.parentData={element:a,left:c.left,top:c.top,width:h,height:g}}}},resize:function(b){var a=e(this).data("resizable"),c=a.options,d=a.containerOffset,f=a.position;b=a._aspectRatio||b.shiftKey;var g={top:0,left:0},h=a.containerElement;if(h[0]!=document&&/static/.test(h.css("position")))g=d;if(f.left<(a._helper?d.left:0)){a.size.width+=a._helper?a.position.left-d.left: -a.position.left-g.left;if(b)a.size.height=a.size.width/c.aspectRatio;a.position.left=c.helper?d.left:0}if(f.top<(a._helper?d.top:0)){a.size.height+=a._helper?a.position.top-d.top:a.position.top;if(b)a.size.width=a.size.height*c.aspectRatio;a.position.top=a._helper?d.top:0}a.offset.left=a.parentData.left+a.position.left;a.offset.top=a.parentData.top+a.position.top;c=Math.abs((a._helper?a.offset.left-g.left:a.offset.left-g.left)+a.sizeDiff.width);d=Math.abs((a._helper?a.offset.top-g.top:a.offset.top- -d.top)+a.sizeDiff.height);f=a.containerElement.get(0)==a.element.parent().get(0);g=/relative|absolute/.test(a.containerElement.css("position"));if(f&&g)c-=a.parentData.left;if(c+a.size.width>=a.parentData.width){a.size.width=a.parentData.width-c;if(b)a.size.height=a.size.width/a.aspectRatio}if(d+a.size.height>=a.parentData.height){a.size.height=a.parentData.height-d;if(b)a.size.width=a.size.height*a.aspectRatio}},stop:function(){var b=e(this).data("resizable"),a=b.options,c=b.containerOffset,d=b.containerPosition, -f=b.containerElement,g=e(b.helper),h=g.offset(),i=g.outerWidth()-b.sizeDiff.width;g=g.outerHeight()-b.sizeDiff.height;b._helper&&!a.animate&&/relative/.test(f.css("position"))&&e(this).css({left:h.left-d.left-c.left,width:i,height:g});b._helper&&!a.animate&&/static/.test(f.css("position"))&&e(this).css({left:h.left-d.left-c.left,width:i,height:g})}});e.ui.plugin.add("resizable","ghost",{start:function(){var b=e(this).data("resizable"),a=b.options,c=b.size;b.ghost=b.originalElement.clone();b.ghost.css({opacity:0.25, -display:"block",position:"relative",height:c.height,width:c.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof a.ghost=="string"?a.ghost:"");b.ghost.appendTo(b.helper)},resize:function(){var b=e(this).data("resizable");b.ghost&&b.ghost.css({position:"relative",height:b.size.height,width:b.size.width})},stop:function(){var b=e(this).data("resizable");b.ghost&&b.helper&&b.helper.get(0).removeChild(b.ghost.get(0))}});e.ui.plugin.add("resizable","grid",{resize:function(){var b= -e(this).data("resizable"),a=b.options,c=b.size,d=b.originalSize,f=b.originalPosition,g=b.axis;a.grid=typeof a.grid=="number"?[a.grid,a.grid]:a.grid;var h=Math.round((c.width-d.width)/(a.grid[0]||1))*(a.grid[0]||1);a=Math.round((c.height-d.height)/(a.grid[1]||1))*(a.grid[1]||1);if(/^(se|s|e)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a}else if(/^(ne)$/.test(g)){b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}else{if(/^(sw)$/.test(g)){b.size.width=d.width+h;b.size.height= -d.height+a}else{b.size.width=d.width+h;b.size.height=d.height+a;b.position.top=f.top-a}b.position.left=f.left-h}}});var m=function(b){return parseInt(b,10)||0},k=function(b){return!isNaN(parseInt(b,10))}})(jQuery); -;/* - * jQuery UI Selectable 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Selectables - * - * Depends: - * jquery.ui.core.js - * jquery.ui.mouse.js - * jquery.ui.widget.js - */ -(function(e){e.widget("ui.selectable",e.ui.mouse,{options:{appendTo:"body",autoRefresh:true,distance:0,filter:"*",tolerance:"touch"},_create:function(){var c=this;this.element.addClass("ui-selectable");this.dragged=false;var f;this.refresh=function(){f=e(c.options.filter,c.element[0]);f.each(function(){var d=e(this),b=d.offset();e.data(this,"selectable-item",{element:this,$element:d,left:b.left,top:b.top,right:b.left+d.outerWidth(),bottom:b.top+d.outerHeight(),startselected:false,selected:d.hasClass("ui-selected"), -selecting:d.hasClass("ui-selecting"),unselecting:d.hasClass("ui-unselecting")})})};this.refresh();this.selectees=f.addClass("ui-selectee");this._mouseInit();this.helper=e("
")},destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item");this.element.removeClass("ui-selectable ui-selectable-disabled").removeData("selectable").unbind(".selectable");this._mouseDestroy();return this},_mouseStart:function(c){var f=this;this.opos=[c.pageX, -c.pageY];if(!this.options.disabled){var d=this.options;this.selectees=e(d.filter,this.element[0]);this._trigger("start",c);e(d.appendTo).append(this.helper);this.helper.css({left:c.clientX,top:c.clientY,width:0,height:0});d.autoRefresh&&this.refresh();this.selectees.filter(".ui-selected").each(function(){var b=e.data(this,"selectable-item");b.startselected=true;if(!c.metaKey){b.$element.removeClass("ui-selected");b.selected=false;b.$element.addClass("ui-unselecting");b.unselecting=true;f._trigger("unselecting", -c,{unselecting:b.element})}});e(c.target).parents().andSelf().each(function(){var b=e.data(this,"selectable-item");if(b){var g=!c.metaKey||!b.$element.hasClass("ui-selected");b.$element.removeClass(g?"ui-unselecting":"ui-selected").addClass(g?"ui-selecting":"ui-unselecting");b.unselecting=!g;b.selecting=g;(b.selected=g)?f._trigger("selecting",c,{selecting:b.element}):f._trigger("unselecting",c,{unselecting:b.element});return false}})}},_mouseDrag:function(c){var f=this;this.dragged=true;if(!this.options.disabled){var d= -this.options,b=this.opos[0],g=this.opos[1],h=c.pageX,i=c.pageY;if(b>h){var j=h;h=b;b=j}if(g>i){j=i;i=g;g=j}this.helper.css({left:b,top:g,width:h-b,height:i-g});this.selectees.each(function(){var a=e.data(this,"selectable-item");if(!(!a||a.element==f.element[0])){var k=false;if(d.tolerance=="touch")k=!(a.left>h||a.righti||a.bottomb&&a.rightg&&a.bottom *",opacity:false,placeholder:false,revert:false,scroll:true,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1E3},_create:function(){var a=this.options;this.containerCache={};this.element.addClass("ui-sortable"); -this.refresh();this.floating=this.items.length?a.axis==="x"||/left|right/.test(this.items[0].item.css("float"))||/inline|table-cell/.test(this.items[0].item.css("display")):false;this.offset=this.element.offset();this._mouseInit()},destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").removeData("sortable").unbind(".sortable");this._mouseDestroy();for(var a=this.items.length-1;a>=0;a--)this.items[a].item.removeData("sortable-item");return this},_setOption:function(a,b){if(a=== -"disabled"){this.options[a]=b;this.widget()[b?"addClass":"removeClass"]("ui-sortable-disabled")}else d.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(a,b){if(this.reverting)return false;if(this.options.disabled||this.options.type=="static")return false;this._refreshItems(a);var c=null,e=this;d(a.target).parents().each(function(){if(d.data(this,"sortable-item")==e){c=d(this);return false}});if(d.data(a.target,"sortable-item")==e)c=d(a.target);if(!c)return false;if(this.options.handle&& -!b){var f=false;d(this.options.handle,c).find("*").andSelf().each(function(){if(this==a.target)f=true});if(!f)return false}this.currentItem=c;this._removeCurrentsFromItems();return true},_mouseStart:function(a,b,c){b=this.options;var e=this;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(a);this._cacheHelperProportions();this._cacheMargins();this.scrollParent=this.helper.scrollParent();this.offset=this.currentItem.offset();this.offset={top:this.offset.top-this.margins.top, -left:this.offset.left-this.margins.left};this.helper.css("position","absolute");this.cssPosition=this.helper.css("position");d.extend(this.offset,{click:{left:a.pageX-this.offset.left,top:a.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(a);this.originalPageX=a.pageX;this.originalPageY=a.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]}; -this.helper[0]!=this.currentItem[0]&&this.currentItem.hide();this._createPlaceholder();b.containment&&this._setContainment();if(b.cursor){if(d("body").css("cursor"))this._storedCursor=d("body").css("cursor");d("body").css("cursor",b.cursor)}if(b.opacity){if(this.helper.css("opacity"))this._storedOpacity=this.helper.css("opacity");this.helper.css("opacity",b.opacity)}if(b.zIndex){if(this.helper.css("zIndex"))this._storedZIndex=this.helper.css("zIndex");this.helper.css("zIndex",b.zIndex)}if(this.scrollParent[0]!= -document&&this.scrollParent[0].tagName!="HTML")this.overflowOffset=this.scrollParent.offset();this._trigger("start",a,this._uiHash());this._preserveHelperProportions||this._cacheHelperProportions();if(!c)for(c=this.containers.length-1;c>=0;c--)this.containers[c]._trigger("activate",a,e._uiHash(this));if(d.ui.ddmanager)d.ui.ddmanager.current=this;d.ui.ddmanager&&!b.dropBehaviour&&d.ui.ddmanager.prepareOffsets(this,a);this.dragging=true;this.helper.addClass("ui-sortable-helper");this._mouseDrag(a); -return true},_mouseDrag:function(a){this.position=this._generatePosition(a);this.positionAbs=this._convertPositionTo("absolute");if(!this.lastPositionAbs)this.lastPositionAbs=this.positionAbs;if(this.options.scroll){var b=this.options,c=false;if(this.scrollParent[0]!=document&&this.scrollParent[0].tagName!="HTML"){if(this.overflowOffset.top+this.scrollParent[0].offsetHeight-a.pageY=0;b--){c=this.items[b];var e=c.item[0],f=this._intersectsWithPointer(c);if(f)if(e!=this.currentItem[0]&&this.placeholder[f==1?"next":"prev"]()[0]!=e&&!d.ui.contains(this.placeholder[0],e)&&(this.options.type=="semi-dynamic"?!d.ui.contains(this.element[0], -e):true)){this.direction=f==1?"down":"up";if(this.options.tolerance=="pointer"||this._intersectsWithSides(c))this._rearrange(a,c);else break;this._trigger("change",a,this._uiHash());break}}this._contactContainers(a);d.ui.ddmanager&&d.ui.ddmanager.drag(this,a);this._trigger("sort",a,this._uiHash());this.lastPositionAbs=this.positionAbs;return false},_mouseStop:function(a,b){if(a){d.ui.ddmanager&&!this.options.dropBehaviour&&d.ui.ddmanager.drop(this,a);if(this.options.revert){var c=this;b=c.placeholder.offset(); -c.reverting=true;d(this.helper).animate({left:b.left-this.offset.parent.left-c.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:b.top-this.offset.parent.top-c.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){c._clear(a)})}else this._clear(a,b);return false}},cancel:function(){var a=this;if(this.dragging){this._mouseUp({target:null});this.options.helper=="original"?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"): -this.currentItem.show();for(var b=this.containers.length-1;b>=0;b--){this.containers[b]._trigger("deactivate",null,a._uiHash(this));if(this.containers[b].containerCache.over){this.containers[b]._trigger("out",null,a._uiHash(this));this.containers[b].containerCache.over=0}}}if(this.placeholder){this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]);this.options.helper!="original"&&this.helper&&this.helper[0].parentNode&&this.helper.remove();d.extend(this,{helper:null, -dragging:false,reverting:false,_noFinalSort:null});this.domPosition.prev?d(this.domPosition.prev).after(this.currentItem):d(this.domPosition.parent).prepend(this.currentItem)}return this},serialize:function(a){var b=this._getItemsAsjQuery(a&&a.connected),c=[];a=a||{};d(b).each(function(){var e=(d(a.item||this).attr(a.attribute||"id")||"").match(a.expression||/(.+)[-=_](.+)/);if(e)c.push((a.key||e[1]+"[]")+"="+(a.key&&a.expression?e[1]:e[2]))});!c.length&&a.key&&c.push(a.key+"=");return c.join("&")}, -toArray:function(a){var b=this._getItemsAsjQuery(a&&a.connected),c=[];a=a||{};b.each(function(){c.push(d(a.item||this).attr(a.attribute||"id")||"")});return c},_intersectsWith:function(a){var b=this.positionAbs.left,c=b+this.helperProportions.width,e=this.positionAbs.top,f=e+this.helperProportions.height,g=a.left,h=g+a.width,i=a.top,k=i+a.height,j=this.offset.click.top,l=this.offset.click.left;j=e+j>i&&e+jg&&b+la[this.floating?"width":"height"]?j:g0?"down":"up")},_getDragHorizontalDirection:function(){var a=this.positionAbs.left-this.lastPositionAbs.left;return a!=0&&(a>0?"right":"left")},refresh:function(a){this._refreshItems(a);this.refreshPositions();return this},_connectWith:function(){var a=this.options;return a.connectWith.constructor==String?[a.connectWith]:a.connectWith},_getItemsAsjQuery:function(a){var b=[],c=[],e=this._connectWith(); -if(e&&a)for(a=e.length-1;a>=0;a--)for(var f=d(e[a]),g=f.length-1;g>=0;g--){var h=d.data(f[g],"sortable");if(h&&h!=this&&!h.options.disabled)c.push([d.isFunction(h.options.items)?h.options.items.call(h.element):d(h.options.items,h.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),h])}c.push([d.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):d(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"), -this]);for(a=c.length-1;a>=0;a--)c[a][0].each(function(){b.push(this)});return d(b)},_removeCurrentsFromItems:function(){for(var a=this.currentItem.find(":data(sortable-item)"),b=0;b=0;f--)for(var g=d(e[f]),h=g.length-1;h>=0;h--){var i=d.data(g[h],"sortable");if(i&&i!=this&&!i.options.disabled){c.push([d.isFunction(i.options.items)?i.options.items.call(i.element[0],a,{item:this.currentItem}):d(i.options.items,i.element),i]);this.containers.push(i)}}for(f=c.length-1;f>=0;f--){a=c[f][1];e=c[f][0];h=0;for(g=e.length;h=0;b--){var c=this.items[b];if(!(c.instance!=this.currentContainer&&this.currentContainer&&c.item[0]!=this.currentItem[0])){var e=this.options.toleranceElement?d(this.options.toleranceElement,c.item):c.item;if(!a){c.width=e.outerWidth();c.height=e.outerHeight()}e=e.offset();c.left=e.left;c.top=e.top}}if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(b= -this.containers.length-1;b>=0;b--){e=this.containers[b].element.offset();this.containers[b].containerCache.left=e.left;this.containers[b].containerCache.top=e.top;this.containers[b].containerCache.width=this.containers[b].element.outerWidth();this.containers[b].containerCache.height=this.containers[b].element.outerHeight()}return this},_createPlaceholder:function(a){var b=a||this,c=b.options;if(!c.placeholder||c.placeholder.constructor==String){var e=c.placeholder;c.placeholder={element:function(){var f= -d(document.createElement(b.currentItem[0].nodeName)).addClass(e||b.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper")[0];if(!e)f.style.visibility="hidden";return f},update:function(f,g){if(!(e&&!c.forcePlaceholderSize)){g.height()||g.height(b.currentItem.innerHeight()-parseInt(b.currentItem.css("paddingTop")||0,10)-parseInt(b.currentItem.css("paddingBottom")||0,10));g.width()||g.width(b.currentItem.innerWidth()-parseInt(b.currentItem.css("paddingLeft")||0,10)-parseInt(b.currentItem.css("paddingRight")|| -0,10))}}}}b.placeholder=d(c.placeholder.element.call(b.element,b.currentItem));b.currentItem.after(b.placeholder);c.placeholder.update(b,b.placeholder)},_contactContainers:function(a){for(var b=null,c=null,e=this.containers.length-1;e>=0;e--)if(!d.ui.contains(this.currentItem[0],this.containers[e].element[0]))if(this._intersectsWith(this.containers[e].containerCache)){if(!(b&&d.ui.contains(this.containers[e].element[0],b.element[0]))){b=this.containers[e];c=e}}else if(this.containers[e].containerCache.over){this.containers[e]._trigger("out", -a,this._uiHash(this));this.containers[e].containerCache.over=0}if(b)if(this.containers.length===1){this.containers[c]._trigger("over",a,this._uiHash(this));this.containers[c].containerCache.over=1}else if(this.currentContainer!=this.containers[c]){b=1E4;e=null;for(var f=this.positionAbs[this.containers[c].floating?"left":"top"],g=this.items.length-1;g>=0;g--)if(d.ui.contains(this.containers[c].element[0],this.items[g].item[0])){var h=this.items[g][this.containers[c].floating?"left":"top"];if(Math.abs(h- -f)this.containment[2])f=this.containment[2]+this.offset.click.left;if(a.pageY-this.offset.click.top>this.containment[3])g=this.containment[3]+this.offset.click.top}if(b.grid){g=this.originalPageY+Math.round((g- -this.originalPageY)/b.grid[1])*b.grid[1];g=this.containment?!(g-this.offset.click.topthis.containment[3])?g:!(g-this.offset.click.topthis.containment[2])?f:!(f-this.offset.click.left=0;e--)if(d.ui.contains(this.containers[e].element[0],this.currentItem[0])&&!b){c.push(function(f){return function(g){f._trigger("receive",g,this._uiHash(this))}}.call(this,this.containers[e]));c.push(function(f){return function(g){f._trigger("update",g,this._uiHash(this))}}.call(this,this.containers[e]))}}for(e=this.containers.length-1;e>=0;e--){b||c.push(function(f){return function(g){f._trigger("deactivate",g,this._uiHash(this))}}.call(this, -this.containers[e]));if(this.containers[e].containerCache.over){c.push(function(f){return function(g){f._trigger("out",g,this._uiHash(this))}}.call(this,this.containers[e]));this.containers[e].containerCache.over=0}}this._storedCursor&&d("body").css("cursor",this._storedCursor);this._storedOpacity&&this.helper.css("opacity",this._storedOpacity);if(this._storedZIndex)this.helper.css("zIndex",this._storedZIndex=="auto"?"":this._storedZIndex);this.dragging=false;if(this.cancelHelperRemoval){if(!b){this._trigger("beforeStop", -a,this._uiHash());for(e=0;e").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+(b.range==="min"||b.range==="max"?" ui-slider-range-"+b.range:""))}for(var j=c.length;j"); -this.handles=c.add(d(e.join("")).appendTo(a.element));this.handle=this.handles.eq(0);this.handles.add(this.range).filter("a").click(function(g){g.preventDefault()}).hover(function(){b.disabled||d(this).addClass("ui-state-hover")},function(){d(this).removeClass("ui-state-hover")}).focus(function(){if(b.disabled)d(this).blur();else{d(".ui-slider .ui-state-focus").removeClass("ui-state-focus");d(this).addClass("ui-state-focus")}}).blur(function(){d(this).removeClass("ui-state-focus")});this.handles.each(function(g){d(this).data("index.ui-slider-handle", -g)});this.handles.keydown(function(g){var k=true,l=d(this).data("index.ui-slider-handle"),i,h,m;if(!a.options.disabled){switch(g.keyCode){case d.ui.keyCode.HOME:case d.ui.keyCode.END:case d.ui.keyCode.PAGE_UP:case d.ui.keyCode.PAGE_DOWN:case d.ui.keyCode.UP:case d.ui.keyCode.RIGHT:case d.ui.keyCode.DOWN:case d.ui.keyCode.LEFT:k=false;if(!a._keySliding){a._keySliding=true;d(this).addClass("ui-state-active");i=a._start(g,l);if(i===false)return}break}m=a.options.step;i=a.options.values&&a.options.values.length? -(h=a.values(l)):(h=a.value());switch(g.keyCode){case d.ui.keyCode.HOME:h=a._valueMin();break;case d.ui.keyCode.END:h=a._valueMax();break;case d.ui.keyCode.PAGE_UP:h=a._trimAlignValue(i+(a._valueMax()-a._valueMin())/5);break;case d.ui.keyCode.PAGE_DOWN:h=a._trimAlignValue(i-(a._valueMax()-a._valueMin())/5);break;case d.ui.keyCode.UP:case d.ui.keyCode.RIGHT:if(i===a._valueMax())return;h=a._trimAlignValue(i+m);break;case d.ui.keyCode.DOWN:case d.ui.keyCode.LEFT:if(i===a._valueMin())return;h=a._trimAlignValue(i- -m);break}a._slide(g,l,h);return k}}).keyup(function(g){var k=d(this).data("index.ui-slider-handle");if(a._keySliding){a._keySliding=false;a._stop(g,k);a._change(g,k);d(this).removeClass("ui-state-active")}});this._refreshValue();this._animateOff=false},destroy:function(){this.handles.remove();this.range.remove();this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all").removeData("slider").unbind(".slider");this._mouseDestroy(); -return this},_mouseCapture:function(a){var b=this.options,c,f,e,j,g;if(b.disabled)return false;this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()};this.elementOffset=this.element.offset();c=this._normValueFromMouse({x:a.pageX,y:a.pageY});f=this._valueMax()-this._valueMin()+1;j=this;this.handles.each(function(k){var l=Math.abs(c-j.values(k));if(f>l){f=l;e=d(this);g=k}});if(b.range===true&&this.values(1)===b.min){g+=1;e=d(this.handles[g])}if(this._start(a,g)===false)return false; -this._mouseSliding=true;j._handleIndex=g;e.addClass("ui-state-active").focus();b=e.offset();this._clickOffset=!d(a.target).parents().andSelf().is(".ui-slider-handle")?{left:0,top:0}:{left:a.pageX-b.left-e.width()/2,top:a.pageY-b.top-e.height()/2-(parseInt(e.css("borderTopWidth"),10)||0)-(parseInt(e.css("borderBottomWidth"),10)||0)+(parseInt(e.css("marginTop"),10)||0)};this.handles.hasClass("ui-state-hover")||this._slide(a,g,c);return this._animateOff=true},_mouseStart:function(){return true},_mouseDrag:function(a){var b= -this._normValueFromMouse({x:a.pageX,y:a.pageY});this._slide(a,this._handleIndex,b);return false},_mouseStop:function(a){this.handles.removeClass("ui-state-active");this._mouseSliding=false;this._stop(a,this._handleIndex);this._change(a,this._handleIndex);this._clickOffset=this._handleIndex=null;return this._animateOff=false},_detectOrientation:function(){this.orientation=this.options.orientation==="vertical"?"vertical":"horizontal"},_normValueFromMouse:function(a){var b;if(this.orientation==="horizontal"){b= -this.elementSize.width;a=a.x-this.elementOffset.left-(this._clickOffset?this._clickOffset.left:0)}else{b=this.elementSize.height;a=a.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0)}b=a/b;if(b>1)b=1;if(b<0)b=0;if(this.orientation==="vertical")b=1-b;a=this._valueMax()-this._valueMin();return this._trimAlignValue(this._valueMin()+b*a)},_start:function(a,b){var c={handle:this.handles[b],value:this.value()};if(this.options.values&&this.options.values.length){c.value=this.values(b); -c.values=this.values()}return this._trigger("start",a,c)},_slide:function(a,b,c){var f;if(this.options.values&&this.options.values.length){f=this.values(b?0:1);if(this.options.values.length===2&&this.options.range===true&&(b===0&&c>f||b===1&&c1){this.options.values[a]=this._trimAlignValue(b);this._refreshValue();this._change(null,a)}else if(arguments.length)if(d.isArray(arguments[0])){c=this.options.values;f=arguments[0];for(e=0;e=this._valueMax())return this._valueMax();var b=this.options.step>0?this.options.step:1,c=(a-this._valueMin())%b;a=a-c;if(Math.abs(c)*2>=b)a+=c>0?b:-b;return parseFloat(a.toFixed(5))},_valueMin:function(){return this.options.min},_valueMax:function(){return this.options.max},_refreshValue:function(){var a= -this.options.range,b=this.options,c=this,f=!this._animateOff?b.animate:false,e,j={},g,k,l,i;if(this.options.values&&this.options.values.length)this.handles.each(function(h){e=(c.values(h)-c._valueMin())/(c._valueMax()-c._valueMin())*100;j[c.orientation==="horizontal"?"left":"bottom"]=e+"%";d(this).stop(1,1)[f?"animate":"css"](j,b.animate);if(c.options.range===true)if(c.orientation==="horizontal"){if(h===0)c.range.stop(1,1)[f?"animate":"css"]({left:e+"%"},b.animate);if(h===1)c.range[f?"animate":"css"]({width:e- -g+"%"},{queue:false,duration:b.animate})}else{if(h===0)c.range.stop(1,1)[f?"animate":"css"]({bottom:e+"%"},b.animate);if(h===1)c.range[f?"animate":"css"]({height:e-g+"%"},{queue:false,duration:b.animate})}g=e});else{k=this.value();l=this._valueMin();i=this._valueMax();e=i!==l?(k-l)/(i-l)*100:0;j[c.orientation==="horizontal"?"left":"bottom"]=e+"%";this.handle.stop(1,1)[f?"animate":"css"](j,b.animate);if(a==="min"&&this.orientation==="horizontal")this.range.stop(1,1)[f?"animate":"css"]({width:e+"%"}, -b.animate);if(a==="max"&&this.orientation==="horizontal")this.range[f?"animate":"css"]({width:100-e+"%"},{queue:false,duration:b.animate});if(a==="min"&&this.orientation==="vertical")this.range.stop(1,1)[f?"animate":"css"]({height:e+"%"},b.animate);if(a==="max"&&this.orientation==="vertical")this.range[f?"animate":"css"]({height:100-e+"%"},{queue:false,duration:b.animate})}}});d.extend(d.ui.slider,{version:"1.8.16"})})(jQuery); -;/* - * jQuery UI Datepicker 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Datepicker - * - * Depends: - * jquery.ui.core.js - */ -(function(d,C){function M(){this.debug=false;this._curInst=null;this._keyEvent=false;this._disabledInputs=[];this._inDialog=this._datepickerShowing=false;this._mainDivId="ui-datepicker-div";this._inlineClass="ui-datepicker-inline";this._appendClass="ui-datepicker-append";this._triggerClass="ui-datepicker-trigger";this._dialogClass="ui-datepicker-dialog";this._disableClass="ui-datepicker-disabled";this._unselectableClass="ui-datepicker-unselectable";this._currentClass="ui-datepicker-current-day";this._dayOverClass= -"ui-datepicker-days-cell-over";this.regional=[];this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su", -"Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:false,showMonthAfterYear:false,yearSuffix:""};this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:false,hideIfNoPrevNext:false,navigationAsDateFormat:false,gotoCurrent:false,changeMonth:false,changeYear:false,yearRange:"c-10:c+10",showOtherMonths:false,selectOtherMonths:false,showWeek:false,calculateWeek:this.iso8601Week,shortYearCutoff:"+10", -minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:true,showButtonPanel:false,autoSize:false,disabled:false};d.extend(this._defaults,this.regional[""]);this.dpDiv=N(d('
'))}function N(a){return a.bind("mouseout", -function(b){b=d(b.target).closest("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a");b.length&&b.removeClass("ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover")}).bind("mouseover",function(b){b=d(b.target).closest("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a");if(!(d.datepicker._isDisabledDatepicker(J.inline?a.parent()[0]:J.input[0])||!b.length)){b.parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"); -b.addClass("ui-state-hover");b.hasClass("ui-datepicker-prev")&&b.addClass("ui-datepicker-prev-hover");b.hasClass("ui-datepicker-next")&&b.addClass("ui-datepicker-next-hover")}})}function H(a,b){d.extend(a,b);for(var c in b)if(b[c]==null||b[c]==C)a[c]=b[c];return a}d.extend(d.ui,{datepicker:{version:"1.8.16"}});var B=(new Date).getTime(),J;d.extend(M.prototype,{markerClassName:"hasDatepicker",maxRows:4,log:function(){this.debug&&console.log.apply("",arguments)},_widgetDatepicker:function(){return this.dpDiv}, -setDefaults:function(a){H(this._defaults,a||{});return this},_attachDatepicker:function(a,b){var c=null;for(var e in this._defaults){var f=a.getAttribute("date:"+e);if(f){c=c||{};try{c[e]=eval(f)}catch(h){c[e]=f}}}e=a.nodeName.toLowerCase();f=e=="div"||e=="span";if(!a.id){this.uuid+=1;a.id="dp"+this.uuid}var i=this._newInst(d(a),f);i.settings=d.extend({},b||{},c||{});if(e=="input")this._connectDatepicker(a,i);else f&&this._inlineDatepicker(a,i)},_newInst:function(a,b){return{id:a[0].id.replace(/([^A-Za-z0-9_-])/g, -"\\\\$1"),input:a,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:b,dpDiv:!b?this.dpDiv:N(d('
'))}},_connectDatepicker:function(a,b){var c=d(a);b.append=d([]);b.trigger=d([]);if(!c.hasClass(this.markerClassName)){this._attachments(c,b);c.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker", -function(e,f,h){b.settings[f]=h}).bind("getData.datepicker",function(e,f){return this._get(b,f)});this._autoSize(b);d.data(a,"datepicker",b);b.settings.disabled&&this._disableDatepicker(a)}},_attachments:function(a,b){var c=this._get(b,"appendText"),e=this._get(b,"isRTL");b.append&&b.append.remove();if(c){b.append=d(''+c+"");a[e?"before":"after"](b.append)}a.unbind("focus",this._showDatepicker);b.trigger&&b.trigger.remove();c=this._get(b,"showOn");if(c== -"focus"||c=="both")a.focus(this._showDatepicker);if(c=="button"||c=="both"){c=this._get(b,"buttonText");var f=this._get(b,"buttonImage");b.trigger=d(this._get(b,"buttonImageOnly")?d("").addClass(this._triggerClass).attr({src:f,alt:c,title:c}):d('').addClass(this._triggerClass).html(f==""?c:d("").attr({src:f,alt:c,title:c})));a[e?"before":"after"](b.trigger);b.trigger.click(function(){d.datepicker._datepickerShowing&&d.datepicker._lastInput==a[0]?d.datepicker._hideDatepicker(): -d.datepicker._showDatepicker(a[0]);return false})}},_autoSize:function(a){if(this._get(a,"autoSize")&&!a.inline){var b=new Date(2009,11,20),c=this._get(a,"dateFormat");if(c.match(/[DM]/)){var e=function(f){for(var h=0,i=0,g=0;gh){h=f[g].length;i=g}return i};b.setMonth(e(this._get(a,c.match(/MM/)?"monthNames":"monthNamesShort")));b.setDate(e(this._get(a,c.match(/DD/)?"dayNames":"dayNamesShort"))+20-b.getDay())}a.input.attr("size",this._formatDate(a,b).length)}},_inlineDatepicker:function(a, -b){var c=d(a);if(!c.hasClass(this.markerClassName)){c.addClass(this.markerClassName).append(b.dpDiv).bind("setData.datepicker",function(e,f,h){b.settings[f]=h}).bind("getData.datepicker",function(e,f){return this._get(b,f)});d.data(a,"datepicker",b);this._setDate(b,this._getDefaultDate(b),true);this._updateDatepicker(b);this._updateAlternate(b);b.settings.disabled&&this._disableDatepicker(a);b.dpDiv.css("display","block")}},_dialogDatepicker:function(a,b,c,e,f){a=this._dialogInst;if(!a){this.uuid+= -1;this._dialogInput=d('');this._dialogInput.keydown(this._doKeyDown);d("body").append(this._dialogInput);a=this._dialogInst=this._newInst(this._dialogInput,false);a.settings={};d.data(this._dialogInput[0],"datepicker",a)}H(a.settings,e||{});b=b&&b.constructor==Date?this._formatDate(a,b):b;this._dialogInput.val(b);this._pos=f?f.length?f:[f.pageX,f.pageY]:null;if(!this._pos)this._pos=[document.documentElement.clientWidth/ -2-100+(document.documentElement.scrollLeft||document.body.scrollLeft),document.documentElement.clientHeight/2-150+(document.documentElement.scrollTop||document.body.scrollTop)];this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px");a.settings.onSelect=c;this._inDialog=true;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);d.blockUI&&d.blockUI(this.dpDiv);d.data(this._dialogInput[0],"datepicker",a);return this},_destroyDatepicker:function(a){var b= -d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();d.removeData(a,"datepicker");if(e=="input"){c.append.remove();c.trigger.remove();b.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)}else if(e=="div"||e=="span")b.removeClass(this.markerClassName).empty()}},_enableDatepicker:function(a){var b=d(a),c=d.data(a,"datepicker");if(b.hasClass(this.markerClassName)){var e= -a.nodeName.toLowerCase();if(e=="input"){a.disabled=false;c.trigger.filter("button").each(function(){this.disabled=false}).end().filter("img").css({opacity:"1.0",cursor:""})}else if(e=="div"||e=="span"){b=b.children("."+this._inlineClass);b.children().removeClass("ui-state-disabled");b.find("select.ui-datepicker-month, select.ui-datepicker-year").removeAttr("disabled")}this._disabledInputs=d.map(this._disabledInputs,function(f){return f==a?null:f})}},_disableDatepicker:function(a){var b=d(a),c=d.data(a, -"datepicker");if(b.hasClass(this.markerClassName)){var e=a.nodeName.toLowerCase();if(e=="input"){a.disabled=true;c.trigger.filter("button").each(function(){this.disabled=true}).end().filter("img").css({opacity:"0.5",cursor:"default"})}else if(e=="div"||e=="span"){b=b.children("."+this._inlineClass);b.children().addClass("ui-state-disabled");b.find("select.ui-datepicker-month, select.ui-datepicker-year").attr("disabled","disabled")}this._disabledInputs=d.map(this._disabledInputs,function(f){return f== -a?null:f});this._disabledInputs[this._disabledInputs.length]=a}},_isDisabledDatepicker:function(a){if(!a)return false;for(var b=0;b-1}},_doKeyUp:function(a){a=d.datepicker._getInst(a.target);if(a.input.val()!=a.lastVal)try{if(d.datepicker.parseDate(d.datepicker._get(a,"dateFormat"),a.input?a.input.val():null,d.datepicker._getFormatConfig(a))){d.datepicker._setDateFromField(a);d.datepicker._updateAlternate(a);d.datepicker._updateDatepicker(a)}}catch(b){d.datepicker.log(b)}return true},_showDatepicker:function(a){a=a.target||a;if(a.nodeName.toLowerCase()!="input")a=d("input", -a.parentNode)[0];if(!(d.datepicker._isDisabledDatepicker(a)||d.datepicker._lastInput==a)){var b=d.datepicker._getInst(a);if(d.datepicker._curInst&&d.datepicker._curInst!=b){d.datepicker._datepickerShowing&&d.datepicker._triggerOnClose(d.datepicker._curInst);d.datepicker._curInst.dpDiv.stop(true,true)}var c=d.datepicker._get(b,"beforeShow");c=c?c.apply(a,[a,b]):{};if(c!==false){H(b.settings,c);b.lastVal=null;d.datepicker._lastInput=a;d.datepicker._setDateFromField(b);if(d.datepicker._inDialog)a.value= -"";if(!d.datepicker._pos){d.datepicker._pos=d.datepicker._findPos(a);d.datepicker._pos[1]+=a.offsetHeight}var e=false;d(a).parents().each(function(){e|=d(this).css("position")=="fixed";return!e});if(e&&d.browser.opera){d.datepicker._pos[0]-=document.documentElement.scrollLeft;d.datepicker._pos[1]-=document.documentElement.scrollTop}c={left:d.datepicker._pos[0],top:d.datepicker._pos[1]};d.datepicker._pos=null;b.dpDiv.empty();b.dpDiv.css({position:"absolute",display:"block",top:"-1000px"});d.datepicker._updateDatepicker(b); -c=d.datepicker._checkOffset(b,c,e);b.dpDiv.css({position:d.datepicker._inDialog&&d.blockUI?"static":e?"fixed":"absolute",display:"none",left:c.left+"px",top:c.top+"px"});if(!b.inline){c=d.datepicker._get(b,"showAnim");var f=d.datepicker._get(b,"duration"),h=function(){var i=b.dpDiv.find("iframe.ui-datepicker-cover");if(i.length){var g=d.datepicker._getBorders(b.dpDiv);i.css({left:-g[0],top:-g[1],width:b.dpDiv.outerWidth(),height:b.dpDiv.outerHeight()})}};b.dpDiv.zIndex(d(a).zIndex()+1);d.datepicker._datepickerShowing= -true;d.effects&&d.effects[c]?b.dpDiv.show(c,d.datepicker._get(b,"showOptions"),f,h):b.dpDiv[c||"show"](c?f:null,h);if(!c||!f)h();b.input.is(":visible")&&!b.input.is(":disabled")&&b.input.focus();d.datepicker._curInst=b}}}},_updateDatepicker:function(a){this.maxRows=4;var b=d.datepicker._getBorders(a.dpDiv);J=a;a.dpDiv.empty().append(this._generateHTML(a));var c=a.dpDiv.find("iframe.ui-datepicker-cover");c.length&&c.css({left:-b[0],top:-b[1],width:a.dpDiv.outerWidth(),height:a.dpDiv.outerHeight()}); -a.dpDiv.find("."+this._dayOverClass+" a").mouseover();b=this._getNumberOfMonths(a);c=b[1];a.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("");c>1&&a.dpDiv.addClass("ui-datepicker-multi-"+c).css("width",17*c+"em");a.dpDiv[(b[0]!=1||b[1]!=1?"add":"remove")+"Class"]("ui-datepicker-multi");a.dpDiv[(this._get(a,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl");a==d.datepicker._curInst&&d.datepicker._datepickerShowing&&a.input&&a.input.is(":visible")&& -!a.input.is(":disabled")&&a.input[0]!=document.activeElement&&a.input.focus();if(a.yearshtml){var e=a.yearshtml;setTimeout(function(){e===a.yearshtml&&a.yearshtml&&a.dpDiv.find("select.ui-datepicker-year:first").replaceWith(a.yearshtml);e=a.yearshtml=null},0)}},_getBorders:function(a){var b=function(c){return{thin:1,medium:2,thick:3}[c]||c};return[parseFloat(b(a.css("border-left-width"))),parseFloat(b(a.css("border-top-width")))]},_checkOffset:function(a,b,c){var e=a.dpDiv.outerWidth(),f=a.dpDiv.outerHeight(), -h=a.input?a.input.outerWidth():0,i=a.input?a.input.outerHeight():0,g=document.documentElement.clientWidth+d(document).scrollLeft(),j=document.documentElement.clientHeight+d(document).scrollTop();b.left-=this._get(a,"isRTL")?e-h:0;b.left-=c&&b.left==a.input.offset().left?d(document).scrollLeft():0;b.top-=c&&b.top==a.input.offset().top+i?d(document).scrollTop():0;b.left-=Math.min(b.left,b.left+e>g&&g>e?Math.abs(b.left+e-g):0);b.top-=Math.min(b.top,b.top+f>j&&j>f?Math.abs(f+i):0);return b},_findPos:function(a){for(var b= -this._get(this._getInst(a),"isRTL");a&&(a.type=="hidden"||a.nodeType!=1||d.expr.filters.hidden(a));)a=a[b?"previousSibling":"nextSibling"];a=d(a).offset();return[a.left,a.top]},_triggerOnClose:function(a){var b=this._get(a,"onClose");if(b)b.apply(a.input?a.input[0]:null,[a.input?a.input.val():"",a])},_hideDatepicker:function(a){var b=this._curInst;if(!(!b||a&&b!=d.data(a,"datepicker")))if(this._datepickerShowing){a=this._get(b,"showAnim");var c=this._get(b,"duration"),e=function(){d.datepicker._tidyDialog(b); -this._curInst=null};d.effects&&d.effects[a]?b.dpDiv.hide(a,d.datepicker._get(b,"showOptions"),c,e):b.dpDiv[a=="slideDown"?"slideUp":a=="fadeIn"?"fadeOut":"hide"](a?c:null,e);a||e();d.datepicker._triggerOnClose(b);this._datepickerShowing=false;this._lastInput=null;if(this._inDialog){this._dialogInput.css({position:"absolute",left:"0",top:"-100px"});if(d.blockUI){d.unblockUI();d("body").append(this.dpDiv)}}this._inDialog=false}},_tidyDialog:function(a){a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")}, -_checkExternalClick:function(a){if(d.datepicker._curInst){a=d(a.target);a[0].id!=d.datepicker._mainDivId&&a.parents("#"+d.datepicker._mainDivId).length==0&&!a.hasClass(d.datepicker.markerClassName)&&!a.hasClass(d.datepicker._triggerClass)&&d.datepicker._datepickerShowing&&!(d.datepicker._inDialog&&d.blockUI)&&d.datepicker._hideDatepicker()}},_adjustDate:function(a,b,c){a=d(a);var e=this._getInst(a[0]);if(!this._isDisabledDatepicker(a[0])){this._adjustInstDate(e,b+(c=="M"?this._get(e,"showCurrentAtPos"): -0),c);this._updateDatepicker(e)}},_gotoToday:function(a){a=d(a);var b=this._getInst(a[0]);if(this._get(b,"gotoCurrent")&&b.currentDay){b.selectedDay=b.currentDay;b.drawMonth=b.selectedMonth=b.currentMonth;b.drawYear=b.selectedYear=b.currentYear}else{var c=new Date;b.selectedDay=c.getDate();b.drawMonth=b.selectedMonth=c.getMonth();b.drawYear=b.selectedYear=c.getFullYear()}this._notifyChange(b);this._adjustDate(a)},_selectMonthYear:function(a,b,c){a=d(a);var e=this._getInst(a[0]);e["selected"+(c=="M"? -"Month":"Year")]=e["draw"+(c=="M"?"Month":"Year")]=parseInt(b.options[b.selectedIndex].value,10);this._notifyChange(e);this._adjustDate(a)},_selectDay:function(a,b,c,e){var f=d(a);if(!(d(e).hasClass(this._unselectableClass)||this._isDisabledDatepicker(f[0]))){f=this._getInst(f[0]);f.selectedDay=f.currentDay=d("a",e).html();f.selectedMonth=f.currentMonth=b;f.selectedYear=f.currentYear=c;this._selectDate(a,this._formatDate(f,f.currentDay,f.currentMonth,f.currentYear))}},_clearDate:function(a){a=d(a); -this._getInst(a[0]);this._selectDate(a,"")},_selectDate:function(a,b){a=this._getInst(d(a)[0]);b=b!=null?b:this._formatDate(a);a.input&&a.input.val(b);this._updateAlternate(a);var c=this._get(a,"onSelect");if(c)c.apply(a.input?a.input[0]:null,[b,a]);else a.input&&a.input.trigger("change");if(a.inline)this._updateDatepicker(a);else{this._hideDatepicker();this._lastInput=a.input[0];typeof a.input[0]!="object"&&a.input.focus();this._lastInput=null}},_updateAlternate:function(a){var b=this._get(a,"altField"); -if(b){var c=this._get(a,"altFormat")||this._get(a,"dateFormat"),e=this._getDate(a),f=this.formatDate(c,e,this._getFormatConfig(a));d(b).each(function(){d(this).val(f)})}},noWeekends:function(a){a=a.getDay();return[a>0&&a<6,""]},iso8601Week:function(a){a=new Date(a.getTime());a.setDate(a.getDate()+4-(a.getDay()||7));var b=a.getTime();a.setMonth(0);a.setDate(1);return Math.floor(Math.round((b-a)/864E5)/7)+1},parseDate:function(a,b,c){if(a==null||b==null)throw"Invalid arguments";b=typeof b=="object"? -b.toString():b+"";if(b=="")return null;var e=(c?c.shortYearCutoff:null)||this._defaults.shortYearCutoff;e=typeof e!="string"?e:(new Date).getFullYear()%100+parseInt(e,10);for(var f=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,h=(c?c.dayNames:null)||this._defaults.dayNames,i=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,g=(c?c.monthNames:null)||this._defaults.monthNames,j=c=-1,l=-1,u=-1,k=false,o=function(p){(p=A+1-1){j=1;l=u;do{e=this._getDaysInMonth(c,j-1);if(l<=e)break;j++;l-=e}while(1)}v=this._daylightSavingAdjust(new Date(c,j-1,l));if(v.getFullYear()!=c||v.getMonth()+1!=j||v.getDate()!=l)throw"Invalid date";return v},ATOM:"yy-mm-dd", -COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925))*24*60*60*1E7,formatDate:function(a,b,c){if(!b)return"";var e=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,f=(c?c.dayNames:null)||this._defaults.dayNames,h=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort;c=(c?c.monthNames: -null)||this._defaults.monthNames;var i=function(o){(o=k+1 -12?a.getHours()+2:0);return a},_setDate:function(a,b,c){var e=!b,f=a.selectedMonth,h=a.selectedYear;b=this._restrictMinMax(a,this._determineDate(a,b,new Date));a.selectedDay=a.currentDay=b.getDate();a.drawMonth=a.selectedMonth=a.currentMonth=b.getMonth();a.drawYear=a.selectedYear=a.currentYear=b.getFullYear();if((f!=a.selectedMonth||h!=a.selectedYear)&&!c)this._notifyChange(a);this._adjustInstDate(a);if(a.input)a.input.val(e?"":this._formatDate(a))},_getDate:function(a){return!a.currentYear||a.input&& -a.input.val()==""?null:this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay))},_generateHTML:function(a){var b=new Date;b=this._daylightSavingAdjust(new Date(b.getFullYear(),b.getMonth(),b.getDate()));var c=this._get(a,"isRTL"),e=this._get(a,"showButtonPanel"),f=this._get(a,"hideIfNoPrevNext"),h=this._get(a,"navigationAsDateFormat"),i=this._getNumberOfMonths(a),g=this._get(a,"showCurrentAtPos"),j=this._get(a,"stepMonths"),l=i[0]!=1||i[1]!=1,u=this._daylightSavingAdjust(!a.currentDay? -new Date(9999,9,9):new Date(a.currentYear,a.currentMonth,a.currentDay)),k=this._getMinMaxDate(a,"min"),o=this._getMinMaxDate(a,"max");g=a.drawMonth-g;var m=a.drawYear;if(g<0){g+=12;m--}if(o){var n=this._daylightSavingAdjust(new Date(o.getFullYear(),o.getMonth()-i[0]*i[1]+1,o.getDate()));for(n=k&&nn;){g--;if(g<0){g=11;m--}}}a.drawMonth=g;a.drawYear=m;n=this._get(a,"prevText");n=!h?n:this.formatDate(n,this._daylightSavingAdjust(new Date(m,g-j,1)),this._getFormatConfig(a)); -n=this._canAdjustMonth(a,-1,m,g)?''+n+"":f?"":''+n+"";var s=this._get(a,"nextText");s=!h?s:this.formatDate(s,this._daylightSavingAdjust(new Date(m, -g+j,1)),this._getFormatConfig(a));f=this._canAdjustMonth(a,+1,m,g)?''+s+"":f?"":''+s+"";j=this._get(a,"currentText");s=this._get(a,"gotoCurrent")&& -a.currentDay?u:b;j=!h?j:this.formatDate(j,s,this._getFormatConfig(a));h=!a.inline?'":"";e=e?'
'+(c?h:"")+(this._isInRange(a,s)?'":"")+(c?"":h)+"
":"";h=parseInt(this._get(a,"firstDay"),10);h=isNaN(h)?0:h;j=this._get(a,"showWeek");s=this._get(a,"dayNames");this._get(a,"dayNamesShort");var q=this._get(a,"dayNamesMin"),A=this._get(a,"monthNames"),v=this._get(a,"monthNamesShort"),p=this._get(a,"beforeShowDay"),D=this._get(a,"showOtherMonths"),K=this._get(a,"selectOtherMonths");this._get(a,"calculateWeek");for(var E=this._getDefaultDate(a),w="",x=0;x1)switch(G){case 0:y+=" ui-datepicker-group-first";t=" ui-corner-"+(c?"right":"left");break;case i[1]-1:y+=" ui-datepicker-group-last";t=" ui-corner-"+(c?"left":"right");break;default:y+=" ui-datepicker-group-middle";t="";break}y+='">'}y+='
'+(/all|left/.test(t)&& -x==0?c?f:n:"")+(/all|right/.test(t)&&x==0?c?n:f:"")+this._generateMonthYearHeader(a,g,m,k,o,x>0||G>0,A,v)+'
';var z=j?'":"";for(t=0;t<7;t++){var r=(t+h)%7;z+="=5?' class="ui-datepicker-week-end"':"")+'>'+q[r]+""}y+=z+"";z=this._getDaysInMonth(m,g);if(m==a.selectedYear&&g==a.selectedMonth)a.selectedDay=Math.min(a.selectedDay, -z);t=(this._getFirstDayOfMonth(m,g)-h+7)%7;z=Math.ceil((t+z)/7);this.maxRows=z=l?this.maxRows>z?this.maxRows:z:z;r=this._daylightSavingAdjust(new Date(m,g,1-t));for(var Q=0;Q";var R=!j?"":'";for(t=0;t<7;t++){var I=p?p.apply(a.input?a.input[0]:null,[r]):[true,""],F=r.getMonth()!=g,L=F&&!K||!I[0]||k&&ro;R+='";r.setDate(r.getDate()+1);r=this._daylightSavingAdjust(r)}y+=R+""}g++;if(g>11){g=0;m++}y+="
'+this._get(a,"weekHeader")+"
'+this._get(a,"calculateWeek")(r)+""+(F&&!D?" ":L?''+ -r.getDate()+"":''+r.getDate()+"")+"
"+(l?""+(i[0]>0&&G==i[1]-1?'
':""):"");O+=y}w+=O}w+=e+(d.browser.msie&&parseInt(d.browser.version,10)<7&&!a.inline?'': -"");a._keyEvent=false;return w},_generateMonthYearHeader:function(a,b,c,e,f,h,i,g){var j=this._get(a,"changeMonth"),l=this._get(a,"changeYear"),u=this._get(a,"showMonthAfterYear"),k='
',o="";if(h||!j)o+=''+i[b]+"";else{i=e&&e.getFullYear()==c;var m=f&&f.getFullYear()==c;o+='"}u||(k+=o+(h||!(j&&l)?" ":""));if(!a.yearshtml){a.yearshtml="";if(h||!l)k+=''+c+"";else{g=this._get(a,"yearRange").split(":");var s=(new Date).getFullYear();i=function(q){q=q.match(/c[+-].*/)?c+parseInt(q.substring(1),10):q.match(/[+-].*/)?s+parseInt(q,10):parseInt(q,10);return isNaN(q)?s:q};b=i(g[0]);g=Math.max(b,i(g[1]||""));b=e?Math.max(b, -e.getFullYear()):b;g=f?Math.min(g,f.getFullYear()):g;for(a.yearshtml+='";k+=a.yearshtml;a.yearshtml=null}}k+=this._get(a,"yearSuffix");if(u)k+=(h||!(j&&l)?" ":"")+o;k+="
";return k},_adjustInstDate:function(a,b,c){var e=a.drawYear+(c=="Y"?b:0),f=a.drawMonth+ -(c=="M"?b:0);b=Math.min(a.selectedDay,this._getDaysInMonth(e,f))+(c=="D"?b:0);e=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(e,f,b)));a.selectedDay=e.getDate();a.drawMonth=a.selectedMonth=e.getMonth();a.drawYear=a.selectedYear=e.getFullYear();if(c=="M"||c=="Y")this._notifyChange(a)},_restrictMinMax:function(a,b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a,"max");b=c&&ba?a:b},_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");if(b)b.apply(a.input? -a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){a=this._get(a,"numberOfMonths");return a==null?[1,1]:typeof a=="number"?[1,a]:a},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-this._daylightSavingAdjust(new Date(a,b,32)).getDate()},_getFirstDayOfMonth:function(a,b){return(new Date(a,b,1)).getDay()},_canAdjustMonth:function(a,b,c,e){var f=this._getNumberOfMonths(a);c=this._daylightSavingAdjust(new Date(c, -e+(b<0?b:f[0]*f[1]),1));b<0&&c.setDate(this._getDaysInMonth(c.getFullYear(),c.getMonth()));return this._isInRange(a,c)},_isInRange:function(a,b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a,"max");return(!c||b.getTime()>=c.getTime())&&(!a||b.getTime()<=a.getTime())},_getFormatConfig:function(a){var b=this._get(a,"shortYearCutoff");b=typeof b!="string"?b:(new Date).getFullYear()%100+parseInt(b,10);return{shortYearCutoff:b,dayNamesShort:this._get(a,"dayNamesShort"),dayNames:this._get(a, -"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,e){if(!b){a.currentDay=a.selectedDay;a.currentMonth=a.selectedMonth;a.currentYear=a.selectedYear}b=b?typeof b=="object"?b:this._daylightSavingAdjust(new Date(e,c,b)):this._daylightSavingAdjust(new Date(a.currentYear,a.currentMonth,a.currentDay));return this.formatDate(this._get(a,"dateFormat"),b,this._getFormatConfig(a))}});d.fn.datepicker=function(a){if(!this.length)return this; -if(!d.datepicker.initialized){d(document).mousedown(d.datepicker._checkExternalClick).find("body").append(d.datepicker.dpDiv);d.datepicker.initialized=true}var b=Array.prototype.slice.call(arguments,1);if(typeof a=="string"&&(a=="isDisabled"||a=="getDate"||a=="widget"))return d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this[0]].concat(b));if(a=="option"&&arguments.length==2&&typeof arguments[1]=="string")return d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this[0]].concat(b));return this.each(function(){typeof a== -"string"?d.datepicker["_"+a+"Datepicker"].apply(d.datepicker,[this].concat(b)):d.datepicker._attachDatepicker(this,a)})};d.datepicker=new M;d.datepicker.initialized=false;d.datepicker.uuid=(new Date).getTime();d.datepicker.version="1.8.16";window["DP_jQuery_"+B]=d})(jQuery); -;/* - * jQuery UI Effects 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Effects/ - */ -jQuery.effects||function(f,j){function m(c){var a;if(c&&c.constructor==Array&&c.length==3)return c;if(a=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(c))return[parseInt(a[1],10),parseInt(a[2],10),parseInt(a[3],10)];if(a=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(c))return[parseFloat(a[1])*2.55,parseFloat(a[2])*2.55,parseFloat(a[3])*2.55];if(a=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(c))return[parseInt(a[1], -16),parseInt(a[2],16),parseInt(a[3],16)];if(a=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(c))return[parseInt(a[1]+a[1],16),parseInt(a[2]+a[2],16),parseInt(a[3]+a[3],16)];if(/rgba\(0, 0, 0, 0\)/.exec(c))return n.transparent;return n[f.trim(c).toLowerCase()]}function s(c,a){var b;do{b=f.curCSS(c,a);if(b!=""&&b!="transparent"||f.nodeName(c,"body"))break;a="backgroundColor"}while(c=c.parentNode);return m(b)}function o(){var c=document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle, -a={},b,d;if(c&&c.length&&c[0]&&c[c[0]])for(var e=c.length;e--;){b=c[e];if(typeof c[b]=="string"){d=b.replace(/\-(\w)/g,function(g,h){return h.toUpperCase()});a[d]=c[b]}}else for(b in c)if(typeof c[b]==="string")a[b]=c[b];return a}function p(c){var a,b;for(a in c){b=c[a];if(b==null||f.isFunction(b)||a in t||/scrollbar/.test(a)||!/color/i.test(a)&&isNaN(parseFloat(b)))delete c[a]}return c}function u(c,a){var b={_:0},d;for(d in a)if(c[d]!=a[d])b[d]=a[d];return b}function k(c,a,b,d){if(typeof c=="object"){d= -a;b=null;a=c;c=a.effect}if(f.isFunction(a)){d=a;b=null;a={}}if(typeof a=="number"||f.fx.speeds[a]){d=b;b=a;a={}}if(f.isFunction(b)){d=b;b=null}a=a||{};b=b||a.duration;b=f.fx.off?0:typeof b=="number"?b:b in f.fx.speeds?f.fx.speeds[b]:f.fx.speeds._default;d=d||a.complete;return[c,a,b,d]}function l(c){if(!c||typeof c==="number"||f.fx.speeds[c])return true;if(typeof c==="string"&&!f.effects[c])return true;return false}f.effects={};f.each(["backgroundColor","borderBottomColor","borderLeftColor","borderRightColor", -"borderTopColor","borderColor","color","outlineColor"],function(c,a){f.fx.step[a]=function(b){if(!b.colorInit){b.start=s(b.elem,a);b.end=m(b.end);b.colorInit=true}b.elem.style[a]="rgb("+Math.max(Math.min(parseInt(b.pos*(b.end[0]-b.start[0])+b.start[0],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[1]-b.start[1])+b.start[1],10),255),0)+","+Math.max(Math.min(parseInt(b.pos*(b.end[2]-b.start[2])+b.start[2],10),255),0)+")"}});var n={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0, -0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211, -211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255],maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]},q=["add","remove","toggle"],t={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};f.effects.animateClass=function(c,a,b, -d){if(f.isFunction(b)){d=b;b=null}return this.queue(function(){var e=f(this),g=e.attr("style")||" ",h=p(o.call(this)),r,v=e.attr("class");f.each(q,function(w,i){c[i]&&e[i+"Class"](c[i])});r=p(o.call(this));e.attr("class",v);e.animate(u(h,r),{queue:false,duration:a,easing:b,complete:function(){f.each(q,function(w,i){c[i]&&e[i+"Class"](c[i])});if(typeof e.attr("style")=="object"){e.attr("style").cssText="";e.attr("style").cssText=g}else e.attr("style",g);d&&d.apply(this,arguments);f.dequeue(this)}})})}; -f.fn.extend({_addClass:f.fn.addClass,addClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{add:c},a,b,d]):this._addClass(c)},_removeClass:f.fn.removeClass,removeClass:function(c,a,b,d){return a?f.effects.animateClass.apply(this,[{remove:c},a,b,d]):this._removeClass(c)},_toggleClass:f.fn.toggleClass,toggleClass:function(c,a,b,d,e){return typeof a=="boolean"||a===j?b?f.effects.animateClass.apply(this,[a?{add:c}:{remove:c},b,d,e]):this._toggleClass(c,a):f.effects.animateClass.apply(this, -[{toggle:c},a,b,d])},switchClass:function(c,a,b,d,e){return f.effects.animateClass.apply(this,[{add:a,remove:c},b,d,e])}});f.extend(f.effects,{version:"1.8.16",save:function(c,a){for(var b=0;b").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}), -d=document.activeElement;c.wrap(b);if(c[0]===d||f.contains(c[0],d))f(d).focus();b=c.parent();if(c.css("position")=="static"){b.css({position:"relative"});c.css({position:"relative"})}else{f.extend(a,{position:c.css("position"),zIndex:c.css("z-index")});f.each(["top","left","bottom","right"],function(e,g){a[g]=c.css(g);if(isNaN(parseInt(a[g],10)))a[g]="auto"});c.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})}return b.css(a).show()},removeWrapper:function(c){var a,b=document.activeElement; -if(c.parent().is(".ui-effects-wrapper")){a=c.parent().replaceWith(c);if(c[0]===b||f.contains(c[0],b))f(b).focus();return a}return c},setTransition:function(c,a,b,d){d=d||{};f.each(a,function(e,g){unit=c.cssUnit(g);if(unit[0]>0)d[g]=unit[0]*b+unit[1]});return d}});f.fn.extend({effect:function(c){var a=k.apply(this,arguments),b={options:a[1],duration:a[2],callback:a[3]};a=b.options.mode;var d=f.effects[c];if(f.fx.off||!d)return a?this[a](b.duration,b.callback):this.each(function(){b.callback&&b.callback.call(this)}); -return d.call(this,b)},_show:f.fn.show,show:function(c){if(l(c))return this._show.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="show";return this.effect.apply(this,a)}},_hide:f.fn.hide,hide:function(c){if(l(c))return this._hide.apply(this,arguments);else{var a=k.apply(this,arguments);a[1].mode="hide";return this.effect.apply(this,a)}},__toggle:f.fn.toggle,toggle:function(c){if(l(c)||typeof c==="boolean"||f.isFunction(c))return this.__toggle.apply(this,arguments);else{var a=k.apply(this, -arguments);a[1].mode="toggle";return this.effect.apply(this,a)}},cssUnit:function(c){var a=this.css(c),b=[];f.each(["em","px","%","pt"],function(d,e){if(a.indexOf(e)>0)b=[parseFloat(a),e]});return b}});f.easing.jswing=f.easing.swing;f.extend(f.easing,{def:"easeOutQuad",swing:function(c,a,b,d,e){return f.easing[f.easing.def](c,a,b,d,e)},easeInQuad:function(c,a,b,d,e){return d*(a/=e)*a+b},easeOutQuad:function(c,a,b,d,e){return-d*(a/=e)*(a-2)+b},easeInOutQuad:function(c,a,b,d,e){if((a/=e/2)<1)return d/ -2*a*a+b;return-d/2*(--a*(a-2)-1)+b},easeInCubic:function(c,a,b,d,e){return d*(a/=e)*a*a+b},easeOutCubic:function(c,a,b,d,e){return d*((a=a/e-1)*a*a+1)+b},easeInOutCubic:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a+b;return d/2*((a-=2)*a*a+2)+b},easeInQuart:function(c,a,b,d,e){return d*(a/=e)*a*a*a+b},easeOutQuart:function(c,a,b,d,e){return-d*((a=a/e-1)*a*a*a-1)+b},easeInOutQuart:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a*a+b;return-d/2*((a-=2)*a*a*a-2)+b},easeInQuint:function(c,a,b, -d,e){return d*(a/=e)*a*a*a*a+b},easeOutQuint:function(c,a,b,d,e){return d*((a=a/e-1)*a*a*a*a+1)+b},easeInOutQuint:function(c,a,b,d,e){if((a/=e/2)<1)return d/2*a*a*a*a*a+b;return d/2*((a-=2)*a*a*a*a+2)+b},easeInSine:function(c,a,b,d,e){return-d*Math.cos(a/e*(Math.PI/2))+d+b},easeOutSine:function(c,a,b,d,e){return d*Math.sin(a/e*(Math.PI/2))+b},easeInOutSine:function(c,a,b,d,e){return-d/2*(Math.cos(Math.PI*a/e)-1)+b},easeInExpo:function(c,a,b,d,e){return a==0?b:d*Math.pow(2,10*(a/e-1))+b},easeOutExpo:function(c, -a,b,d,e){return a==e?b+d:d*(-Math.pow(2,-10*a/e)+1)+b},easeInOutExpo:function(c,a,b,d,e){if(a==0)return b;if(a==e)return b+d;if((a/=e/2)<1)return d/2*Math.pow(2,10*(a-1))+b;return d/2*(-Math.pow(2,-10*--a)+2)+b},easeInCirc:function(c,a,b,d,e){return-d*(Math.sqrt(1-(a/=e)*a)-1)+b},easeOutCirc:function(c,a,b,d,e){return d*Math.sqrt(1-(a=a/e-1)*a)+b},easeInOutCirc:function(c,a,b,d,e){if((a/=e/2)<1)return-d/2*(Math.sqrt(1-a*a)-1)+b;return d/2*(Math.sqrt(1-(a-=2)*a)+1)+b},easeInElastic:function(c,a,b, -d,e){c=1.70158;var g=0,h=d;if(a==0)return b;if((a/=e)==1)return b+d;g||(g=e*0.3);if(h").css({position:"absolute",visibility:"visible",left:-f*(h/d),top:-e*(i/c)}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:h/d,height:i/c,left:g.left+f*(h/d)+(a.options.mode=="show"?(f-Math.floor(d/2))*(h/d):0),top:g.top+e*(i/c)+(a.options.mode=="show"?(e-Math.floor(c/2))*(i/c):0),opacity:a.options.mode=="show"?0:1}).animate({left:g.left+f*(h/d)+(a.options.mode=="show"?0:(f-Math.floor(d/2))*(h/d)),top:g.top+ -e*(i/c)+(a.options.mode=="show"?0:(e-Math.floor(c/2))*(i/c)),opacity:a.options.mode=="show"?1:0},a.duration||500);setTimeout(function(){a.options.mode=="show"?b.css({visibility:"visible"}):b.css({visibility:"visible"}).hide();a.callback&&a.callback.apply(b[0]);b.dequeue();j("div.ui-effects-explode").remove()},a.duration||500)})}})(jQuery); -;/* - * jQuery UI Effects Fade 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Effects/Fade - * - * Depends: - * jquery.effects.core.js - */ -(function(b){b.effects.fade=function(a){return this.queue(function(){var c=b(this),d=b.effects.setMode(c,a.options.mode||"hide");c.animate({opacity:d},{queue:false,duration:a.duration,easing:a.options.easing,complete:function(){a.callback&&a.callback.apply(this,arguments);c.dequeue()}})})}})(jQuery); -;/* - * jQuery UI Effects Fold 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Effects/Fold - * - * Depends: - * jquery.effects.core.js - */ -(function(c){c.effects.fold=function(a){return this.queue(function(){var b=c(this),j=["position","top","bottom","left","right"],d=c.effects.setMode(b,a.options.mode||"hide"),g=a.options.size||15,h=!!a.options.horizFirst,k=a.duration?a.duration/2:c.fx.speeds._default/2;c.effects.save(b,j);b.show();var e=c.effects.createWrapper(b).css({overflow:"hidden"}),f=d=="show"!=h,l=f?["width","height"]:["height","width"];f=f?[e.width(),e.height()]:[e.height(),e.width()];var i=/([0-9]+)%/.exec(g);if(i)g=parseInt(i[1], -10)/100*f[d=="hide"?0:1];if(d=="show")e.css(h?{height:0,width:g}:{height:g,width:0});h={};i={};h[l[0]]=d=="show"?f[0]:g;i[l[1]]=d=="show"?f[1]:0;e.animate(h,k,a.options.easing).animate(i,k,a.options.easing,function(){d=="hide"&&b.hide();c.effects.restore(b,j);c.effects.removeWrapper(b);a.callback&&a.callback.apply(b[0],arguments);b.dequeue()})})}})(jQuery); -;/* - * jQuery UI Effects Highlight 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Effects/Highlight - * - * Depends: - * jquery.effects.core.js - */ -(function(b){b.effects.highlight=function(c){return this.queue(function(){var a=b(this),e=["backgroundImage","backgroundColor","opacity"],d=b.effects.setMode(a,c.options.mode||"show"),f={backgroundColor:a.css("backgroundColor")};if(d=="hide")f.opacity=0;b.effects.save(a,e);a.show().css({backgroundImage:"none",backgroundColor:c.options.color||"#ffff99"}).animate(f,{queue:false,duration:c.duration,easing:c.options.easing,complete:function(){d=="hide"&&a.hide();b.effects.restore(a,e);d=="show"&&!b.support.opacity&& -this.style.removeAttribute("filter");c.callback&&c.callback.apply(this,arguments);a.dequeue()}})})}})(jQuery); -;/* - * jQuery UI Effects Pulsate 1.8.16 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Effects/Pulsate - * - * Depends: - * jquery.effects.core.js - */ -(function(d){d.effects.pulsate=function(a){return this.queue(function(){var b=d(this),c=d.effects.setMode(b,a.options.mode||"show");times=(a.options.times||5)*2-1;duration=a.duration?a.duration/2:d.fx.speeds._default/2;isVisible=b.is(":visible");animateTo=0;if(!isVisible){b.css("opacity",0).show();animateTo=1}if(c=="hide"&&isVisible||c=="show"&&!isVisible)times--;for(c=0;c').appendTo(document.body).addClass(a.options.className).css({top:d.top,left:d.left,height:b.innerHeight(),width:b.innerWidth(),position:"absolute"}).animate(c,a.duration,a.options.easing,function(){f.remove();a.callback&&a.callback.apply(b[0],arguments); -b.dequeue()})})}})(jQuery); -; \ No newline at end of file diff --git a/js/jquery.dropkick-1.0.0.js b/js/jquery.dropkick-1.0.0.js deleted file mode 100644 index aaffc4b..0000000 --- a/js/jquery.dropkick-1.0.0.js +++ /dev/null @@ -1,402 +0,0 @@ -/** - * DropKick - * - * Highly customizable element that gets dropkicked - lists = [], - - // Convenience keys for keyboard navigation - keyMap = { - 'left' : 37, - 'up' : 38, - 'right' : 39, - 'down' : 40, - 'enter' : 13 - }, - - // HTML template for the dropdowns - dropdownTemplate = [ - '
', - '', - '{{ label }}', - '', - '
', - '
    ', - '
', - '
', - '
' - ].join(''), - - // HTML template for dropdown options - optionTemplate = '
  • {{ text }}
  • ', - - // Some nice default values - defaults = { - startSpeed : 1000, // I recommend a high value here, I feel it makes the changes less noticeable to the user - theme : false, - change : false - }, - - // Make sure we only bind keydown on the document once - keysBound = false - ; - - // Called by using $('foo').dropkick(); - methods.init = function (settings) { - settings = $.extend({}, defaults, settings); - - return this.each(function () { - var - // The current list and place our new one in front of it - $select.before($dk); - - // Update the reference to $dk - $dk = $('#dk_container_' + id).fadeIn(settings.startSpeed); - - // Save the current theme - theme = settings.theme ? settings.theme : 'default'; - $dk.addClass('dk_theme_' + theme); - data.theme = theme; - - // Save the updated $dk reference into our data object - data.$dk = $dk; - - // Save the dropkick data onto the ";c=a.getElementsByTagName("*");b=a.getElementsByTagName("a")[0]; -if(!c||!c.length||!b)return{};e=u.createElement("select");g=e.appendChild(u.createElement("option"));c=a.getElementsByTagName("input")[0];h={leadingWhitespace:3===a.firstChild.nodeType,tbody:!a.getElementsByTagName("tbody").length,htmlSerialize:!!a.getElementsByTagName("link").length,style:/top/.test(b.getAttribute("style")),hrefNormalized:"/a"===b.getAttribute("href"),opacity:/^0.55/.test(b.style.opacity),cssFloat:!!b.style.cssFloat,unknownElems:!!a.getElementsByTagName("nav").length,checkOn:"on"=== -c.value,optSelected:g.selected,getSetAttribute:"t"!==a.className,enctype:!!u.createElement("form").enctype,submitBubbles:!0,changeBubbles:!0,focusinBubbles:!1,deleteExpando:!0,noCloneEvent:!0,inlineBlockNeedsLayout:!1,shrinkWrapBlocks:!1,reliableMarginRight:!0};c.checked=!0;h.noCloneChecked=c.cloneNode(!0).checked;e.disabled=!0;h.optDisabled=!g.disabled;try{delete a.test}catch(r){h.deleteExpando=!1}!a.addEventListener&&a.attachEvent&&a.fireEvent&&(a.attachEvent("onclick",function(){h.noCloneEvent= -!1}),a.cloneNode(!0).fireEvent("onclick"));c=u.createElement("input");c.value="t";c.setAttribute("type","radio");h.radioValue="t"===c.value;c.setAttribute("checked","checked");a.appendChild(c);b=u.createDocumentFragment();b.appendChild(a.lastChild);h.checkClone=b.cloneNode(!0).cloneNode(!0).lastChild.checked;a.innerHTML="";a.style.width=a.style.paddingLeft="1px";l=u.getElementsByTagName("body")[0];m=u.createElement(l?"div":"body");b={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"}; -l&&k.extend(b,{position:"absolute",left:"-999px",top:"-999px"});for(n in b)m.style[n]=b[n];m.appendChild(a);d=l||d;d.insertBefore(m,d.firstChild);h.appendChecked=c.checked;h.boxModel=2===a.offsetWidth;"zoom"in a.style&&(a.style.display="inline",a.style.zoom=1,h.inlineBlockNeedsLayout=2===a.offsetWidth,a.style.display="",a.innerHTML="
    ",h.shrinkWrapBlocks=2!==a.offsetWidth);a.innerHTML="
    t
    "; -b=a.getElementsByTagName("td");c=0===b[0].offsetHeight;b[0].style.display="";b[1].style.display="none";h.reliableHiddenOffsets=c&&0===b[0].offsetHeight;a.innerHTML="";u.defaultView&&u.defaultView.getComputedStyle&&(f=u.createElement("div"),f.style.width="0",f.style.marginRight="0",a.appendChild(f),h.reliableMarginRight=0===(parseInt((u.defaultView.getComputedStyle(f,null)||{marginRight:0}).marginRight,10)||0));if(a.attachEvent)for(n in{submit:1,change:1,focusin:1})f="on"+n,(c=f in a)||(a.setAttribute(f, -"return;"),c="function"==typeof a[f]),h[n+"Bubbles"]=c;k(function(){var a,d,c,b,s;l=u.getElementsByTagName("body")[0];!l||(a=u.createElement("div"),a.style.cssText="visibility:hidden;border:0;width:0;height:0;position:static;top:0;margin-top:1px",l.insertBefore(a,l.firstChild),m=u.createElement("div"),m.style.cssText="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;visibility:hidden;border:0;",m.innerHTML="
    ", -a.appendChild(m),d=m.firstChild,c=d.firstChild,b=d.nextSibling.firstChild.firstChild,s={doesNotAddBorder:5!==c.offsetTop,doesAddBorderForTableAndCells:5===b.offsetTop},c.style.position="fixed",c.style.top="20px",s.fixedPosition=20===c.offsetTop||15===c.offsetTop,c.style.position=c.style.top="",d.style.overflow="hidden",d.style.position="relative",s.subtractsBorderForOverflowNotVisible=-5===c.offsetTop,s.doesNotIncludeMarginInBodyOffset=1!==l.offsetTop,l.removeChild(a),m=null,k.extend(h,s))});m.innerHTML= -"";d.removeChild(m);m=b=e=g=l=f=a=c=null;return h}();k.boxModel=k.support.boxModel;var I=/^(?:\{.*\}|\[.*\])$/,M=/([A-Z])/g;k.extend({cache:{},uuid:0,expando:"jQuery"+(k.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:!0,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:!0},hasData:function(a){a=a.nodeType?k.cache[a[k.expando]]:a[k.expando];return!!a&&!ea(a)},data:function(a,d,b,e){if(k.acceptData(a)){var g,f,h="string"==typeof d,l=(g=a.nodeType)?k.cache:a,m=g?a[k.expando]:a[k.expando]&& -k.expando,n="events"===d;if(m&&l[m]&&(n||e||l[m].data)||!h||b!==c){m||(g?a[k.expando]=m=++k.uuid:m=k.expando);l[m]||(l[m]={},g||(l[m].toJSON=k.noop));if("object"==typeof d||"function"==typeof d)e?l[m]=k.extend(l[m],d):l[m].data=k.extend(l[m].data,d);a=g=l[m];e||(g.data||(g.data={}),g=g.data);b!==c&&(g[k.camelCase(d)]=b);if(n&&!g[d])return a.events;h?(f=g[d],null==f&&(f=g[k.camelCase(d)])):f=g;return f}}},removeData:function(a,d,c){if(k.acceptData(a)){var b,e,g,f=a.nodeType,h=f?k.cache:a,l=f?a[k.expando]: -k.expando;if(h[l]){if(d&&(b=c?h[l]:h[l].data)){k.isArray(d)||(d in b?d=[d]:(d=k.camelCase(d),d in b?d=[d]:d=d.split(" ")));e=0;for(g=d.length;eb)return null;a=f?b:0;for(c=f?b+1:g.length;af.indexOf(":")?"on"+f:"",!g&&e||d.preventDefault(),e){if(d.result=c,d.target||(d.target=e),b=null!=b?k.makeArray(b):[],b.unshift(d),l=k.event.special[f]||{},!l.trigger||!1!==l.trigger.apply(e,b)){p=[[e,l.bindType|| -f]];if(!g&&!l.noBubble&&!k.isWindow(e)){m=l.delegateType||f;n=null;for(g=e.parentNode;g;g=g.parentNode)p.push([g,m]),n=g;n&&n===e.ownerDocument&&p.push([n.defaultView||n.parentWindow||a,m])}for(m=0;me&&l.push({elem:this, -matches:b.slice(e)});for(m=0;m+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,e="sizcache"+(Math.random()+"").replace(".",""),g=0,f=Object.prototype.toString,h=!1,l=!0,m=/\\/g,n=/\r\n/g,r=/\W/;[0,0].sort(function(){l=!1;return 0});var p=function(a,d,c,e){c=c|| -[];var g=d=d||u;if(1!==d.nodeType&&9!==d.nodeType)return[];if(!a||"string"!=typeof a)return c;var h,k,l,s,m,n,r=!0,R=p.isXML(d),t=[],Q=a;do if(b.exec(""),h=b.exec(Q))if(Q=h[3],t.push(h[1]),h[2]){s=h[3];break}while(h);if(1":function(a,d){var b,c="string"==typeof d,e=0,g=a.length;if(c&&!r.test(d))for(d=d.toLowerCase();ec[3]-0},nth:function(a,d,c){return c[3]-0===d},eq:function(a,d,c){return c[3]-0===d}},filter:{PSEUDO:function(a,d,c,b){var e=d[1],g=q.filters[e];if(g)return g(a,c,d,b);if("contains"===e)return 0<=(a.textContent||a.innerText|| -t([a])||"").indexOf(d[3]);if("not"===e){d=d[3];c=0;for(b=d.length;c";b.insertBefore(a,b.firstChild);u.getElementById(d)&&(q.find.ID=function(a,d,b){if("undefined"!=typeof d.getElementById&&!b)return(d=d.getElementById(a[1]))?d.id===a[1]||"undefined"!=typeof d.getAttributeNode&&d.getAttributeNode("id").nodeValue===a[1]?[d]:c:[]},q.filter.ID= -function(a,d){var c="undefined"!=typeof a.getAttributeNode&&a.getAttributeNode("id");return 1===a.nodeType&&c&&c.nodeValue===d});b.removeChild(a);b=a=null})();(function(){var a=u.createElement("div");a.appendChild(u.createComment(""));0

    ";if(!d.querySelectorAll||0!==d.querySelectorAll(".TEST").length){p=function(d,c,b,e){c=c||u;if(!e&&!p.isXML(c)){var g=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(d);if(g&&(1===c.nodeType||9===c.nodeType)){if(g[1])return v(c.getElementsByTagName(d),b);if(g[2]&&q.find.CLASS&&c.getElementsByClassName)return v(c.getElementsByClassName(g[2]), -b)}if(9===c.nodeType){if("body"===d&&c.body)return v([c.body],b);if(g&&g[3]){var f=c.getElementById(g[3]);if(!f||!f.parentNode)return v([],b);if(f.id===g[3])return v([f],b)}try{return v(c.querySelectorAll(d),b)}catch(h){}}else if(1===c.nodeType&&"object"!==c.nodeName.toLowerCase()){var g=c,l=(f=c.getAttribute("id"))||"__sizzle__",k=c.parentNode,s=/^\s*[+~]/.test(d);f?l=l.replace(/'/g,"\\$&"):c.setAttribute("id",l);s&&k&&(c=c.parentNode);try{if(!s||k)return v(c.querySelectorAll("[id='"+l+"'] "+d), -b)}catch(m){}finally{f||g.removeAttribute("id")}}}return a(d,c,b,e)};for(var c in a)p[c]=a[c];d=null}}();(function(){var a=u.documentElement,d=a.matchesSelector||a.mozMatchesSelector||a.webkitMatchesSelector||a.msMatchesSelector;if(d){var c=!d.call(u.createElement("div"),"div"),b=!1;try{d.call(u.documentElement,"[test!='']:sizzle")}catch(e){b=!0}p.matchesSelector=function(a,e){e=e.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!p.isXML(a))try{if(b||!q.match.PSEUDO.test(e)&&!/!=/.test(e)){var g=d.call(a, -e);if(g||!c||a.document&&11!==a.document.nodeType)return g}}catch(f){}return 0
    ";a.getElementsByClassName&&0!==a.getElementsByClassName("e").length&&(a.lastChild.className="e",1!==a.getElementsByClassName("e").length&&(q.order.splice(1,0,"CLASS"),q.find.CLASS=function(a,d,c){if("undefined"!=typeof d.getElementsByClassName&&!c)return d.getElementsByClassName(a[1])}, -a=null))})();u.documentElement.contains?p.contains=function(a,d){return a!==d&&(a.contains?a.contains(d):!0)}:u.documentElement.compareDocumentPosition?p.contains=function(a,d){return!!(a.compareDocumentPosition(d)&16)}:p.contains=function(){return!1};p.isXML=function(a){return(a=(a?a.ownerDocument||a:0).documentElement)?"HTML"!==a.nodeName:!1};var C=function(a,d,c){var b,e=[],g="";for(d=d.nodeType?[d]:d;b=q.match.PSEUDO.exec(a);)g+=b[0],a=a.replace(q.match.PSEUDO,"");a=q.relative[a]?a+"*":a;b=0; -for(var f=d.length;b]*)\/>/ig,ac=/<([\w:]+)/,tc=/",""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2, -"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},db=z(u);da.optgroup=da.option;da.tbody=da.tfoot=da.colgroup=da.caption=da.thead;da.th=da.td;k.support.htmlSerialize||(da._default=[1,"div
    ","
    "]);k.fn.extend({text:function(a){return k.isFunction(a)?this.each(function(d){var c=k(this);c.text(a.call(this,d,c.text()))}):"object"!=typeof a&&a!== -c?this.empty().append((this[0]&&this[0].ownerDocument||u).createTextNode(a)):k.text(this)},wrapAll:function(a){if(k.isFunction(a))return this.each(function(d){k(this).wrapAll(a.call(this,d))});if(this[0]){var d=k(a,this[0].ownerDocument).eq(0).clone(!0);this[0].parentNode&&d.insertBefore(this[0]);d.map(function(){for(var a=this;a.firstChild&&1===a.firstChild.nodeType;)a=a.firstChild;return a}).append(this)}return this},wrapInner:function(a){return k.isFunction(a)?this.each(function(d){k(this).wrapInner(a.call(this, -d))}):this.each(function(){var d=k(this),c=d.contents();c.length?c.wrapAll(a):d.append(a)})},wrap:function(a){return this.each(function(){k(this).wrapAll(a)})},unwrap:function(){return this.parent().each(function(){k.nodeName(this,"body")||k(this).replaceWith(this.childNodes)}).end()},append:function(){return this.domManip(arguments,!0,function(a){1===this.nodeType&&this.appendChild(a)})},prepend:function(){return this.domManip(arguments,!0,function(a){1===this.nodeType&&this.insertBefore(a,this.firstChild)})}, -before:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this)});if(arguments.length){var a=k(arguments[0]);a.push.apply(a,this.toArray());return this.pushStack(a,"before",arguments)}},after:function(){if(this[0]&&this[0].parentNode)return this.domManip(arguments,!1,function(a){this.parentNode.insertBefore(a,this.nextSibling)});if(arguments.length){var a=this.pushStack(this,"after",arguments);a.push.apply(a,k(arguments[0]).toArray()); -return a}},remove:function(a,d){for(var c=0,b;null!=(b=this[c]);c++)if(!a||k.filter(a,[b]).length)!d&&1===b.nodeType&&(k.cleanData(b.getElementsByTagName("*")),k.cleanData([b])),b.parentNode&&b.parentNode.removeChild(b);return this},empty:function(){for(var a=0,d;null!=(d=this[a]);a++)for(1===d.nodeType&&k.cleanData(d.getElementsByTagName("*"));d.firstChild;)d.removeChild(d.firstChild);return this},clone:function(a,d){a=null==a?!1:a;d=null==d?a:d;return this.map(function(){return k.clone(this,a,d)})}, -html:function(a){if(a===c)return this[0]&&1===this[0].nodeType?this[0].innerHTML.replace(Zb,""):null;if("string"!=typeof a||vc.test(a)||!k.support.leadingWhitespace&&zb.test(a)||da[(ac.exec(a)||["",""])[1].toLowerCase()])k.isFunction(a)?this.each(function(d){var c=k(this);c.html(a.call(this,d,c.html()))}):this.empty().append(a);else{a=a.replace($b,"<$1>");try{for(var d=0,b=this.length;dh.length&&f===u&&"<"===h.charAt(0)&&!(wc.test(h)||!k.support.checkClone&&bc.test(h)||k.support.unknownElems)&&xc.test(h)&&(e=!0,g=k.fragments[h],g&&1!==g&&(b=g));b||(b=f.createDocumentFragment(),k.clean(a,f,b,c));e&&(k.fragments[h]= -g?b:1);return{fragment:b,cacheable:e}};k.fragments={};k.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,d){k.fn[a]=function(c){var b=[];c=k(c);var e=1===this.length&&this[0].parentNode;if(e&&11===e.nodeType&&1===e.childNodes.length&&1===c.length)return c[d](this[0]),this;for(var e=0,g=c.length;e");g=(ac.exec(h)||["",""])[1].toLowerCase();var l=da[g]||da._default,m=l[0],n=d.createElement("div");d===u?db.appendChild(n):z(d).appendChild(n);for(n.innerHTML=l[1]+h+l[2];m--;)n=n.lastChild;if(!k.support.tbody)for(m=tc.test(h),l="table"!==g||m?""!==l[1]||m?[]:n.childNodes:n.firstChild&&n.firstChild.childNodes,g=l.length-1;0<=g;--g)k.nodeName(l[g],"tbody")&&!l[g].childNodes.length&&l[g].parentNode.removeChild(l[g]);!k.support.leadingWhitespace&&zb.test(h)&&n.insertBefore(d.createTextNode(zb.exec(h)[0]), -n.firstChild);h=n.childNodes}else h=d.createTextNode(h);var r;if(!k.support.appendChecked)if(h[0]&&"number"==typeof(r=h.length))for(g=0;g)<[^<]*)*<\/script>/gi,zc=/^(?:select|textarea)/i,Pb=/\s+/,Ac= -/([?&])_=[^&]*/,Gb=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,Hb=k.fn.load,Qa={},Ib={},Ga,Ha,Na=["*/"]+["*"];try{Ga=O.href}catch(pa){Ga=u.createElement("a"),Ga.href="",Ga=Ga.href}Ha=Gb.exec(Ga.toLowerCase())||[];k.fn.extend({load:function(a,d,b){if("string"!=typeof a&&Hb)return Hb.apply(this,arguments);if(!this.length)return this;var e=a.indexOf(" ");if(0<=e){var g=a.slice(e,a.length);a=a.slice(0,e)}e="GET";d&&(k.isFunction(d)?(b=d,d=c):"object"==typeof d&&(d=k.param(d,k.ajaxSettings.traditional), -e="POST"));var f=this;k.ajax({url:a,type:e,dataType:"html",data:d,complete:function(a,d,c){c=a.responseText;a.isResolved()&&(a.done(function(a){c=a}),f.html(g?k("
    ").append(c.replace(yc,"")).find(g):c));b&&f.each(b,[c,d,a])}});return this},serialize:function(){return k.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?k.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||zc.test(this.nodeName)|| -Ma.test(this.type))}).map(function(a,d){var c=k(this).val();return null==c?null:k.isArray(c)?k.map(c,function(a,c){return{name:d.name,value:a.replace(Db,"\r\n")}}):{name:d.name,value:c.replace(Db,"\r\n")}}).get()}});k.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(a,d){k.fn[d]=function(a){return this.bind(d,a)}});k.each(["get","post"],function(a,d){k[d]=function(a,b,e,g){k.isFunction(b)&&(g=g||e,e=b,b=c);return k.ajax({type:d,url:a,data:b,success:e,dataType:g})}}); -k.extend({getScript:function(a,d){return k.get(a,c,d,"script")},getJSON:function(a,d,c){return k.get(a,d,c,"json")},ajaxSetup:function(a,d){d?m(a,k.ajaxSettings):(d=a,a=k.ajaxSettings);m(a,d);return a},ajaxSettings:{url:Ga,isLocal:/^(?:about|app|app\-storage|.+\-extension|file|res|widget):$/.test(Ha[1]),global:!0,type:"GET",contentType:"application/x-www-form-urlencoded",processData:!0,async:!0,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript", -"*":Na},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":a.String,"text html":!0,"text json":k.parseJSON,"text xml":k.parseXML},flatOptions:{context:!0,url:!0}},ajaxPrefilter:r(Qa),ajaxTransport:r(Ib),ajax:function(a,d){function b(a,d,r,p){if(2!==u){u=2;B&&clearTimeout(B);w=c;t=p||"";y.readyState=0a||304===a){if(e.ifModified){if(G=y.getResponseHeader("Last-Modified"))k.lastModified[n]=G;if(G=y.getResponseHeader("Etag"))k.etag[n]=G}if(304===a)p="notmodified",q=!0;else try{G=e;G.dataFilter&&(r=G.dataFilter(r, -G.dataType));var Aa=G.dataTypes;D={};var J,fa,K=Aa.length,ea,I=Aa[0],O,M,N,ga,P;for(J=1;Ja&&(a=0);y.status=a;y.statusText=""+(d||p);q?h.resolveWith(g,[s,p,y]):h.rejectWith(g,[y,p,x]);y.statusCode(m);m=c;A&&f.trigger("ajax"+(q?"Success":"Error"),[y,e,q?s:x]);l.fireWith(g,[y,p]);A&&(f.trigger("ajaxComplete",[y,e]),--k.active||k.event.trigger("ajaxStop"))}}"object"==typeof a&&(d=a,a=c);d=d||{};var e=k.ajaxSetup({},d),g=e.context||e,f=g!==e&&(g.nodeType||g instanceof k)?k(g):k.event,h=k.Deferred(),l=k.Callbacks("once memory"), -m=e.statusCode||{},n,r={},p={},t,x,w,B,v,u=0,A,z,y={readyState:0,setRequestHeader:function(a,d){if(!u){var c=a.toLowerCase();a=p[c]=p[c]||a;r[a]=d}return this},getAllResponseHeaders:function(){return 2===u?t:null},getResponseHeader:function(a){var d;if(2===u){if(!x)for(x={};d=fc.exec(t);)x[d[1].toLowerCase()]=d[2];d=x[a.toLowerCase()]}return d===c?null:d},overrideMimeType:function(a){u||(e.mimeType=a);return this},abort:function(a){a=a||"abort";w&&w.abort(a);b(0,a);return this}};h.promise(y);y.success= -y.done;y.error=y.fail;y.complete=l.add;y.statusCode=function(a){if(a){var d;if(2>u)for(d in a)m[d]=[m[d],a[d]];else d=a[y.status],y.then(d,d)}return this};e.url=((a||e.url)+"").replace(ec,"").replace(Eb,Ha[1]+"//");e.dataTypes=k.trim(e.dataType||"*").toLowerCase().split(Pb);null==e.crossDomain&&(v=Gb.exec(e.url.toLowerCase()),e.crossDomain=!(!v||v[1]==Ha[1]&&v[2]==Ha[2]&&(v[3]||("http:"===v[1]?80:443))==(Ha[3]||("http:"===Ha[1]?80:443))));e.data&&e.processData&&"string"!=typeof e.data&&(e.data=k.param(e.data, -e.traditional));q(Qa,e,d,y);if(2===u)return!1;A=e.global;e.type=e.type.toUpperCase();e.hasContent=!gc.test(e.type);A&&0===k.active++&&k.event.trigger("ajaxStart");if(!e.hasContent&&(e.data&&(e.url+=(Fb.test(e.url)?"&":"?")+e.data,delete e.data),n=e.url,!1===e.cache)){v=k.now();var C=e.url.replace(Ac,"$1_="+v);e.url=C+(C===e.url?(Fb.test(e.url)?"&":"?")+"_="+v:"")}(e.data&&e.hasContent&&!1!==e.contentType||d.contentType)&&y.setRequestHeader("Content-Type",e.contentType);e.ifModified&&(n=n||e.url,k.lastModified[n]&& -y.setRequestHeader("If-Modified-Since",k.lastModified[n]),k.etag[n]&&y.setRequestHeader("If-None-Match",k.etag[n]));y.setRequestHeader("Accept",e.dataTypes[0]&&e.accepts[e.dataTypes[0]]?e.accepts[e.dataTypes[0]]+("*"!==e.dataTypes[0]?", "+Na+"; q=0.01":""):e.accepts["*"]);for(z in e.headers)y.setRequestHeader(z,e.headers[z]);if(e.beforeSend&&(!1===e.beforeSend.call(g,y,e)||2===u))return y.abort(),!1;for(z in{success:1,error:1,complete:1})y[z](e[z]);if(w=q(Ib,e,d,y)){y.readyState=1;A&&f.trigger("ajaxSend", -[y,e]);e.async&&0u?b(-1,L):k.error(L)}}else b(-1,"No Transport");return y},param:function(a,d){var b=[],e=function(a,d){d=k.isFunction(d)?d():d;b[b.length]=encodeURIComponent(a)+"="+encodeURIComponent(d)};d===c&&(d=k.ajaxSettings.traditional);if(k.isArray(a)||a.jquery&&!k.isPlainObject(a))k.each(a,function(){e(this.name,this.value)});else for(var g in a)l(g,a[g],d,e);return b.join("&").replace(dc,"+")}}); -k.extend({active:0,lastModified:{},etag:{}});var qa=k.now(),fb=/(\=)\?(&|$)|\?\?/i;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){return k.expando+"_"+qa++}});k.ajaxPrefilter("json jsonp",function(d,c,b){c="application/x-www-form-urlencoded"===d.contentType&&"string"==typeof d.data;if("jsonp"===d.dataTypes[0]||!1!==d.jsonp&&(fb.test(d.url)||c&&fb.test(d.data))){var e,g=d.jsonpCallback=k.isFunction(d.jsonpCallback)?d.jsonpCallback():d.jsonpCallback,f=a[g],h=d.url,l=d.data,m="$1"+g+"$2";!1!== -d.jsonp&&(h=h.replace(fb,m),d.url===h&&(c&&(l=l.replace(fb,m)),d.data===l&&(h+=(/\?/.test(h)?"&":"?")+d.jsonp+"="+g)));d.url=h;d.data=l;a[g]=function(a){e=[a]};b.always(function(){a[g]=f;e&&k.isFunction(f)&&a[g](e[0])});d.converters["script json"]=function(){e||k.error(g+" was not called");return e[0]};d.dataTypes[0]="json";return"script"}});k.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/javascript|ecmascript/}, -converters:{"text script":function(a){k.globalEval(a);return a}}});k.ajaxPrefilter("script",function(a){a.cache===c&&(a.cache=!1);a.crossDomain&&(a.type="GET",a.global=!1)});k.ajaxTransport("script",function(a){if(a.crossDomain){var d,b=u.head||u.getElementsByTagName("head")[0]||u.documentElement;return{send:function(e,g){d=u.createElement("script");d.async="async";a.scriptCharset&&(d.charset=a.scriptCharset);d.src=a.url;d.onload=d.onreadystatechange=function(a,e){if(e||!d.readyState||/loaded|complete/.test(d.readyState))d.onload= -d.onreadystatechange=null,b&&d.parentNode&&b.removeChild(d),d=c,e||g(200,"success")};b.insertBefore(d,b.firstChild)},abort:function(){d&&d.onload(0,1)}}}});var ob=a.ActiveXObject?function(){for(var a in Va)Va[a](0,1)}:!1,Cc=0,Va;k.ajaxSettings.xhr=a.ActiveXObject?function(){var c;if(!(c=!this.isLocal&&d()))a:{try{c=new a.ActiveXObject("Microsoft.XMLHTTP");break a}catch(b){}c=void 0}return c}:d;(function(a){k.extend(k.support,{ajax:!!a,cors:!!a&&"withCredentials"in a})})(k.ajaxSettings.xhr());k.support.ajax&& -k.ajaxTransport(function(d){if(!d.crossDomain||k.support.cors){var b;return{send:function(e,g){var f=d.xhr(),h,l;d.username?f.open(d.type,d.url,d.async,d.username,d.password):f.open(d.type,d.url,d.async);if(d.xhrFields)for(l in d.xhrFields)f[l]=d.xhrFields[l];d.mimeType&&f.overrideMimeType&&f.overrideMimeType(d.mimeType);d.crossDomain||e["X-Requested-With"]||(e["X-Requested-With"]="XMLHttpRequest");try{for(l in e)f.setRequestHeader(l,e[l])}catch(m){}f.send(d.hasContent&&d.data||null);b=function(a, -e){var l,m,n,r,p;try{if(b&&(e||4===f.readyState))if(b=c,h&&(f.onreadystatechange=k.noop,ob&&delete Va[h]),e)4!==f.readyState&&f.abort();else{l=f.status;n=f.getAllResponseHeaders();r={};(p=f.responseXML)&&p.documentElement&&(r.xml=p);r.text=f.responseText;try{m=f.statusText}catch(t){m=""}l||!d.isLocal||d.crossDomain?1223===l&&(l=204):l=r.text?200:404}}catch(q){e||g(-1,q)}r&&g(l,m,r,n)};d.async&&4!==f.readyState?(h=++Cc,ob&&(Va||(Va={},k(a).unload(ob)),Va[h]=b),f.onreadystatechange=b):b()},abort:function(){b&& -b(0,1)}}}});var sb={},la,Pa,Kb=/^(?:toggle|show|hide)$/,ua=/^([+\-]=)?([\d+.\-]+)([a-z%]*)$/i,ha,Ia=[["height","marginTop","marginBottom","paddingTop","paddingBottom"],["width","marginLeft","marginRight","paddingLeft","paddingRight"],["opacity"]],xa;k.fn.extend({show:function(a,d,c){var b;if(a||0===a)return this.animate(g("show",3),a,d,c);d=0;for(c=this.length;d=f.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();f.animatedProperties[this.prop]=!0;for(d in f.animatedProperties)!0!== -f.animatedProperties[d]&&(e=!1);if(e){null!=f.overflow&&!k.support.shrinkWrapBlocks&&k.each(["","X","Y"],function(a,d){g.style["overflow"+d]=f.overflow[a]});f.hide&&k(g).hide();if(f.hide||f.show)for(d in f.animatedProperties)k.style(g,d,f.orig[d]),k.removeData(g,"fxshow"+d,!0),k.removeData(g,"toggle"+d,!0);(a=f.complete)&&(f.complete=!1,a.call(g))}return!1}Infinity==f.duration?this.now=b:(c=b-this.startTime,this.state=c/f.duration,this.pos=k.easing[f.animatedProperties[this.prop]](this.state,c,0, -1,f.duration),this.now=this.start+(this.end-this.start)*this.pos);this.update();return!0}};k.extend(k.fx,{tick:function(){for(var a,d=k.timers,c=0;cc&&a=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}})})(jQuery); -(function(a){a.ui=a.ui||{};var c=/left|center|right/,b=/top|center|bottom/,e=a.fn.position,g=a.fn.offset;a.fn.position=function(g){if(!g||!g.of)return e.apply(this,arguments);g=a.extend({},g);var h=a(g.of),d=h[0],l=(g.collision||"flip").split(" "),m=g.offset?g.offset.split(" "):[0,0],q,r,n;9===d.nodeType?(q=h.width(),r=h.height(),n={top:0,left:0}):d.setTimeout?(q=h.width(),r=h.height(),n={top:h.scrollTop(),left:h.scrollLeft()}):d.preventDefault?(g.at="left top",q=r=0,n={top:g.of.pageY,left:g.of.pageX}): -(q=h.outerWidth(),r=h.outerHeight(),n=h.offset());a.each(["my","at"],function(){var a=(g[this]||"").split(" ");1===a.length&&(a=c.test(a[0])?a.concat(["center"]):b.test(a[0])?["center"].concat(a):["center","center"]);a[0]=c.test(a[0])?a[0]:"center";a[1]=b.test(a[1])?a[1]:"center";g[this]=a});1===l.length&&(l[1]=l[0]);m[0]=parseInt(m[0],10)||0;1===m.length&&(m[1]=m[0]);m[1]=parseInt(m[1],10)||0;"right"===g.at[0]?n.left+=q:"center"===g.at[0]&&(n.left+=q/2);"bottom"===g.at[1]?n.top+=r:"center"===g.at[1]&& -(n.top+=r/2);n.left+=m[0];n.top+=m[1];return this.each(function(){var d=a(this),c=d.outerWidth(),b=d.outerHeight(),e=parseInt(a.curCSS(this,"marginLeft",!0))||0,h=parseInt(a.curCSS(this,"marginTop",!0))||0,A=c+e+(parseInt(a.curCSS(this,"marginRight",!0))||0),y=b+h+(parseInt(a.curCSS(this,"marginBottom",!0))||0),z=a.extend({},n),v;"right"===g.my[0]?z.left-=c:"center"===g.my[0]&&(z.left-=c/2);"bottom"===g.my[1]?z.top-=b:"center"===g.my[1]&&(z.top-=b/2);z.left=Math.round(z.left);z.top=Math.round(z.top); -v={left:z.left-e,top:z.top-h};a.each(["left","top"],function(d,e){a.ui.position[l[d]]&&a.ui.position[l[d]][e](z,{targetWidth:q,targetHeight:r,elemWidth:c,elemHeight:b,collisionPosition:v,collisionWidth:A,collisionHeight:y,offset:m,my:g.my,at:g.at})});a.fn.bgiframe&&d.bgiframe();d.offset(a.extend(z,{using:g.using}))})};a.ui.position={fit:{left:function(c,b){var d=a(window),d=b.collisionPosition.left+b.collisionWidth-d.width()-d.scrollLeft();c.left=0b.collisionPosition.left?e+g+q:0b.collisionPosition.top?e+g+q:0
    ').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1E3}).css(a(this).offset()).appendTo("body")});return!0},_mouseStart:function(c){var b=this.options;this.helper=this._createHelper(c);this._cacheHelperProportions();a.ui.ddmanager&&(a.ui.ddmanager.current= -this);this._cacheMargins();this.cssPosition=this.helper.css("position");this.scrollParent=this.helper.scrollParent();this.offset=this.positionAbs=this.element.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};a.extend(this.offset,{click:{left:c.pageX-this.offset.left,top:c.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this.position=this._generatePosition(c);this.originalPageX=c.pageX; -this.originalPageY=c.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);b.containment&&this._setContainment();if(!1===this._trigger("start",c))return this._clear(),!1;this._cacheHelperProportions();a.ui.ddmanager&&!b.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,c);this.helper.addClass("ui-draggable-dragging");this._mouseDrag(c,!0);a.ui.ddmanager&&a.ui.ddmanager.dragStart(this,c);return!0},_mouseDrag:function(c,b){this.position=this._generatePosition(c);this.positionAbs=this._convertPositionTo("absolute"); -if(!b){b=this._uiHash();if(!1===this._trigger("drag",c,b))return this._mouseUp({}),!1;this.position=b.position}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");a.ui.ddmanager&&a.ui.ddmanager.drag(this,c);return!1},_mouseStop:function(c){var b=!1;a.ui.ddmanager&&!this.options.dropBehaviour&&(b=a.ui.ddmanager.drop(this,c));this.dropped&&(b=this.dropped,this.dropped= -!1);if(!(this.element[0]&&this.element[0].parentNode||"original"!=this.options.helper))return!1;if("invalid"==this.options.revert&&!b||"valid"==this.options.revert&&b||!0===this.options.revert||a.isFunction(this.options.revert)&&this.options.revert.call(this.element,b)){var e=this;a(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){!1!==e._trigger("stop",c)&&e._clear()})}else!1!==this._trigger("stop",c)&&this._clear();return!1},_mouseUp:function(c){!0=== -this.options.iframeFix&&a("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)});a.ui.ddmanager&&a.ui.ddmanager.dragStop(this,c);return a.ui.mouse.prototype._mouseUp.call(this,c)},cancel:function(){this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear();return this},_getHandle:function(c){var b=this.options.handle&&a(this.options.handle,this.element).length?!1:!0;a(this.options.handle,this.element).find("*").andSelf().each(function(){this==c.target&&(b= -!0)});return b},_createHelper:function(c){var b=this.options;c=a.isFunction(b.helper)?a(b.helper.apply(this.element[0],[c])):"clone"==b.helper?this.element.clone().removeAttr("id"):this.element;c.parents("body").length||c.appendTo("parent"==b.appendTo?this.element[0].parentNode:b.appendTo);c[0]!=this.element[0]&&!/(fixed|absolute)/.test(c.css("position"))&&c.css("position","absolute");return c},_adjustOffsetFromHelper:function(c){"string"==typeof c&&(c=c.split(" "));a.isArray(c)&&(c={left:+c[0],top:+c[1]|| -0});"left"in c&&(this.offset.click.left=c.left+this.margins.left);"right"in c&&(this.offset.click.left=this.helperProportions.width-c.right+this.margins.left);"top"in c&&(this.offset.click.top=c.top+this.margins.top);"bottom"in c&&(this.offset.click.top=this.helperProportions.height-c.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var c=this.offsetParent.offset();"absolute"==this.cssPosition&&this.scrollParent[0]!=document&&a.ui.contains(this.scrollParent[0], -this.offsetParent[0])&&(c.left+=this.scrollParent.scrollLeft(),c.top+=this.scrollParent.scrollTop());if(this.offsetParent[0]==document.body||this.offsetParent[0].tagName&&"html"==this.offsetParent[0].tagName.toLowerCase()&&a.browser.msie)c={top:0,left:0};return{top:c.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:c.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"==this.cssPosition){var a=this.element.position();return{top:a.top- -(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:a.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 c=this.options;"parent"==c.containment&&(c.containment=this.helper[0].parentNode);if("document"==c.containment||"window"==c.containment)this.containment=["document"==c.containment?0:a(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,"document"==c.containment?0:a(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,("document"==c.containment?0:a(window).scrollLeft())+a("document"==c.containment?document: -window).width()-this.helperProportions.width-this.margins.left,("document"==c.containment?0:a(window).scrollTop())+(a("document"==c.containment?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top];if(/^(document|window|parent)$/.test(c.containment)||c.containment.constructor==Array)c.containment.constructor==Array&&(this.containment=c.containment);else{var c=a(c.containment),b=c[0];if(b){c.offset();var e="hidden"!=a(b).css("overflow");this.containment= -[(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),(e?Math.max(b.scrollWidth,b.offsetWidth):b.offsetWidth)-(parseInt(a(b).css("borderLeftWidth"),10)||0)-(parseInt(a(b).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(e?Math.max(b.scrollHeight,b.offsetHeight):b.offsetHeight)-(parseInt(a(b).css("borderTopWidth"),10)||0)-(parseInt(a(b).css("paddingBottom"), -10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom];this.relative_container=c}}},_convertPositionTo:function(c,b){b||(b=this.position);c="absolute"==c?1:-1;var e="absolute"!=this.cssPosition||this.scrollParent[0]!=document&&a.ui.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,g=/(html|body)/i.test(e[0].tagName);return{top:b.top+this.offset.relative.top*c+this.offset.parent.top*c-(a.browser.safari&&526>a.browser.version&&"fixed"==this.cssPosition? -0:("fixed"==this.cssPosition?-this.scrollParent.scrollTop():g?0:e.scrollTop())*c),left:b.left+this.offset.relative.left*c+this.offset.parent.left*c-(a.browser.safari&&526>a.browser.version&&"fixed"==this.cssPosition?0:("fixed"==this.cssPosition?-this.scrollParent.scrollLeft():g?0:e.scrollLeft())*c)}},_generatePosition:function(c){var b=this.options,e="absolute"!=this.cssPosition||this.scrollParent[0]!=document&&a.ui.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent, -g=/(html|body)/i.test(e[0].tagName),f=c.pageX,h=c.pageY;if(this.originalPosition){var d;this.containment&&(this.relative_container?(d=this.relative_container.offset(),d=[this.containment[0]+d.left,this.containment[1]+d.top,this.containment[2]+d.left,this.containment[3]+d.top]):d=this.containment,c.pageX-this.offset.click.leftd[2]&&(f=d[2]+this.offset.click.left), -c.pageY-this.offset.click.top>d[3]&&(h=d[3]+this.offset.click.top));b.grid&&(h=b.grid[1]?this.originalPageY+Math.round((h-this.originalPageY)/b.grid[1])*b.grid[1]:this.originalPageY,h=d?h-this.offset.click.topd[3]?h-this.offset.click.topd[2]?f-this.offset.click.lefta.browser.version&&"fixed"==this.cssPosition?0:"fixed"==this.cssPosition?-this.scrollParent.scrollTop():g?0:e.scrollTop()),left:f-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+(a.browser.safari&&526>a.browser.version&&"fixed"==this.cssPosition?0:"fixed"==this.cssPosition?-this.scrollParent.scrollLeft():g?0:e.scrollLeft())}},_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(c,b,e){e=e||this._uiHash();a.ui.plugin.call(this,c,[b,e]);"drag"==c&&(this.positionAbs=this._convertPositionTo("absolute"));return a.Widget.prototype._trigger.call(this,c,b,e)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}});a.extend(a.ui.draggable,{version:"1.8.16"}); -a.ui.plugin.add("draggable","connectToSortable",{start:function(c,b){var e=a(this).data("draggable"),g=e.options,f=a.extend({},b,{item:e.element});e.sortables=[];a(g.connectToSortable).each(function(){var b=a.data(this,"sortable");b&&!b.options.disabled&&(e.sortables.push({instance:b,shouldRevert:b.options.revert}),b.refreshPositions(),b._trigger("activate",c,f))})},stop:function(c,b){var e=a(this).data("draggable"),g=a.extend({},b,{item:e.element});a.each(e.sortables,function(){this.instance.isOver? -(this.instance.isOver=0,e.cancelHelperRemoval=!0,this.instance.cancelHelperRemoval=!1,this.shouldRevert&&(this.instance.options.revert=!0),this.instance._mouseStop(c),this.instance.options.helper=this.instance.options._helper,"original"==e.options.helper&&this.instance.currentItem.css({top:"auto",left:"auto"})):(this.instance.cancelHelperRemoval=!1,this.instance._trigger("deactivate",c,g))})},drag:function(c,b){var e=a(this).data("draggable"),g=this;a.each(e.sortables,function(){this.instance.positionAbs= -e.positionAbs;this.instance.helperProportions=e.helperProportions;this.instance.offset.click=e.offset.click;this.instance._intersectsWith(this.instance.containerCache)?(this.instance.isOver||(this.instance.isOver=1,this.instance.currentItem=a(g).clone().removeAttr("id").appendTo(this.instance.element).data("sortable-item",!0),this.instance.options._helper=this.instance.options.helper,this.instance.options.helper=function(){return b.helper[0]},c.target=this.instance.currentItem[0],this.instance._mouseCapture(c, -!0),this.instance._mouseStart(c,!0,!0),this.instance.offset.click.top=e.offset.click.top,this.instance.offset.click.left=e.offset.click.left,this.instance.offset.parent.left-=e.offset.parent.left-this.instance.offset.parent.left,this.instance.offset.parent.top-=e.offset.parent.top-this.instance.offset.parent.top,e._trigger("toSortable",c),e.dropped=this.instance.element,e.currentItem=e.element,this.instance.fromOutside=e),this.instance.currentItem&&this.instance._mouseDrag(c)):this.instance.isOver&& -(this.instance.isOver=0,this.instance.cancelHelperRemoval=!0,this.instance.options.revert=!1,this.instance._trigger("out",c,this.instance._uiHash(this.instance)),this.instance._mouseStop(c,!0),this.instance.options.helper=this.instance.options._helper,this.instance.currentItem.remove(),this.instance.placeholder&&this.instance.placeholder.remove(),e._trigger("fromSortable",c),e.dropped=!1)})}});a.ui.plugin.add("draggable","cursor",{start:function(){var c=a("body"),b=a(this).data("draggable").options; -c.css("cursor")&&(b._cursor=c.css("cursor"));c.css("cursor",b.cursor)},stop:function(){var c=a(this).data("draggable").options;c._cursor&&a("body").css("cursor",c._cursor)}});a.ui.plugin.add("draggable","opacity",{start:function(c,b){c=a(b.helper);b=a(this).data("draggable").options;c.css("opacity")&&(b._opacity=c.css("opacity"));c.css("opacity",b.opacity)},stop:function(c,b){c=a(this).data("draggable").options;c._opacity&&a(b.helper).css("opacity",c._opacity)}});a.ui.plugin.add("draggable","scroll", -{start:function(){var c=a(this).data("draggable");c.scrollParent[0]!=document&&"HTML"!=c.scrollParent[0].tagName&&(c.overflowOffset=c.scrollParent.offset())},drag:function(c){var b=a(this).data("draggable"),e=b.options,g=!1;b.scrollParent[0]!=document&&"HTML"!=b.scrollParent[0].tagName?(e.axis&&"x"==e.axis||(b.overflowOffset.top+b.scrollParent[0].offsetHeight-c.pageY=q&&h<=r||d>=q&&d<=r||hr)&&(g>=l&&g<=m||f>=l&&f<=m||gm);default:return!1}}; -a.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(c,b){var e=a.ui.ddmanager.droppables[c.options.scope]||[],g=b?b.type:null,f=(c.currentItem||c.element).find(":data(droppable)").andSelf(),h=0;a:for(;h').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("resizable",this.element.data("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=b.handles||(a(".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");if(this.handles.constructor==String){"all"== -this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw");var f=this.handles.split(",");this.handles={};for(var h=0;h');/sw|se|ne|nw/.test(d)&&l.css({zIndex:++b.zIndex});"se"==d&&l.addClass("ui-icon ui-icon-gripsmall-diagonal-se");this.handles[d]=".ui-resizable-"+d;this.element.append(l)}}this._renderAxis=function(d){d=d||this.element;for(var c in this.handles){this.handles[c].constructor==String&&(this.handles[c]= -a(this.handles[c],this.element).show());if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var b=a(this.handles[c],this.element),e=0,e=/sw|ne|nw|se|n|s/.test(c)?b.outerHeight():b.outerWidth(),b=["padding",/ne|nw|n/.test(c)?"Top":/se|sw|s/.test(c)?"Bottom":/^e$/.test(c)?"Right":"Left"].join("");d.css(b,e);this._proportionallyResize()}a(this.handles[c])}};this._renderAxis(this.element);this._handles=a(".ui-resizable-handle",this.element).disableSelection(); -this._handles.mouseover(function(){if(!c.resizing){if(this.className)var a=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);c.axis=a&&a[1]?a[1]:"se"}});b.autoHide&&(this._handles.hide(),a(this.element).addClass("ui-resizable-autohide").hover(function(){b.disabled||(a(this).removeClass("ui-resizable-autohide"),c._handles.show())},function(){b.disabled||c.resizing||(a(this).addClass("ui-resizable-autohide"),c._handles.hide())}));this._mouseInit()},destroy:function(){this._mouseDestroy(); -var c=function(c){a(c).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){c(this.element);var b=this.element;b.after(this.originalElement.css({position:b.css("position"),width:b.outerWidth(),height:b.outerHeight(),top:b.css("top"),left:b.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);c(this.originalElement);return this},_mouseCapture:function(c){var b= -!1,f;for(f in this.handles)a(this.handles[f])[0]==c.target&&(b=!0);return!this.options.disabled&&b},_mouseStart:function(b){var g=this.options,f=this.element.position(),h=this.element;this.resizing=!0;this.documentScroll={top:a(document).scrollTop(),left:a(document).scrollLeft()};(h.is(".ui-draggable")||/absolute/.test(h.css("position")))&&h.css({position:"absolute",top:f.top,left:f.left});a.browser.opera&&/relative/.test(h.css("position"))&&h.css({position:"relative",top:"auto",left:"auto"});this._renderProxy(); -var f=c(this.helper.css("left")),d=c(this.helper.css("top"));g.containment&&(f+=a(g.containment).scrollLeft()||0,d+=a(g.containment).scrollTop()||0);this.offset=this.helper.offset();this.position={left:f,top:d};this.size=this._helper?{width:h.outerWidth(),height:h.outerHeight()}:{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:f,top:d};this.sizeDiff={width:h.outerWidth()- -h.width(),height:h.outerHeight()-h.height()};this.originalMousePosition={left:b.pageX,top:b.pageY};this.aspectRatio="number"==typeof g.aspectRatio?g.aspectRatio:this.originalSize.width/this.originalSize.height||1;g=a(".ui-resizable-"+this.axis).css("cursor");a("body").css("cursor","auto"==g?this.axis+"-resize":g);h.addClass("ui-resizable-resizing");this._propagate("start",b);return!0},_mouseDrag:function(a){var c=this.helper,b=this.originalMousePosition,h=this._change[this.axis];if(!h)return!1;b= -h.apply(this,[a,a.pageX-b.left||0,a.pageY-b.top||0]);this._updateVirtualBoundaries(a.shiftKey);if(this._aspectRatio||a.shiftKey)b=this._updateRatio(b,a);b=this._respectSize(b,a);this._propagate("resize",a);c.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize();this._updateCache(b);this._trigger("resize",a,this.ui());return!1},_mouseStop:function(c){this.resizing= -!1;var b=this.options;if(this._helper){var f=this._proportionallyResizeElements,h=f.length&&/textarea/i.test(f[0].nodeName),f=h&&a.ui.hasScroll(f[0],"left")?0:this.sizeDiff.height,h=h?0:this.sizeDiff.width,h={width:this.helper.width()-h,height:this.helper.height()-f},f=parseInt(this.element.css("left"),10)+(this.position.left-this.originalPosition.left)||null,d=parseInt(this.element.css("top"),10)+(this.position.top-this.originalPosition.top)||null;b.animate||this.element.css(a.extend(h,{top:d,left:f})); -this.helper.height(this.size.height);this.helper.width(this.size.width);this._helper&&!b.animate&&this._proportionallyResize()}a("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",c);this._helper&&this.helper.remove();return!1},_updateVirtualBoundaries:function(a){var c=this.options,f,h,d,c={minWidth:b(c.minWidth)?c.minWidth:0,maxWidth:b(c.maxWidth)?c.maxWidth:Infinity,minHeight:b(c.minHeight)?c.minHeight:0,maxHeight:b(c.maxHeight)?c.maxHeight:Infinity}; -if(this._aspectRatio||a)a=c.minHeight*this.aspectRatio,h=c.minWidth/this.aspectRatio,f=c.maxHeight*this.aspectRatio,d=c.maxWidth/this.aspectRatio,a>c.minWidth&&(c.minWidth=a),h>c.minHeight&&(c.minHeight=h),fa.width,m=b(a.height)&&c.minHeight&&c.minHeight> -a.height;l&&(a.width=c.minWidth);m&&(a.height=c.minHeight);h&&(a.width=c.maxWidth);d&&(a.height=c.maxHeight);var q=this.originalPosition.left+this.originalSize.width,r=this.position.top+this.size.height,n=/sw|nw|w/.test(f),f=/nw|ne|n/.test(f);l&&n&&(a.left=q-c.minWidth);h&&n&&(a.left=q-c.maxWidth);m&&f&&(a.top=r-c.minHeight);d&&f&&(a.top=r-c.maxHeight);(c=!a.width&&!a.height)&&!a.left&&a.top?a.top=null:c&&!a.top&&a.left&&(a.left=null);return a},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var c= -this.helper||this.element,b=0;b');var b=a.browser.msie&&7>a.browser.version,f=b?1:0,b=b?2:-1;this.helper.addClass(this._helper).css({width:this.element.outerWidth()+b,height:this.element.outerHeight()+b,position:"absolute",left:this.elementOffset.left- -f+"px",top:this.elementOffset.top-f+"px",zIndex:++c.zIndex});this.helper.appendTo("body").disableSelection()}else this.helper=this.element},_change:{e:function(a,c){return{width:this.originalSize.width+c}},w:function(a,c){return{left:this.originalPosition.left+c,width:this.originalSize.width-c}},n:function(a,c,b){return{top:this.originalPosition.top+b,height:this.originalSize.height-b}},s:function(a,c,b){return{height:this.originalSize.height+b}},se:function(c,b,f){return a.extend(this._change.s.apply(this, -arguments),this._change.e.apply(this,[c,b,f]))},sw:function(c,b,f){return a.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[c,b,f]))},ne:function(c,b,f){return a.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[c,b,f]))},nw:function(c,b,f){return a.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[c,b,f]))}},_propagate:function(c,b){a.ui.plugin.call(this,c,[b,this.ui()]);"resize"!=c&&this._trigger(c,b,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}}});a.extend(a.ui.resizable,{version:"1.8.16"});a.ui.plugin.add("resizable","alsoResize",{start:function(){var c=a(this).data("resizable").options,b=function(c){a(c).each(function(){var c=a(this);c.data("resizable-alsoresize",{width:parseInt(c.width(),10),height:parseInt(c.height(),10),left:parseInt(c.css("left"),10),top:parseInt(c.css("top"),10),position:c.css("position")})})}; -"object"!=typeof c.alsoResize||c.alsoResize.parentNode?b(c.alsoResize):c.alsoResize.length?(c.alsoResize=c.alsoResize[0],b(c.alsoResize)):a.each(c.alsoResize,function(a){b(a)})},resize:function(c,b){var f=a(this).data("resizable");c=f.options;var h=f.originalSize,d=f.originalPosition,l={height:f.size.height-h.height||0,width:f.size.width-h.width||0,top:f.position.top-d.top||0,left:f.position.left-d.left||0},m=function(d,c){a(d).each(function(){var d=a(this),e=a(this).data("resizable-alsoresize"), -h={},m=c&&c.length?c:d.parents(b.originalElement[0]).length?["width","height"]:["width","height","top","left"];a.each(m,function(a,d){(a=(e[d]||0)+(l[d]||0))&&0<=a&&(h[d]=a||null)});a.browser.opera&&/relative/.test(d.css("position"))&&(f._revertToRelativePosition=!0,d.css({position:"absolute",top:"auto",left:"auto"}));d.css(h)})};"object"!=typeof c.alsoResize||c.alsoResize.nodeType?m(c.alsoResize):a.each(c.alsoResize,function(a,d){m(a,d)})},stop:function(){var c=a(this).data("resizable"),b=c.options, -f=function(c){a(c).each(function(){var d=a(this);d.css({position:d.data("resizable-alsoresize").position})})};c._revertToRelativePosition&&(c._revertToRelativePosition=!1,"object"!=typeof b.alsoResize||b.alsoResize.nodeType?f(b.alsoResize):a.each(b.alsoResize,function(a){f(a)}));a(this).removeData("resizable-alsoresize")}});a.ui.plugin.add("resizable","animate",{stop:function(c){var b=a(this).data("resizable"),f=b.options,h=b._proportionallyResizeElements,d=h.length&&/textarea/i.test(h[0].nodeName), -l=d&&a.ui.hasScroll(h[0],"left")?0:b.sizeDiff.height,d={width:b.size.width-(d?0:b.sizeDiff.width),height:b.size.height-l},l=parseInt(b.element.css("left"),10)+(b.position.left-b.originalPosition.left)||null,m=parseInt(b.element.css("top"),10)+(b.position.top-b.originalPosition.top)||null;b.element.animate(a.extend(d,m&&l?{top:m,left:l}:{}),{duration:f.animateDuration,easing:f.animateEasing,step:function(){var d={width:parseInt(b.element.css("width"),10),height:parseInt(b.element.css("height"),10), -top:parseInt(b.element.css("top"),10),left:parseInt(b.element.css("left"),10)};h&&h.length&&a(h[0]).css({width:d.width,height:d.height});b._updateCache(d);b._propagate("resize",c)}})}});a.ui.plugin.add("resizable","containment",{start:function(){var b=a(this).data("resizable"),g=b.element,f=b.options.containment;if(g=f instanceof a?f.get(0):/parent/.test(f)?g.parent().get(0):f)if(b.containerElement=a(g),/document/.test(f)||f==document)b.containerOffset={left:0,top:0},b.containerPosition={left:0,top:0}, -b.parentData={element:a(document),left:0,top:0,width:a(document).width(),height:a(document).height()||document.body.parentNode.scrollHeight};else{var h=a(g),d=[];a(["Top","Right","Left","Bottom"]).each(function(a,b){d[a]=c(h.css("padding"+b))});b.containerOffset=h.offset();b.containerPosition=h.position();b.containerSize={height:h.innerHeight()-d[3],width:h.innerWidth()-d[1]};var f=b.containerOffset,l=b.containerSize.height,m=b.containerSize.width,m=a.ui.hasScroll(g,"left")?g.scrollWidth:m,l=a.ui.hasScroll(g)? -g.scrollHeight:l;b.parentData={element:g,left:f.left,top:f.top,width:m,height:l}}},resize:function(c){var b=a(this).data("resizable"),f=b.options,h=b.containerOffset,d=b.position;c=b._aspectRatio||c.shiftKey;var l={top:0,left:0},m=b.containerElement;m[0]!=document&&/static/.test(m.css("position"))&&(l=h);d.left<(b._helper?h.left:0)&&(b.size.width+=b._helper?b.position.left-h.left:b.position.left-l.left,c&&(b.size.height=b.size.width/f.aspectRatio),b.position.left=f.helper?h.left:0);d.top<(b._helper? -h.top:0)&&(b.size.height+=b._helper?b.position.top-h.top:b.position.top,c&&(b.size.width=b.size.height*f.aspectRatio),b.position.top=b._helper?h.top:0);b.offset.left=b.parentData.left+b.position.left;b.offset.top=b.parentData.top+b.position.top;f=Math.abs(b.offset.left-l.left+b.sizeDiff.width);h=Math.abs((b._helper?b.offset.top-l.top:b.offset.top-h.top)+b.sizeDiff.height);d=b.containerElement.get(0)==b.element.parent().get(0);l=/relative|absolute/.test(b.containerElement.css("position"));d&&l&&(f-= -b.parentData.left);f+b.size.width>=b.parentData.width&&(b.size.width=b.parentData.width-f,c&&(b.size.height=b.size.width/b.aspectRatio));h+b.size.height>=b.parentData.height&&(b.size.height=b.parentData.height-h,c&&(b.size.width=b.size.height*b.aspectRatio))},stop:function(){var c=a(this).data("resizable"),b=c.options,f=c.containerOffset,h=c.containerPosition,d=c.containerElement,l=a(c.helper),m=l.offset(),q=l.outerWidth()-c.sizeDiff.width,l=l.outerHeight()-c.sizeDiff.height;c._helper&&!b.animate&& -/relative/.test(d.css("position"))&&a(this).css({left:m.left-h.left-f.left,width:q,height:l});c._helper&&!b.animate&&/static/.test(d.css("position"))&&a(this).css({left:m.left-h.left-f.left,width:q,height:l})}});a.ui.plugin.add("resizable","ghost",{start:function(){var c=a(this).data("resizable"),b=c.options,f=c.size;c.ghost=c.originalElement.clone();c.ghost.css({opacity:0.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass("string"== -typeof b.ghost?b.ghost:"");c.ghost.appendTo(c.helper)},resize:function(){var c=a(this).data("resizable");c.ghost&&c.ghost.css({position:"relative",height:c.size.height,width:c.size.width})},stop:function(){var c=a(this).data("resizable");c.ghost&&c.helper&&c.helper.get(0).removeChild(c.ghost.get(0))}});a.ui.plugin.add("resizable","grid",{resize:function(){var c=a(this).data("resizable"),b=c.options,f=c.size,h=c.originalSize,d=c.originalPosition,l=c.axis;b.grid="number"==typeof b.grid?[b.grid,b.grid]: -b.grid;var m=Math.round((f.width-h.width)/(b.grid[0]||1))*(b.grid[0]||1),b=Math.round((f.height-h.height)/(b.grid[1]||1))*(b.grid[1]||1);/^(se|s|e)$/.test(l)?(c.size.width=h.width+m,c.size.height=h.height+b):/^(ne)$/.test(l)?(c.size.width=h.width+m,c.size.height=h.height+b,c.position.top=d.top-b):(/^(sw)$/.test(l)?(c.size.width=h.width+m,c.size.height=h.height+b):(c.size.width=h.width+m,c.size.height=h.height+b,c.position.top=d.top-b),c.position.left=d.left-m)}});var c=function(a){return parseInt(a, -10)||0},b=function(a){return!isNaN(parseInt(a,10))}})(jQuery); -(function(a){a.widget("ui.selectable",a.ui.mouse,{options:{appendTo:"body",autoRefresh:!0,distance:0,filter:"*",tolerance:"touch"},_create:function(){var c=this;this.element.addClass("ui-selectable");this.dragged=!1;var b;this.refresh=function(){b=a(c.options.filter,c.element[0]);b.each(function(){var c=a(this),b=c.offset();a.data(this,"selectable-item",{element:this,$element:c,left:b.left,top:b.top,right:b.left+c.outerWidth(),bottom:b.top+c.outerHeight(),startselected:!1,selected:c.hasClass("ui-selected"), -selecting:c.hasClass("ui-selecting"),unselecting:c.hasClass("ui-unselecting")})})};this.refresh();this.selectees=b.addClass("ui-selectee");this._mouseInit();this.helper=a("
    ")},destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item");this.element.removeClass("ui-selectable ui-selectable-disabled").removeData("selectable").unbind(".selectable");this._mouseDestroy();return this},_mouseStart:function(c){var b=this;this.opos=[c.pageX, -c.pageY];if(!this.options.disabled){var e=this.options;this.selectees=a(e.filter,this.element[0]);this._trigger("start",c);a(e.appendTo).append(this.helper);this.helper.css({left:c.clientX,top:c.clientY,width:0,height:0});e.autoRefresh&&this.refresh();this.selectees.filter(".ui-selected").each(function(){var e=a.data(this,"selectable-item");e.startselected=!0;c.metaKey||(e.$element.removeClass("ui-selected"),e.selected=!1,e.$element.addClass("ui-unselecting"),e.unselecting=!0,b._trigger("unselecting", -c,{unselecting:e.element}))});a(c.target).parents().andSelf().each(function(){var e=a.data(this,"selectable-item");if(e){var f=!c.metaKey||!e.$element.hasClass("ui-selected");e.$element.removeClass(f?"ui-unselecting":"ui-selected").addClass(f?"ui-selecting":"ui-unselecting");e.unselecting=!f;e.selecting=f;(e.selected=f)?b._trigger("selecting",c,{selecting:e.element}):b._trigger("unselecting",c,{unselecting:e.element});return!1}})}},_mouseDrag:function(c){var b=this;this.dragged=!0;if(!this.options.disabled){var e= -this.options,g=this.opos[0],f=this.opos[1],h=c.pageX,d=c.pageY;if(g>h)var l=h,h=g,g=l;f>d&&(l=d,d=f,f=l);this.helper.css({left:g,top:f,width:h-g,height:d-f});this.selectees.each(function(){var l=a.data(this,"selectable-item");if(l&&l.element!=b.element[0]){var q=!1;"touch"==e.tolerance?q=!(l.left>h||l.rightd||l.bottomg&&l.rightf&&l.bottom *",opacity:!1,placeholder:!1,revert:!1,scroll:!0,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1E3},_create:function(){var a=this.options;this.containerCache={};this.element.addClass("ui-sortable");this.refresh(); -this.floating=this.items.length?"x"===a.axis||/left|right/.test(this.items[0].item.css("float"))||/inline|table-cell/.test(this.items[0].item.css("display")):!1;this.offset=this.element.offset();this._mouseInit()},destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").removeData("sortable").unbind(".sortable");this._mouseDestroy();for(var a=this.items.length-1;0<=a;a--)this.items[a].item.removeData("sortable-item");return this},_setOption:function(c,b){"disabled"===c?(this.options[c]= -b,this.widget()[b?"addClass":"removeClass"]("ui-sortable-disabled")):a.Widget.prototype._setOption.apply(this,arguments)},_mouseCapture:function(c,b){if(this.reverting||this.options.disabled||"static"==this.options.type)return!1;this._refreshItems(c);var e=null,g=this;a(c.target).parents().each(function(){if(a.data(this,"sortable-item")==g)return e=a(this),!1});a.data(c.target,"sortable-item")==g&&(e=a(c.target));if(!e)return!1;if(this.options.handle&&!b){var f=!1;a(this.options.handle,e).find("*").andSelf().each(function(){this== -c.target&&(f=!0)});if(!f)return!1}this.currentItem=e;this._removeCurrentsFromItems();return!0},_mouseStart:function(c,b,e){b=this.options;this.currentContainer=this;this.refreshPositions();this.helper=this._createHelper(c);this._cacheHelperProportions();this._cacheMargins();this.scrollParent=this.helper.scrollParent();this.offset=this.currentItem.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};this.helper.css("position","absolute");this.cssPosition= -this.helper.css("position");a.extend(this.offset,{click:{left:c.pageX-this.offset.left,top:c.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()});this.originalPosition=this._generatePosition(c);this.originalPageX=c.pageX;this.originalPageY=c.pageY;b.cursorAt&&this._adjustOffsetFromHelper(b.cursorAt);this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]};this.helper[0]!=this.currentItem[0]&&this.currentItem.hide();this._createPlaceholder(); -b.containment&&this._setContainment();b.cursor&&(a("body").css("cursor")&&(this._storedCursor=a("body").css("cursor")),a("body").css("cursor",b.cursor));b.opacity&&(this.helper.css("opacity")&&(this._storedOpacity=this.helper.css("opacity")),this.helper.css("opacity",b.opacity));b.zIndex&&(this.helper.css("zIndex")&&(this._storedZIndex=this.helper.css("zIndex")),this.helper.css("zIndex",b.zIndex));this.scrollParent[0]!=document&&"HTML"!=this.scrollParent[0].tagName&&(this.overflowOffset=this.scrollParent.offset()); -this._trigger("start",c,this._uiHash());this._preserveHelperProportions||this._cacheHelperProportions();if(!e)for(e=this.containers.length-1;0<=e;e--)this.containers[e]._trigger("activate",c,this._uiHash(this));a.ui.ddmanager&&(a.ui.ddmanager.current=this);a.ui.ddmanager&&!b.dropBehaviour&&a.ui.ddmanager.prepareOffsets(this,c);this.dragging=!0;this.helper.addClass("ui-sortable-helper");this._mouseDrag(c);return!0},_mouseDrag:function(c){this.position=this._generatePosition(c);this.positionAbs=this._convertPositionTo("absolute"); -this.lastPositionAbs||(this.lastPositionAbs=this.positionAbs);if(this.options.scroll){var b=this.options,e=!1;this.scrollParent[0]!=document&&"HTML"!=this.scrollParent[0].tagName?(this.overflowOffset.top+this.scrollParent[0].offsetHeight-c.pageYa[this.floating?"width":"height"]?g+q>l&&g+qh&&b+rthis.containment[2]&&(f=this.containment[2]+this.offset.click.left),c.pageY-this.offset.click.top>this.containment[3]&&(h=this.containment[3]+this.offset.click.top)),b.grid&&(h=this.originalPageY+Math.round((h-this.originalPageY)/b.grid[1])*b.grid[1],h=this.containment?h-this.offset.click.topthis.containment[3]?h-this.offset.click.top< -this.containment[1]?h+b.grid[1]:h-b.grid[1]:h:h,f=this.originalPageX+Math.round((f-this.originalPageX)/b.grid[0])*b.grid[0],f=this.containment?f-this.offset.click.leftthis.containment[2]?f-this.offset.click.left").appendTo(this.element).addClass("ui-slider-range ui-widget-header"+("min"===b.range||"max"===b.range?" ui-slider-range-"+b.range:"")));for(var h=e.length;h"); -this.handles=e.add(a(f.join("")).appendTo(c.element));this.handle=this.handles.eq(0);this.handles.add(this.range).filter("a").click(function(a){a.preventDefault()}).hover(function(){b.disabled||a(this).addClass("ui-state-hover")},function(){a(this).removeClass("ui-state-hover")}).focus(function(){b.disabled?a(this).blur():(a(".ui-slider .ui-state-focus").removeClass("ui-state-focus"),a(this).addClass("ui-state-focus"))}).blur(function(){a(this).removeClass("ui-state-focus")});this.handles.each(function(d){a(this).data("index.ui-slider-handle", -d)});this.handles.keydown(function(d){var b=!0,e=a(this).data("index.ui-slider-handle"),f,g,h;if(!c.options.disabled){switch(d.keyCode){case a.ui.keyCode.HOME:case a.ui.keyCode.END:case a.ui.keyCode.PAGE_UP:case a.ui.keyCode.PAGE_DOWN:case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:if(b=!1,!c._keySliding&&(c._keySliding=!0,a(this).addClass("ui-state-active"),f=c._start(d,e),!1===f))return}h=c.options.step;f=c.options.values&&c.options.values.length?g=c.values(e): -g=c.value();switch(d.keyCode){case a.ui.keyCode.HOME:g=c._valueMin();break;case a.ui.keyCode.END:g=c._valueMax();break;case a.ui.keyCode.PAGE_UP:g=c._trimAlignValue(f+(c._valueMax()-c._valueMin())/5);break;case a.ui.keyCode.PAGE_DOWN:g=c._trimAlignValue(f-(c._valueMax()-c._valueMin())/5);break;case a.ui.keyCode.UP:case a.ui.keyCode.RIGHT:if(f===c._valueMax())return;g=c._trimAlignValue(f+h);break;case a.ui.keyCode.DOWN:case a.ui.keyCode.LEFT:if(f===c._valueMin())return;g=c._trimAlignValue(f-h)}c._slide(d, -e,g);return b}}).keyup(function(d){var b=a(this).data("index.ui-slider-handle");c._keySliding&&(c._keySliding=!1,c._stop(d,b),c._change(d,b),a(this).removeClass("ui-state-active"))});this._refreshValue();this._animateOff=!1},destroy:function(){this.handles.remove();this.range.remove();this.element.removeClass("ui-slider ui-slider-horizontal ui-slider-vertical ui-slider-disabled ui-widget ui-widget-content ui-corner-all").removeData("slider").unbind(".slider");this._mouseDestroy();return this},_mouseCapture:function(c){var b= -this.options,e,g,f,h,d;if(b.disabled)return!1;this.elementSize={width:this.element.outerWidth(),height:this.element.outerHeight()};this.elementOffset=this.element.offset();e=this._normValueFromMouse({x:c.pageX,y:c.pageY});g=this._valueMax()-this._valueMin()+1;h=this;this.handles.each(function(c){var b=Math.abs(e-h.values(c));g>b&&(g=b,f=a(this),d=c)});!0===b.range&&this.values(1)===b.min&&(d+=1,f=a(this.handles[d]));if(!1===this._start(c,d))return!1;this._mouseSliding=!0;h._handleIndex=d;f.addClass("ui-state-active").focus(); -b=f.offset();this._clickOffset=a(c.target).parents().andSelf().is(".ui-slider-handle")?{left:c.pageX-b.left-f.width()/2,top:c.pageY-b.top-f.height()/2-(parseInt(f.css("borderTopWidth"),10)||0)-(parseInt(f.css("borderBottomWidth"),10)||0)+(parseInt(f.css("marginTop"),10)||0)}:{left:0,top:0};this.handles.hasClass("ui-state-hover")||this._slide(c,d,e);return this._animateOff=!0},_mouseStart:function(){return!0},_mouseDrag:function(a){var b=this._normValueFromMouse({x:a.pageX,y:a.pageY});this._slide(a, -this._handleIndex,b);return!1},_mouseStop:function(a){this.handles.removeClass("ui-state-active");this._mouseSliding=!1;this._stop(a,this._handleIndex);this._change(a,this._handleIndex);this._clickOffset=this._handleIndex=null;return this._animateOff=!1},_detectOrientation:function(){this.orientation="vertical"===this.options.orientation?"vertical":"horizontal"},_normValueFromMouse:function(a){var b;"horizontal"===this.orientation?(b=this.elementSize.width,a=a.x-this.elementOffset.left-(this._clickOffset? -this._clickOffset.left:0)):(b=this.elementSize.height,a=a.y-this.elementOffset.top-(this._clickOffset?this._clickOffset.top:0));b=a/b;1b&&(b=0);"vertical"===this.orientation&&(b=1-b);a=this._valueMax()-this._valueMin();return this._trimAlignValue(this._valueMin()+b*a)},_start:function(a,b){var e={handle:this.handles[b],value:this.value()};this.options.values&&this.options.values.length&&(e.value=this.values(b),e.values=this.values());return this._trigger("start",a,e)},_slide:function(a, -b,e){var g;this.options.values&&this.options.values.length?(g=this.values(b?0:1),2===this.options.values.length&&!0===this.options.range&&(0===b&&e>g||1===b&&e=this._valueMax())return this._valueMax();var b=0=b&&(a+=0'))}function e(d){return d.bind("mouseout",function(d){d=a(d.target).closest("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a"); -d.length&&d.removeClass("ui-state-hover ui-datepicker-prev-hover ui-datepicker-next-hover")}).bind("mouseover",function(b){b=a(b.target).closest("button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a");!a.datepicker._isDisabledDatepicker(h.inline?d.parent()[0]:h.input[0])&&b.length&&(b.parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),b.addClass("ui-state-hover"),b.hasClass("ui-datepicker-prev")&&b.addClass("ui-datepicker-prev-hover"),b.hasClass("ui-datepicker-next")&& -b.addClass("ui-datepicker-next-hover"))})}function g(d,b){a.extend(d,b);for(var e in b)if(null==b[e]||b[e]==c)d[e]=b[e];return d}a.extend(a.ui,{datepicker:{version:"1.8.16"}});var f=(new Date).getTime(),h;a.extend(b.prototype,{markerClassName:"hasDatepicker",maxRows:4,log:function(){this.debug&&console.log.apply("",arguments)},_widgetDatepicker:function(){return this.dpDiv},setDefaults:function(a){g(this._defaults,a||{});return this},_attachDatepicker:function(d,b){var c=null,e;for(e in this._defaults){var f= -d.getAttribute("date:"+e);if(f){c=c||{};try{c[e]=eval(f)}catch(g){c[e]=f}}}e=d.nodeName.toLowerCase();f="div"==e||"span"==e;d.id||(this.uuid+=1,d.id="dp"+this.uuid);var h=this._newInst(a(d),f);h.settings=a.extend({},b||{},c||{});"input"==e?this._connectDatepicker(d,h):f&&this._inlineDatepicker(d,h)},_newInst:function(d,b){return{id:d[0].id.replace(/([^A-Za-z0-9_-])/g,"\\\\$1"),input:d,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:b,dpDiv:b?e(a('
    ')):this.dpDiv}},_connectDatepicker:function(d,b){var c=a(d);b.append=a([]);b.trigger=a([]);c.hasClass(this.markerClassName)||(this._attachments(c,b),c.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).keyup(this._doKeyUp).bind("setData.datepicker",function(a,d,c){b.settings[d]=c}).bind("getData.datepicker",function(a,d){return this._get(b,d)}),this._autoSize(b),a.data(d,"datepicker", -b),b.settings.disabled&&this._disableDatepicker(d))},_attachments:function(d,b){var c=this._get(b,"appendText"),e=this._get(b,"isRTL");b.append&&b.append.remove();c&&(b.append=a(''+c+""),d[e?"before":"after"](b.append));d.unbind("focus",this._showDatepicker);b.trigger&&b.trigger.remove();c=this._get(b,"showOn");"focus"!=c&&"both"!=c||d.focus(this._showDatepicker);if("button"==c||"both"==c){var c=this._get(b,"buttonText"),f=this._get(b,"buttonImage");b.trigger= -a(this._get(b,"buttonImageOnly")?a("").addClass(this._triggerClass).attr({src:f,alt:c,title:c}):a('').addClass(this._triggerClass).html(""==f?c:a("").attr({src:f,alt:c,title:c})));d[e?"before":"after"](b.trigger);b.trigger.click(function(){a.datepicker._datepickerShowing&&a.datepicker._lastInput==d[0]?a.datepicker._hideDatepicker():a.datepicker._showDatepicker(d[0]);return!1})}},_autoSize:function(a){if(this._get(a,"autoSize")&&!a.inline){var b=new Date(2009, -11,20),c=this._get(a,"dateFormat");if(c.match(/[DM]/)){var e=function(a){for(var d=0,b=0,c=0;cd&&(d=a[c].length,b=c);return b};b.setMonth(e(this._get(a,c.match(/MM/)?"monthNames":"monthNamesShort")));b.setDate(e(this._get(a,c.match(/DD/)?"dayNames":"dayNamesShort"))+20-b.getDay())}a.input.attr("size",this._formatDate(a,b).length)}},_inlineDatepicker:function(d,b){var c=a(d);c.hasClass(this.markerClassName)||(c.addClass(this.markerClassName).append(b.dpDiv).bind("setData.datepicker", -function(a,d,c){b.settings[d]=c}).bind("getData.datepicker",function(a,d){return this._get(b,d)}),a.data(d,"datepicker",b),this._setDate(b,this._getDefaultDate(b),!0),this._updateDatepicker(b),this._updateAlternate(b),b.settings.disabled&&this._disableDatepicker(d),b.dpDiv.css("display","block"))},_dialogDatepicker:function(d,b,c,e,f){d=this._dialogInst;d||(this.uuid+=1,this._dialogInput=a(''), -this._dialogInput.keydown(this._doKeyDown),a("body").append(this._dialogInput),d=this._dialogInst=this._newInst(this._dialogInput,!1),d.settings={},a.data(this._dialogInput[0],"datepicker",d));g(d.settings,e||{});b=b&&b.constructor==Date?this._formatDate(d,b):b;this._dialogInput.val(b);this._pos=f?f.length?f:[f.pageX,f.pageY]:null;this._pos||(this._pos=[document.documentElement.clientWidth/2-100+(document.documentElement.scrollLeft||document.body.scrollLeft),document.documentElement.clientHeight/ -2-150+(document.documentElement.scrollTop||document.body.scrollTop)]);this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px");d.settings.onSelect=c;this._inDialog=!0;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);a.blockUI&&a.blockUI(this.dpDiv);a.data(this._dialogInput[0],"datepicker",d);return this},_destroyDatepicker:function(d){var b=a(d),c=a.data(d,"datepicker");if(b.hasClass(this.markerClassName)){var e=d.nodeName.toLowerCase();a.removeData(d, -"datepicker");"input"==e?(c.append.remove(),c.trigger.remove(),b.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):"div"!=e&&"span"!=e||b.removeClass(this.markerClassName).empty()}},_enableDatepicker:function(d){var b=a(d),c=a.data(d,"datepicker");if(b.hasClass(this.markerClassName)){var e=d.nodeName.toLowerCase();if("input"==e)d.disabled=!1,c.trigger.filter("button").each(function(){this.disabled= -!1}).end().filter("img").css({opacity:"1.0",cursor:""});else if("div"==e||"span"==e)b=b.children("."+this._inlineClass),b.children().removeClass("ui-state-disabled"),b.find("select.ui-datepicker-month, select.ui-datepicker-year").removeAttr("disabled");this._disabledInputs=a.map(this._disabledInputs,function(a){return a==d?null:a})}},_disableDatepicker:function(d){var b=a(d),c=a.data(d,"datepicker");if(b.hasClass(this.markerClassName)){var e=d.nodeName.toLowerCase();if("input"==e)d.disabled=!0,c.trigger.filter("button").each(function(){this.disabled= -!0}).end().filter("img").css({opacity:"0.5",cursor:"default"});else if("div"==e||"span"==e)b=b.children("."+this._inlineClass),b.children().addClass("ui-state-disabled"),b.find("select.ui-datepicker-month, select.ui-datepicker-year").attr("disabled","disabled");this._disabledInputs=a.map(this._disabledInputs,function(a){return a==d?null:a});this._disabledInputs[this._disabledInputs.length]=d}},_isDisabledDatepicker:function(a){if(!a)return!1;for(var b=0;be||!b||-1p&&p>e?Math.abs(b.left+e-p):0);b.top-=Math.min(b.top,b.top+f>x&&x>f?Math.abs(f+h):0);return b},_findPos:function(d){for(var b=this._get(this._getInst(d),"isRTL");d&&("hidden"==d.type||1!=d.nodeType||a.expr.filters.hidden(d));)d=d[b?"previousSibling":"nextSibling"];d=a(d).offset();return[d.left,d.top]},_triggerOnClose:function(a){var b= -this._get(a,"onClose");b&&b.apply(a.input?a.input[0]:null,[a.input?a.input.val():"",a])},_hideDatepicker:function(d){var b=this._curInst;if(b&&(!d||b==a.data(d,"datepicker"))&&this._datepickerShowing){d=this._get(b,"showAnim");var c=this._get(b,"duration"),e=function(){a.datepicker._tidyDialog(b);this._curInst=null};a.effects&&a.effects[d]?b.dpDiv.hide(d,a.datepicker._get(b,"showOptions"),c,e):b.dpDiv["slideDown"==d?"slideUp":"fadeIn"==d?"fadeOut":"hide"](d?c:null,e);d||e();a.datepicker._triggerOnClose(b); -this._datepickerShowing=!1;this._lastInput=null;this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),a.blockUI&&(a.unblockUI(),a("body").append(this.dpDiv)));this._inDialog=!1}},_tidyDialog:function(a){a.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(d){a.datepicker._curInst&&(d=a(d.target),d[0].id==a.datepicker._mainDivId||0!=d.parents("#"+a.datepicker._mainDivId).length||d.hasClass(a.datepicker.markerClassName)|| -d.hasClass(a.datepicker._triggerClass)||!a.datepicker._datepickerShowing||a.datepicker._inDialog&&a.blockUI||a.datepicker._hideDatepicker())},_adjustDate:function(d,b,c){d=a(d);var e=this._getInst(d[0]);this._isDisabledDatepicker(d[0])||(this._adjustInstDate(e,b+("M"==c?this._get(e,"showCurrentAtPos"):0),c),this._updateDatepicker(e))},_gotoToday:function(d){d=a(d);var b=this._getInst(d[0]);if(this._get(b,"gotoCurrent")&&b.currentDay)b.selectedDay=b.currentDay,b.drawMonth=b.selectedMonth=b.currentMonth, -b.drawYear=b.selectedYear=b.currentYear;else{var c=new Date;b.selectedDay=c.getDate();b.drawMonth=b.selectedMonth=c.getMonth();b.drawYear=b.selectedYear=c.getFullYear()}this._notifyChange(b);this._adjustDate(d)},_selectMonthYear:function(d,b,c){d=a(d);var e=this._getInst(d[0]);e["selected"+("M"==c?"Month":"Year")]=e["draw"+("M"==c?"Month":"Year")]=parseInt(b.options[b.selectedIndex].value,10);this._notifyChange(e);this._adjustDate(d)},_selectDay:function(d,b,c,e){var f=a(d);a(e).hasClass(this._unselectableClass)|| -this._isDisabledDatepicker(f[0])||(f=this._getInst(f[0]),f.selectedDay=f.currentDay=a("a",e).html(),f.selectedMonth=f.currentMonth=b,f.selectedYear=f.currentYear=c,this._selectDate(d,this._formatDate(f,f.currentDay,f.currentMonth,f.currentYear)))},_clearDate:function(d){d=a(d);this._getInst(d[0]);this._selectDate(d,"")},_selectDate:function(d,b){d=this._getInst(a(d)[0]);b=null!=b?b:this._formatDate(d);d.input&&d.input.val(b);this._updateAlternate(d);var c=this._get(d,"onSelect");c?c.apply(d.input? -d.input[0]:null,[b,d]):d.input&&d.input.trigger("change");d.inline?this._updateDatepicker(d):(this._hideDatepicker(),this._lastInput=d.input[0],"object"!=typeof d.input[0]&&d.input.focus(),this._lastInput=null)},_updateAlternate:function(d){var b=this._get(d,"altField");if(b){var c=this._get(d,"altFormat")||this._get(d,"dateFormat"),e=this._getDate(d),f=this.formatDate(c,e,this._getFormatConfig(d));a(b).each(function(){a(this).val(f)})}},noWeekends:function(a){a=a.getDay();return[0a,""]},iso8601Week:function(a){a= -new Date(a.getTime());a.setDate(a.getDate()+4-(a.getDay()||7));var b=a.getTime();a.setMonth(0);a.setDate(1);return Math.floor(Math.round((b-a)/864E5)/7)+1},parseDate:function(d,b,c){if(null==d||null==b)throw"Invalid arguments";b="object"==typeof b?b.toString():b+"";if(""==b)return null;for(var e=(c?c.shortYearCutoff:null)||this._defaults.shortYearCutoff,e="string"!=typeof e?e:(new Date).getFullYear()%100+parseInt(e,10),f=(c?c.dayNamesShort:null)||this._defaults.dayNamesShort,g=(c?c.dayNames:null)|| -this._defaults.dayNames,h=(c?c.monthNamesShort:null)||this._defaults.monthNamesShort,p=(c?c.monthNames:null)||this._defaults.monthNames,x=c=-1,w=-1,B=-1,A=!1,y=function(a){(a=P+1c&&(c+=(new Date).getFullYear()-(new Date).getFullYear()%100+(c<=e?0:-100));if(-1b.getYear()%100?"0":"")+b.getYear()%100;break;case "@":w+=b.getTime();break;case "!":w+=1E4*b.getTime()+this._ticksTo1970;break;case "'":h("'")?w+="'":B=!0;break; -default:w+=a.charAt(A)}return w},_possibleChars:function(a){for(var b="",c=!1,e=function(b){(b=f+1p&&(p+=12,z--);if(y)for(var v=this._daylightSavingAdjust(new Date(y.getFullYear(),y.getMonth()-t[0]*t[1]+1,y.getDate())),v=A&&vv;)p--,0>p&&(p=11,z--);b.drawMonth=p;b.drawYear=z;var v=this._get(b,"prevText"),v=n? -this.formatDate(v,this._daylightSavingAdjust(new Date(z,p-x,1)),this._getFormatConfig(b)):v,v=this._canAdjustMonth(b,-1,z,p)?''+v+"":h?"":''+v+"", -C=this._get(b,"nextText"),C=n?this.formatDate(C,this._daylightSavingAdjust(new Date(z,p+x,1)),this._getFormatConfig(b)):C,h=this._canAdjustMonth(b,1,z,p)?''+C+"":h?"":''+C+"",x=this._get(b,"currentText"),C=this._get(b,"gotoCurrent")&&b.currentDay?B:c,x=n?this.formatDate(x,C,this._getFormatConfig(b)):x,n=b.inline?"":'",g=g?'
    '+(e?n:"")+(this._isInRange(b,C)?'":"")+(e?"":n)+"
    ":"",n=parseInt(this._get(b,"firstDay"),10),n=isNaN(n)?0:n,x=this._get(b,"showWeek"),C=this._get(b,"dayNames");this._get(b,"dayNamesShort");var L=this._get(b,"dayNamesMin"),P=this._get(b,"monthNames"),S=this._get(b,"monthNamesShort"),ea=this._get(b,"beforeShowDay"),za=this._get(b,"showOtherMonths"),hb=this._get(b,"selectOtherMonths");this._get(b,"calculateWeek");for(var u=this._getDefaultDate(b),Da="",O=0;O'+ -(/all|left/.test(I)&&0==O?e?h:v:"")+(/all|right/.test(I)&&0==O?e?v:h:"")+this._generateMonthYearHeader(b,p,z,A,y,0
    '),X=x?'":"",I=0;7>I;I++)var K=(I+n)%7,X=X+("'+L[K]+"");M+=X+"";X=this._getDaysInMonth(z,p);z==b.selectedYear&&p==b.selectedMonth&&(b.selectedDay= -Math.min(b.selectedDay,X));I=(this._getFirstDayOfMonth(z,p)-n+7)%7;X=Math.ceil((I+X)/7);this.maxRows=X=w?this.maxRows>X?this.maxRows:X:X;for(var K=this._daylightSavingAdjust(new Date(z,p,1-I)),bb=0;bb",Sa=x?'":"",I=0;7>I;I++){var ia=ea?ea.apply(b.input?b.input[0]:null,[K]):[!0,""],na=K.getMonth()!=p,Ka=na&&!hb||!ia[0]||A&&Ky,Sa=Sa+('");K.setDate(K.getDate()+1);K=this._daylightSavingAdjust(K)}M+=Sa+""}p++;11
    '+this._get(b,"weekHeader")+"
    '+this._get(b,"calculateWeek")(K)+""+(na&&!za?" ":Ka?''+K.getDate()+"":''+K.getDate()+"")+"
    "+(w?""+(0': -""):"");k+=M}Da+=k}Da+=g+(a.browser.msie&&7>parseInt(a.browser.version,10)&&!b.inline?'':"");b._keyEvent=!1;return Da},_generateMonthYearHeader:function(a,b,c,e,g,h,t,p){var x=this._get(a,"changeMonth"),w=this._get(a,"changeYear"),B=this._get(a,"showMonthAfterYear"),A='
    ',y="";if(h||!x)y+=''+t[b]+"";else{t=e&&e.getFullYear()==c;for(var z=g&& -g.getFullYear()==c,y=y+('"}B||(A+=y+(!h&&x&&w?"":" "));if(!a.yearshtml)if(a.yearshtml="",h||!w)A+=''+c+"";else{p=this._get(a,"yearRange").split(":");var C=(new Date).getFullYear(); -t=function(a){a=a.match(/c[+-].*/)?c+parseInt(a.substring(1),10):a.match(/[+-].*/)?C+parseInt(a,10):parseInt(a,10);return isNaN(a)?C:a};b=t(p[0]);p=Math.max(b,t(p[1]||""));b=e?Math.max(b,e.getFullYear()):b;p=g?Math.min(p,g.getFullYear()):p;for(a.yearshtml+='";A+= -a.yearshtml;a.yearshtml=null}A+=this._get(a,"yearSuffix");B&&(A+=(!h&&x&&w?"":" ")+y);return A+"
    "},_adjustInstDate:function(a,b,c){var e=a.drawYear+("Y"==c?b:0),f=a.drawMonth+("M"==c?b:0);b=Math.min(a.selectedDay,this._getDaysInMonth(e,f))+("D"==c?b:0);e=this._restrictMinMax(a,this._daylightSavingAdjust(new Date(e,f,b)));a.selectedDay=e.getDate();a.drawMonth=a.selectedMonth=e.getMonth();a.drawYear=a.selectedYear=e.getFullYear();"M"!=c&&"Y"!=c||this._notifyChange(a)},_restrictMinMax:function(a, -b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a,"max");b=c&&ba?a:b},_notifyChange:function(a){var b=this._get(a,"onChangeMonthYear");b&&b.apply(a.input?a.input[0]:null,[a.selectedYear,a.selectedMonth+1,a])},_getNumberOfMonths:function(a){a=this._get(a,"numberOfMonths");return null==a?[1,1]:"number"==typeof a?[1,a]:a},_getMinMaxDate:function(a,b){return this._determineDate(a,this._get(a,b+"Date"),null)},_getDaysInMonth:function(a,b){return 32-this._daylightSavingAdjust(new Date(a, -b,32)).getDate()},_getFirstDayOfMonth:function(a,b){return(new Date(a,b,1)).getDay()},_canAdjustMonth:function(a,b,c,e){var f=this._getNumberOfMonths(a);c=this._daylightSavingAdjust(new Date(c,e+(0>b?b:f[0]*f[1]),1));0>b&&c.setDate(this._getDaysInMonth(c.getFullYear(),c.getMonth()));return this._isInRange(a,c)},_isInRange:function(a,b){var c=this._getMinMaxDate(a,"min");a=this._getMinMaxDate(a,"max");return(!c||b.getTime()>=c.getTime())&&(!a||b.getTime()<=a.getTime())},_getFormatConfig:function(a){var b= -this._get(a,"shortYearCutoff"),b="string"!=typeof b?b:(new Date).getFullYear()%100+parseInt(b,10);return{shortYearCutoff:b,dayNamesShort:this._get(a,"dayNamesShort"),dayNames:this._get(a,"dayNames"),monthNamesShort:this._get(a,"monthNamesShort"),monthNames:this._get(a,"monthNames")}},_formatDate:function(a,b,c,e){b||(a.currentDay=a.selectedDay,a.currentMonth=a.selectedMonth,a.currentYear=a.selectedYear);b=b?"object"==typeof b?b:this._daylightSavingAdjust(new Date(e,c,b)):this._daylightSavingAdjust(new Date(a.currentYear, -a.currentMonth,a.currentDay));return this.formatDate(this._get(a,"dateFormat"),b,this._getFormatConfig(a))}});a.fn.datepicker=function(b){if(!this.length)return this;a.datepicker.initialized||(a(document).mousedown(a.datepicker._checkExternalClick).find("body").append(a.datepicker.dpDiv),a.datepicker.initialized=!0);var c=Array.prototype.slice.call(arguments,1);return"string"==typeof b&&("isDisabled"==b||"getDate"==b||"widget"==b)||"option"==b&&2==arguments.length&&"string"==typeof arguments[1]?a.datepicker["_"+ -b+"Datepicker"].apply(a.datepicker,[this[0]].concat(c)):this.each(function(){"string"==typeof b?a.datepicker["_"+b+"Datepicker"].apply(a.datepicker,[this].concat(c)):a.datepicker._attachDatepicker(this,b)})};a.datepicker=new b;a.datepicker.initialized=!1;a.datepicker.uuid=(new Date).getTime();a.datepicker.version="1.8.16";window["DP_jQuery_"+f]=a})(jQuery); -jQuery.effects||function(a,c){function b(b){var c;return b&&b.constructor==Array&&3==b.length?b:(c=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(b))?[parseInt(c[1],10),parseInt(c[2],10),parseInt(c[3],10)]:(c=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(b))?[2.55*parseFloat(c[1]),2.55*parseFloat(c[2]),2.55*parseFloat(c[3])]:(c=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(b))?[parseInt(c[1],16),parseInt(c[2], -16),parseInt(c[3],16)]:(c=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(b))?[parseInt(c[1]+c[1],16),parseInt(c[2]+c[2],16),parseInt(c[3]+c[3],16)]:/rgba\(0, 0, 0, 0\)/.exec(b)?l.transparent:l[a.trim(b).toLowerCase()]}function e(){var a=document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle,b={},c,d;if(a&&a.length&&a[0]&&a[a[0]])for(var e=a.length;e--;)c=a[e],"string"==typeof a[c]&&(d=c.replace(/\-(\w)/g,function(a,b){return b.toUpperCase()}),b[d]=a[c]);else for(c in a)"string"=== -typeof a[c]&&(b[c]=a[c]);return b}function g(b){var c,d;for(c in b)d=b[c],(null==d||a.isFunction(d)||c in q||/scrollbar/.test(c)||!/color/i.test(c)&&isNaN(parseFloat(d)))&&delete b[c];return b}function f(a,b){var c={_:0},d;for(d in b)a[d]!=b[d]&&(c[d]=b[d]);return c}function h(b,c,d,e){"object"==typeof b&&(e=c,d=null,c=b,b=c.effect);a.isFunction(c)&&(e=c,d=null,c={});if("number"==typeof c||a.fx.speeds[c])e=d,d=c,c={};a.isFunction(d)&&(e=d,d=null);c=c||{};d=d||c.duration;d=a.fx.off?0:"number"==typeof d? -d:d in a.fx.speeds?a.fx.speeds[d]:a.fx.speeds._default;e=e||c.complete;return[b,c,d,e]}function d(b){return!b||"number"===typeof b||a.fx.speeds[b]||"string"===typeof b&&!a.effects[b]?!0:!1}a.effects={};a.each("backgroundColor borderBottomColor borderLeftColor borderRightColor borderTopColor borderColor color outlineColor".split(" "),function(c,d){a.fx.step[d]=function(c){if(!c.colorInit){var e;e=c.elem;var f=d,g;do{g=a.curCSS(e,f);if(""!=g&&"transparent"!=g||a.nodeName(e,"body"))break;f="backgroundColor"}while(e= -e.parentNode);e=b(g);c.start=e;c.end=b(c.end);c.colorInit=!0}c.elem.style[d]="rgb("+Math.max(Math.min(parseInt(c.pos*(c.end[0]-c.start[0])+c.start[0],10),255),0)+","+Math.max(Math.min(parseInt(c.pos*(c.end[1]-c.start[1])+c.start[1],10),255),0)+","+Math.max(Math.min(parseInt(c.pos*(c.end[2]-c.start[2])+c.start[2],10),255),0)+")"}});var l={aqua:[0,255,255],azure:[240,255,255],beige:[245,245,220],black:[0,0,0],blue:[0,0,255],brown:[165,42,42],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139], -darkgrey:[169,169,169],darkgreen:[0,100,0],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkviolet:[148,0,211],fuchsia:[255,0,255],gold:[255,215,0],green:[0,128,0],indigo:[75,0,130],khaki:[240,230,140],lightblue:[173,216,230],lightcyan:[224,255,255],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightyellow:[255,255,224],lime:[0,255,0],magenta:[255,0,255], -maroon:[128,0,0],navy:[0,0,128],olive:[128,128,0],orange:[255,165,0],pink:[255,192,203],purple:[128,0,128],violet:[128,0,128],red:[255,0,0],silver:[192,192,192],white:[255,255,255],yellow:[255,255,0],transparent:[255,255,255]},m=["add","remove","toggle"],q={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};a.effects.animateClass=function(b,c,d,h){a.isFunction(d)&&(h=d,d=null);return this.queue(function(){var l=a(this),q=l.attr("style")|| -" ",B=g(e.call(this)),A,y=l.attr("class");a.each(m,function(a,c){b[c]&&l[c+"Class"](b[c])});A=g(e.call(this));l.attr("class",y);l.animate(f(B,A),{queue:!1,duration:c,easing:d,complete:function(){a.each(m,function(a,c){b[c]&&l[c+"Class"](b[c])});"object"==typeof l.attr("style")?(l.attr("style").cssText="",l.attr("style").cssText=q):l.attr("style",q);h&&h.apply(this,arguments);a.dequeue(this)}})})};a.fn.extend({_addClass:a.fn.addClass,addClass:function(b,c,d,e){return c?a.effects.animateClass.apply(this, -[{add:b},c,d,e]):this._addClass(b)},_removeClass:a.fn.removeClass,removeClass:function(b,c,d,e){return c?a.effects.animateClass.apply(this,[{remove:b},c,d,e]):this._removeClass(b)},_toggleClass:a.fn.toggleClass,toggleClass:function(b,d,e,f,g){return"boolean"==typeof d||d===c?e?a.effects.animateClass.apply(this,[d?{add:b}:{remove:b},e,f,g]):this._toggleClass(b,d):a.effects.animateClass.apply(this,[{toggle:b},d,e,f])},switchClass:function(b,c,d,e,f){return a.effects.animateClass.apply(this,[{add:c, -remove:b},d,e,f])}});a.extend(a.effects,{version:"1.8.16",save:function(a,b){for(var c=0;c").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),e=document.activeElement;b.wrap(d);(b[0]===e||a.contains(b[0],e))&&a(e).focus();d=b.parent();"static"==b.css("position")? -(d.css({position:"relative"}),b.css({position:"relative"})):(a.extend(c,{position:b.css("position"),zIndex:b.css("z-index")}),a.each(["top","left","bottom","right"],function(a,d){c[d]=b.css(d);isNaN(parseInt(c[d],10))&&(c[d]="auto")}),b.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"}));return d.css(c).show()},removeWrapper:function(b){var c,d=document.activeElement;return b.parent().is(".ui-effects-wrapper")?(c=b.parent().replaceWith(b),(b[0]===d||a.contains(b[0],d))&&a(d).focus(), -c):b},setTransition:function(b,c,d,e){e=e||{};a.each(c,function(a,c){unit=b.cssUnit(c);0(b/=e/2)?d/2*b*b+c:-d/2*(--b*(b-2)-1)+c},easeInCubic:function(a,b,c,d,e){return d*(b/=e)*b*b+c},easeOutCubic:function(a,b,c,d,e){return d*((b= -b/e-1)*b*b+1)+c},easeInOutCubic:function(a,b,c,d,e){return 1>(b/=e/2)?d/2*b*b*b+c:d/2*((b-=2)*b*b+2)+c},easeInQuart:function(a,b,c,d,e){return d*(b/=e)*b*b*b+c},easeOutQuart:function(a,b,c,d,e){return-d*((b=b/e-1)*b*b*b-1)+c},easeInOutQuart:function(a,b,c,d,e){return 1>(b/=e/2)?d/2*b*b*b*b+c:-d/2*((b-=2)*b*b*b-2)+c},easeInQuint:function(a,b,c,d,e){return d*(b/=e)*b*b*b*b+c},easeOutQuint:function(a,b,c,d,e){return d*((b=b/e-1)*b*b*b*b+1)+c},easeInOutQuint:function(a,b,c,d,e){return 1>(b/=e/2)?d/2* -b*b*b*b*b+c:d/2*((b-=2)*b*b*b*b+2)+c},easeInSine:function(a,b,c,d,e){return-d*Math.cos(b/e*(Math.PI/2))+d+c},easeOutSine:function(a,b,c,d,e){return d*Math.sin(b/e*(Math.PI/2))+c},easeInOutSine:function(a,b,c,d,e){return-d/2*(Math.cos(Math.PI*b/e)-1)+c},easeInExpo:function(a,b,c,d,e){return 0==b?c:d*Math.pow(2,10*(b/e-1))+c},easeOutExpo:function(a,b,c,d,e){return b==e?c+d:d*(-Math.pow(2,-10*b/e)+1)+c},easeInOutExpo:function(a,b,c,d,e){return 0==b?c:b==e?c+d:1>(b/=e/2)?d/2*Math.pow(2,10*(b-1))+c:d/ -2*(-Math.pow(2,-10*--b)+2)+c},easeInCirc:function(a,b,c,d,e){return-d*(Math.sqrt(1-(b/=e)*b)-1)+c},easeOutCirc:function(a,b,c,d,e){return d*Math.sqrt(1-(b=b/e-1)*b)+c},easeInOutCirc:function(a,b,c,d,e){return 1>(b/=e/2)?-d/2*(Math.sqrt(1-b*b)-1)+c:d/2*(Math.sqrt(1-(b-=2)*b)+1)+c},easeInElastic:function(a,b,c,d,e){var f=0,g=d;if(0==b)return c;if(1==(b/=e))return c+d;f||(f=0.3*e);gb?-0.5*g*Math.pow(2,10*(b-=1))*Math.sin(2*(b*e-a)*Math.PI/f)+c:g*Math.pow(2,-10*(b-=1))*Math.sin(2*(b*e- -a)*Math.PI/f)*0.5+d+c},easeInBack:function(a,b,d,e,f,g){g==c&&(g=1.70158);return e*(b/=f)*b*((g+1)*b-g)+d},easeOutBack:function(a,b,d,e,f,g){g==c&&(g=1.70158);return e*((b=b/f-1)*b*((g+1)*b+g)+1)+d},easeInOutBack:function(a,b,d,e,f,g){g==c&&(g=1.70158);return 1>(b/=f/2)?e/2*b*b*(((g*=1.525)+1)*b-g)+d:e/2*((b-=2)*b*(((g*=1.525)+1)*b+g)+2)+d},easeInBounce:function(b,c,d,e,f){return e-a.easing.easeOutBounce(b,f-c,0,e,f)+d},easeOutBounce:function(a,b,c,d,e){return(b/=e)<1/2.75?7.5625*d*b*b+c:b<2/2.75? -d*(7.5625*(b-=1.5/2.75)*b+0.75)+c:b<2.5/2.75?d*(7.5625*(b-=2.25/2.75)*b+0.9375)+c:d*(7.5625*(b-=2.625/2.75)*b+0.984375)+c},easeInOutBounce:function(b,c,d,e,f){return c").css({position:"absolute",visibility:"visible",left:h/e*-m,top:d/b*-l}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:h/e,height:d/b,left:f.left+h/e*m+("show"==c.options.mode?h/e*(m-Math.floor(e/2)):0),top:f.top+d/b*l+("show"==c.options.mode?d/b*(l-Math.floor(b/2)):0),opacity:"show"==c.options.mode?0:1}).animate({left:f.left+h/e*m+("show"==c.options.mode?0:h/e*(m-Math.floor(e/2))),top:f.top+d/b*l+("show"== -c.options.mode?0:d/b*(l-Math.floor(b/2))),opacity:"show"==c.options.mode?1:0},c.duration||500);setTimeout(function(){"show"==c.options.mode?g.css({visibility:"visible"}):g.css({visibility:"visible"}).hide();c.callback&&c.callback.apply(g[0]);g.dequeue();a("div.ui-effects-explode").remove()},c.duration||500)})}})(jQuery); -(function(a){a.effects.fade=function(c){return this.queue(function(){var b=a(this),e=a.effects.setMode(b,c.options.mode||"hide");b.animate({opacity:e},{queue:!1,duration:c.duration,easing:c.options.easing,complete:function(){c.callback&&c.callback.apply(this,arguments);b.dequeue()}})})}})(jQuery); -(function(a){a.effects.fold=function(c){return this.queue(function(){var b=a(this),e=["position","top","bottom","left","right"],g=a.effects.setMode(b,c.options.mode||"hide"),f=c.options.size||15,h=!!c.options.horizFirst,d=c.duration?c.duration/2:a.fx.speeds._default/2;a.effects.save(b,e);b.show();var l=a.effects.createWrapper(b).css({overflow:"hidden"}),m="show"==g!=h,q=m?["width","height"]:["height","width"],m=m?[l.width(),l.height()]:[l.height(),l.width()],r=/([0-9]+)%/.exec(f);r&&(f=parseInt(r[1], -10)/100*m["hide"==g?0:1]);"show"==g&&l.css(h?{height:0,width:f}:{height:f,width:0});h={};r={};h[q[0]]="show"==g?m[0]:f;r[q[1]]="show"==g?m[1]:0;l.animate(h,d,c.options.easing).animate(r,d,c.options.easing,function(){"hide"==g&&b.hide();a.effects.restore(b,e);a.effects.removeWrapper(b);c.callback&&c.callback.apply(b[0],arguments);b.dequeue()})})}})(jQuery); -(function(a){a.effects.highlight=function(c){return this.queue(function(){var b=a(this),e=["backgroundImage","backgroundColor","opacity"],g=a.effects.setMode(b,c.options.mode||"show"),f={backgroundColor:b.css("backgroundColor")};"hide"==g&&(f.opacity=0);a.effects.save(b,e);b.show().css({backgroundImage:"none",backgroundColor:c.options.color||"#ffff99"}).animate(f,{queue:!1,duration:c.duration,easing:c.options.easing,complete:function(){"hide"==g&&b.hide();a.effects.restore(b,e);"show"==g&&!a.support.opacity&& -this.style.removeAttribute("filter");c.callback&&c.callback.apply(this,arguments);b.dequeue()}})})}})(jQuery); -(function(a){a.effects.pulsate=function(c){return this.queue(function(){var b=a(this),e=a.effects.setMode(b,c.options.mode||"show");times=2*(c.options.times||5)-1;duration=c.duration?c.duration/2:a.fx.speeds._default/2;isVisible=b.is(":visible");animateTo=0;isVisible||(b.css("opacity",0).show(),animateTo=1);("hide"==e&&isVisible||"show"==e&&!isVisible)&×--;for(e=0;e').appendTo(document.body).addClass(c.options.className).css({top:g.top,left:g.left,height:b.innerHeight(),width:b.innerWidth(),position:"absolute"}).animate(e,c.duration,c.options.easing,function(){f.remove();c.callback&&c.callback.apply(b[0],arguments);b.dequeue()})})}})(jQuery); -(function(a,c,b){function e(a,b,c){var d,e;d=a.attr("data-dk-dropdown-value");a=a.text();e=b.data("dropkick");$select=e.$select;$select.val(d);b.find(".dk_label").text(a);e.settings.change&&!c&&e.settings.change.call($select,d,a)}function g(a,b){b.find(".dk_option_current").removeClass("dk_option_current");a.addClass("dk_option_current");var c=a.prevAll("li").outerHeight()*a.prevAll("li").length;b.find(".dk_options_inner").animate({scrollTop:c+"px"},0)}function f(a){a.data("dropkick");a.find(".dk_options").css({top:a.find(".dk_toggle").outerHeight()- -1});a.toggleClass("dk_open")}function h(b,c){var e,f=[];e=b.replace("{{ id }}",c.id);e=e.replace("{{ label }}",c.label);e=e.replace("{{ tabindex }}",c.tabindex);if(c.options&&c.options.length)for(var g=0,h=c.options.length;ga.browser.version.substr(0,1)?l=!0:b.documentElement.className+=" dk_fouc";var m={},q=[],r='
  • {{ text }}
  • ',n={startSpeed:1E3,theme:!1,change:!1};m.init=function(b){b=a.extend({},n,b);return this.each(function(){var c=a(this),e=c.find(":selected").first(),f=c.find("option"),g=c.data("dropkick")||{},l=c.attr("id")||c.attr("name"),m=b.width||c.outerWidth(),r=c.attr("tabindex")?c.attr("tabindex"):"", -n=!1;if(g.id)return c;g.settings=b;g.tabindex=r;g.id=l;g.$original=e;g.$select=c;g.value=d(c.val())||d(e.attr("value"));g.label=e.text();g.options=f;n=h('',g);n.find(".dk_toggle").css({width:m+"px"});c.before(n);n=a("#dk_container_"+l).fadeIn(b.startSpeed);e=b.theme?b.theme:"default";n.addClass("dk_theme_"+ -e);g.theme=e;g.$dk=n;c.data("dropkick",g);n.data("dropkick",g);q[q.length]=c;n.bind("focus.dropkick",function(a){n.addClass("dk_focus")}).bind("blur.dropkick",function(a){n.removeClass("dk_open dk_focus")});setTimeout(function(){c.hide()},0)})};m.theme=function(b){var c=a(this).data("dropkick");c.$dk.removeClass("dk_theme_"+c.theme).addClass("dk_theme_"+b);c.theme=b};m.reset=function(){for(var a=0,b=q.length;af&&(f="0"+f);10>h&&(h="0"+h);10>c&&(c="0"+c);10>l&&(l="0"+l);10>m&&(m="0"+m);100>b&&(b="0"+b);10>b&&(b="0"+b);return'"'+d+"-"+f+"-"+h+"T"+c+":"+l+":"+m+"."+b+'Z"'}if(b.constructor===Array){f=[];for(h=0;h=this.fromRow&&a<=this.toRow&&b>=this.fromCell&&b<=this.toCell};this.toString=function(){return this.isSingleCell()?"("+this.fromRow+":"+this.fromCell+")":"("+this.fromRow+":"+this.fromCell+" - "+this.toRow+":"+this.toCell+")"}},NonDataRow:b,Group:e,GroupTotals:g,EditorLock:f,GlobalEditorLock:new f}}); -e.prototype=new b;e.prototype.equals=function(a){return this.value===a.value&&this.count===a.count&&this.collapsed===a.collapsed&&this.title===a.title};g.prototype=new b})(jQuery); -(function(a){a.extend(!0,window,{Slick:{Editors:{Text:function(c){var b,e;this.init=function(){b=a("").appendTo(c.container).bind("keydown.nav",function(b){b.keyCode!==a.ui.keyCode.LEFT&&b.keyCode!==a.ui.keyCode.RIGHT||b.stopImmediatePropagation()}).focus().select()};this.destroy=function(){b.remove()};this.focus=function(){b.focus()};this.getValue=function(){return b.val()};this.setValue=function(a){b.val(a)};this.loadValue=function(a){e=a[c.column.field]|| -"";b.val(e);b[0].defaultValue=e;b.select()};this.serializeValue=function(){return b.val()};this.applyValue=function(a,b){a[c.column.field]=b};this.isValueChanged=function(){return!(""==b.val()&&null==e)&&b.val()!=e};this.validate=function(){if(c.column.validator){var a=c.column.validator(b.val());if(!a.valid)return a}return{valid:!0,msg:null}};this.init()},Integer:function(c){var b,e;this.init=function(){b=a("");b.bind("keydown.nav",function(b){b.keyCode!==a.ui.keyCode.LEFT&& -b.keyCode!==a.ui.keyCode.RIGHT||b.stopImmediatePropagation()});b.appendTo(c.container);b.focus().select()};this.destroy=function(){b.remove()};this.focus=function(){b.focus()};this.loadValue=function(a){e=a[c.column.field];b.val(e);b[0].defaultValue=e;b.select()};this.serializeValue=function(){return parseInt(b.val(),10)||0};this.applyValue=function(a,b){a[c.column.field]=b};this.isValueChanged=function(){return!(""==b.val()&&null==e)&&b.val()!=e};this.validate=function(){return isNaN(b.val())?{valid:!1, -msg:"Please enter a valid integer"}:{valid:!0,msg:null}};this.init()},Date:function(c){var b,e,g=!1;this.init=function(){b=a("");b.appendTo(c.container);b.focus().select();b.datepicker({showOn:"button",buttonImageOnly:!0,buttonImage:"../images/calendar.gif",beforeShow:function(){g=!0},onClose:function(){g=!1},dateFormat:"dd/mm/yy"});b.width(b.width()-18)};this.destroy=function(){a.datepicker.dpDiv.stop(!0,!0);b.datepicker("hide");b.datepicker("destroy");b.remove()}; -this.show=function(){g&&a.datepicker.dpDiv.stop(!0,!0).show()};this.hide=function(){g&&a.datepicker.dpDiv.stop(!0,!0).hide()};this.position=function(b){g&&a.datepicker.dpDiv.css("top",b.top+30).css("left",b.left)};this.focus=function(){b.focus()};this.loadValue=function(a){e=a[c.column.field];b.val(e);b[0].defaultValue=e;b.select()};this.serializeValue=function(){return b.val()};this.applyValue=function(a,b){a[c.column.field]=b};this.isValueChanged=function(){return!(""==b.val()&&null==e)&&b.val()!= -e};this.validate=function(){return{valid:!0,msg:null}};this.init()},YesNoSelect:function(c){var b,e;this.init=function(){b=a("");b.appendTo(c.container);b.focus()};this.destroy=function(){b.remove()};this.focus=function(){b.focus()};this.loadValue=function(a){b.val((e=a[c.column.field])?"yes":"no");b.select()};this.serializeValue=function(){return"yes"==b.val()};this.applyValue=function(a, -b){a[c.column.field]=b};this.isValueChanged=function(){return b.val()!=e};this.validate=function(){return{valid:!0,msg:null}};this.init()},Checkbox:function(c){var b,e;this.init=function(){b=a("");b.appendTo(c.container);b.focus()};this.destroy=function(){b.remove()};this.focus=function(){b.focus()};this.loadValue=function(a){(e=!!a[c.column.field])?b.prop("checked",!0):b.prop("checked",!1)};this.serializeValue=function(){return b.prop("checked")}; -this.applyValue=function(a,b){a[c.column.field]=b};this.isValueChanged=function(){return this.serializeValue()!==e};this.validate=function(){return{valid:!0,msg:null}};this.init()},PercentComplete:function(c){var b,e,g;this.init=function(){b=a("");b.width(a(c.container).innerWidth()-25);b.appendTo(c.container);e=a("
    ").appendTo(c.container);e.append("
    "); -e.find(".editor-percentcomplete-buttons").append("

    ");b.focus().select();e.find(".editor-percentcomplete-slider").slider({orientation:"vertical",range:"min",value:g,slide:function(a,c){b.val(c.value)}});e.find(".editor-percentcomplete-buttons button").bind("click",function(c){b.val(a(this).attr("val"));e.find(".editor-percentcomplete-slider").slider("value",a(this).attr("val"))})};this.destroy= -function(){b.remove();e.remove()};this.focus=function(){b.focus()};this.loadValue=function(a){b.val(g=a[c.column.field]);b.select()};this.serializeValue=function(){return parseInt(b.val(),10)||0};this.applyValue=function(a,b){a[c.column.field]=b};this.isValueChanged=function(){return!(""==b.val()&&null==g)&&(parseInt(b.val(),10)||0)!=g};this.validate=function(){return isNaN(parseInt(b.val(),10))?{valid:!1,msg:"Please enter a valid positive number"}:{valid:!0,msg:null}};this.init()},LongText:function(c){var b, -e,g,f=this;this.init=function(){var g=a("body");e=a("
    ").appendTo(g);b=a("