From 520197fd0dc713a02e61a7d032e5433e4c4a2bea Mon Sep 17 00:00:00 2001 From: vallard Date: Wed, 24 Jun 2009 23:46:34 +0000 Subject: [PATCH] new xCAT web client git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@3634 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd --- xCAT-UI/change.php | 34 + xCAT-UI/command.php | 19 + xCAT-UI/config.php | 27 + xCAT-UI/control.php | 11 + xCAT-UI/css/.superfish-navbar.css.swp | Bin 0 -> 12288 bytes xCAT-UI/css/config.css | 101 ++ xCAT-UI/css/main.css | 320 +++++ xCAT-UI/css/security.css | 15 + xCAT-UI/css/superfish-navbar.css | 93 ++ xCAT-UI/css/superfish-vertical.css | 23 + xCAT-UI/css/superfish.css | 161 +++ xCAT-UI/css/theme/demo.html | 167 +++ .../222222_11x11_icon_arrows_leftright.gif | Bin 0 -> 58 bytes .../222222_11x11_icon_arrows_updown.gif | Bin 0 -> 56 bytes .../theme/images/222222_11x11_icon_close.gif | Bin 0 -> 62 bytes .../theme/images/222222_11x11_icon_doc.gif | Bin 0 -> 64 bytes .../222222_11x11_icon_folder_closed.gif | Bin 0 -> 61 bytes .../images/222222_11x11_icon_folder_open.gif | Bin 0 -> 61 bytes .../theme/images/222222_11x11_icon_minus.gif | Bin 0 -> 56 bytes .../theme/images/222222_11x11_icon_plus.gif | Bin 0 -> 61 bytes .../images/222222_11x11_icon_resize_se.gif | Bin 0 -> 61 bytes .../theme/images/222222_7x7_arrow_down.gif | Bin 0 -> 52 bytes .../theme/images/222222_7x7_arrow_left.gif | Bin 0 -> 53 bytes .../theme/images/222222_7x7_arrow_right.gif | Bin 0 -> 53 bytes .../css/theme/images/222222_7x7_arrow_up.gif | Bin 0 -> 52 bytes .../888888_11x11_icon_arrows_leftright.gif | Bin 0 -> 58 bytes .../888888_11x11_icon_arrows_updown.gif | Bin 0 -> 56 bytes .../theme/images/888888_11x11_icon_close.gif | Bin 0 -> 62 bytes .../theme/images/888888_11x11_icon_doc.gif | Bin 0 -> 64 bytes .../888888_11x11_icon_folder_closed.gif | Bin 0 -> 61 bytes .../images/888888_11x11_icon_folder_open.gif | Bin 0 -> 61 bytes .../theme/images/888888_11x11_icon_minus.gif | Bin 0 -> 56 bytes .../theme/images/888888_11x11_icon_plus.gif | Bin 0 -> 61 bytes .../theme/images/888888_7x7_arrow_down.gif | Bin 0 -> 52 bytes .../theme/images/888888_7x7_arrow_left.gif | Bin 0 -> 53 bytes .../theme/images/888888_7x7_arrow_right.gif | Bin 0 -> 53 bytes .../css/theme/images/888888_7x7_arrow_up.gif | Bin 0 -> 52 bytes .../8ab9ff_40x100_textures_02_glass_50.png | Bin 0 -> 219 bytes .../d8d8d8_40x100_textures_02_glass_90.png | Bin 0 -> 221 bytes .../e0e0e0_40x100_textures_02_glass_80.png | Bin 0 -> 214 bytes .../f3f3f3_40x100_textures_01_flat_0.png | Bin 0 -> 180 bytes .../ffffff_11x11_icon_arrows_leftright.gif | Bin 0 -> 58 bytes .../ffffff_11x11_icon_arrows_updown.gif | Bin 0 -> 56 bytes .../theme/images/ffffff_11x11_icon_close.gif | Bin 0 -> 62 bytes .../theme/images/ffffff_11x11_icon_doc.gif | Bin 0 -> 64 bytes .../ffffff_11x11_icon_folder_closed.gif | Bin 0 -> 61 bytes .../images/ffffff_11x11_icon_folder_open.gif | Bin 0 -> 61 bytes .../theme/images/ffffff_11x11_icon_minus.gif | Bin 0 -> 56 bytes .../theme/images/ffffff_11x11_icon_plus.gif | Bin 0 -> 61 bytes .../theme/images/ffffff_7x7_arrow_down.gif | Bin 0 -> 52 bytes .../theme/images/ffffff_7x7_arrow_left.gif | Bin 0 -> 53 bytes .../theme/images/ffffff_7x7_arrow_right.gif | Bin 0 -> 53 bytes .../css/theme/images/ffffff_7x7_arrow_up.gif | Bin 0 -> 52 bytes xCAT-UI/css/theme/jquery-ui-themeroller.css | 833 +++++++++++ xCAT-UI/etc/apache2/conf.d/xcat-web.conf | 7 + xCAT-UI/img/ajax-loader.gif | Bin 0 -> 451 bytes xCAT-UI/img/arrows-ffffff.png | Bin 0 -> 244 bytes xCAT-UI/img/asc.gif | Bin 0 -> 54 bytes xCAT-UI/img/auth.gif | Bin 0 -> 56 bytes xCAT-UI/img/bg.gif | Bin 0 -> 64 bytes xCAT-UI/img/bg_button_a.gif | Bin 0 -> 424 bytes xCAT-UI/img/bg_button_span.gif | Bin 0 -> 1410 bytes xCAT-UI/img/bopper.jpg | Bin 0 -> 1351 bytes xCAT-UI/img/cmd-active.png | Bin 0 -> 2946 bytes xCAT-UI/img/cmd-active.xcf | Bin 0 -> 13207 bytes xCAT-UI/img/cmd.png | Bin 0 -> 2984 bytes xCAT-UI/img/cmd.xcf | Bin 0 -> 5253 bytes xCAT-UI/img/cmdBtn.gif | Bin 0 -> 767 bytes xCAT-UI/img/cmdBtn.xcf | Bin 0 -> 5253 bytes xCAT-UI/img/desc.gif | Bin 0 -> 54 bytes xCAT-UI/img/header5.jpg | Bin 0 -> 2022 bytes xCAT-UI/img/header5.xcf | Bin 0 -> 80742 bytes xCAT-UI/img/indicator.gif | Bin 0 -> 1553 bytes xCAT-UI/img/logo2.gif | Bin 0 -> 1723 bytes xCAT-UI/img/red-x.gif | Bin 0 -> 1002 bytes xCAT-UI/img/red-x2-light.gif | Bin 0 -> 973 bytes xCAT-UI/img/red-x2.gif | Bin 0 -> 973 bytes xCAT-UI/img/shadow.png | Bin 0 -> 1698 bytes xCAT-UI/img/throbber.gif | Bin 0 -> 1844 bytes xCAT-UI/img/topper.jpg | Bin 0 -> 574 bytes xCAT-UI/img/topper.xcf | Bin 0 -> 1746 bytes xCAT-UI/index.php | 17 + xCAT-UI/js/JSON/JSON.php | 806 +++++++++++ xCAT-UI/js/chili-1.8b.js | 394 ++++++ xCAT-UI/js/config.js | 71 + xCAT-UI/js/hoverIntent.js | 87 ++ xCAT-UI/js/jquery-ui-all.min.js | 636 +++++++++ xCAT-UI/js/jquery.form.js | 639 +++++++++ xCAT-UI/js/jquery.jeditable.mini.js | 32 + xCAT-UI/js/jquery.min.js | 35 + xCAT-UI/js/jquery.tablesorter.js | 854 +++++++++++ xCAT-UI/js/jsTree/css.js | 35 + xCAT-UI/js/jsTree/flat.xsl | 70 + xCAT-UI/js/jsTree/images/dot.gif | Bin 0 -> 43 bytes xCAT-UI/js/jsTree/images/fminus.gif | Bin 0 -> 60 bytes xCAT-UI/js/jsTree/images/fminus_rtl.gif | Bin 0 -> 59 bytes xCAT-UI/js/jsTree/images/fplus.gif | Bin 0 -> 108 bytes xCAT-UI/js/jsTree/images/fplus_rtl.gif | Bin 0 -> 108 bytes xCAT-UI/js/jsTree/images/lastli.gif | Bin 0 -> 55 bytes xCAT-UI/js/jsTree/images/lastli_rtl.gif | Bin 0 -> 54 bytes xCAT-UI/js/jsTree/images/li.gif | Bin 0 -> 47 bytes xCAT-UI/js/jsTree/images/marker.gif | Bin 0 -> 61 bytes xCAT-UI/js/jsTree/images/marker_rtl.gif | Bin 0 -> 62 bytes xCAT-UI/js/jsTree/images/plus.gif | Bin 0 -> 52 bytes xCAT-UI/js/jsTree/images/remove.png | Bin 0 -> 720 bytes xCAT-UI/js/jsTree/images/throbber.gif | Bin 0 -> 1844 bytes xCAT-UI/js/jsTree/jquery.cookie.js | 98 ++ xCAT-UI/js/jsTree/jquery.listen.js | 11 + xCAT-UI/js/jsTree/jquery.metadata.js | 122 ++ xCAT-UI/js/jsTree/jquery.xslt.js | 350 +++++ xCAT-UI/js/jsTree/nested.xsl | 67 + xCAT-UI/js/jsTree/sarissa.js | 110 ++ xCAT-UI/js/jsTree/sarissa_ieemu_xpath.js | 34 + xCAT-UI/js/jsTree/tree_component.css | 224 +++ xCAT-UI/js/jsTree/tree_component.js | 1250 +++++++++++++++++ xCAT-UI/js/jsonwrapper.php | 6 + xCAT-UI/js/jsonwrapper_inner.php | 23 + xCAT-UI/js/jstreecustomizations.patch | 232 +++ xCAT-UI/js/loading.js | 117 ++ xCAT-UI/js/noderangetree.js | 74 + xCAT-UI/js/superfish.js | 123 ++ xCAT-UI/js/xcat.js | 331 +++++ xCAT-UI/js/xcatauth.js | 99 ++ xCAT-UI/lib/display.php | 643 +++++++++ xCAT-UI/lib/functions.php | 331 +++++ xCAT-UI/lib/profiles.php | 66 + xCAT-UI/lib/security.php | 121 ++ xCAT-UI/lib/security.php.ORIG | 125 ++ xCAT-UI/log.php | 32 + xCAT-UI/logentry.php | 15 + xCAT-UI/main.php | 6 + xCAT-UI/monitor.php | 8 + xCAT-UI/noderangesource.php | 52 + xCAT-UI/provision.php | 31 + xCAT-UI/rangeDisplay.php | 63 + xCAT-UI/security/JSON/JSON.php | 806 +++++++++++ xCAT-UI/security/jsonwrapper.php | 6 + xCAT-UI/security/jsonwrapper_inner.php | 23 + xCAT-UI/security/log.php | 32 + xCAT-UI/site.php | 42 + xCAT-UI/src/superfish-1.4.8.zip | Bin 0 -> 33784 bytes .../__MACOSX/superfish-1.4.8/._.DS_Store | Bin 0 -> 82 bytes .../__MACOSX/superfish-1.4.8/._example.html | Bin 0 -> 186 bytes .../__MACOSX/superfish-1.4.8/css/._.DS_Store | Bin 0 -> 82 bytes .../superfish-1.4.8/images/._.DS_Store | Bin 0 -> 82 bytes .../images/._arrows-ffffff.png | Bin 0 -> 82 bytes .../superfish-1.4.8/changelog.txt | 74 + .../superfish-1.4.8/css/superfish-navbar.css | 93 ++ .../css/superfish-vertical.css | 23 + .../superfish-1.4.8/css/superfish.css | 136 ++ .../superfish-1.4.8/example.html | 123 ++ .../superfish-1.4.8/images/arrows-ffffff.png | Bin 0 -> 244 bytes .../superfish-1.4.8/images/shadow.png | Bin 0 -> 1698 bytes .../superfish-1.4.8/js/hoverIntent.js | 84 ++ .../superfish-1.4.8/js/jquery-1.2.6.min.js | 32 + .../superfish-1.4.8/js/jquery.bgiframe.min.js | 10 + .../superfish-1.4.8/js/superfish.js | 121 ++ .../superfish-1.4.8/js/supersubs.js | 90 ++ xCAT-UI/xCAT-web.spec | 159 +++ 159 files changed, 12105 insertions(+) create mode 100644 xCAT-UI/change.php create mode 100644 xCAT-UI/command.php create mode 100644 xCAT-UI/config.php create mode 100644 xCAT-UI/control.php create mode 100644 xCAT-UI/css/.superfish-navbar.css.swp create mode 100644 xCAT-UI/css/config.css create mode 100644 xCAT-UI/css/main.css create mode 100644 xCAT-UI/css/security.css create mode 100644 xCAT-UI/css/superfish-navbar.css create mode 100644 xCAT-UI/css/superfish-vertical.css create mode 100644 xCAT-UI/css/superfish.css create mode 100644 xCAT-UI/css/theme/demo.html create mode 100644 xCAT-UI/css/theme/images/222222_11x11_icon_arrows_leftright.gif create mode 100644 xCAT-UI/css/theme/images/222222_11x11_icon_arrows_updown.gif create mode 100644 xCAT-UI/css/theme/images/222222_11x11_icon_close.gif create mode 100644 xCAT-UI/css/theme/images/222222_11x11_icon_doc.gif create mode 100644 xCAT-UI/css/theme/images/222222_11x11_icon_folder_closed.gif create mode 100644 xCAT-UI/css/theme/images/222222_11x11_icon_folder_open.gif create mode 100644 xCAT-UI/css/theme/images/222222_11x11_icon_minus.gif create mode 100644 xCAT-UI/css/theme/images/222222_11x11_icon_plus.gif create mode 100644 xCAT-UI/css/theme/images/222222_11x11_icon_resize_se.gif create mode 100644 xCAT-UI/css/theme/images/222222_7x7_arrow_down.gif create mode 100644 xCAT-UI/css/theme/images/222222_7x7_arrow_left.gif create mode 100644 xCAT-UI/css/theme/images/222222_7x7_arrow_right.gif create mode 100644 xCAT-UI/css/theme/images/222222_7x7_arrow_up.gif create mode 100644 xCAT-UI/css/theme/images/888888_11x11_icon_arrows_leftright.gif create mode 100644 xCAT-UI/css/theme/images/888888_11x11_icon_arrows_updown.gif create mode 100644 xCAT-UI/css/theme/images/888888_11x11_icon_close.gif create mode 100644 xCAT-UI/css/theme/images/888888_11x11_icon_doc.gif create mode 100644 xCAT-UI/css/theme/images/888888_11x11_icon_folder_closed.gif create mode 100644 xCAT-UI/css/theme/images/888888_11x11_icon_folder_open.gif create mode 100644 xCAT-UI/css/theme/images/888888_11x11_icon_minus.gif create mode 100644 xCAT-UI/css/theme/images/888888_11x11_icon_plus.gif create mode 100644 xCAT-UI/css/theme/images/888888_7x7_arrow_down.gif create mode 100644 xCAT-UI/css/theme/images/888888_7x7_arrow_left.gif create mode 100644 xCAT-UI/css/theme/images/888888_7x7_arrow_right.gif create mode 100644 xCAT-UI/css/theme/images/888888_7x7_arrow_up.gif create mode 100644 xCAT-UI/css/theme/images/8ab9ff_40x100_textures_02_glass_50.png create mode 100644 xCAT-UI/css/theme/images/d8d8d8_40x100_textures_02_glass_90.png create mode 100644 xCAT-UI/css/theme/images/e0e0e0_40x100_textures_02_glass_80.png create mode 100644 xCAT-UI/css/theme/images/f3f3f3_40x100_textures_01_flat_0.png create mode 100644 xCAT-UI/css/theme/images/ffffff_11x11_icon_arrows_leftright.gif create mode 100644 xCAT-UI/css/theme/images/ffffff_11x11_icon_arrows_updown.gif create mode 100644 xCAT-UI/css/theme/images/ffffff_11x11_icon_close.gif create mode 100644 xCAT-UI/css/theme/images/ffffff_11x11_icon_doc.gif create mode 100644 xCAT-UI/css/theme/images/ffffff_11x11_icon_folder_closed.gif create mode 100644 xCAT-UI/css/theme/images/ffffff_11x11_icon_folder_open.gif create mode 100644 xCAT-UI/css/theme/images/ffffff_11x11_icon_minus.gif create mode 100644 xCAT-UI/css/theme/images/ffffff_11x11_icon_plus.gif create mode 100644 xCAT-UI/css/theme/images/ffffff_7x7_arrow_down.gif create mode 100644 xCAT-UI/css/theme/images/ffffff_7x7_arrow_left.gif create mode 100644 xCAT-UI/css/theme/images/ffffff_7x7_arrow_right.gif create mode 100644 xCAT-UI/css/theme/images/ffffff_7x7_arrow_up.gif create mode 100644 xCAT-UI/css/theme/jquery-ui-themeroller.css create mode 100644 xCAT-UI/etc/apache2/conf.d/xcat-web.conf create mode 100644 xCAT-UI/img/ajax-loader.gif create mode 100644 xCAT-UI/img/arrows-ffffff.png create mode 100644 xCAT-UI/img/asc.gif create mode 100644 xCAT-UI/img/auth.gif create mode 100644 xCAT-UI/img/bg.gif create mode 100644 xCAT-UI/img/bg_button_a.gif create mode 100644 xCAT-UI/img/bg_button_span.gif create mode 100644 xCAT-UI/img/bopper.jpg create mode 100644 xCAT-UI/img/cmd-active.png create mode 100644 xCAT-UI/img/cmd-active.xcf create mode 100644 xCAT-UI/img/cmd.png create mode 100644 xCAT-UI/img/cmd.xcf create mode 100644 xCAT-UI/img/cmdBtn.gif create mode 100644 xCAT-UI/img/cmdBtn.xcf create mode 100644 xCAT-UI/img/desc.gif create mode 100644 xCAT-UI/img/header5.jpg create mode 100644 xCAT-UI/img/header5.xcf create mode 100644 xCAT-UI/img/indicator.gif create mode 100644 xCAT-UI/img/logo2.gif create mode 100644 xCAT-UI/img/red-x.gif create mode 100644 xCAT-UI/img/red-x2-light.gif create mode 100644 xCAT-UI/img/red-x2.gif create mode 100644 xCAT-UI/img/shadow.png create mode 100644 xCAT-UI/img/throbber.gif create mode 100644 xCAT-UI/img/topper.jpg create mode 100644 xCAT-UI/img/topper.xcf create mode 100644 xCAT-UI/index.php create mode 100644 xCAT-UI/js/JSON/JSON.php create mode 100644 xCAT-UI/js/chili-1.8b.js create mode 100644 xCAT-UI/js/config.js create mode 100644 xCAT-UI/js/hoverIntent.js create mode 100644 xCAT-UI/js/jquery-ui-all.min.js create mode 100644 xCAT-UI/js/jquery.form.js create mode 100644 xCAT-UI/js/jquery.jeditable.mini.js create mode 100644 xCAT-UI/js/jquery.min.js create mode 100644 xCAT-UI/js/jquery.tablesorter.js create mode 100644 xCAT-UI/js/jsTree/css.js create mode 100644 xCAT-UI/js/jsTree/flat.xsl create mode 100644 xCAT-UI/js/jsTree/images/dot.gif create mode 100644 xCAT-UI/js/jsTree/images/fminus.gif create mode 100644 xCAT-UI/js/jsTree/images/fminus_rtl.gif create mode 100644 xCAT-UI/js/jsTree/images/fplus.gif create mode 100644 xCAT-UI/js/jsTree/images/fplus_rtl.gif create mode 100644 xCAT-UI/js/jsTree/images/lastli.gif create mode 100644 xCAT-UI/js/jsTree/images/lastli_rtl.gif create mode 100644 xCAT-UI/js/jsTree/images/li.gif create mode 100644 xCAT-UI/js/jsTree/images/marker.gif create mode 100644 xCAT-UI/js/jsTree/images/marker_rtl.gif create mode 100644 xCAT-UI/js/jsTree/images/plus.gif create mode 100644 xCAT-UI/js/jsTree/images/remove.png create mode 100644 xCAT-UI/js/jsTree/images/throbber.gif create mode 100644 xCAT-UI/js/jsTree/jquery.cookie.js create mode 100644 xCAT-UI/js/jsTree/jquery.listen.js create mode 100644 xCAT-UI/js/jsTree/jquery.metadata.js create mode 100644 xCAT-UI/js/jsTree/jquery.xslt.js create mode 100644 xCAT-UI/js/jsTree/nested.xsl create mode 100644 xCAT-UI/js/jsTree/sarissa.js create mode 100644 xCAT-UI/js/jsTree/sarissa_ieemu_xpath.js create mode 100644 xCAT-UI/js/jsTree/tree_component.css create mode 100644 xCAT-UI/js/jsTree/tree_component.js create mode 100644 xCAT-UI/js/jsonwrapper.php create mode 100644 xCAT-UI/js/jsonwrapper_inner.php create mode 100644 xCAT-UI/js/jstreecustomizations.patch create mode 100644 xCAT-UI/js/loading.js create mode 100644 xCAT-UI/js/noderangetree.js create mode 100644 xCAT-UI/js/superfish.js create mode 100644 xCAT-UI/js/xcat.js create mode 100644 xCAT-UI/js/xcatauth.js create mode 100644 xCAT-UI/lib/display.php create mode 100644 xCAT-UI/lib/functions.php create mode 100644 xCAT-UI/lib/profiles.php create mode 100644 xCAT-UI/lib/security.php create mode 100644 xCAT-UI/lib/security.php.ORIG create mode 100644 xCAT-UI/log.php create mode 100644 xCAT-UI/logentry.php create mode 100644 xCAT-UI/main.php create mode 100644 xCAT-UI/monitor.php create mode 100644 xCAT-UI/noderangesource.php create mode 100644 xCAT-UI/provision.php create mode 100644 xCAT-UI/rangeDisplay.php create mode 100644 xCAT-UI/security/JSON/JSON.php create mode 100644 xCAT-UI/security/jsonwrapper.php create mode 100644 xCAT-UI/security/jsonwrapper_inner.php create mode 100644 xCAT-UI/security/log.php create mode 100644 xCAT-UI/site.php create mode 100644 xCAT-UI/src/superfish-1.4.8.zip create mode 100644 xCAT-UI/src/superfish-1.4.8/__MACOSX/superfish-1.4.8/._.DS_Store create mode 100644 xCAT-UI/src/superfish-1.4.8/__MACOSX/superfish-1.4.8/._example.html create mode 100644 xCAT-UI/src/superfish-1.4.8/__MACOSX/superfish-1.4.8/css/._.DS_Store create mode 100644 xCAT-UI/src/superfish-1.4.8/__MACOSX/superfish-1.4.8/images/._.DS_Store create mode 100644 xCAT-UI/src/superfish-1.4.8/__MACOSX/superfish-1.4.8/images/._arrows-ffffff.png create mode 100644 xCAT-UI/src/superfish-1.4.8/superfish-1.4.8/changelog.txt create mode 100644 xCAT-UI/src/superfish-1.4.8/superfish-1.4.8/css/superfish-navbar.css create mode 100644 xCAT-UI/src/superfish-1.4.8/superfish-1.4.8/css/superfish-vertical.css create mode 100644 xCAT-UI/src/superfish-1.4.8/superfish-1.4.8/css/superfish.css create mode 100644 xCAT-UI/src/superfish-1.4.8/superfish-1.4.8/example.html create mode 100644 xCAT-UI/src/superfish-1.4.8/superfish-1.4.8/images/arrows-ffffff.png create mode 100644 xCAT-UI/src/superfish-1.4.8/superfish-1.4.8/images/shadow.png create mode 100644 xCAT-UI/src/superfish-1.4.8/superfish-1.4.8/js/hoverIntent.js create mode 100644 xCAT-UI/src/superfish-1.4.8/superfish-1.4.8/js/jquery-1.2.6.min.js create mode 100644 xCAT-UI/src/superfish-1.4.8/superfish-1.4.8/js/jquery.bgiframe.min.js create mode 100644 xCAT-UI/src/superfish-1.4.8/superfish-1.4.8/js/superfish.js create mode 100644 xCAT-UI/src/superfish-1.4.8/superfish-1.4.8/js/supersubs.js create mode 100644 xCAT-UI/xCAT-web.spec diff --git a/xCAT-UI/change.php b/xCAT-UI/change.php new file mode 100644 index 000000000..da8b341d9 --- /dev/null +++ b/xCAT-UI/change.php @@ -0,0 +1,34 @@ +"; + + # Get an easier alias for the table array + $editable = & $_SESSION["editable-$tab"]; + + # Modify the array with the new value from the editable widget + $editable[$theLine][$theField] = $value; + + // This value goes back to the javascript editable object in the browser + echo "$value"; +} +?> diff --git a/xCAT-UI/command.php b/xCAT-UI/command.php new file mode 100644 index 000000000..cbe43455f --- /dev/null +++ b/xCAT-UI/command.php @@ -0,0 +1,19 @@ +"; + $newargs = array(); + $newargs = explode(" ",$args); + $out = docmd($cmd,$nr,$newargs); + echo $out; +?> diff --git a/xCAT-UI/config.php b/xCAT-UI/config.php new file mode 100644 index 000000000..b142422a0 --- /dev/null +++ b/xCAT-UI/config.php @@ -0,0 +1,27 @@ + diff --git a/xCAT-UI/control.php b/xCAT-UI/control.php new file mode 100644 index 000000000..59ef1e970 --- /dev/null +++ b/xCAT-UI/control.php @@ -0,0 +1,11 @@ + diff --git a/xCAT-UI/css/.superfish-navbar.css.swp b/xCAT-UI/css/.superfish-navbar.css.swp new file mode 100644 index 0000000000000000000000000000000000000000..2c2b637b657dcff720625eb8c15fa1143094383b GIT binary patch literal 12288 zcmeI2&u`pB6vwAXEtnFD;J|@Hr;WlPinB@DhGrunS|w3RRSrn4xKwD?_QunCJ;pQM z4T&O-2nkx?hJ-31F5HngaR3eoap3|8{)37mAfyyf`Oet;!}f0595_^(l|E~&=gph< zzVqgJqik#8%7shxh4}@7*HeVt+V5`OI`T4kZjO*t2&He|@6{7YdOsUI-srNl(d+dZ zq3T49ZI7v?h9_l1W=W8?xeVQybz3Z*$IS=vXKkzkR)K>kFhx!+Et;b~eewi-=IP4^ znQU#X0#*U5fK|XMU=^?mSOu&CR)L3H0hJsgZy|?Aiaf3s*F%+S@zGwa0#*U5fK|XM zU=^?mSOu&CRspMkRlq7>6?h00U_K$&4ij?c2!hA||NDRc-#tdi$KWQ|25s;PI184+ z^WYfx`$3I2e=J>0pEdd!6)E-a07I~ z>)1N*WHSOu&CR)POnfj#25y`XiSE4L+5KS*&=N_5;PXe&2mKF?&6F09tf zlt|o^Z-o`3j@aot$|t)pGv42WKO}Ac~0N^QN{(R1D~0 zEbj8y=lH!JT$ZK@wK(dgZQ*5dyjLwnl0kAXO>W1c zDBo~NQ9JRlR@x#~I4Qc~n@&qaeyIdefY@~}OLcLYP24pVhT?Bh$8p@1m6f2gO0r0& zlK;Sy4(w4grg%}3dIId1=Fh-fS6_!IFQmAwO(Kpm<|^pW&_tqxcg)Gb930Y;`*J0k z1?uBP*=5mOdGbhXbLFFg@TS+7*Vi{TN(z|O^g(1zQ$us6>WfTA22Cwa8Z3&sbUMn? z4ppuMY|KWE-h|;i-!UnzEv{|UQ<{(rE8J9a9GuGCvY6$ah_ literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/config.css b/xCAT-UI/css/config.css new file mode 100644 index 000000000..4c3466920 --- /dev/null +++ b/xCAT-UI/css/config.css @@ -0,0 +1,101 @@ + +/* Styles specific to the db.php page */ + +#tableNames { + position: relative; /* so the h3 inside can be absolute to this div */ + border: 1px solid black; + text-align: left; + padding: 12px 5px 10px 5px; + margin-top: 10px; + margin-bottom: 10px; +} + +#tableNames H3 { + position: absolute; + top: -25px; + left: 15px; + background-color: white; + padding: 0px 5px; +} + +#tableNames A { + font-size: 9pt; + margin-left: 0.6em; + margin-right: 0.6em; +} + +#tableHeading { margin-top: 0px; margin-bottom: 0px; } + +#helpLinks { margin-top: 0px; } + +#helpLinks A { + margin-left: 2em; + margin-right: 2em; +} + +.middlepane { + /* float: left; */ + padding: 5px; + margin: 10px; + min-width: 600px; +} +table.tabTable { + background-color: #CDCDCD; + margin:10px 0pt 15px; + font-size: 8pt; + width: 100%; + text-align: left; +} + + +table.tabTable thead tr th, table.tabTable tfoot tr th { + background-color: #e6EEEE; + border: 1px solid #FFF; + font-size: 8pt; + padding: 4px; +} + +table.tabTable tbody td { + color: #3D3D3D; + padding: 4px; + vertical-align: center; + +} + +table.tabTable thead tr { + background-color: #8dbdd8; +} + + +/*.colHeaders { + font-size: 8pt; + padding: 4px; + background-color: #e6EEEE; + border: 1px solid #FFF; + font-weight: bold; + text-align: center; + +} +*/ + +/* the alternating rows of the table */ +.ListLine0 { background: #EFF6FF; /*#e0f8f8;*/ } +.ListLine1 { background: #D8E8FF; /*#b0f8f8;*/ } + +.Xcell { /* the table cell that contains the red x */ + background-color: white; + vertical-align: middle; +} + +.Ximg { padding-right: 15px; } +.Ximg2 { padding-right: 15px; } + +.edit { + background: #8f8f0b; + font-size: 8pt; +} +/* +#tabTable { + margin-left: auto; + margin-right: auto; +}*/ diff --git a/xCAT-UI/css/main.css b/xCAT-UI/css/main.css new file mode 100644 index 000000000..6f684a650 --- /dev/null +++ b/xCAT-UI/css/main.css @@ -0,0 +1,320 @@ +body { + margin: 0px auto; + text-align: center; + width: 971px; + font: .8em Verdana, Arial, Sans-Serif; + font-family: "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif; + background: #2e2e2e; +} + +#header{ + background: #2e2e2e url('../img/header5.jpg') no-repeat; + color: #c0c0c0; + width: 960px; + margin: 0px auto; + height: 40px; + /* padding-left: 100px; */ +} + +#topper { + background: #2e2e2e url('../img/topper.jpg') no-repeat; + width: 960px; + height: 11px; + margin: 0px auto; + margin-top: 10px; +} + +#bopper { + background: #2e2e2e url('../img/bopper.jpg') no-repeat; + width: 960px; + height: 11px; + margin: 0px auto; +} + +#footer { + font: 8px Verdana, Arial, Sans-Serif; + margin-top: 10px; + color: #ddd; + +} + +#main { + /* padding: 5px; */ + margin: 0px auto; + width: 960px; + background-color: #fff; + overflow: auto; +} + +#load { + display: none; + /* position: absolute; */ + right: 10px; + top: 10px; + background: url(../img/ajax-loader.gif); + width: 43px; + height: 11px; + text-indent: -9999em; +} + +#cmdForm { + margin-left: 240px; + background: url(../img/cmd.png) no-repeat; + width: 132px; + width: 159px; + height: 40px; + float: left; +} + +#cmdForm #cmd { + border: 0; + background: none; + /* color: #d1d7F8; */ + color: #555; + font-size: 12px; + font-family: serif; + padding-top: 10px; + padding-left: 4px; + float: left; +} + +#cmdForm #go { + float: right; + padding-top: 8px; + +} + +a.button { + background: transparent url('../img/bg_button_a.gif') no-repeat scroll top right; + color: #444; + display: inline-block; /*block;*/ + /* float: left; */ + font: normal 12px arial, sans-serif; + height: 24px; + margin-right: 6px; + padding-right: 18px; /* sliding doors padding */ + text-decoration: none; + cursor: pointer; +} + +a.button span { + background: transparent url('../img/bg_button_span.gif') no-repeat; + display: inline-block; /*block;*/ + line-height: 14px; + padding: 5px 0 5px 18px; + color: #000; +} + +a.button:active { + background-position: bottom right; + color: #000; + outline: none; /* hide dotted outline in Firefox */ +} + +a.button:active span { + background-position: bottom left; + padding: 6px 0 4px 18px; /* push text down 1px */ +} + +#rangedisplay { + float: left; + text-align: left; + width: 700px; +} +#nrtree { + float: left; + width: 150px; + border-right: 1px dotted #555; +} + +/* tables */ +table.tablesorter { + font-family:arial; + background-color: #CDCDCD; + margin:10px 0pt 15px; + font-size: 8pt; + width: 100%; + text-align: left; +} +table.tablesorter thead tr th, table.tablesorter tfoot tr th { + background-color: #e6EEEE; + border: 1px solid #FFF; + font-size: 8pt; + padding: 4px; +} +table.tablesorter thead tr .header { + background-image: url('../img/bg.gif'); + background-repeat: no-repeat; + background-position: center right; + cursor: pointer; +} +table.tablesorter tbody td { + color: #3D3D3D; + padding: 4px; + background-color: #FFF; + vertical-align: top; +} +table.tablesorter tbody tr.odd td { + background-color:#F0F0F6; +} +table.tablesorter thead tr .headerSortUp { + background-image: url('../img/asc.gif'); +} +table.tablesorter thead tr .headerSortDown { + background-image: url('../img/desc.gif'); +} +table.tablesorter thead tr .headerSortDown, table.tablesorter thead tr .headerSortUp { +background-color: #8dbdd8; +} + + +.controlHeaders { + margin: 0; + padding: 0; + background: #e6EEEE url(foo.jpg) 0 0 repeat-x; + float: left; + width: 100%; + border: 1px solid #2e2e2e; + border-width: 1px 0; + text-align: center; +} + +.controlHeaders li { + display: inline; + padding: 0; + margin: 0; +} + +.controlHeaders a:link, +.controlHeaders a:visited { + color: #000; + background: #8dbdd8; + padding: 10px 40px 4px 10px; + float: left; + width: auto; + border-right: 1px solid #2e2e2e; + text-decoration: none; +} + +.controlHeaders a:hover { + color: #fff; + background: #2e2e2e; +} + +.controlHeaders li:first-child a { + border-left: 1px solid #2d2d2d; +} + +.mapper { + text-align: left; + padding: 10px; + margin: 10px; + float: left; + width: 916px; + border-bottom: 1px dotted #555; +} + +/* loading bar */ +#wrapper { display: none; } + +#loadingZone { + margin: 0 auto; + width: 410px; + text-align: center; + color:#6ea1fa; +} + +#loadingBar { + border:1px solid #c2c2c2; + height:2px; + text-align:left; + line-height:0; + margin:0; + color:#6ea1fa; + padding:0; + overflow:hidden; /*fix for IE 6*/ +} +#progressBar{ + height:2px; + line-height:0; + margin:0; + padding:0; + background:#b3f83d; + width:0%; +} +#loadingSms{ + color:#6ea1fa; + float:left; + padding:10px 2px; +} +#infoProgress{ + color:#6ea1fa; + float:right; +padding:10px 2px; +} +#infoLoading{ + padding:10px; + color:#b9b9b9; + font-size:10px; +} + +/* for display tables */ +.tabMenu { + text-align: left; + padding: 10px; +} + +/* for usernamed login */ +#musername { + float: right; + margin-right: 10px; + padding-right: 5px; + text-align: right; + font-size: .8em; +} +#musername span { + color: yellow; +} +#musername a { + color: #ddd; +} +.mContent { + padding: 10px; + padding-top: 0px; + margin: 10px; + margin-top: 0px; + text-align: left; + color: #555; +} +.mContent h1 { + font-size: 1.2em; + color: #555; +} +.mContent h1 i { + color: #5d90e9; +} + +.mContent h2 { + font-size: 1.1em; + color: #555; +} +.mContent a, .mapper a { + color:#6ea1fa; +} +.nrcmd { + float: right; + text-align: left; +} +.mapper span { + float: left; +} +/* this is for the table editing in config */ +.editme input { + font-family: "Lucida Grande", "Lucida Sans Unicode", Arial, Verdana, sans-serif; + background: #FAF8CC; + margin: 0; + padding: 0; + font-size: 8pt; + paddint-right: 0; + +} diff --git a/xCAT-UI/css/security.css b/xCAT-UI/css/security.css new file mode 100644 index 000000000..42cb16a90 --- /dev/null +++ b/xCAT-UI/css/security.css @@ -0,0 +1,15 @@ +#logdialog { /* the div inside the dialog */ + margin: 0px 10px 20px 10px; /* for some reason the containing dialog cuts off the right 30px */ + padding: 0px; + font-family: Sans-Serif; + /*font-size: 7pt; */ +} + +.LogDialog { + background-color: white; +} + +#logdialogNote { + margin-top: 3px; +} + diff --git a/xCAT-UI/css/superfish-navbar.css b/xCAT-UI/css/superfish-navbar.css new file mode 100644 index 000000000..c5fe0b11d --- /dev/null +++ b/xCAT-UI/css/superfish-navbar.css @@ -0,0 +1,93 @@ + +/*** adding the class sf-navbar in addition to sf-menu creates an all-horizontal nav-bar menu ***/ +.sf-navbar { + background: #BDD2FF; + height: 2.5em; + padding-bottom: 2.5em; + position: relative; +} +.sf-navbar li { + background: #AABDE6; + position: static; +} +.sf-navbar a { + border-top: none; +} +.sf-navbar li ul { + width: 44em; /*IE6 soils itself without this*/ +} +.sf-navbar li li { + background: #BDD2FF; + position: relative; +} +.sf-navbar li li ul { + width: 13em; +} +.sf-navbar li li li { + width: 100%; +} +.sf-navbar ul li { + width: auto; + float: left; +} +.sf-navbar a, .sf-navbar a:visited { + border: none; +} +.sf-navbar li.current { + background: #BDD2FF; +} +.sf-navbar li:hover, +.sf-navbar li.sfHover, +.sf-navbar li li.current, +.sf-navbar a:focus, .sf-navbar a:hover, .sf-navbar a:active { + background: #CEE3FF; +} +.sf-navbar ul li:hover, +.sf-navbar ul li.sfHover, +ul.sf-navbar ul li:hover li, +ul.sf-navbar ul li.sfHover li, +.sf-navbar ul a:focus, .sf-navbar ul a:hover, .sf-navbar ul a:active { + background: #D1DFFF; +} +ul.sf-navbar li li li:hover, +ul.sf-navbar li li li.sfHover, +.sf-navbar li li.current li.current, +.sf-navbar ul li li a:focus, .sf-navbar ul li li a:hover, .sf-navbar ul li li a:active { + background: #E6EEFF; +} +ul.sf-navbar .current ul, +ul.sf-navbar ul li:hover ul, +ul.sf-navbar ul li.sfHover ul { + left: 0; + top: 2.5em; /* match top ul list item height */ +} +ul.sf-navbar .current ul ul { + top: -999em; +} + +.sf-navbar li li.current > a { + font-weight: bold; +} + +/*** point all arrows down ***/ +/* point right for anchors in subs */ +.sf-navbar ul .sf-sub-indicator { background-position: -10px -100px; } +.sf-navbar ul a > .sf-sub-indicator { background-position: 0 -100px; } +/* apply hovers to modern browsers */ +.sf-navbar ul a:focus > .sf-sub-indicator, +.sf-navbar ul a:hover > .sf-sub-indicator, +.sf-navbar ul a:active > .sf-sub-indicator, +.sf-navbar ul li:hover > a > .sf-sub-indicator, +.sf-navbar ul li.sfHover > a > .sf-sub-indicator { + background-position: -10px -100px; /* arrow hovers for modern browsers*/ +} + +/*** remove shadow on first submenu ***/ +.sf-navbar > li > ul { + background: transparent; + padding: 0; + -moz-border-radius-bottomleft: 0; + -moz-border-radius-topright: 0; + -webkit-border-top-right-radius: 0; + -webkit-border-bottom-left-radius: 0; +} diff --git a/xCAT-UI/css/superfish-vertical.css b/xCAT-UI/css/superfish-vertical.css new file mode 100644 index 000000000..8025b7859 --- /dev/null +++ b/xCAT-UI/css/superfish-vertical.css @@ -0,0 +1,23 @@ +/*** adding sf-vertical in addition to sf-menu creates a vertical menu ***/ +.sf-vertical, .sf-vertical li { + width: 10em; +} +/* this lacks ul at the start of the selector, so the styles from the main CSS file override it where needed */ +.sf-vertical li:hover ul, +.sf-vertical li.sfHover ul { + left: 10em; /* match ul width */ + top: 0; +} + +/*** alter arrow directions ***/ +.sf-vertical .sf-sub-indicator { background-position: -10px 0; } /* IE6 gets solid image only */ +.sf-vertical a > .sf-sub-indicator { background-position: 0 0; } /* use translucent arrow for modern browsers*/ + +/* hover arrow direction for modern browsers*/ +.sf-vertical a:focus > .sf-sub-indicator, +.sf-vertical a:hover > .sf-sub-indicator, +.sf-vertical a:active > .sf-sub-indicator, +.sf-vertical li:hover > a > .sf-sub-indicator, +.sf-vertical li.sfHover > a > .sf-sub-indicator { + background-position: -10px 0; /* arrow hovers for modern browsers*/ +} \ No newline at end of file diff --git a/xCAT-UI/css/superfish.css b/xCAT-UI/css/superfish.css new file mode 100644 index 000000000..56216e243 --- /dev/null +++ b/xCAT-UI/css/superfish.css @@ -0,0 +1,161 @@ + +/*** ESSENTIAL STYLES ***/ +.sf-menu, .sf-menu * { + margin: 0; + padding: 0; + list-style: none; +} +.sf-menu { + line-height: 1.5; +} +.sf-menu ul { + position: absolute; + top: -999em; + width: 10em; /* left offset of submenus need to match (see below) */ +} +.sf-menu ul li { + width: 100%; +} +.sf-menu li:hover { + visibility: inherit; /* fixes IE7 'sticky bug' */ +} +.sf-menu li { + float: left; + position: relative; +} +.sf-menu a { + display: block; + position: relative; +} +.sf-menu li:hover ul, +.sf-menu li.sfHover ul { + left: 0; + top: 2.5em; /* match top ul list item height */ + /* this changes the top location of the first sub-menu */ + top: 3em; /* match top ul list item height */ + z-index: 99; +} +ul.sf-menu li:hover li ul, +ul.sf-menu li.sfHover li ul { + top: -999em; +} +ul.sf-menu li li:hover ul, +ul.sf-menu li li.sfHover ul { + left: 10em; /* match ul width */ + top: 0; +} +ul.sf-menu li li:hover li ul, +ul.sf-menu li li.sfHover li ul { + top: -999em; +} +ul.sf-menu li li li:hover ul, +ul.sf-menu li li li.sfHover ul { + left: 10em; /* match ul width */ + top: 0; +} + +/*** DEMO SKIN ***/ +.sf-menu { + float: left; + margin-bottom: 1em; + /* the below positions the buttons left relative to the xCAT icon */ + margin-left: 100px; +} +.sf-menu a { + /*border-left: 1px solid #fff; */ + border-left: 1px solid #2e2e2e; + border-top: 1px solid #CFDEFF; + border-top: 1px solid #9da5d4; + /* this controls how big the boxes are for the menus */ + padding: .78em 2em; + text-decoration:none; +} +.sf-menu a, .sf-menu a:visited { /* visited pseudo selector so IE6 applies text colour*/ + color: #13a; + color: #ddd; +} +.sf-menu li { + background: #BDD2FF; + background: #646987; +} +.sf-menu li li { + background: #AABDE6; + background: #686d8a; +} + +.level2 { + margin-left: 128px; + top: -482px; + +} +.level3 { + margin-left: 256px; + top: -964px; + background: red; + +} +.sf-menu li li li { + background: #9AAEDB; +} +.sf-menu li:hover, .sf-menu li.sfHover, +.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active { + background: #CFDEFF; + background: #9Da5d4; + color: #646987; + outline: 0; +} + +/*** arrows **/ +.sf-menu a.sf-with-ul { + padding-right: 2.25em; + padding-right: 2.5em; + min-width: 1px; /* trigger IE7 hasLayout so spans position accurately */ +} +.sf-sub-indicator { + position: absolute; + display: block; + right: .75em; + top: 1.05em; /* IE6 only */ + width: 10px; + height: 10px; + text-indent: -999em; + overflow: hidden; + background: url('../img/arrows-ffffff.png') no-repeat -10px -100px; /* 8-bit indexed alpha png. IE6 gets solid image only */ +} +a > .sf-sub-indicator { /* give all except IE6 the correct values */ + top: .8em; + background-position: 0 -100px; /* use translucent arrow for modern browsers*/ +} +/* apply hovers to modern browsers */ +a:focus > .sf-sub-indicator, +a:hover > .sf-sub-indicator, +a:active > .sf-sub-indicator, +li:hover > a > .sf-sub-indicator, +li.sfHover > a > .sf-sub-indicator { + background-position: -10px -100px; /* arrow hovers for modern browsers*/ +} +/* point right for anchors in subs */ +.sf-menu ul .sf-sub-indicator { background-position: -10px 0; } +.sf-menu ul a > .sf-sub-indicator { background-position: 0 0; } +/* apply hovers to modern browsers */ +.sf-menu ul a:focus > .sf-sub-indicator, +.sf-menu ul a:hover > .sf-sub-indicator, +.sf-menu ul a:active > .sf-sub-indicator, +.sf-menu ul li:hover > a > .sf-sub-indicator, +.sf-menu ul li.sfHover > a > .sf-sub-indicator { + background-position: -10px 0; /* arrow hovers for modern browsers*/ + background: red; +} + +/*** shadows for all but IE6 **/ +.sf-shadow ul { + background: url('../img/shadow.png') no-repeat bottom right; + padding: 0 8px 9px 0; + -moz-border-radius-bottomleft: 17px; + -moz-border-radius-topright: 17px; + -webkit-border-top-right-radius: 17px; + -webkit-border-bottom-left-radius: 17px; +} +.sf-shadow ul.sf-shadow-off { + background: transparent; +} diff --git a/xCAT-UI/css/theme/demo.html b/xCAT-UI/css/theme/demo.html new file mode 100644 index 000000000..6d52fea92 --- /dev/null +++ b/xCAT-UI/css/theme/demo.html @@ -0,0 +1,167 @@ + + + + + Themeroller Demo + + + + + + + + + +
+ + + + + +

Accordion

+ +
+
+

Test 1

+
+

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

+
+
+
+

Test 2

+
+

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

+
+
+

Test 3

+
+

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

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

Tabs

+ +
+ +
+

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

+
+
+

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

+
+
+

Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.

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

Slider

+ +
+
+
+
+ + + + +

Date Picker

+ +
+ + + + +

Dialog

+ +
+
+
+ This is my title + X +
+
+

I'm in a dialog!

+
+
+
+
+
+
+
+
+
+
+
+ + +
+
+ + +
+ + + + + diff --git a/xCAT-UI/css/theme/images/222222_11x11_icon_arrows_leftright.gif b/xCAT-UI/css/theme/images/222222_11x11_icon_arrows_leftright.gif new file mode 100644 index 0000000000000000000000000000000000000000..b26780a3b519071fe2341991b85621d6f44e8df4 GIT binary patch literal 58 zcmZ?wbhEHbJ3nK#qBZCeD5P)PDm;`(JSDt3vcVM!oUzf(Z L4L{e5FjxZsbBGUF literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/222222_11x11_icon_arrows_updown.gif b/xCAT-UI/css/theme/images/222222_11x11_icon_arrows_updown.gif new file mode 100644 index 0000000000000000000000000000000000000000..69eb0770ae9de5f12144e945fd5786d47e551a16 GIT binary patch literal 56 zcmZ?wbhEHbJ3nK#qBZCeD5P)PDnD~48S8`=Dh|gJf?!<;Q IcSISi0ZAea&;S4c literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/222222_11x11_icon_close.gif b/xCAT-UI/css/theme/images/222222_11x11_icon_close.gif new file mode 100644 index 0000000000000000000000000000000000000000..70d0c82bc9284bf9483461183e40210bf9a67fd7 GIT binary patch literal 62 zcmZ?wbhEHbJ3nK#qBZCeD5P)PDm_&Q}*%##OW-8fi*8O3w Obn!onNi$Sf8LR=OZV%7^ literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/222222_11x11_icon_doc.gif b/xCAT-UI/css/theme/images/222222_11x11_icon_doc.gif new file mode 100644 index 0000000000000000000000000000000000000000..26db4340c1a9ba73ff8a8e024fd4bb2cf35d1733 GIT binary patch literal 64 zcmZ?wbhEHbJ3nK#qBZCeD5P)PDn8bVf*|{&CxYcyVS6H~O Q^mBUcDfUSV%0w8f0nR=VBLDyZ literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/222222_11x11_icon_folder_closed.gif b/xCAT-UI/css/theme/images/222222_11x11_icon_folder_closed.gif new file mode 100644 index 0000000000000000000000000000000000000000..4efed68326e48add8cf75eeb42e0d3b9d9c7ee06 GIT binary patch literal 61 zcmZ?wbhEHbJ3nK#qBZCeD5P)PDm_&N|SF-c|ikN)vq7?JC OwDa$DA4M=QSOWl@gb)z` literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/222222_11x11_icon_folder_open.gif b/xCAT-UI/css/theme/images/222222_11x11_icon_folder_open.gif new file mode 100644 index 0000000000000000000000000000000000000000..0032ff62d018f7d5442095c2701835df64363b64 GIT binary patch literal 61 zcmZ?wbhEHbJ3nK#qBZCeD5P)PDm_&N|SF-cIdSrZQ<2I&s NA;rH^lY$r+tO1{k5Apy2 literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/222222_11x11_icon_minus.gif b/xCAT-UI/css/theme/images/222222_11x11_icon_minus.gif new file mode 100644 index 0000000000000000000000000000000000000000..6851f39811a8ae8a532c8641b76039bf74b384b1 GIT binary patch literal 56 zcmZ?wbhEHbJ3nK#qBZCeD5P)PDnD~48SDxnOU)Wg^baT_a IWeg0~08dH{{Qv*} literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/222222_11x11_icon_plus.gif b/xCAT-UI/css/theme/images/222222_11x11_icon_plus.gif new file mode 100644 index 0000000000000000000000000000000000000000..74ac5cb910d74824b3c098481a2b1f35acd52cbb GIT binary patch literal 61 zcmZ?wbhEHbJ3nK#qBZCeD5P)PDm_&N|IcIOba3*;Dp@h|E Oc+UPXO`IaaU=0AQbP*H) literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/222222_11x11_icon_resize_se.gif b/xCAT-UI/css/theme/images/222222_11x11_icon_resize_se.gif new file mode 100644 index 0000000000000000000000000000000000000000..251dc1628e0fe7820d7ae0d494a2e4708d6cfada GIT binary patch literal 61 zcmZ?wbhEHbJ3nK#qBZCeD5P)PDm_&N|8&+4pWhyB+b-dux Np18-A3j!G!tO2bd5heft literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/222222_7x7_arrow_down.gif b/xCAT-UI/css/theme/images/222222_7x7_arrow_down.gif new file mode 100644 index 0000000000000000000000000000000000000000..29c6c706dd9961f80220744c417ca2dc6a6145ba GIT binary patch literal 52 zcmZ?wbhEHbWM^P!XkcJaQBq<2_gC>J3nK#qBZCeD5P)PDn7DiTIZg|_J3nK#qBZCeD5P)PDn0R`a(J3nK#qBZCeD5P)PDn0R~=Dpx#sdt;KfY$yYR FH2@=@3;_TD literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/222222_7x7_arrow_up.gif b/xCAT-UI/css/theme/images/222222_7x7_arrow_up.gif new file mode 100644 index 0000000000000000000000000000000000000000..28169eb91959d1b21e2e1c99bd68e433f59febfc GIT binary patch literal 52 zcmZ?wbhEHbWM^P!XkcJaQBq<2_gC>J3nK#qBZCeD5P)PDn7DiT8yIVOC3{xSVq&lc E0162TQ2+n{ literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/888888_11x11_icon_arrows_leftright.gif b/xCAT-UI/css/theme/images/888888_11x11_icon_arrows_leftright.gif new file mode 100644 index 0000000000000000000000000000000000000000..19f9d6b21a9b2daa2f639510d5411596f5b1f270 GIT binary patch literal 58 zcmZ?wbhEHbFQzp_gC>J3nK#qBZCeD5P)PDm;`(JSDt3vcVM!oUzf(Z L4L{e5FjxZssVESU literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/888888_11x11_icon_arrows_updown.gif b/xCAT-UI/css/theme/images/888888_11x11_icon_arrows_updown.gif new file mode 100644 index 0000000000000000000000000000000000000000..c10451f64f86689c88171f350381a10acc9394ee GIT binary patch literal 56 zcmZ?wbhEHbFQzp_gC>J3nK#qBZCeD5P)PDnD~48S8`=Dh|gJf?!<;Q IcSISi0en&q2mk;8 literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/888888_11x11_icon_close.gif b/xCAT-UI/css/theme/images/888888_11x11_icon_close.gif new file mode 100644 index 0000000000000000000000000000000000000000..326d015330520dab34a3bf6911b2dcb14b2798e4 GIT binary patch literal 62 zcmZ?wbhEHbFQzp_gC>J3nK#qBZCeD5P)PDm_&Q}*%##OW-8fi*8O3w Obn!onNi$Sf8LR=|?hyz8 literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/888888_11x11_icon_doc.gif b/xCAT-UI/css/theme/images/888888_11x11_icon_doc.gif new file mode 100644 index 0000000000000000000000000000000000000000..7d1b5cb574c6a608170bab4b6a8784cb92aa800d GIT binary patch literal 64 zcmZ?wbhEHbFQzp_gC>J3nK#qBZCeD5P)PDn8bVf*|{&CxYcyVS6H~O Q^mBUcDfUSV%0w8f0Si46TL1t6 literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/888888_11x11_icon_folder_closed.gif b/xCAT-UI/css/theme/images/888888_11x11_icon_folder_closed.gif new file mode 100644 index 0000000000000000000000000000000000000000..71bff058363134a161d3061d256e19c0a2da1f23 GIT binary patch literal 61 zcmZ?wbhEHbFQzp_gC>J3nK#qBZCeD5P)PDm_&N|SF-c|ikN)vq7?JC OwDa$DA4M=QSOWmn%n?Zd literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/888888_11x11_icon_folder_open.gif b/xCAT-UI/css/theme/images/888888_11x11_icon_folder_open.gif new file mode 100644 index 0000000000000000000000000000000000000000..33a20b851c4630bb3573ab293d16fbe75174d2d4 GIT binary patch literal 61 zcmZ?wbhEHbFQzp_gC>J3nK#qBZCeD5P)PDm_&N|SF-cIdSrZQ<2I&s NA;rH^lY$r+tO3~55h?%x literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/888888_11x11_icon_minus.gif b/xCAT-UI/css/theme/images/888888_11x11_icon_minus.gif new file mode 100644 index 0000000000000000000000000000000000000000..777c3288ff3aa7ec86bca0ea85d48d0d72c5a12f GIT binary patch literal 56 zcmZ?wbhEHbFQzp_gC>J3nK#qBZCeD5P)PDnD~48SDxnOU)Wg^baT_a IWeg0~0D^iCH2?qr literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/888888_11x11_icon_plus.gif b/xCAT-UI/css/theme/images/888888_11x11_icon_plus.gif new file mode 100644 index 0000000000000000000000000000000000000000..43531fff3c1905994ea865dc738282461e4da3a9 GIT binary patch literal 61 zcmZ?wbhEHbFQzp_gC>J3nK#qBZCeD5P)PDm_&N|IcIOba3*;Dp@h|E Oc+UPXO`IaaU=0A}yb??R literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/888888_7x7_arrow_down.gif b/xCAT-UI/css/theme/images/888888_7x7_arrow_down.gif new file mode 100644 index 0000000000000000000000000000000000000000..c91731de5c662e0dafff944fbeca152cbd88e509 GIT binary patch literal 52 zcmZ?wbhEHbWM^P!XkcLI>FQzp_gC>J3nK#qBZCeD5P)PDn7DiTIZg|_FQzp_gC>J3nK#qBZCeD5P)PDn0R`a(FQzp_gC>J3nK#qBZCeD5P)PDn0R~=Dpx#sdt;KfY$yYR FH2_m54LJY+ literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/888888_7x7_arrow_up.gif b/xCAT-UI/css/theme/images/888888_7x7_arrow_up.gif new file mode 100644 index 0000000000000000000000000000000000000000..165666af012e69a113c200a6c1b70491a703c077 GIT binary patch literal 52 zcmZ?wbhEHbWM^P!XkcLI>FQzp_gC>J3nK#qBZCeD5P)PDn7DiT8yIVOC3{xSVq&lc E0619-i2wiq literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/8ab9ff_40x100_textures_02_glass_50.png b/xCAT-UI/css/theme/images/8ab9ff_40x100_textures_02_glass_50.png new file mode 100644 index 0000000000000000000000000000000000000000..ea92c4c512c736cde5fd1b1ff2e5d0a747ccb570 GIT binary patch literal 219 zcmeAS@N?(olHy`uVBq!ia0vp^8bF-F!3HG1q!d*FsYRYHjv*P1Z?7EWJ!Bx@>Nsb| zf4LQHQ9CX?3do7Q>YN`ILap6qyXXBaa+_RXj%CnTIr2TiV-Ll|j&3>j>yk=b$e_F{Fzi?H; RMxbjMJYD@<);T3K0RY+3RR;h7 literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/d8d8d8_40x100_textures_02_glass_90.png b/xCAT-UI/css/theme/images/d8d8d8_40x100_textures_02_glass_90.png new file mode 100644 index 0000000000000000000000000000000000000000..7730bae7e05cfe8a6b11c77268a303b0bf999de6 GIT binary patch literal 221 zcmeAS@N?(olHy`uVBq!ia0vp^8bF-F!3HG1q!d*FsU@B+jv*P1Z?8BC9ySnQaXige zKZ7lSiIe&HMgF_VY>wCGdA;8E{=MOjV)F;_j9VL`9CR0m1#qumy~31*pF96~Wtnu` z?EMd-vbR6n`t!i&Ikit4Zv8Q@h`pY7I9qqc*?0p5vw!k))><=F;Wx>C8WZ~}CcT3{ Qf$nASboFyt=akR{0LVR2H~;_u literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/e0e0e0_40x100_textures_02_glass_80.png b/xCAT-UI/css/theme/images/e0e0e0_40x100_textures_02_glass_80.png new file mode 100644 index 0000000000000000000000000000000000000000..7952d2323f38e403dbcb7752d39b617f4547f7bc GIT binary patch literal 214 zcmeAS@N?(olHy`uVBq!ia0vp^8bF-F!3HG1q!d*Fskxpmjv*P1Z!d2YJZvDqVmR^f zzuzIOJa74)Brw-9gls7GU-x_8{_6?9-!{~H_ucIp~#OYFF@$eBego}$P1x62S^Pf-bSQ(TtDnm{ Hr-UW|Ml(*W literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/f3f3f3_40x100_textures_01_flat_0.png b/xCAT-UI/css/theme/images/f3f3f3_40x100_textures_01_flat_0.png new file mode 100644 index 0000000000000000000000000000000000000000..ed434be5ae06276b6fb92df3b25d4590ea354589 GIT binary patch literal 180 zcmeAS@N?(olHy`uVBq!ia0vp^8bF-F!3HG1q!d*FscKIb$B>N1x91EQ4=4yQ7#`Sv zTRcFebP0l+XkK DXTC6f literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/ffffff_11x11_icon_arrows_leftright.gif b/xCAT-UI/css/theme/images/ffffff_11x11_icon_arrows_leftright.gif new file mode 100644 index 0000000000000000000000000000000000000000..b23fdec379949e87e4e75005eba559161b961530 GIT binary patch literal 58 zcmZ?wbhEHbe Jxg*M84FI$n5L^HN literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/ffffff_11x11_icon_close.gif b/xCAT-UI/css/theme/images/ffffff_11x11_icon_close.gif new file mode 100644 index 0000000000000000000000000000000000000000..b897068df10a7cc21bc04cbc163728307732475b GIT binary patch literal 62 zcmZ?wbhEHb%3uuuAiWY? literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/ffffff_11x11_icon_doc.gif b/xCAT-UI/css/theme/images/ffffff_11x11_icon_doc.gif new file mode 100644 index 0000000000000000000000000000000000000000..586b716bcaa6c59d18f02f12746407ad75e4cf85 GIT binary patch literal 64 zcmZ?wbhEHb2Gm F)&P9z4R!zk literal 0 HcmV?d00001 diff --git a/xCAT-UI/css/theme/images/ffffff_7x7_arrow_right.gif b/xCAT-UI/css/theme/images/ffffff_7x7_arrow_right.gif new file mode 100644 index 0000000000000000000000000000000000000000..ab14178610fb9542d5e327f041353d009c9416a5 GIT binary patch literal 53 zcmZ?wbhEHbWM^P!XkcLY^Y0JizrTt> Make your jQuery Components ThemeRoller-Compatible! +*/ + +/*component global class*/ +.ui-component { + /*resets*/margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; + font-family: Lucida Grande, Lucida Sans, Arial, sans-serif; + font-size: 1.2em; +} +/*component content styles*/ +.ui-component-content { + border: 1px solid #dddddd; + background: #f3f3f3 url(images/f3f3f3_40x100_textures_01_flat_0.png) 0 0 repeat-x; + color: #362b36; +} +.ui-component-content a { + color: #362b36; + text-decoration: underline; +} +/*component states*/ +.ui-default-state { + border: 1px solid #cccccc; + background: #e0e0e0 url(images/e0e0e0_40x100_textures_02_glass_80.png) 0 50% repeat-x; + font-weight: normal; + color: #444444 !important; +} +.ui-default-state a { + color: #444444; +} +.ui-default-state:hover, .ui-hover-state { + border: 1px solid #888888; + background: #d8d8d8 url(images/d8d8d8_40x100_textures_02_glass_90.png) 0 50% repeat-x; + font-weight: normal; + color: #111111 !important; +} +.ui-hover-state a { + color: #111111; +} +.ui-default-state:active, .ui-active-state { + border: 1px solid #2694e8; + background: #8ab9ff url(images/8ab9ff_40x100_textures_02_glass_50.png) 0 50% repeat-x; + font-weight: normal; + color: #000000 !important; + outline: none; +} +.ui-active-state a { + color: #000000; + outline: none; +} +/*icons*/ +.ui-arrow-right-default {background: url(images/888888_7x7_arrow_right.gif) no-repeat 50% 50%;} +.ui-arrow-right-default:hover, .ui-arrow-right-hover {background: url(images/222222_7x7_arrow_right.gif) no-repeat 50% 50%;} +.ui-arrow-right-default:active, .ui-arrow-right-active {background: url(images/ffffff_7x7_arrow_right.gif) no-repeat 50% 50%;} +.ui-arrow-right-content {background: url(images/222222_7x7_arrow_right.gif) no-repeat 50% 50%;} + +.ui-arrow-left-default {background: url(images/888888_7x7_arrow_left.gif) no-repeat 50% 50%;} +.ui-arrow-left-default:hover, .ui-arrow-left-hover {background: url(images/222222_7x7_arrow_left.gif) no-repeat 50% 50%;} +.ui-arrow-left-default:active, .ui-arrow-left-active {background: url(images/ffffff_7x7_arrow_left.gif) no-repeat 50% 50%;} +.ui-arrow-left-content {background: url(images/222222_7x7_arrow_left.gif) no-repeat 50% 50%;} + +.ui-arrow-down-default {background: url(images/888888_7x7_arrow_down.gif) no-repeat 50% 50%;} +.ui-arrow-down-default:hover, .ui-arrow-down-hover {background: url(images/222222_7x7_arrow_down.gif) no-repeat 50% 50%;} +.ui-arrow-down-default:active, .ui-arrow-down-active {background: url(images/ffffff_7x7_arrow_down.gif) no-repeat 50% 50%;} +.ui-arrow-down-content {background: url(images/222222_7x7_arrow_down.gif) no-repeat 50% 50%;} + +.ui-arrow-up-default {background: url(images/888888_7x7_arrow_up.gif) no-repeat 50% 50%;} +.ui-arrow-up-default:hover, .ui-arrow-up-hover {background: url(images/222222_7x7_arrow_up.gif) no-repeat 50% 50%;} +.ui-arrow-up-default:active, .ui-arrow-up-active {background: url(images/ffffff_7x7_arrow_up.gif) no-repeat 50% 50%;} +.ui-arrow-up-content {background: url(images/222222_7x7_arrow_up.gif) no-repeat 50% 50%;} + +.ui-close-default {background: url(images/888888_11x11_icon_close.gif) no-repeat 50% 50%;} +.ui-close-default:hover, .ui-close-hover {background: url(images/222222_11x11_icon_close.gif) no-repeat 50% 50%;} +.ui-close-default:active, .ui-close-active {background: url(images/ffffff_11x11_icon_close.gif) no-repeat 50% 50%;} +.ui-close-content {background: url(images/ffffff_11x11_icon_close.gif) no-repeat 50% 50%;} + +.ui-folder-closed-default {background: url(images/888888_11x11_icon_folder_closed.gif) no-repeat 50% 50%;} +.ui-folder-closed-default:hover, .ui-folder-closed-hover {background: url(images/222222_11x11_icon_folder_closed.gif) no-repeat 50% 50%;} +.ui-folder-closed-default:active, .ui-folder-closed-active {background: url(images/ffffff_11x11_icon_folder_closed.gif) no-repeat 50% 50%;} +.ui-folder-closed-content {background: url(images/888888_11x11_icon_folder_closed.gif) no-repeat 50% 50%;} + +.ui-folder-open-default {background: url(images/888888_11x11_icon_folder_open.gif) no-repeat 50% 50%;} +.ui-folder-open-default:hover, .ui-folder-open-hover {background: url(images/222222_11x11_icon_folder_open.gif) no-repeat 50% 50%;} +.ui-folder-open-default:active, .ui-folder-open-active {background: url(images/ffffff_11x11_icon_folder_open.gif) no-repeat 50% 50%;} +.ui-folder-open-content {background: url(images/ffffff_11x11_icon_folder_open.gif) no-repeat 50% 50%;} + +.ui-doc-default {background: url(images/888888_11x11_icon_doc.gif) no-repeat 50% 50%;} +.ui-doc-default:hover, .ui-doc-hover {background: url(images/222222_11x11_icon_doc.gif) no-repeat 50% 50%;} +.ui-doc-default:active, .ui-doc-active {background: url(images/ffffff_11x11_icon_doc.gif) no-repeat 50% 50%;} +.ui-doc-content {background: url(images/222222_11x11_icon_doc.gif) no-repeat 50% 50%;} + +.ui-arrows-leftright-default {background: url(images/888888_11x11_icon_arrows_leftright.gif) no-repeat 50% 50%;} +.ui-arrows-leftright-default:hover, .ui-arrows-leftright-hover {background: url(images/222222_11x11_icon_arrows_leftright.gif) no-repeat 50% 50%;} +.ui-arrows-leftright-default:active, .ui-arrows-leftright-active {background: url(images/ffffff_11x11_icon_arrows_leftright.gif) no-repeat 50% 50%;} +.ui-arrows-leftright-content {background: url(images/222222_11x11_icon_arrows_leftright.gif) no-repeat 50% 50%;} + +.ui-arrows-updown-default {background: url(images/888888_11x11_icon_arrows_updown.gif) no-repeat 50% 50%;} +.ui-arrows-updown-default:hover, .ui-arrows-updown-hover {background: url(images/222222_11x11_icon_arrows_updown.gif) no-repeat 50% 50%;} +.ui-arrows-updown-default:active, .ui-arrows-updown-active {background: url(images/ffffff_11x11_icon_arrows_updown.gif) no-repeat 50% 50%;} +.ui-arrows-updown-content {background: url(images/222222_11x11_icon_arrows_updown.gif) no-repeat 50% 50%;} + +.ui-minus-default {background: url(images/888888_11x11_icon_minus.gif) no-repeat 50% 50%;} +.ui-minus-default:hover, .ui-minus-hover {background: url(images/222222_11x11_icon_minus.gif) no-repeat 50% 50%;} +.ui-minus-default:active, .ui-minus-active {background: url(images/ffffff_11x11_icon_minus.gif) no-repeat 50% 50%;} +.ui-minus-content {background: url(images/222222_11x11_icon_minus.gif) no-repeat 50% 50%;} + +.ui-plus-default {background: url(images/888888_11x11_icon_plus.gif) no-repeat 50% 50%;} +.ui-plus-default:hover, .ui-plus-hover {background: url(images/222222_11x11_icon_plus.gif) no-repeat 50% 50%;} +.ui-plus-default:active, .ui-plus-active {background: url(images/ffffff_11x11_icon_plus.gif) no-repeat 50% 50%;} +.ui-plus-content {background: url(images/222222_11x11_icon_plus.gif) no-repeat 50% 50%;} + +/*hidden elements*/ +.ui-hidden { + display: none;/* for accessible hiding: position: absolute; left: -99999999px*/; +} +.ui-accessible-hidden { + position: absolute; left: -99999999px; +} +/*reset styles*/ +.ui-reset { + /*resets*/margin: 0; padding: 0; border: 0; outline: 0; line-height: 1.3; text-decoration: none; font-size: 100%; list-style: none; +} +/*clearfix class*/ +.ui-clearfix:after { + content: "."; + display: block; + height: 0; + clear: both; + visibility: hidden; +} +.ui-clearfix {display: inline-block;} +/* Hides from IE-mac \*/ +* html .ui-clearfix {height: 1%;} +.ui-clearfix {display: block;} +/* End hide from IE-mac */ + +/* Note: for resizable styles, use the styles listed above in the dialog section */ + +/* added to make it so you can't close the dialog! */ +.ui-dialog-titlebar-close { display: none; } diff --git a/xCAT-UI/etc/apache2/conf.d/xcat-web.conf b/xCAT-UI/etc/apache2/conf.d/xcat-web.conf new file mode 100644 index 000000000..54f17aaf0 --- /dev/null +++ b/xCAT-UI/etc/apache2/conf.d/xcat-web.conf @@ -0,0 +1,7 @@ +Alias /xcat "/opt/xcat/web" + + Options FollowSymLinks + AllowOverride None + Order allow,deny + Allow from all + diff --git a/xCAT-UI/img/ajax-loader.gif b/xCAT-UI/img/ajax-loader.gif new file mode 100644 index 0000000000000000000000000000000000000000..42596ab95772f6d43710c6562e81fe2dbc5af35f GIT binary patch literal 451 zcmZ?wbhEHb)MnsjSj560TPh;#$IHOLz@^Uq|Nnm=0|FHPbNji51UowhxEkphFf#&0 z6@Rj@vNEtR=zvs!v@dB$0av;Bxb5IFjxZs*`}mi literal 0 HcmV?d00001 diff --git a/xCAT-UI/img/arrows-ffffff.png b/xCAT-UI/img/arrows-ffffff.png new file mode 100644 index 0000000000000000000000000000000000000000..995df52065bc250180081f895070ee63de05bfe7 GIT binary patch literal 244 zcmeAS@N?(olHy`uVBq!ia0vp^B0!wS#0(^(;%-|4Ddu7)&kzm{j@u9Y9{{*+s`nvx*DV21Ml+qsS;fz%XuL>4nJa0`Jjy}iBb>+96i)VH^{<83zC`un?q1ksceG40#~oN{s;$sC)?#KmnQ=4Hy^@ zu_w=;J{1HIFrcW>qeur7IFPid(E>ILD3w}(s@17ct7_fK6#)SR1rUH08+NQ%u?7U3 zUCVau!LH-XH(fB_q5xd5+T!+->=suNrizA-%ZewA!7px z1XR4Zkl;W92RSqJEYM&8(F^^m_A5XDfz1pTte)+c0D+VW6JXZu7xV4}BNzJSJ$$(0 z+{KCO-c4Ai^XJgh%8X9kxy|a;4;r|;JwW&G+%r~t=T3gS`2@Eas}G=fJ!1fey}iBb>+93g)3>*`UaUZIW5$jnL!SJ&vSiDY zFKf=s8MEijpF4vdExL5*)1*UA1}Uq`19n^n@`Vvy?gcW+sA(| zzdrr@^Yh!+kAJ`Y0|;Oz;D7`cXyAbeCaB6epA8tJ5$T3RWk zm1fE*rki>yYN(`kS}Lffri$vSnyT6=tNx$9Dr>B?j_PWyr_O3Cth?%(E3UU@8mT}B z7_jNF$R?}ovdlK??6c5DEA6z@R%`9G*k*g|KmY{$Yp=la`t7*hmMgBgzM>m$y63jb z?z`*83+}w+A`4YX!m3NJzV*VpuedhXs4}q z)AxG3_Spa8=ckvB`s%8;p8D&o!|wXx2E3JF-ni$k`|iB= z?)&e+2QU2a#20V;@yI8y{PN5z&t>z_M=$;K)K_o)_1F)8yRmr((Eaz^hwr`k;E!*9 z`RJ3c{`u>t&;I-F$KU?^@Y64U{rKOnzy18@-~ayp!(Ycf<~>P$?0^PLU;!71Kn5zX zfe?J41RY4h2v%@{7R(?9H+aDgYS4om{GbR!NJ0>raD*l-)&fshLKM2Ng)n5H3|~0I z7}D^DHq2oScc{T`ne2!DKn$V~hbS^167h&gOrjE(NC0C+3Qd%Pq7DNJy*QykwY$2!vSj&sbT9rcLEJ^Hba zfaIef|2W7%67rCSOk^P!iAY8!5={p=6QUYrC`wMUl9;@tCKY8#PG-`Rn`G1{MH$LP znX;3l+*6p$B1tW|@|CcRr7UMj%UaqJNsqdvE_cbxUi$Kvy)4L3Hbl%074w+JOeQjy zsmx|F^O??!CN!rh&1zEfn%2xFHn*wGZgTUR-ZUmLi^-KPUFe+XOs6{6$XFp7=D(r#|<|&wB=?Sn}+rKnF_Df*N$4A}Ih#Jm#T;I`p9sji^9xW{{Ny Q?V=dXs75#HvVZ^pJ0*$ZJOBUy literal 0 HcmV?d00001 diff --git a/xCAT-UI/img/bopper.jpg b/xCAT-UI/img/bopper.jpg new file mode 100644 index 0000000000000000000000000000000000000000..2d499c28222b133b15e574bb420083bfdd4bc4aa GIT binary patch literal 1351 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 b2fj8rKTCEbZ8^V2J(p~SW7;>P*T{bWp=k|X literal 0 HcmV?d00001 diff --git a/xCAT-UI/img/cmdBtn.gif b/xCAT-UI/img/cmdBtn.gif new file mode 100644 index 0000000000000000000000000000000000000000..1f34fa45e1d454f79e64ae974a97deacb729c1f7 GIT binary patch literal 767 zcmZ?wbhEHblw=TPI3~-GlG&b-+nt%$msdP7zjR7r*_6`iIpsC8YZ@0fv@UAySk~OJ zvZ-TDbLYy|?$zzRo7(#}O`NuQ!n8dTXB?O`BU0V!9tFJ9xbA9PrAiA+~-Kpj4 zZma;Io6FbVSOG#eS8cqpY9o-mwHk;v-CDEx*4oXt*KWDJVe8fPTkovjc4x!3JDYX@ z(cR5E?rz$7ck|A>TX)~vy8HgtJ@>Zny}y0$gB^SC?*Nkf?(f+5VAuW!yAA-+!`%lS z?mKjM@1aNg4&U8-_|g6&kM|#aeBkKgL&u*SKK|s;i6@6oJUM#u>Csb9kDqyV0)(EQ zIQ#6x+2^Ou0nv-oKy>~E&}&pgivI+ii&7IyQd1PlGfOfQ+&z5*7!-f9Fmf@}Gw3h? z0Vtvv*#9*!G&Q%hwzVd8CMR`wbtfmMOiD?eI<+Zw=B!x(%yF@CLCgsWafylX2~E*! zV%EmQXmdty*tB8$hNke{d-g~OhDU@;3PwamL`0ov3JnQ8e<6%ZE;Q_t+_jt6ngZ|M zyT@vEH~3-jv**E0K0dxaem?Cj{-3`zxqbic{#}{f!_!mcm!jkjmy?rJn%XpCR%~c$ zZsijdlMHI{n5fiL^XJA6!xR0iVl6C!mmV+)C~5?A2_8vi@0YWwI3j&z@iJdW%c4go zWV>&?{-2A+z*gqeHKh59f^;QO&PH9Cf1hbUb8o> z@XS2XmPNWxT59$epMcy57~zpScN+T=SSo?U0@fGS8D&E n;NaXLpv01MpeM2={d|*Ehn(-OEtwY=`meUL-TZZ-1A{dHr#q$R literal 0 HcmV?d00001 diff --git a/xCAT-UI/img/cmdBtn.xcf b/xCAT-UI/img/cmdBtn.xcf new file mode 100644 index 0000000000000000000000000000000000000000..7311c02e4c771c914fdce7fa78999d13e3c0e399 GIT binary patch literal 5253 zcmds5Yiv}<6`sf4ho6w((z=z}ZIV{xhtt>%P163TlvYaHJX9(9(I5S@*lT+m@2 zJFF$Pyb`y)2yHN$l5Mi$FSA)>SDC%&+4OD2C55gsm)o*U7kTcI9ahWp&poe~hk*QK z*RwEn$3v#3`Ym4%aH>x(w-(x+C6@fuy};;ym@#R~^EmB_#qKODwaGZ&Ra`9Fl=}~e zv;WtWuxy-)aYz<=iV!|ei18yrOz#nru>ukP5CRHzEL*|}Nism<`eC%$(`YmT;XvP3OrR9bdH`<%jMw@J5MIXwlp2>x4D9=U(#}9)V*CnZVzm{U zPsuB@`fYA7>8t&tZD_MR_4HE^p<3-oj_AipjvewfS(%l}zg6hpG&o`%c+ zNRq;E2BL^1wZM=RhH>3;-)6XrdXQxm0oj3e78C7zQ}FsB-%PaM9YhQquOzyS}u zjTkuKFP=dRJd32SZz9@DpP>#M`bwJ+0|(qzgcx`>jLRmg>>lhG$Y9R43)lx7#{DUT z7&zef6vV&*|KqoafdjskgBbWWbRgv+rf~Y3Hm~LN)IRcU?sa%)EDy`%A1Au>?zfXT z^^~v{{{k6Y7TmqdEc|A^Km%tp;#W5kNBZa7V}F{OFGR{P2XJ%&!nV=Kw2AeS6&?aw8@=2I;_1e{I=4)wRQj&JbI7+|Zqj0Mc zc210(P03~8zP#P3_2kD@3 zFCALjJG7UO-cT>?703)B5e~5s3%>^OkT4YKLV{3;=o(#1i}Ki7G7QUfS&b|&M|eam zM_44j5{axtD1^kkXu7j<_s$(?gg^-RESpnj=Vs?jbMbjXCa2P;=(L!cHcW%p*P~d9_ICy!PUZIyWuCS}>6+$jZ7wAQL!FX}?(nYA32staARY%UA9g#-F*%8AC zylbcac`EHx+Gz}s`0Rx71U*Sl7*E18A3Ms9nvb#L_l_Mu4vmn*hmRaNeB>~LK*c^i z@+l$1Y}aALlq$*HMH$l3AniHY$E^8~#iO+Z|))3LPcd`w&)qhplhT#J8sjgZTx%i5L8 zS8%mZ@++_uqnAecsJJwmIV!%;gS6F0$v30d67Oc>n6Gc6Wv&ue!E+_{V(fWbTMQl@ zlO?k=2_D#DGWTz^WgbO6w`l8b`iLmEDA&FD+H-eqy+9ukjbpvYWcO9CORE8=*m_3YAqwmKCZnIgUVPx=~W19>t?TGb+LZ-A0e7 z^ytj&p_Rf@$&qDMs-8-3C9Py$Ua5L3E4|!HE2%eH>Gfe{KIV=2yk4Kr%e)#G%s%R8 zKH>LC$QWobpC9XHzZUQZXdvznfaC$;53m%gqE$2ysR~r-4FwHofLWEO#=dH;s=CU6 z3ag4&1Fq)P@tW$In(FN8+!`iFbcbcPF1ReYsT@^g1)9vkTM0<3mTCbf?8d$j@8lN6Lq{kR#%VJTu zYg=1u8*LMXGbUR zR69VJI<>COF5V?NyG+Pv7wx27e7ES@P46>?i0xLpcJF@wyYFXyAohHa_Cd6J&z^3m zhCQNt4^J>dx9I6MbjN$TyL-BMx2cEq8hY;b_Vo7lBq@|S{_x&Ns27w_f=i)TI1~-8^fkPHQd)1W?|YV`umK1yg%00kJZ?38W8;hd?4OG(2tT0!f}fZ z#s>xmP=aC_Bm)oG95Y_A7QR#Bc6pqSb&E_L++io&Qn7J6#6L~8{B@&kOEc==&ix;0 zUvX{ITeh;~KNW9S<#%v2Tt+XcuRstq__d|m@iXz@e?8d`*f#^_Ku}VD+u-nI$@u|* b2fj8rKTCEbZ8^V2J(p~SW7;>P*T{bWp=k|X literal 0 HcmV?d00001 diff --git a/xCAT-UI/img/desc.gif b/xCAT-UI/img/desc.gif new file mode 100644 index 0000000000000000000000000000000000000000..3b30b3c58eabdb47a1c420ad03c8e30b966cc858 GIT binary patch literal 54 zcmZ?wbhEHb6lGvxXkcJa);0M5|G(l-7DfgJMg|=QAOOiQF!A>EGoD<#VNP?1QCB1* GgEatI(+xQQ literal 0 HcmV?d00001 diff --git a/xCAT-UI/img/header5.jpg b/xCAT-UI/img/header5.jpg new file mode 100644 index 0000000000000000000000000000000000000000..abf9fd1e614bcf8ceb642168a3bd883f171fc2d9 GIT binary patch literal 2022 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 z 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 j+uy@K_LKax>*)74@8&-j1)f4Kh(sMx{J literal 0 HcmV?d00001 diff --git a/xCAT-UI/img/indicator.gif b/xCAT-UI/img/indicator.gif new file mode 100644 index 0000000000000000000000000000000000000000..085ccaecaf5fa5c34bc14cd2c2ed5cbbd8e25dcb GIT binary patch literal 1553 zcma)+TTl~c6vwlh>nb99Af5rT)t{mCEg5urg=A(g z{C|6SPb~9Xage|wB`SrZk2FOMYM!buln2sX?5Y+T78iB(Zu9cS7|LZyZ++}u$^oi1 z_j@S}bW9OzU2R+RMy&~OT>X-oZ98$jq#ogNfJ!BM-42wHGZk*6s2KD}U*IA%epmxb zm}|6BK9YoIF;*xSL!+z@<64lB7->LTW2Vi4ostCA(z&2XniwNIv}fFo-`MbG;)u4G z^p@F!)|9HhZprHd_vXjDoxs6WkK-6P0@lfxnGT>*p(QHoUV=u1FAqb@b%*W=a3{`LsH5k^AvQNL>6fPpy#oU(&MuH(*aEX4b35*} zn4n7)`I2U%=+Z=?BVZQ?vjQFW4gD@~XSOO6b{qu81`4&LFuU2(ilxW+1|ZkNMnWe79C$gs zWT?Ele|HR{JGPe)5BTW>0Ey?-Ls6S#GoV0tbt6ku7B&*0 z;i9QM$W1Rj*rRIdceL)rAOSl+sDe3LkB87<%){;ZdHp6|SNlopDXRx< zxBDF9-lTo&v`8$humFygUij@qgT=Qzhj8{ym2-{Xciwqq_Xwk%=O3B-MNAL_6e`3U zyxwmXex4`g0^1RYw~Dth3av3Dl^AAlpO3mG!nLr#&ZZ7c_wUboI+deC+&%TFjK2Lm z!Y&f1h|T_On%RCV&=4bx`!>(YezqGVhl&QpED?N6GV)HmzJ9&rh$x*i?*@o9#6QI< z5ZI_MRX;0+pY8$`j)eF#TlUyG(eE%E7S!rj;mj^M5vhUicPm zVWQ2z+imFyg}SRABmOBY_@osR!>7Ov!ioK`NB6_Rv}7Ud?35ed5Sb@?yND?kv~RCa wqs^a3Sh>&&L4)!LKI?D2&k@))k(LESaga|C278ChSzn3NWVkcuNoY&{0f?~U_5c6? literal 0 HcmV?d00001 diff --git a/xCAT-UI/img/logo2.gif b/xCAT-UI/img/logo2.gif new file mode 100644 index 0000000000000000000000000000000000000000..04dce9c0e8936af3e4d172d6b818a60948f15534 GIT binary patch literal 1723 zcmV;s21NNsNk%w1VU_@F0O$Vz00030|Nj#%X#V~F{r&#%@bS#h+tStE;N$D$<>=z$ z=C!@h(bnR>!_C#%bF;Ns^LEMXfpZ5=mn8!%oXJ8~mDawI)-C_r^9LwGDicPvA9 zEk$`QMR_hpc`rwLFh_bZNP99#d^JpdHcfsvPJcL0fH+QnJ5ho?Q-nNHfs(B8((+RD(~&C}q_(%;h8;?>&a!p6_Y%+=iB>C@NX;^piWFliSu zY9KmrCO>p1Ky@fVb}2%3DnoZGM0hJicP&PFFGzbQI$|?ReKbscIZ%K)QGq*Bf;&=y zJye4}RfID{XhT_tM_r0YU5QFxi%emSOJIymVvb8-i%nvUMp=MSW{^^5kW*)oRcVt{ zXpvTGlR{B&OkIFlZIxVamtAm}UU8UUbDCs!oMm^MXL+7tbC+p*pKN`hQ(${;f1-1Q zrdw!(c!;TaiK%>ytbmWMXL5;#l(Bn=qllKXiF?&}>8G;Cx4_Z6#MHpZ*T2Ws%F*7*(A~$*+tbe}Dv+1}^l=kDI)>)qn&+u-Qx?egB?=G@=p=j-wE^!MWB>Gk*d`TG0o?Ct34>;3-z z`~3X<{{8dx^Y8HQ_4f4t|Ni{^`}_O)`uh3!`1kks_VV)a{{8*_{{H>_{rvp=`}_O& z`1tPb?wzI7A^s6Va%Ew3Wn>_CX>@2HM@dak03rDV0SW;B04x9i005Q%YybcV{s8|8 z97wRB!Gj1BDqP60p~Hs@DM*yaq#_fE5Ho7r$g!hGf)g!@tcdZW$&)BkCZssBB?XNW zW0q7&vnEUmEpxtv$a3UNn?Qpe#F^9OPKQKw9u>+oXwsr0mqvW*vZ+;|RH0scnAPXi zuPVD1m8wvz#h+l)ZZuo9VNa-N)yie~R_j)`cF&TXdsQYvwr%O=JCHj@zD_>2`}gxC zuNTgazPkDL-NN%3fxIC{Abt}WwjhJN z4Mkyo5i%9ig&4;6;DIsGBol|f)rJ{~2!=QuWc-1s+lDHhSR!O7j>h7Rdevy(V*=7f zRb(6LC}e#xo^)7(K@O?paXsFY;c!bvsabeFekdh;Pg3cel~*FD1S|!3N|QuZoYZwn1H?sr=N+2 z_voOFQYq-7oxfQ5 zC0@Awjyu&`EF!A#SPVbhBSi%()p4r0>BSm~C4Ee3k=Vi}RS-447=Q= z%@C5tGLjHCSe(fio9QB;IM+xf(EiQbrl>s=Dm0n~+G%RhOJ7H|wf}Y6EYbo)xwF!L z8X4}hpTYW*l?PWz@(=cXV}yatBE8-Q#||m~VQQ zwKPf{>l|I;E5jUCy+AJfRl$%yocBtP$L%%To?FmokKley~(Wjt5QC+`$-8Chq$^MUWk{EsM8-*B!@ RX0QF=GJkLDjSB??06XO}w^9HA literal 0 HcmV?d00001 diff --git a/xCAT-UI/img/red-x.gif b/xCAT-UI/img/red-x.gif new file mode 100644 index 0000000000000000000000000000000000000000..1da531f50f9997ff9f5c2445f51fdc0e9d62eaa0 GIT binary patch literal 1002 zcmeH`-%C?r7{|}lWR|rVi;Na1j&k&at-RRGXd3=FL#Z7av_nFNgNcqoN+i(R~({S#gF<;#cXd3YWkc;M+2 zJA8h{CfEcf2zqs`;jkMXuPz1+QPRVb9+LHl{BB6o71iid^|)%pO=?D50}eZI)Lw1EL>>CEVVITZ32(qL73l zG7d?gS4CkJM^vClP?51B14RV`Q4otlMTG+@h-n};3?D>6T!TXz92rJ^DiMQ3l&L6@ zP>_UV5|KzmrV)wtNGvSTUX>`SKBnoZVI!p(GfCt90vt<%$uxSBM3Yl^G7T1W_(ew_ zb+WjCzAcb7NVXAOM|9IPW~-2`W44XhCZ^kj<`K z{eoa!6{@P7U75PMfc7?#TkE&Yv<$r1u(&3Ao;wbH@H91?28SwQ6)7<=KVE%)2zmDA zeziMB?@v73s7dCgD=&0R&3ZfQUN?*KtS39aVmo$ZYp2H7WluLWC#)y3Z&K+iBQKAZ z?cc3@W;@kAkz4A28o1iG-|hdjd@W@U{@JNcBkQC;%@ literal 0 HcmV?d00001 diff --git a/xCAT-UI/img/red-x2-light.gif b/xCAT-UI/img/red-x2-light.gif new file mode 100644 index 0000000000000000000000000000000000000000..04b6993c7134e9824832d9048a026a9207b921ac GIT binary patch literal 973 zcmeH`&r1|x7{}k%4cAOuQ~QO|w5+g2NP38sJj}A9s~wW))Tu~}4!GZ;cww-C$*>!0Q+enBeUtwfumKl59ncnGrcX?_2JL>s<`SN+-Iep<786A!e z+-n7`zy$!N(@+rLdIrABz^tgH1wAY1??pW;n(KnS`pOU`l#$?uXyn9iMH$L6{3t_Z zQL4RieBE)zN`8!G|OL5dB@&W%^!P) z2F-odHY?b&@PS1t75od417sr$S1p1}Ttyf;m=Ii}Zk-Vukt!y?9fCb$f?Z}GGRI}u zVXjLsVJ`J<8F3kP7G1A38O5 z8SxD>N^{)b+qV*1J+{>Om}`sloLCI>-*^yA%{G0$bn{7caY<@Sg-89@-n`f!x^?`* z0+$SJ4+n$&=QdUD{?F&#EfXnFj_Kg6Z_*!mI6e2YyKC%p;vz~mf#y3WC#GY3lJh-_ TP93f+FLcJ$^Xgy^2d@7G1#KWD literal 0 HcmV?d00001 diff --git a/xCAT-UI/img/red-x2.gif b/xCAT-UI/img/red-x2.gif new file mode 100644 index 0000000000000000000000000000000000000000..d5853889c58c8c02fa20867016bdd61fdba9a81a GIT binary patch literal 973 zcmeH`!D|yy5XQG*ZMUr$f|6oUy2emb%pv9!5hSU!CaZ*Gu|f+{#e+hmMBc%}N=12iS}Dqw+OiRYyh9ET$zcwAc)t7{`tk8&W|%q5z+BBu zr!HziAt-<#pqygoR5YWa;vAZtd$nXDO}Fpr$k1(r)3gnfL?_&$if`%Otd2DmYdT&i z;d05*bZ0@wWfPYx&SD80rn6)^4=QNIMAeF2HSHIc{iflpSh&9FKDONYQ?I^>o5=Zq z+_#7{8}6qD`R0(8OZQxQ!0o|T2lhN@xp3go7NKpIwmnKbARcRb#0LsMIei9g3LOHJ zK!*aQj8N7gjB@ijFy0500byNE3SFLZG4Oi;KF%2H_CnTW%m?Q4oC*K+k6j?%+qd@% zg47h=NvE>g^WpQ^{P%m2BTDex<#haYBvF$F25u$}4SmuIOo~4eJIj5KM)J$i*vXI9 zPV}^rlrmQyULVei)5Twzaq;X}uDbwD2HC(*ycgt4t?ty+@+wPUlR;uUiAH4mbx%Td3O?Q*$ zf&zQmF8}g8dC^~1Y@56N`Id%svugXbOJqMzNq%PY>BN*-n!)@W7LRXkPCY$Kvh?pylS=lQEeJmx&}%I_=-`FKFUe^aWI+!LPc+s5;Ys_!vxdGhVg=U0pN)oi@O zH(|f%$AZ)c_dD2+Fh64a*igX$#11wJasvDy3=tjxDF+*z&Y+=G2RoXV5q8l~>f;U; zSXkqU26{?8VjPWfP)eX#Y8W|De&GL-eKmQ98S63@?fZFZo^AD{N4pM&9@*aVN_Vbp z^|qYI$u>urZReRrZ&O^TJg>~`(x&v&vs8m8`Pvvv*_d*2mhSJFey=A#Uy1q3A9|9{K22WQ% Jmvv4FO#s~6iZ1{F literal 0 HcmV?d00001 diff --git a/xCAT-UI/img/throbber.gif b/xCAT-UI/img/throbber.gif new file mode 100644 index 0000000000000000000000000000000000000000..95ff649d4162b61d8107adb91ded5940c55e5e4c GIT binary patch literal 1844 zcmb8wYfw{X8VB&hIq%6iIhW)mA`M8L5P~KlG2s@XSob7=AW#Zaq2*E%FqBZJfr`); zkz5dhT$O6^QnjT8MO#30dIMu*M%#|A%sTD#HlrO{wY4p*+gY9IuA49mlMnl4pO4Rn z_x;WPd7pXHw`|t0H$wy>|3Hw(j~{a!_u#>U;o;#sckb-mx%0@8BfgH^ZZ9e-@_0Pg zuV2r}$(fv-G#ZUnRaM>H-N^q_k^f%#w0XNlQvRyMP;G9?-eKOp&iZoY4kYpsKq%iy zk&o$|w5`vk7;@9%)@iXIUrXh`!0$uwMu`MP`H?@4ps7akilJ{bBf@>_s`rfO+$HlE z_Fk&P3xDDyFI)&Q+D0D-t5Ep7fgL^^iyWBJy&O)R%{5h*T2g>V_})by$5BvGMU@al2va{GSn|) zut3aWE?+13Fs?{4V?p|bQq;SOzLD3f;hf_gY5^446Ivm_FQ2l(1VLAR%s)R>i-_ZQ z&)d$DSBFirx$=WL(s}#DvGDnAnm;9cl2)pKO93!>jHXmt^Gus&uhQ^R|DFS#bk;yu zXQ`n@r#qor$^`^cY8FQ%_U9rcuPm(gQQBA0%+xf3slU`~Gl0l3-uhHd@=4~#=fPWD zY4>lysnGXV{#LgVhTk3fb=>k6^YgYHS#f2BMSuUktH3=OTm51ouy8vYGBlb-(_h-$ zl`T>G-3N682cnh$cp#v~5BNys1309lb0K_2N$pK$Z29M+QP)_MmN#_RbW-98UwgS? zP(Boj4P9v56UqUqayN2-d{sv%3*41~dbPL50LqF%%JdK+R7xC!#fqWeXW-SxiQ8bZ+FW zwT7cvr}lqv>zi)X+ZX;N00-P@CGr~Q(Nk-Z6D8fZV4^71JrmZdy}SBcyu*A(s}}8B z*>_$YA((ygq(?jedM-O{83`c}FW|#y)`}6BP)ON|^QFyvv{Weq4FU6?`ljcAY4=EKQf?Yl7+^t|3)Zc4cK^3ZD9J7O$H9Oa)hMNH$W z@k=*@!>0RBjDHb2eQm|uteh_*u1<|TDFHOei>5YV1WV#HL&YfpAw)Y-p3thK`5GMG z00(1a7`AI!Lj`IY{I6y)o0{U&vfI=|Caf!d$6Lq551R6d9|{sz*dJ~P6Lh{Y54JoP zsrA$wQuSgcW!GrmXCe4^8M&3#;ORLlk~aW)orYY_whE^3*yvP*&E-KL%uCQQxDUfx zE37CabE>tCtV^-HQgonXc}nY;y6F*0m5$QyXF{Z2{y{`$pPnJxQ|9NC!JX}UjgzXu z@Se7x*N8V#ZT7CoZ^J}Y<4j?T8h+YunpN?c_Je;6iB;EeXQPV7+Th06 dtwLDJL#a0_K>wk&Y~4#Tit}rd{U6a{{Rfg56CMBn literal 0 HcmV?d00001 diff --git a/xCAT-UI/img/topper.jpg b/xCAT-UI/img/topper.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f21458f8f7d567944c36e434f180c4a0407b6f81 GIT binary patch literal 574 zcmex=LJ%Z3brsR%R9! z7G_o;!OF_Y#?HgR4g~z%+?+gu{6a#4{DOkQVlv{wB2uD)f)a`nQnIr0^76vsN-9cn zDl&5Nav(z(fm+$w*!eg(_~b+cMdU~Z{|_(-axm~Q?`LLIVqg+vWEN!ne}qAjfsuiU znE@HFb1*Wq0Hss~fKouf$jl0pW@KV!VHIQ(V&@Q6R8n>fTnJPq0`xx`0Er4>ir!-2 zVFns0$SlZU&oIM|^N0MgJ^qaspW00CIC%1>Sxo8aS>@U>JHEU(j&`#td6)Utb4}fo za@*gfhQgP!*0^Siu5od34;1`kgk~MJxXkk>UAXw<%cd8fqN;xH+PT`~baS$3QS#n2 zs~NLysi|50yK4XH@WVXuV>_%XuXnt1>ziluG0xv_TL0EQqxe-%kBiN}Ecb1#t@a)F ltyNt|Q}d*@n{LR?x1gCzg} literal 0 HcmV?d00001 diff --git a/xCAT-UI/img/topper.xcf b/xCAT-UI/img/topper.xcf new file mode 100644 index 0000000000000000000000000000000000000000..8476490c18f2029e4415b355b53d9448d638dfa8 GIT binary patch literal 1746 zcmds$&rcIU6vubBv?9n4f1ZrlBOE$`#Ghb$z=Xyo7!y78XerxerR|b!5io`tqaHjE z2E|q@pEixC=~y!q!){d>DwdXWhF-LD*359vP}a=Y zIor{P#1wVR>9jt=M#MP88TFTjA)P)%8m#L_J0x8y&Zje0!PG~CS_m#57W8A$g@RSm ztwLtjD3adJW{XB?{|8C^XGlg4O6eT@p}vz&_^F)t?}$#dcOspcGaY-OAdXJ+H4)5o zLmYJbK5akl`VFc1f~C{LK}#y0Bw5)ZLM5 z##QFk`8aR03ct?11dnmA$;+z8A&76fQjqioRVi?Vph|+|0m0;ULkdzYS)nEc4I!wJ zAVq?fsL;jRu7efNCbLDWTl^7ymbEx9haUe|T;#j;jTj5FE4JjLe#2{|_Mq_-goLLki?0!cN+%a-SrexU#eJWj?qqU&Jf{rdDc2q~B zE5v>(F$ny!L30L`u@c_tsET+5%@lbH*1>!58JjSIKZ|4$yAKM$0S~}KumYZd=imic U1+Tzs@CK|=mVbZe&R?JA9xHb&d;kCd literal 0 HcmV?d00001 diff --git a/xCAT-UI/index.php b/xCAT-UI/index.php new file mode 100644 index 000000000..5035f6d5f --- /dev/null +++ b/xCAT-UI/index.php @@ -0,0 +1,17 @@ + diff --git a/xCAT-UI/js/JSON/JSON.php b/xCAT-UI/js/JSON/JSON.php new file mode 100644 index 000000000..0cddbddb4 --- /dev/null +++ b/xCAT-UI/js/JSON/JSON.php @@ -0,0 +1,806 @@ + + * @author Matt Knapp + * @author Brett Stimmerman + * @copyright 2005 Michal Migurski + * @version CVS: $Id: JSON.php,v 1.31 2006/06/28 05:54:17 migurski Exp $ + * @license http://www.opensource.org/licenses/bsd-license.php + * @link http://pear.php.net/pepr/pepr-proposal-show.php?id=198 + */ + +/** + * Marker constant for Services_JSON::decode(), used to flag stack state + */ +define('SERVICES_JSON_SLICE', 1); + +/** + * Marker constant for Services_JSON::decode(), used to flag stack state + */ +define('SERVICES_JSON_IN_STR', 2); + +/** + * Marker constant for Services_JSON::decode(), used to flag stack state + */ +define('SERVICES_JSON_IN_ARR', 3); + +/** + * Marker constant for Services_JSON::decode(), used to flag stack state + */ +define('SERVICES_JSON_IN_OBJ', 4); + +/** + * Marker constant for Services_JSON::decode(), used to flag stack state + */ +define('SERVICES_JSON_IN_CMT', 5); + +/** + * Behavior switch for Services_JSON::decode() + */ +define('SERVICES_JSON_LOOSE_TYPE', 16); + +/** + * Behavior switch for Services_JSON::decode() + */ +define('SERVICES_JSON_SUPPRESS_ERRORS', 32); + +/** + * Converts to and from JSON format. + * + * Brief example of use: + * + * + * // create a new instance of Services_JSON + * $json = new Services_JSON(); + * + * // convert a complexe value to JSON notation, and send it to the browser + * $value = array('foo', 'bar', array(1, 2, 'baz'), array(3, array(4))); + * $output = $json->encode($value); + * + * print($output); + * // prints: ["foo","bar",[1,2,"baz"],[3,[4]]] + * + * // accept incoming POST data, assumed to be in JSON notation + * $input = file_get_contents('php://input', 1000000); + * $value = $json->decode($input); + * + */ +class Services_JSON +{ + /** + * constructs a new JSON instance + * + * @param int $use object behavior flags; combine with boolean-OR + * + * possible values: + * - SERVICES_JSON_LOOSE_TYPE: loose typing. + * "{...}" syntax creates associative arrays + * instead of objects in decode(). + * - SERVICES_JSON_SUPPRESS_ERRORS: error suppression. + * Values which can't be encoded (e.g. resources) + * appear as NULL instead of throwing errors. + * By default, a deeply-nested resource will + * bubble up with an error, so all return values + * from encode() should be checked with isError() + */ + function Services_JSON($use = 0) + { + $this->use = $use; + } + + /** + * convert a string from one UTF-16 char to one UTF-8 char + * + * Normally should be handled by mb_convert_encoding, but + * provides a slower PHP-only method for installations + * that lack the multibye string extension. + * + * @param string $utf16 UTF-16 character + * @return string UTF-8 character + * @access private + */ + function utf162utf8($utf16) + { + // oh please oh please oh please oh please oh please + if(function_exists('mb_convert_encoding')) { + return mb_convert_encoding($utf16, 'UTF-8', 'UTF-16'); + } + + $bytes = (ord($utf16{0}) << 8) | ord($utf16{1}); + + switch(true) { + case ((0x7F & $bytes) == $bytes): + // this case should never be reached, because we are in ASCII range + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return chr(0x7F & $bytes); + + case (0x07FF & $bytes) == $bytes: + // return a 2-byte UTF-8 character + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return chr(0xC0 | (($bytes >> 6) & 0x1F)) + . chr(0x80 | ($bytes & 0x3F)); + + case (0xFFFF & $bytes) == $bytes: + // return a 3-byte UTF-8 character + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return chr(0xE0 | (($bytes >> 12) & 0x0F)) + . chr(0x80 | (($bytes >> 6) & 0x3F)) + . chr(0x80 | ($bytes & 0x3F)); + } + + // ignoring UTF-32 for now, sorry + return ''; + } + + /** + * convert a string from one UTF-8 char to one UTF-16 char + * + * Normally should be handled by mb_convert_encoding, but + * provides a slower PHP-only method for installations + * that lack the multibye string extension. + * + * @param string $utf8 UTF-8 character + * @return string UTF-16 character + * @access private + */ + function utf82utf16($utf8) + { + // oh please oh please oh please oh please oh please + if(function_exists('mb_convert_encoding')) { + return mb_convert_encoding($utf8, 'UTF-16', 'UTF-8'); + } + + switch(strlen($utf8)) { + case 1: + // this case should never be reached, because we are in ASCII range + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return $utf8; + + case 2: + // return a UTF-16 character from a 2-byte UTF-8 char + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return chr(0x07 & (ord($utf8{0}) >> 2)) + . chr((0xC0 & (ord($utf8{0}) << 6)) + | (0x3F & ord($utf8{1}))); + + case 3: + // return a UTF-16 character from a 3-byte UTF-8 char + // see: http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + return chr((0xF0 & (ord($utf8{0}) << 4)) + | (0x0F & (ord($utf8{1}) >> 2))) + . chr((0xC0 & (ord($utf8{1}) << 6)) + | (0x7F & ord($utf8{2}))); + } + + // ignoring UTF-32 for now, sorry + return ''; + } + + /** + * encodes an arbitrary variable into JSON format + * + * @param mixed $var any number, boolean, string, array, or object to be encoded. + * see argument 1 to Services_JSON() above for array-parsing behavior. + * if var is a strng, note that encode() always expects it + * to be in ASCII or UTF-8 format! + * + * @return mixed JSON string representation of input var or an error if a problem occurs + * @access public + */ + function encode($var) + { + switch (gettype($var)) { + case 'boolean': + return $var ? 'true' : 'false'; + + case 'NULL': + return 'null'; + + case 'integer': + return (int) $var; + + case 'double': + case 'float': + return (float) $var; + + case 'string': + // STRINGS ARE EXPECTED TO BE IN ASCII OR UTF-8 FORMAT + $ascii = ''; + $strlen_var = strlen($var); + + /* + * Iterate over every character in the string, + * escaping with a slash or encoding to UTF-8 where necessary + */ + for ($c = 0; $c < $strlen_var; ++$c) { + + $ord_var_c = ord($var{$c}); + + switch (true) { + case $ord_var_c == 0x08: + $ascii .= '\b'; + break; + case $ord_var_c == 0x09: + $ascii .= '\t'; + break; + case $ord_var_c == 0x0A: + $ascii .= '\n'; + break; + case $ord_var_c == 0x0C: + $ascii .= '\f'; + break; + case $ord_var_c == 0x0D: + $ascii .= '\r'; + break; + + case $ord_var_c == 0x22: + case $ord_var_c == 0x2F: + case $ord_var_c == 0x5C: + // double quote, slash, slosh + $ascii .= '\\'.$var{$c}; + break; + + case (($ord_var_c >= 0x20) && ($ord_var_c <= 0x7F)): + // characters U-00000000 - U-0000007F (same as ASCII) + $ascii .= $var{$c}; + break; + + case (($ord_var_c & 0xE0) == 0xC0): + // characters U-00000080 - U-000007FF, mask 110XXXXX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $char = pack('C*', $ord_var_c, ord($var{$c + 1})); + $c += 1; + $utf16 = $this->utf82utf16($char); + $ascii .= sprintf('\u%04s', bin2hex($utf16)); + break; + + case (($ord_var_c & 0xF0) == 0xE0): + // characters U-00000800 - U-0000FFFF, mask 1110XXXX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $char = pack('C*', $ord_var_c, + ord($var{$c + 1}), + ord($var{$c + 2})); + $c += 2; + $utf16 = $this->utf82utf16($char); + $ascii .= sprintf('\u%04s', bin2hex($utf16)); + break; + + case (($ord_var_c & 0xF8) == 0xF0): + // characters U-00010000 - U-001FFFFF, mask 11110XXX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $char = pack('C*', $ord_var_c, + ord($var{$c + 1}), + ord($var{$c + 2}), + ord($var{$c + 3})); + $c += 3; + $utf16 = $this->utf82utf16($char); + $ascii .= sprintf('\u%04s', bin2hex($utf16)); + break; + + case (($ord_var_c & 0xFC) == 0xF8): + // characters U-00200000 - U-03FFFFFF, mask 111110XX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $char = pack('C*', $ord_var_c, + ord($var{$c + 1}), + ord($var{$c + 2}), + ord($var{$c + 3}), + ord($var{$c + 4})); + $c += 4; + $utf16 = $this->utf82utf16($char); + $ascii .= sprintf('\u%04s', bin2hex($utf16)); + break; + + case (($ord_var_c & 0xFE) == 0xFC): + // characters U-04000000 - U-7FFFFFFF, mask 1111110X + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $char = pack('C*', $ord_var_c, + ord($var{$c + 1}), + ord($var{$c + 2}), + ord($var{$c + 3}), + ord($var{$c + 4}), + ord($var{$c + 5})); + $c += 5; + $utf16 = $this->utf82utf16($char); + $ascii .= sprintf('\u%04s', bin2hex($utf16)); + break; + } + } + + return '"'.$ascii.'"'; + + case 'array': + /* + * As per JSON spec if any array key is not an integer + * we must treat the the whole array as an object. We + * also try to catch a sparsely populated associative + * array with numeric keys here because some JS engines + * will create an array with empty indexes up to + * max_index which can cause memory issues and because + * the keys, which may be relevant, will be remapped + * otherwise. + * + * As per the ECMA and JSON specification an object may + * have any string as a property. Unfortunately due to + * a hole in the ECMA specification if the key is a + * ECMA reserved word or starts with a digit the + * parameter is only accessible using ECMAScript's + * bracket notation. + */ + + // treat as a JSON object + if (is_array($var) && count($var) && (array_keys($var) !== range(0, sizeof($var) - 1))) { + $properties = array_map(array($this, 'name_value'), + array_keys($var), + array_values($var)); + + foreach($properties as $property) { + if(Services_JSON::isError($property)) { + return $property; + } + } + + return '{' . join(',', $properties) . '}'; + } + + // treat it like a regular array + $elements = array_map(array($this, 'encode'), $var); + + foreach($elements as $element) { + if(Services_JSON::isError($element)) { + return $element; + } + } + + return '[' . join(',', $elements) . ']'; + + case 'object': + $vars = get_object_vars($var); + + $properties = array_map(array($this, 'name_value'), + array_keys($vars), + array_values($vars)); + + foreach($properties as $property) { + if(Services_JSON::isError($property)) { + return $property; + } + } + + return '{' . join(',', $properties) . '}'; + + default: + return ($this->use & SERVICES_JSON_SUPPRESS_ERRORS) + ? 'null' + : new Services_JSON_Error(gettype($var)." can not be encoded as JSON string"); + } + } + + /** + * array-walking function for use in generating JSON-formatted name-value pairs + * + * @param string $name name of key to use + * @param mixed $value reference to an array element to be encoded + * + * @return string JSON-formatted name-value pair, like '"name":value' + * @access private + */ + function name_value($name, $value) + { + $encoded_value = $this->encode($value); + + if(Services_JSON::isError($encoded_value)) { + return $encoded_value; + } + + return $this->encode(strval($name)) . ':' . $encoded_value; + } + + /** + * reduce a string by removing leading and trailing comments and whitespace + * + * @param $str string string value to strip of comments and whitespace + * + * @return string string value stripped of comments and whitespace + * @access private + */ + function reduce_string($str) + { + $str = preg_replace(array( + + // eliminate single line comments in '// ...' form + '#^\s*//(.+)$#m', + + // eliminate multi-line comments in '/* ... */' form, at start of string + '#^\s*/\*(.+)\*/#Us', + + // eliminate multi-line comments in '/* ... */' form, at end of string + '#/\*(.+)\*/\s*$#Us' + + ), '', $str); + + // eliminate extraneous space + return trim($str); + } + + /** + * decodes a JSON string into appropriate variable + * + * @param string $str JSON-formatted string + * + * @return mixed number, boolean, string, array, or object + * corresponding to given JSON input string. + * See argument 1 to Services_JSON() above for object-output behavior. + * Note that decode() always returns strings + * in ASCII or UTF-8 format! + * @access public + */ + function decode($str) + { + $str = $this->reduce_string($str); + + switch (strtolower($str)) { + case 'true': + return true; + + case 'false': + return false; + + case 'null': + return null; + + default: + $m = array(); + + if (is_numeric($str)) { + // Lookie-loo, it's a number + + // This would work on its own, but I'm trying to be + // good about returning integers where appropriate: + // return (float)$str; + + // Return float or int, as appropriate + return ((float)$str == (integer)$str) + ? (integer)$str + : (float)$str; + + } elseif (preg_match('/^("|\').*(\1)$/s', $str, $m) && $m[1] == $m[2]) { + // STRINGS RETURNED IN UTF-8 FORMAT + $delim = substr($str, 0, 1); + $chrs = substr($str, 1, -1); + $utf8 = ''; + $strlen_chrs = strlen($chrs); + + for ($c = 0; $c < $strlen_chrs; ++$c) { + + $substr_chrs_c_2 = substr($chrs, $c, 2); + $ord_chrs_c = ord($chrs{$c}); + + switch (true) { + case $substr_chrs_c_2 == '\b': + $utf8 .= chr(0x08); + ++$c; + break; + case $substr_chrs_c_2 == '\t': + $utf8 .= chr(0x09); + ++$c; + break; + case $substr_chrs_c_2 == '\n': + $utf8 .= chr(0x0A); + ++$c; + break; + case $substr_chrs_c_2 == '\f': + $utf8 .= chr(0x0C); + ++$c; + break; + case $substr_chrs_c_2 == '\r': + $utf8 .= chr(0x0D); + ++$c; + break; + + case $substr_chrs_c_2 == '\\"': + case $substr_chrs_c_2 == '\\\'': + case $substr_chrs_c_2 == '\\\\': + case $substr_chrs_c_2 == '\\/': + if (($delim == '"' && $substr_chrs_c_2 != '\\\'') || + ($delim == "'" && $substr_chrs_c_2 != '\\"')) { + $utf8 .= $chrs{++$c}; + } + break; + + case preg_match('/\\\u[0-9A-F]{4}/i', substr($chrs, $c, 6)): + // single, escaped unicode character + $utf16 = chr(hexdec(substr($chrs, ($c + 2), 2))) + . chr(hexdec(substr($chrs, ($c + 4), 2))); + $utf8 .= $this->utf162utf8($utf16); + $c += 5; + break; + + case ($ord_chrs_c >= 0x20) && ($ord_chrs_c <= 0x7F): + $utf8 .= $chrs{$c}; + break; + + case ($ord_chrs_c & 0xE0) == 0xC0: + // characters U-00000080 - U-000007FF, mask 110XXXXX + //see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $utf8 .= substr($chrs, $c, 2); + ++$c; + break; + + case ($ord_chrs_c & 0xF0) == 0xE0: + // characters U-00000800 - U-0000FFFF, mask 1110XXXX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $utf8 .= substr($chrs, $c, 3); + $c += 2; + break; + + case ($ord_chrs_c & 0xF8) == 0xF0: + // characters U-00010000 - U-001FFFFF, mask 11110XXX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $utf8 .= substr($chrs, $c, 4); + $c += 3; + break; + + case ($ord_chrs_c & 0xFC) == 0xF8: + // characters U-00200000 - U-03FFFFFF, mask 111110XX + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $utf8 .= substr($chrs, $c, 5); + $c += 4; + break; + + case ($ord_chrs_c & 0xFE) == 0xFC: + // characters U-04000000 - U-7FFFFFFF, mask 1111110X + // see http://www.cl.cam.ac.uk/~mgk25/unicode.html#utf-8 + $utf8 .= substr($chrs, $c, 6); + $c += 5; + break; + + } + + } + + return $utf8; + + } elseif (preg_match('/^\[.*\]$/s', $str) || preg_match('/^\{.*\}$/s', $str)) { + // array, or object notation + + if ($str{0} == '[') { + $stk = array(SERVICES_JSON_IN_ARR); + $arr = array(); + } else { + if ($this->use & SERVICES_JSON_LOOSE_TYPE) { + $stk = array(SERVICES_JSON_IN_OBJ); + $obj = array(); + } else { + $stk = array(SERVICES_JSON_IN_OBJ); + $obj = new stdClass(); + } + } + + array_push($stk, array('what' => SERVICES_JSON_SLICE, + 'where' => 0, + 'delim' => false)); + + $chrs = substr($str, 1, -1); + $chrs = $this->reduce_string($chrs); + + if ($chrs == '') { + if (reset($stk) == SERVICES_JSON_IN_ARR) { + return $arr; + + } else { + return $obj; + + } + } + + //print("\nparsing {$chrs}\n"); + + $strlen_chrs = strlen($chrs); + + for ($c = 0; $c <= $strlen_chrs; ++$c) { + + $top = end($stk); + $substr_chrs_c_2 = substr($chrs, $c, 2); + + if (($c == $strlen_chrs) || (($chrs{$c} == ',') && ($top['what'] == SERVICES_JSON_SLICE))) { + // found a comma that is not inside a string, array, etc., + // OR we've reached the end of the character list + $slice = substr($chrs, $top['where'], ($c - $top['where'])); + array_push($stk, array('what' => SERVICES_JSON_SLICE, 'where' => ($c + 1), 'delim' => false)); + //print("Found split at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n"); + + if (reset($stk) == SERVICES_JSON_IN_ARR) { + // we are in an array, so just push an element onto the stack + array_push($arr, $this->decode($slice)); + + } elseif (reset($stk) == SERVICES_JSON_IN_OBJ) { + // we are in an object, so figure + // out the property name and set an + // element in an associative array, + // for now + $parts = array(); + + if (preg_match('/^\s*(["\'].*[^\\\]["\'])\s*:\s*(\S.*),?$/Uis', $slice, $parts)) { + // "name":value pair + $key = $this->decode($parts[1]); + $val = $this->decode($parts[2]); + + if ($this->use & SERVICES_JSON_LOOSE_TYPE) { + $obj[$key] = $val; + } else { + $obj->$key = $val; + } + } elseif (preg_match('/^\s*(\w+)\s*:\s*(\S.*),?$/Uis', $slice, $parts)) { + // name:value pair, where name is unquoted + $key = $parts[1]; + $val = $this->decode($parts[2]); + + if ($this->use & SERVICES_JSON_LOOSE_TYPE) { + $obj[$key] = $val; + } else { + $obj->$key = $val; + } + } + + } + + } elseif ((($chrs{$c} == '"') || ($chrs{$c} == "'")) && ($top['what'] != SERVICES_JSON_IN_STR)) { + // found a quote, and we are not inside a string + array_push($stk, array('what' => SERVICES_JSON_IN_STR, 'where' => $c, 'delim' => $chrs{$c})); + //print("Found start of string at {$c}\n"); + + } elseif (($chrs{$c} == $top['delim']) && + ($top['what'] == SERVICES_JSON_IN_STR) && + ((strlen(substr($chrs, 0, $c)) - strlen(rtrim(substr($chrs, 0, $c), '\\'))) % 2 != 1)) { + // found a quote, we're in a string, and it's not escaped + // we know that it's not escaped becase there is _not_ an + // odd number of backslashes at the end of the string so far + array_pop($stk); + //print("Found end of string at {$c}: ".substr($chrs, $top['where'], (1 + 1 + $c - $top['where']))."\n"); + + } elseif (($chrs{$c} == '[') && + in_array($top['what'], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) { + // found a left-bracket, and we are in an array, object, or slice + array_push($stk, array('what' => SERVICES_JSON_IN_ARR, 'where' => $c, 'delim' => false)); + //print("Found start of array at {$c}\n"); + + } elseif (($chrs{$c} == ']') && ($top['what'] == SERVICES_JSON_IN_ARR)) { + // found a right-bracket, and we're in an array + array_pop($stk); + //print("Found end of array at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n"); + + } elseif (($chrs{$c} == '{') && + in_array($top['what'], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) { + // found a left-brace, and we are in an array, object, or slice + array_push($stk, array('what' => SERVICES_JSON_IN_OBJ, 'where' => $c, 'delim' => false)); + //print("Found start of object at {$c}\n"); + + } elseif (($chrs{$c} == '}') && ($top['what'] == SERVICES_JSON_IN_OBJ)) { + // found a right-brace, and we're in an object + array_pop($stk); + //print("Found end of object at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n"); + + } elseif (($substr_chrs_c_2 == '/*') && + in_array($top['what'], array(SERVICES_JSON_SLICE, SERVICES_JSON_IN_ARR, SERVICES_JSON_IN_OBJ))) { + // found a comment start, and we are in an array, object, or slice + array_push($stk, array('what' => SERVICES_JSON_IN_CMT, 'where' => $c, 'delim' => false)); + $c++; + //print("Found start of comment at {$c}\n"); + + } elseif (($substr_chrs_c_2 == '*/') && ($top['what'] == SERVICES_JSON_IN_CMT)) { + // found a comment end, and we're in one now + array_pop($stk); + $c++; + + for ($i = $top['where']; $i <= $c; ++$i) + $chrs = substr_replace($chrs, ' ', $i, 1); + + //print("Found end of comment at {$c}: ".substr($chrs, $top['where'], (1 + $c - $top['where']))."\n"); + + } + + } + + if (reset($stk) == SERVICES_JSON_IN_ARR) { + return $arr; + + } elseif (reset($stk) == SERVICES_JSON_IN_OBJ) { + return $obj; + + } + + } + } + } + + /** + * @todo Ultimately, this should just call PEAR::isError() + */ + function isError($data, $code = null) + { + if (class_exists('pear')) { + return PEAR::isError($data, $code); + } elseif (is_object($data) && (get_class($data) == 'services_json_error' || + is_subclass_of($data, 'services_json_error'))) { + return true; + } + + return false; + } +} + +if (class_exists('PEAR_Error')) { + + class Services_JSON_Error extends PEAR_Error + { + function Services_JSON_Error($message = 'unknown error', $code = null, + $mode = null, $options = null, $userinfo = null) + { + parent::PEAR_Error($message, $code, $mode, $options, $userinfo); + } + } + +} else { + + /** + * @todo Ultimately, this class shall be descended from PEAR_Error + */ + class Services_JSON_Error + { + function Services_JSON_Error($message = 'unknown error', $code = null, + $mode = null, $options = null, $userinfo = null) + { + + } + } + +} + +?> diff --git a/xCAT-UI/js/chili-1.8b.js b/xCAT-UI/js/chili-1.8b.js new file mode 100644 index 000000000..88f332a4f --- /dev/null +++ b/xCAT-UI/js/chili-1.8b.js @@ -0,0 +1,394 @@ +/* +=============================================================================== +Chili is the jQuery code highlighter plugin +............................................................................... + Copyright 2007 / Andrea Ercolino +------------------------------------------------------------------------------- +LICENSE: http://www.opensource.org/licenses/mit-license.php +WEBSITE: http://noteslog.com/chili/ +=============================================================================== + +=============================================================================== +Metaobjects is the jQuery metadata plugin on steroids +............................................................................... + Copyright 2007 / Andrea Ercolino +------------------------------------------------------------------------------- +LICENSE: http://www.opensource.org/licenses/mit-license.php +WEBSITE: http://noteslog.com/metaobjects/ +=============================================================================== +*/ + +//----------------------------------------------------------------------------- +( function($) { + +ChiliBook = { //implied global + + version: "1.8b" // 2007-05-26 + + , automatic: true + , automaticSelector: "code" + + , codeLanguage: function( el ) { + var recipeName = $( el ).attr( "class" ); + return recipeName ? recipeName : ''; + } + + , metadataSelector: "object.chili" // use an empty string for not executing + + , recipeLoading: true + , recipeFolder: "" // used like: recipeFolder + recipeName + '.js' + , stylesheetLoading: true + , stylesheetFolder: "" // used like: stylesheetFolder + recipeName + '.css' + + , defaultReplacement: '$$' + + , replaceSpace: " " // use an empty string for not replacing + , replaceTab: "    " // use an empty string for not replacing + , replaceNewLine: " 
" // use an empty string for not replacing + + , recipes: {} //repository + , queue: {} //register + + //fix for IE: copy of PREformatted text strips off all html, losing newlines + , preFixCopy: document.selection && document.selection.createRange + , preContent: "" + , preElement: null +}; + + +$.metaobjects = function( options ) { + + options = $.extend( { + context: document + , clean: true + , selector: 'object.metaobject' + }, options ); + + function jsValue( value ) { + eval( 'value = ' + value + ";" ); + return value; + } + + return $( options.selector, options.context ) + .each( function() { + + var settings = { target: this.parentNode }; + $( '> param[@name=metaparam]', this ) + .each( function() { + $.extend( settings, jsValue( this.value ) ); + } ); + + $( '> param', this ) + .not( '[@name=metaparam]' ) + .each( function() { + var name = this.name, value = jsValue( this.value ); + $( settings.target ) + .each( function() { + this[ name ] = value; + } ); + } ); + + if( options.clean ) { + $( this ).remove(); + } + } ); +}; + +$.fn.chili = function( options ) { + var book = $.extend( {}, ChiliBook, options || {} ); + + function cook( ingredients, recipe ) { + + function prepareStep( stepName, step ) { + var exp = ( typeof step.exp == "string" ) ? step.exp : step.exp.source; + steps.push( { + stepName: stepName + , exp: "(" + exp + ")" + , length: 1 // add 1 to account for the newly added parentheses + + (exp // count number of submatches in here + .replace( /\\./g, "%" ) // disable any escaped character + .replace( /\[.*?\]/g, "%" ) // disable any character class + .match( /\((?!\?)/g ) // match any open parenthesis, not followed by a ? + || [] // make sure it is an empty array if there are no matches + ).length // get the number of matches + , replacement: (step.replacement) ? step.replacement : book.defaultReplacement + } ); + } // function prepareStep( stepName, step ) + + function knowHow() { + var prevLength = 0; + var exps = new Array; + for (var i = 0; i < steps.length; i++) { + var exp = steps[ i ].exp; + // adjust backreferences + exp = exp.replace( /\\\\|\\(\d+)/g, function( m, aNum ) { + return !aNum ? m : "\\" + ( prevLength + 1 + parseInt( aNum, 10 ) ); + } ); + exps.push( exp ); + prevLength += steps[ i ].length; + } + var source = exps.join( "|" ); + return new RegExp( source, (recipe.ignoreCase) ? "gi" : "g" ); + } // function knowHow() + + function escapeHTML( str ) { + return str.replace( /&/g, "&" ).replace( / 1 ) { + return; + } + var ingredients = el.childNodes[0] && el.childNodes[0].data; + if( ! ingredients ) { + return; + } + // hack for IE: \r is used instead of \n + ingredients = ingredients.replace(/\r\n?/g, "\n"); + + var dish = cook( ingredients, recipe ); // all happens here + + if( book.replaceTab ) { + dish = dish.replace( /\t/g, book.replaceTab ); + } + if( book.replaceNewLine ) { + dish = dish.replace( /\n/g, book.replaceNewLine ); + } + + $( el ).html( dish ); + if( ChiliBook.preFixCopy ) { + $( el ) + .parents() + .filter( "pre" ) + .bind( "mousedown", function() { + ChiliBook.preElement = this; + } ) + .bind( "mouseup", function() { + if( ChiliBook.preElement == this ) { + ChiliBook.preContent = document.selection.createRange().htmlText; + } + } ) + ; + } + } // function makeDish( el ) + + function getPath( recipeName, options ) { + var settingsDef = { + recipeFolder: book.recipeFolder + , recipeFile: recipeName + ".js" + , stylesheetFolder: book.stylesheetFolder + , stylesheetFile: recipeName + ".css" + }; + var settings; + if( options && typeof options == "object" ) { + settings = $.extend( settingsDef, options ); + } + else { + settings = settingsDef; + } + return { + recipe : settings.recipeFolder + settings.recipeFile + , stylesheet: settings.stylesheetFolder + settings.stylesheetFile + }; + } //function getPath( recipeName, options ) + +//----------------------------------------------------------------------------- +// initializations + if( book.metadataSelector ) { + $.metaobjects( { context: this, selector: book.metadataSelector } ); + } + +//----------------------------------------------------------------------------- +// the coloring starts here + this + .each( function() { + var el = this; + var recipeName = book.codeLanguage( el ); + if( '' != recipeName ) { + var path = getPath( recipeName, el.chili ); + if( book.recipeLoading || el.chili ) { + /* dynamic setups come here */ + if( ! book.queue[ path.recipe ] ) { + /* this is a new recipe to download */ + try { + book.queue[ path.recipe ] = [ el ]; + $.getJSON( path.recipe, function( recipeLoaded ) { + recipeLoaded.path = path.recipe; + book.recipes[ path.recipe ] = recipeLoaded; + if( book.stylesheetLoading ) { + checkCSS( path.stylesheet ); + } + var q = book.queue[ path.recipe ]; + for( var i = 0, iTop = q.length; i < iTop; i++ ) { + makeDish( q[ i ], path.recipe ); + } + } ); + } + catch( recipeNotAvailable ) { + alert( "the recipe for '" + recipeName + "' was not found in '" + path.recipe + "'" ); + } + } + else { + /* not a new recipe, so just enqueue this element */ + book.queue[ path.recipe ].push( el ); + } + /* a recipe could have been already downloaded */ + makeDish( el, path.recipe ); + } + else { + /* static setups come here */ + makeDish( el, path.recipe ); + } + } + } ); + + return this; +//----------------------------------------------------------------------------- +}; + +//main +$( function() { + + if( ChiliBook.automatic ) { + if( ChiliBook.elementPath ) { + //preserve backward compatibility + ChiliBook.automaticSelector = ChiliBook.elementPath; + if( ChiliBook.elementClass ) { + ChiliBook.codeLanguage = function ( el ) { + var selectClass = new RegExp( "\\b" + ChiliBook.elementClass + "\\b", "gi" ); + var elClass = $( el ).attr( "class" ); + if( ! elClass ) { + return ''; + } + var recipeName = $.trim( elClass.replace( selectClass, "" ) ); + return recipeName; + }; + } + } + + $( ChiliBook.automaticSelector ).chili(); + } + + if( ChiliBook.preFixCopy ) { + function preformatted( text ) { + if( '' == text ) { + return ""; + } + do { + var newline_flag = (new Date()).valueOf(); + } + while( text.indexOf( newline_flag ) > -1 ); + text = text.replace( /\]*?\>/ig, newline_flag ); + var el = document.createElement( '
' );
+			el.innerHTML = text;
+			text = el.innerText.replace( new RegExp( newline_flag, "g" ), '\r\n' );
+			return text;
+		}
+
+		$( "body" )
+		.bind( "copy", function() {
+			if( '' != ChiliBook.preContent ) {
+				window.clipboardData.setData( 'Text', preformatted( ChiliBook.preContent ) );
+				event.returnValue = false;
+			}
+		} )
+		.bind( "mousedown", function() {
+			ChiliBook.preContent = "";
+		} )
+		.bind( "mouseup", function() {
+			ChiliBook.preElement = null;
+		} )
+		;
+	}
+
+} );
+
+} ) ( jQuery );
+// load progress bar
+myBar.loaded('chili.js');
diff --git a/xCAT-UI/js/config.js b/xCAT-UI/js/config.js
new file mode 100644
index 000000000..d510de8be
--- /dev/null
+++ b/xCAT-UI/js/config.js
@@ -0,0 +1,71 @@
+// Javascript functions needed by the db page.
+setTimeout("myBar.loaded('config.js')", 500); 
+
+// Make this class of elements editable
+function makeEditable(table, cellclass, imgclass, linkclass) {
+	// Make all the cells editable
+	//todo: figure out how to make the tab key commit the current cell and edit the next
+	$(cellclass).editable('change.php?tab=' + table, {
+		//indicator : "",
+		indicator : "updating...",
+		type      : 'text',
+		tooltip		: 'Click to edit...',
+		style		: 'inherit',
+		cssclass	: 'inherit',
+		placeholder	: '',
+		onblur		: 'submit'
+	//	callback	: function(value,settings) { alert(dump(settings)); }
+	});
+
+	// Set up rollover and action for red x to delete row
+	$(imgclass).hover(function() { $(this).attr('src','img/red-x2.gif'); },
+		function() { $(this).attr('src','img/red-x2-light.gif'); }
+	);
+	$(linkclass).click(function() {
+		var tr = $(this).parent().parent();
+		var rowid = tr.attr('id');
+		var match = rowid.match(/\d+/);
+		$.get('change.php?tab=' + table + '&delrow=' + match[0]);
+		tr.remove();
+	});
+	$('.editme').bind('keydown', function(event){
+		if(event.keyCode==9) {
+			$(this).find("input").blur();
+			$(this).next(".editme").click();
+			return false;
+		}
+	});
+}
+
+
+// Form a table row to add to the table
+function formRow(linenum, numCells, ooe) {
+var newrow = '';
+for (var i=0; i' + val + '';
+}
+newrow += '';
+return newrow;
+}
+
+
+// Load edittab.php, specifying this table as a param
+function loadTable(table) {
+var url = 'config.php?t=' + table;
+$('#middlepane').load(url);
+}
+
+
+// Associate a click event with each table link to get its url (which is
+// the table name) and load edittab.php with that table name.
+function bindTableLinks() {
+$('#tableNames A').click(function(e) {
+	var tableName = this.hash.substr(1);		// strip off the leading # in the hash string
+	loadTable(tableName);
+	return false;
+	});
+}
+// load progress bar
+myBar.loaded('config.js');
diff --git a/xCAT-UI/js/hoverIntent.js b/xCAT-UI/js/hoverIntent.js
new file mode 100644
index 000000000..92792125b
--- /dev/null
+++ b/xCAT-UI/js/hoverIntent.js
@@ -0,0 +1,87 @@
+(function($){
+	/* hoverIntent by Brian Cherne */
+	$.fn.hoverIntent = function(f,g) {
+		// default configuration options
+		var cfg = {
+			sensitivity: 7,
+			interval: 100,
+			timeout: 0
+		};
+		// override configuration options with user supplied object
+		cfg = $.extend(cfg, g ? { over: f, out: g } : f );
+
+		// instantiate variables
+		// cX, cY = current X and Y position of mouse, updated by mousemove event
+		// pX, pY = previous X and Y position of mouse, set by mouseover and polling interval
+		var cX, cY, pX, pY;
+
+		// A private function for getting mouse position
+		var track = function(ev) {
+			cX = ev.pageX;
+			cY = ev.pageY;
+		};
+
+		// A private function for comparing current and previous mouse position
+		var compare = function(ev,ob) {
+			ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
+			// compare mouse positions to see if they've crossed the threshold
+			if ( ( Math.abs(pX-cX) + Math.abs(pY-cY) ) < cfg.sensitivity ) {
+				$(ob).unbind("mousemove",track);
+				// set hoverIntent state to true (so mouseOut can be called)
+				ob.hoverIntent_s = 1;
+				return cfg.over.apply(ob,[ev]);
+			} else {
+				// set previous coordinates for next time
+				pX = cX; pY = cY;
+				// use self-calling timeout, guarantees intervals are spaced out properly (avoids JavaScript timer bugs)
+				ob.hoverIntent_t = setTimeout( function(){compare(ev, ob);} , cfg.interval );
+			}
+		};
+
+		// A private function for delaying the mouseOut function
+		var delay = function(ev,ob) {
+			ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t);
+			ob.hoverIntent_s = 0;
+			return cfg.out.apply(ob,[ev]);
+		};
+
+		// A private function for handling mouse 'hovering'
+		var handleHover = function(e) {
+			// next three lines copied from jQuery.hover, ignore children onMouseOver/onMouseOut
+			var p = (e.type == "mouseover" ? e.fromElement : e.toElement) || e.relatedTarget;
+			while ( p && p != this ) { try { p = p.parentNode; } catch(e) { p = this; } }
+			if ( p == this ) { return false; }
+
+			// copy objects to be passed into t (required for event object to be passed in IE)
+			var ev = jQuery.extend({},e);
+			var ob = this;
+
+			// cancel hoverIntent timer if it exists
+			if (ob.hoverIntent_t) { ob.hoverIntent_t = clearTimeout(ob.hoverIntent_t); }
+
+			// else e.type == "onmouseover"
+			if (e.type == "mouseover") {
+				// set "previous" X and Y position based on initial entry point
+				pX = ev.pageX; pY = ev.pageY;
+				// update "current" X and Y position based on mousemove
+				$(ob).bind("mousemove",track);
+				// start polling interval (self-calling timeout) to compare mouse coordinates over time
+				if (ob.hoverIntent_s != 1) { ob.hoverIntent_t = setTimeout( function(){compare(ev,ob);} , cfg.interval );}
+
+			// else e.type == "onmouseout"
+			} else {
+				// unbind expensive mousemove event
+				$(ob).unbind("mousemove",track);
+				// if hoverIntent state is true, then call the mouseOut function after the specified delay
+				if (ob.hoverIntent_s == 1) { ob.hoverIntent_t = setTimeout( function(){delay(ev,ob);} , cfg.timeout );}
+			}
+		};
+
+		// bind the function to the two event listeners
+		return this.mouseover(handleHover).mouseout(handleHover);
+	};
+	
+})(jQuery);
+
+// load progress bar
+myBar.loaded('hoverIntent.js');
diff --git a/xCAT-UI/js/jquery-ui-all.min.js b/xCAT-UI/js/jquery-ui-all.min.js
new file mode 100644
index 000000000..9690315cd
--- /dev/null
+++ b/xCAT-UI/js/jquery-ui-all.min.js
@@ -0,0 +1,636 @@
+;(function($){var _remove=$.fn.remove;$.fn.remove=function(){$("*",this).add(this).triggerHandler("remove");return _remove.apply(this,arguments);};function isVisible(element){function checkStyles(element){var style=element.style;return(style.display!='none'&&style.visibility!='hidden');}
+var visible=checkStyles(element);(visible&&$.each($.dir(element,'parentNode'),function(){return(visible=checkStyles(this));}));return visible;}
+$.extend($.expr[':'],{data:function(a,i,m){return $.data(a,m[3]);},tabbable:function(a,i,m){var nodeName=a.nodeName.toLowerCase();return(a.tabIndex>=0&&(('a'==nodeName&&a.href)||(/input|select|textarea|button/.test(nodeName)&&'hidden'!=a.type&&!a.disabled))&&isVisible(a));}});$.keyCode={BACKSPACE:8,CAPS_LOCK:20,COMMA:188,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38};function getter(namespace,plugin,method,args){function getMethods(type){var methods=$[namespace][plugin][type]||[];return(typeof methods=='string'?methods.split(/,?\s+/):methods);}
+var methods=getMethods('getter');if(args.length==1&&typeof args[0]=='string'){methods=methods.concat(getMethods('getterSetter'));}
+return($.inArray(method,methods)!=-1);}
+$.widget=function(name,prototype){var namespace=name.split(".")[0];name=name.split(".")[1];$.fn[name]=function(options){var isMethodCall=(typeof options=='string'),args=Array.prototype.slice.call(arguments,1);if(isMethodCall&&options.substring(0,1)=='_'){return this;}
+if(isMethodCall&&getter(namespace,name,options,args)){var instance=$.data(this[0],name);return(instance?instance[options].apply(instance,args):undefined);}
+return this.each(function(){var instance=$.data(this,name);(!instance&&!isMethodCall&&$.data(this,name,new $[namespace][name](this,options)));(instance&&isMethodCall&&$.isFunction(instance[options])&&instance[options].apply(instance,args));});};$[namespace][name]=function(element,options){var self=this;this.widgetName=name;this.widgetEventPrefix=$[namespace][name].eventPrefix||name;this.widgetBaseClass=namespace+'-'+name;this.options=$.extend({},$.widget.defaults,$[namespace][name].defaults,$.metadata&&$.metadata.get(element)[name],options);this.element=$(element).bind('setData.'+name,function(e,key,value){return self._setData(key,value);}).bind('getData.'+name,function(e,key){return self._getData(key);}).bind('remove',function(){return self.destroy();});this._init();};$[namespace][name].prototype=$.extend({},$.widget.prototype,prototype);$[namespace][name].getterSetter='option';};$.widget.prototype={_init:function(){},destroy:function(){this.element.removeData(this.widgetName);},option:function(key,value){var options=key,self=this;if(typeof key=="string"){if(value===undefined){return this._getData(key);}
+options={};options[key]=value;}
+$.each(options,function(key,value){self._setData(key,value);});},_getData:function(key){return this.options[key];},_setData:function(key,value){this.options[key]=value;if(key=='disabled'){this.element[value?'addClass':'removeClass'](this.widgetBaseClass+'-disabled');}},enable:function(){this._setData('disabled',false);},disable:function(){this._setData('disabled',true);},_trigger:function(type,e,data){var eventName=(type==this.widgetEventPrefix?type:this.widgetEventPrefix+type);e=e||$.event.fix({type:eventName,target:this.element[0]});return this.element.triggerHandler(eventName,[e,data],this.options[type]);}};$.widget.defaults={disabled:false};$.ui={plugin:{add:function(module,option,set){var proto=$.ui[module].prototype;for(var i in set){proto.plugins[i]=proto.plugins[i]||[];proto.plugins[i].push([option,set[i]]);}},call:function(instance,name,args){var set=instance.plugins[name];if(!set){return;}
+for(var i=0;i').addClass(name).css({position:'absolute',top:'-5000px',left:'-5000px',display:'block'}).appendTo('body');$.ui.cssCache[name]=!!((!(/auto|default/).test(tmp.css('cursor'))||(/^[1-9]/).test(tmp.css('height'))||(/^[1-9]/).test(tmp.css('width'))||!(/none/).test(tmp.css('backgroundImage'))||!(/transparent|rgba\(0, 0, 0, 0\)/).test(tmp.css('backgroundColor'))));try{$('body').get(0).removeChild(tmp.get(0));}catch(e){}
+return $.ui.cssCache[name];},disableSelection:function(el){return $(el).attr('unselectable','on').css('MozUserSelect','none').bind('selectstart.ui',function(){return false;});},enableSelection:function(el){return $(el).attr('unselectable','off').css('MozUserSelect','').unbind('selectstart.ui');},hasScroll:function(e,a){if($(e).css('overflow')=='hidden'){return false;}
+var scroll=(a&&a=='left')?'scrollLeft':'scrollTop',has=false;if(e[scroll]>0){return true;}
+e[scroll]=1;has=(e[scroll]>0);e[scroll]=0;return has;}};$.ui.mouse={_mouseInit:function(){var self=this;this.element.bind('mousedown.'+this.widgetName,function(e){return self._mouseDown(e);});if($.browser.msie){this._mouseUnselectable=this.element.attr('unselectable');this.element.attr('unselectable','on');}
+this.started=false;},_mouseDestroy:function(){this.element.unbind('.'+this.widgetName);($.browser.msie&&this.element.attr('unselectable',this._mouseUnselectable));},_mouseDown:function(e){(this._mouseStarted&&this._mouseUp(e));this._mouseDownEvent=e;var self=this,btnIsLeft=(e.which==1),elIsCancel=(typeof this.options.cancel=="string"?$(e.target).parents().add(e.target).filter(this.options.cancel).length:false);if(!btnIsLeft||elIsCancel||!this._mouseCapture(e)){return true;}
+this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){self.mouseDelayMet=true;},this.options.delay);}
+if(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)){this._mouseStarted=(this._mouseStart(e)!==false);if(!this._mouseStarted){e.preventDefault();return true;}}
+this._mouseMoveDelegate=function(e){return self._mouseMove(e);};this._mouseUpDelegate=function(e){return self._mouseUp(e);};$(document).bind('mousemove.'+this.widgetName,this._mouseMoveDelegate).bind('mouseup.'+this.widgetName,this._mouseUpDelegate);return false;},_mouseMove:function(e){if($.browser.msie&&!e.button){return this._mouseUp(e);}
+if(this._mouseStarted){this._mouseDrag(e);return false;}
+if(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,e)!==false);(this._mouseStarted?this._mouseDrag(e):this._mouseUp(e));}
+return!this._mouseStarted;},_mouseUp:function(e){$(document).unbind('mousemove.'+this.widgetName,this._mouseMoveDelegate).unbind('mouseup.'+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;this._mouseStop(e);}
+return false;},_mouseDistanceMet:function(e){return(Math.max(Math.abs(this._mouseDownEvent.pageX-e.pageX),Math.abs(this._mouseDownEvent.pageY-e.pageY))>=this.options.distance);},_mouseDelayMet:function(e){return this.mouseDelayMet;},_mouseStart:function(e){},_mouseDrag:function(e){},_mouseStop:function(e){},_mouseCapture:function(e){return true;}};$.ui.mouse.defaults={cancel:null,distance:1,delay:0};})(jQuery);(function($){$.widget("ui.draggable",$.extend({},$.ui.mouse,{getHandle:function(e){var handle=!this.options.handle||!$(this.options.handle,this.element).length?true:false;$(this.options.handle,this.element).find("*").andSelf().each(function(){if(this==e.target)handle=true;});return handle;},createHelper:function(){var o=this.options;var helper=$.isFunction(o.helper)?$(o.helper.apply(this.element[0],[e])):(o.helper=='clone'?this.element.clone():this.element);if(!helper.parents('body').length)
+helper.appendTo((o.appendTo=='parent'?this.element[0].parentNode:o.appendTo));if(helper[0]!=this.element[0]&&!(/(fixed|absolute)/).test(helper.css("position")))
+helper.css("position","absolute");return helper;},_init:function(){if(this.options.helper=='original'&&!(/^(?:r|a|f)/).test(this.element.css("position")))
+this.element[0].style.position='relative';(this.options.cssNamespace&&this.element.addClass(this.options.cssNamespace+"-draggable"));(this.options.disabled&&this.element.addClass('ui-draggable-disabled'));this._mouseInit();},_mouseCapture:function(e){var o=this.options;if(this.helper||o.disabled||$(e.target).is('.ui-resizable-handle'))
+return false;this.handle=this.getHandle(e);if(!this.handle)
+return false;return true;},_mouseStart:function(e){var o=this.options;this.helper=this.createHelper();if($.ui.ddmanager)
+$.ui.ddmanager.current=this;this.margins={left:(parseInt(this.element.css("marginLeft"),10)||0),top:(parseInt(this.element.css("marginTop"),10)||0)};this.cssPosition=this.helper.css("position");this.offset=this.element.offset();this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left};this.offset.click={left:e.pageX-this.offset.left,top:e.pageY-this.offset.top};this.cacheScrollParents();this.offsetParent=this.helper.offsetParent();var po=this.offsetParent.offset();if(this.offsetParent[0]==document.body&&$.browser.mozilla)po={top:0,left:0};this.offset.parent={top:po.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:po.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)};if(this.cssPosition=="relative"){var p=this.element.position();this.offset.relative={top:p.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollTopParent.scrollTop(),left:p.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollLeftParent.scrollLeft()};}else{this.offset.relative={top:0,left:0};}
+this.originalPosition=this._generatePosition(e);this.cacheHelperProportions();if(o.cursorAt)
+this.adjustOffsetFromHelper(o.cursorAt);$.extend(this,{PAGEY_INCLUDES_SCROLL:(this.cssPosition=="absolute"&&(!this.scrollTopParent[0].tagName||(/(html|body)/i).test(this.scrollTopParent[0].tagName))),PAGEX_INCLUDES_SCROLL:(this.cssPosition=="absolute"&&(!this.scrollLeftParent[0].tagName||(/(html|body)/i).test(this.scrollLeftParent[0].tagName))),OFFSET_PARENT_NOT_SCROLL_PARENT_Y:this.scrollTopParent[0]!=this.offsetParent[0]&&!(this.scrollTopParent[0]==document&&(/(body|html)/i).test(this.offsetParent[0].tagName)),OFFSET_PARENT_NOT_SCROLL_PARENT_X:this.scrollLeftParent[0]!=this.offsetParent[0]&&!(this.scrollLeftParent[0]==document&&(/(body|html)/i).test(this.offsetParent[0].tagName))});if(o.containment)
+this.setContainment();this._propagate("start",e);this.cacheHelperProportions();if($.ui.ddmanager&&!o.dropBehaviour)
+$.ui.ddmanager.prepareOffsets(this,e);this.helper.addClass("ui-draggable-dragging");this._mouseDrag(e);return true;},cacheScrollParents:function(){this.scrollTopParent=function(el){do{if(/auto|scroll/.test(el.css('overflow'))||(/auto|scroll/).test(el.css('overflow-y')))return el;el=el.parent();}while(el[0].parentNode);return $(document);}(this.helper);this.scrollLeftParent=function(el){do{if(/auto|scroll/.test(el.css('overflow'))||(/auto|scroll/).test(el.css('overflow-x')))return el;el=el.parent();}while(el[0].parentNode);return $(document);}(this.helper);},adjustOffsetFromHelper:function(obj){if(obj.left!=undefined)this.offset.click.left=obj.left+this.margins.left;if(obj.right!=undefined)this.offset.click.left=this.helperProportions.width-obj.right+this.margins.left;if(obj.top!=undefined)this.offset.click.top=obj.top+this.margins.top;if(obj.bottom!=undefined)this.offset.click.top=this.helperProportions.height-obj.bottom+this.margins.top;},cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()};},setContainment:function(){var o=this.options;if(o.containment=='parent')o.containment=this.helper[0].parentNode;if(o.containment=='document'||o.containment=='window')this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,$(o.containment=='document'?document:window).width()-this.offset.relative.left-this.offset.parent.left-this.helperProportions.width-this.margins.left-(parseInt(this.element.css("marginRight"),10)||0),($(o.containment=='document'?document:window).height()||document.body.parentNode.scrollHeight)-this.offset.relative.top-this.offset.parent.top-this.helperProportions.height-this.margins.top-(parseInt(this.element.css("marginBottom"),10)||0)];if(!(/^(document|window|parent)$/).test(o.containment)){var ce=$(o.containment)[0];var co=$(o.containment).offset();var over=($(ce).css("overflow")!='hidden');this.containment=[co.left+(parseInt($(ce).css("borderLeftWidth"),10)||0)-this.offset.relative.left-this.offset.parent.left,co.top+(parseInt($(ce).css("borderTopWidth"),10)||0)-this.offset.relative.top-this.offset.parent.top,co.left+(over?Math.max(ce.scrollWidth,ce.offsetWidth):ce.offsetWidth)-(parseInt($(ce).css("borderLeftWidth"),10)||0)-this.offset.relative.left-this.offset.parent.left-this.helperProportions.width-this.margins.left-(parseInt(this.element.css("marginRight"),10)||0),co.top+(over?Math.max(ce.scrollHeight,ce.offsetHeight):ce.offsetHeight)-(parseInt($(ce).css("borderTopWidth"),10)||0)-this.offset.relative.top-this.offset.parent.top-this.helperProportions.height-this.margins.top-(parseInt(this.element.css("marginBottom"),10)||0)];}},_convertPositionTo:function(d,pos){if(!pos)pos=this.position;var mod=d=="absolute"?1:-1;return{top:(pos.top
++this.offset.relative.top*mod
++this.offset.parent.top*mod
+-(this.cssPosition=="fixed"||this.PAGEY_INCLUDES_SCROLL||this.OFFSET_PARENT_NOT_SCROLL_PARENT_Y?0:this.scrollTopParent.scrollTop())*mod
++(this.cssPosition=="fixed"?$(document).scrollTop():0)*mod
++this.margins.top*mod),left:(pos.left
++this.offset.relative.left*mod
++this.offset.parent.left*mod
+-(this.cssPosition=="fixed"||this.PAGEX_INCLUDES_SCROLL||this.OFFSET_PARENT_NOT_SCROLL_PARENT_X?0:this.scrollLeftParent.scrollLeft())*mod
++(this.cssPosition=="fixed"?$(document).scrollLeft():0)*mod
++this.margins.left*mod)};},_generatePosition:function(e){var o=this.options;var position={top:(e.pageY
+-this.offset.click.top
+-this.offset.relative.top
+-this.offset.parent.top
++(this.cssPosition=="fixed"||this.PAGEY_INCLUDES_SCROLL||this.OFFSET_PARENT_NOT_SCROLL_PARENT_Y?0:this.scrollTopParent.scrollTop())
+-(this.cssPosition=="fixed"?$(document).scrollTop():0)),left:(e.pageX
+-this.offset.click.left
+-this.offset.relative.left
+-this.offset.parent.left
++(this.cssPosition=="fixed"||this.PAGEX_INCLUDES_SCROLL||this.OFFSET_PARENT_NOT_SCROLL_PARENT_X?0:this.scrollLeftParent.scrollLeft())
+-(this.cssPosition=="fixed"?$(document).scrollLeft():0))};if(!this.originalPosition)return position;if(this.containment){if(position.leftthis.containment[2])position.left=this.containment[2];if(position.top>this.containment[3])position.top=this.containment[3];}
+if(o.grid){var top=this.originalPosition.top+Math.round((position.top-this.originalPosition.top)/o.grid[1])*o.grid[1];position.top=this.containment?(!(topthis.containment[3])?top:(!(topthis.containment[2])?left:(!(left').css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1000}).css($(this).offset()).appendTo("body");});},stop:function(e,ui){$("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this);});}});$.ui.plugin.add("draggable","scroll",{start:function(e,ui){var o=ui.options;var i=$(this).data("draggable");o.scrollSensitivity=o.scrollSensitivity||20;o.scrollSpeed=o.scrollSpeed||20;i.overflowY=function(el){do{if(/auto|scroll/.test(el.css('overflow'))||(/auto|scroll/).test(el.css('overflow-y')))return el;el=el.parent();}while(el[0].parentNode);return $(document);}(this);i.overflowX=function(el){do{if(/auto|scroll/.test(el.css('overflow'))||(/auto|scroll/).test(el.css('overflow-x')))return el;el=el.parent();}while(el[0].parentNode);return $(document);}(this);if(i.overflowY[0]!=document&&i.overflowY[0].tagName!='HTML')i.overflowYOffset=i.overflowY.offset();if(i.overflowX[0]!=document&&i.overflowX[0].tagName!='HTML')i.overflowXOffset=i.overflowX.offset();},drag:function(e,ui){var o=ui.options,scrolled=false;var i=$(this).data("draggable");if(i.overflowY[0]!=document&&i.overflowY[0].tagName!='HTML'){if((i.overflowYOffset.top+i.overflowY[0].offsetHeight)-e.pageY=0;i--){var l=inst.snapElements[i].left,r=l+inst.snapElements[i].width,t=inst.snapElements[i].top,b=t+inst.snapElements[i].height;if(!((l-d=t&&y1<=b)||(y2>=t&&y2<=b)||(y1b))&&((x1>=l&&x1<=r)||(x2>=l&&x2<=r)||(x1r));break;default:return false;break;}};$.ui.ddmanager={current:null,droppables:{'default':[]},prepareOffsets:function(t,e){var m=$.ui.ddmanager.droppables[t.options.scope];var type=e?e.type:null;var list=(t.currentItem||t.element).find(":data(droppable)").andSelf();droppablesLoop:for(var i=0;i').css({position:el.css('position'),width:el.outerWidth(),height:el.outerHeight(),top:el.css('top'),left:el.css('left')}));var oel=this.element;this.element=this.element.parent();this.element.data('resizable',this);this.element.css({marginLeft:oel.css("marginLeft"),marginTop:oel.css("marginTop"),marginRight:oel.css("marginRight"),marginBottom:oel.css("marginBottom")});oel.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});if($.browser.safari&&o.preventDefault)oel.css('resize','none');o.proportionallyResize=oel.css({position:'static',zoom:1,display:'block'});this.element.css({margin:oel.css('margin')});this._proportionallyResize();}
+if(!o.handles)o.handles=!$('.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(o.handles.constructor==String){o.zIndex=o.zIndex||1000;if(o.handles=='all')o.handles='n,e,s,w,se,sw,ne,nw';var n=o.handles.split(",");o.handles={};var insertionsDefault={handle:'position: absolute; display: none; overflow:hidden;',n:'top: 0pt; width:100%;',e:'right: 0pt; height:100%;',s:'bottom: 0pt; width:100%;',w:'left: 0pt; height:100%;',se:'bottom: 0pt; right: 0px;',sw:'bottom: 0pt; left: 0px;',ne:'top: 0pt; right: 0px;',nw:'top: 0pt; left: 0px;'};for(var i=0;i'].join('')).css(applyZIndex);o.handles[handle]='.ui-resizable-'+handle;this.element.append(axis.css(loadDefault?allDefTheme:{}).css(o.knobHandles?allKnobTheme:{}).addClass(o.knobHandles?'ui-resizable-knob-handle':'').addClass(o.knobHandles));}
+if(o.knobHandles)this.element.addClass('ui-resizable-knob').css(!$.ui.css('ui-resizable-knob')?{}:{});}
+this._renderAxis=function(target){target=target||this.element;for(var i in o.handles){if(o.handles[i].constructor==String)
+o.handles[i]=$(o.handles[i],this.element).show();if(o.transparent)
+o.handles[i].css({opacity:0});if(this.element.is('.ui-wrapper')&&o._nodeName.match(/textarea|input|select|button/i)){var axis=$(o.handles[i],this.element),padWrapper=0;padWrapper=/sw|ne|nw|se|n|s/.test(i)?axis.outerHeight():axis.outerWidth();var padPos=['padding',/ne|nw|n/.test(i)?'Top':/se|sw|s/.test(i)?'Bottom':/^e$/.test(i)?'Right':'Left'].join("");if(!o.transparent)
+target.css(padPos,padWrapper);this._proportionallyResize();}
+if(!$(o.handles[i]).length)continue;}};this._renderAxis(this.element);o._handles=$('.ui-resizable-handle',self.element);if(o.disableSelection)
+o._handles.each(function(i,e){$.ui.disableSelection(e);});o._handles.mouseover(function(){if(!o.resizing){if(this.className)
+var axis=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i);self.axis=o.axis=axis&&axis[1]?axis[1]:'se';}});if(o.autoHide){o._handles.hide();$(self.element).addClass("ui-resizable-autohide").hover(function(){$(this).removeClass("ui-resizable-autohide");o._handles.show();},function(){if(!o.resizing){$(this).addClass("ui-resizable-autohide");o._handles.hide();}});}
+this._mouseInit();},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,options:this.options,originalSize:this.originalSize,originalPosition:this.originalPosition};},_propagate:function(n,e){$.ui.plugin.call(this,n,[e,this.ui()]);if(n!="resize")this.element.triggerHandler(["resize",n].join(""),[e,this.ui()],this.options[n]);},destroy:function(){var el=this.element,wrapped=el.children(".ui-resizable").get(0);this._mouseDestroy();var _destroy=function(exp){$(exp).removeClass("ui-resizable ui-resizable-disabled").removeData("resizable").unbind(".resizable").find('.ui-resizable-handle').remove();};_destroy(el);if(el.is('.ui-wrapper')&&wrapped){el.parent().append($(wrapped).css({position:el.css('position'),width:el.outerWidth(),height:el.outerHeight(),top:el.css('top'),left:el.css('left')})).end().remove();_destroy(wrapped);}},_mouseCapture:function(e){if(this.options.disabled)return false;var handle=false;for(var i in this.options.handles){if($(this.options.handles[i])[0]==e.target)handle=true;}
+if(!handle)return false;return true;},_mouseStart:function(e){var o=this.options,iniPos=this.element.position(),el=this.element,num=function(v){return parseInt(v,10)||0;},ie6=$.browser.msie&&$.browser.version<7;o.resizing=true;o.documentScroll={top:$(document).scrollTop(),left:$(document).scrollLeft()};if(el.is('.ui-draggable')||(/absolute/).test(el.css('position'))){var sOffset=$.browser.msie&&!o.containment&&(/absolute/).test(el.css('position'))&&!(/relative/).test(el.parent().css('position'));var dscrollt=sOffset?o.documentScroll.top:0,dscrolll=sOffset?o.documentScroll.left:0;el.css({position:'absolute',top:(iniPos.top+dscrollt),left:(iniPos.left+dscrolll)});}
+if($.browser.opera&&/relative/.test(el.css('position')))
+el.css({position:'relative',top:'auto',left:'auto'});this._renderProxy();var curleft=num(this.helper.css('left')),curtop=num(this.helper.css('top'));if(o.containment){curleft+=$(o.containment).scrollLeft()||0;curtop+=$(o.containment).scrollTop()||0;}
+this.offset=this.helper.offset();this.position={left:curleft,top:curtop};this.size=o.helper||ie6?{width:el.outerWidth(),height:el.outerHeight()}:{width:el.width(),height:el.height()};this.originalSize=o.helper||ie6?{width:el.outerWidth(),height:el.outerHeight()}:{width:el.width(),height:el.height()};this.originalPosition={left:curleft,top:curtop};this.sizeDiff={width:el.outerWidth()-el.width(),height:el.outerHeight()-el.height()};this.originalMousePosition={left:e.pageX,top:e.pageY};o.aspectRatio=(typeof o.aspectRatio=='number')?o.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);if(o.preserveCursor)
+$('body').css('cursor',this.axis+'-resize');this._propagate("start",e);return true;},_mouseDrag:function(e){var el=this.helper,o=this.options,props={},self=this,smp=this.originalMousePosition,a=this.axis;var dx=(e.pageX-smp.left)||0,dy=(e.pageY-smp.top)||0;var trigger=this._change[a];if(!trigger)return false;var data=trigger.apply(this,[e,dx,dy]),ie6=$.browser.msie&&$.browser.version<7,csdif=this.sizeDiff;if(o._aspectRatio||e.shiftKey)
+data=this._updateRatio(data,e);data=this._respectSize(data,e);this._propagate("resize",e);el.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!o.helper&&o.proportionallyResize)
+this._proportionallyResize();this._updateCache(data);this.element.triggerHandler("resize",[e,this.ui()],this.options["resize"]);return false;},_mouseStop:function(e){this.options.resizing=false;var o=this.options,num=function(v){return parseInt(v,10)||0;},self=this;if(o.helper){var pr=o.proportionallyResize,ista=pr&&(/textarea/i).test(pr.get(0).nodeName),soffseth=ista&&$.ui.hasScroll(pr.get(0),'left')?0:self.sizeDiff.height,soffsetw=ista?0:self.sizeDiff.width;var s={width:(self.size.width-soffsetw),height:(self.size.height-soffseth)},left=(parseInt(self.element.css('left'),10)+(self.position.left-self.originalPosition.left))||null,top=(parseInt(self.element.css('top'),10)+(self.position.top-self.originalPosition.top))||null;if(!o.animate)
+this.element.css($.extend(s,{top:top,left:left}));if(o.helper&&!o.animate)this._proportionallyResize();}
+if(o.preserveCursor)
+$('body').css('cursor','auto');this._propagate("stop",e);if(o.helper)this.helper.remove();return false;},_updateCache:function(data){var o=this.options;this.offset=this.helper.offset();if(data.left)this.position.left=data.left;if(data.top)this.position.top=data.top;if(data.height)this.size.height=data.height;if(data.width)this.size.width=data.width;},_updateRatio:function(data,e){var o=this.options,cpos=this.position,csize=this.size,a=this.axis;if(data.height)data.width=(csize.height*o.aspectRatio);else if(data.width)data.height=(csize.width/o.aspectRatio);if(a=='sw'){data.left=cpos.left+(csize.width-data.width);data.top=null;}
+if(a=='nw'){data.top=cpos.top+(csize.height-data.height);data.left=cpos.left+(csize.width-data.width);}
+return data;},_respectSize:function(data,e){var el=this.helper,o=this.options,pRatio=o._aspectRatio||e.shiftKey,a=this.axis,ismaxw=data.width&&o.maxWidth&&o.maxWidthdata.width,isminh=data.height&&o.minHeight&&o.minHeight>data.height;if(isminw)data.width=o.minWidth;if(isminh)data.height=o.minHeight;if(ismaxw)data.width=o.maxWidth;if(ismaxh)data.height=o.maxHeight;var dw=this.originalPosition.left+this.originalSize.width,dh=this.position.top+this.size.height;var cw=/sw|nw|w/.test(a),ch=/nw|ne|n/.test(a);if(isminw&&cw)data.left=dw-o.minWidth;if(ismaxw&&cw)data.left=dw-o.maxWidth;if(isminh&&ch)data.top=dh-o.minHeight;if(ismaxh&&ch)data.top=dh-o.maxHeight;var isNotwh=!data.width&&!data.height;if(isNotwh&&!data.left&&data.top)data.top=null;else if(isNotwh&&!data.top&&data.left)data.left=null;return data;},_proportionallyResize:function(){var o=this.options;if(!o.proportionallyResize)return;var prel=o.proportionallyResize,el=this.helper||this.element;if(!o.borderDif){var b=[prel.css('borderTopWidth'),prel.css('borderRightWidth'),prel.css('borderBottomWidth'),prel.css('borderLeftWidth')],p=[prel.css('paddingTop'),prel.css('paddingRight'),prel.css('paddingBottom'),prel.css('paddingLeft')];o.borderDif=$.map(b,function(v,i){var border=parseInt(v,10)||0,padding=parseInt(p[i],10)||0;return border+padding;});}
+prel.css({height:(el.height()-o.borderDif[0]-o.borderDif[2])+"px",width:(el.width()-o.borderDif[1]-o.borderDif[3])+"px"});},_renderProxy:function(){var el=this.element,o=this.options;this.elementOffset=el.offset();if(o.helper){this.helper=this.helper||$('
');var ie6=$.browser.msie&&$.browser.version<7,ie6offset=(ie6?1:0),pxyoffset=(ie6?2:-1);this.helper.addClass(o.helper).css({width:el.outerWidth()+pxyoffset,height:el.outerHeight()+pxyoffset,position:'absolute',left:this.elementOffset.left-ie6offset+'px',top:this.elementOffset.top-ie6offset+'px',zIndex:++o.zIndex});this.helper.appendTo("body");if(o.disableSelection) +$.ui.disableSelection(this.helper.get(0));}else{this.helper=el;}},_change:{e:function(e,dx,dy){return{width:this.originalSize.width+dx};},w:function(e,dx,dy){var o=this.options,cs=this.originalSize,sp=this.originalPosition;return{left:sp.left+dx,width:cs.width-dx};},n:function(e,dx,dy){var o=this.options,cs=this.originalSize,sp=this.originalPosition;return{top:sp.top+dy,height:cs.height-dy};},s:function(e,dx,dy){return{height:this.originalSize.height+dy};},se:function(e,dx,dy){return $.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,dx,dy]));},sw:function(e,dx,dy){return $.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,dx,dy]));},ne:function(e,dx,dy){return $.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,dx,dy]));},nw:function(e,dx,dy){return $.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,dx,dy]));}}}));$.extend($.ui.resizable,{defaults:{cancel:":input",distance:1,delay:0,preventDefault:true,transparent:false,minWidth:10,minHeight:10,aspectRatio:false,disableSelection:true,preserveCursor:true,autoHide:false,knobHandles:false}});$.ui.plugin.add("resizable","containment",{start:function(e,ui){var o=ui.options,self=$(this).data("resizable"),el=self.element;var oc=o.containment,ce=(oc instanceof $)?oc.get(0):(/parent/.test(oc))?el.parent().get(0):oc;if(!ce)return;self.containerElement=$(ce);if(/document/.test(oc)||oc==document){self.containerOffset={left:0,top:0};self.containerPosition={left:0,top:0};self.parentData={element:$(document),left:0,top:0,width:$(document).width(),height:$(document).height()||document.body.parentNode.scrollHeight};} +else{self.containerOffset=$(ce).offset();self.containerPosition=$(ce).position();self.containerSize={height:$(ce).innerHeight(),width:$(ce).innerWidth()};var co=self.containerOffset,ch=self.containerSize.height,cw=self.containerSize.width,width=($.ui.hasScroll(ce,"left")?ce.scrollWidth:cw),height=($.ui.hasScroll(ce)?ce.scrollHeight:ch);self.parentData={element:ce,left:co.left,top:co.top,width:width,height:height};}},resize:function(e,ui){var o=ui.options,self=$(this).data("resizable"),ps=self.containerSize,co=self.containerOffset,cs=self.size,cp=self.position,pRatio=o._aspectRatio||e.shiftKey,cop={top:0,left:0},ce=self.containerElement;if(ce[0]!=document&&/static/.test(ce.css('position'))) +cop=self.containerPosition;if(cp.left<(o.helper?co.left:cop.left)){self.size.width=self.size.width+(o.helper?(self.position.left-co.left):(self.position.left-cop.left));if(pRatio)self.size.height=self.size.width/o.aspectRatio;self.position.left=o.helper?co.left:cop.left;} +if(cp.top<(o.helper?co.top:0)){self.size.height=self.size.height+(o.helper?(self.position.top-co.top):self.position.top);if(pRatio)self.size.width=self.size.height*o.aspectRatio;self.position.top=o.helper?co.top:0;} +var woset=(o.helper?self.offset.left-co.left:(self.position.left-cop.left))+self.sizeDiff.width,hoset=(o.helper?self.offset.top-co.top:self.position.top)+self.sizeDiff.height;if(woset+self.size.width>=self.parentData.width){self.size.width=self.parentData.width-woset;if(pRatio)self.size.height=self.size.width/o.aspectRatio;} +if(hoset+self.size.height>=self.parentData.height){self.size.height=self.parentData.height-hoset;if(pRatio)self.size.width=self.size.height*o.aspectRatio;}},stop:function(e,ui){var o=ui.options,self=$(this).data("resizable"),cp=self.position,co=self.containerOffset,cop=self.containerPosition,ce=self.containerElement;var helper=$(self.helper),ho=helper.offset(),w=helper.innerWidth(),h=helper.innerHeight();if(o.helper&&!o.animate&&/relative/.test(ce.css('position'))) +$(this).css({left:(ho.left-co.left),top:(ho.top-co.top),width:w,height:h});if(o.helper&&!o.animate&&/static/.test(ce.css('position'))) +$(this).css({left:cop.left+(ho.left-co.left),top:cop.top+(ho.top-co.top),width:w,height:h});}});$.ui.plugin.add("resizable","grid",{resize:function(e,ui){var o=ui.options,self=$(this).data("resizable"),cs=self.size,os=self.originalSize,op=self.originalPosition,a=self.axis,ratio=o._aspectRatio||e.shiftKey;o.grid=typeof o.grid=="number"?[o.grid,o.grid]:o.grid;var ox=Math.round((cs.width-os.width)/(o.grid[0]||1))*(o.grid[0]||1),oy=Math.round((cs.height-os.height)/(o.grid[1]||1))*(o.grid[1]||1);if(/^(se|s|e)$/.test(a)){self.size.width=os.width+ox;self.size.height=os.height+oy;} +else if(/^(ne)$/.test(a)){self.size.width=os.width+ox;self.size.height=os.height+oy;self.position.top=op.top-oy;} +else if(/^(sw)$/.test(a)){self.size.width=os.width+ox;self.size.height=os.height+oy;self.position.left=op.left-ox;} +else{self.size.width=os.width+ox;self.size.height=os.height+oy;self.position.top=op.top-oy;self.position.left=op.left-ox;}}});$.ui.plugin.add("resizable","animate",{stop:function(e,ui){var o=ui.options,self=$(this).data("resizable");var pr=o.proportionallyResize,ista=pr&&(/textarea/i).test(pr.get(0).nodeName),soffseth=ista&&$.ui.hasScroll(pr.get(0),'left')?0:self.sizeDiff.height,soffsetw=ista?0:self.sizeDiff.width;var style={width:(self.size.width-soffsetw),height:(self.size.height-soffseth)},left=(parseInt(self.element.css('left'),10)+(self.position.left-self.originalPosition.left))||null,top=(parseInt(self.element.css('top'),10)+(self.position.top-self.originalPosition.top))||null;self.element.animate($.extend(style,top&&left?{top:top,left:left}:{}),{duration:o.animateDuration||"slow",easing:o.animateEasing||"swing",step:function(){var data={width:parseInt(self.element.css('width'),10),height:parseInt(self.element.css('height'),10),top:parseInt(self.element.css('top'),10),left:parseInt(self.element.css('left'),10)};if(pr)pr.css({width:data.width,height:data.height});self._updateCache(data);self._propagate("animate",e);}});}});$.ui.plugin.add("resizable","ghost",{start:function(e,ui){var o=ui.options,self=$(this).data("resizable"),pr=o.proportionallyResize,cs=self.size;if(!pr)self.ghost=self.element.clone();else self.ghost=pr.clone();self.ghost.css({opacity:.25,display:'block',position:'relative',height:cs.height,width:cs.width,margin:0,left:0,top:0}).addClass('ui-resizable-ghost').addClass(typeof o.ghost=='string'?o.ghost:'');self.ghost.appendTo(self.helper);},resize:function(e,ui){var o=ui.options,self=$(this).data("resizable"),pr=o.proportionallyResize;if(self.ghost)self.ghost.css({position:'relative',height:self.size.height,width:self.size.width});},stop:function(e,ui){var o=ui.options,self=$(this).data("resizable"),pr=o.proportionallyResize;if(self.ghost&&self.helper)self.helper.get(0).removeChild(self.ghost.get(0));}});$.ui.plugin.add("resizable","alsoResize",{start:function(e,ui){var o=ui.options,self=$(this).data("resizable"),_store=function(exp){$(exp).each(function(){$(this).data("resizable-alsoresize",{width:parseInt($(this).width(),10),height:parseInt($(this).height(),10),left:parseInt($(this).css('left'),10),top:parseInt($(this).css('top'),10)});});};if(typeof(o.alsoResize)=='object'){if(o.alsoResize.length){o.alsoResize=o.alsoResize[0];_store(o.alsoResize);} +else{$.each(o.alsoResize,function(exp,c){_store(exp);});}}else{_store(o.alsoResize);}},resize:function(e,ui){var o=ui.options,self=$(this).data("resizable"),os=self.originalSize,op=self.originalPosition;var delta={height:(self.size.height-os.height)||0,width:(self.size.width-os.width)||0,top:(self.position.top-op.top)||0,left:(self.position.left-op.left)||0},_alsoResize=function(exp,c){$(exp).each(function(){var start=$(this).data("resizable-alsoresize"),style={},css=c&&c.length?c:['width','height','top','left'];$.each(css||['width','height','top','left'],function(i,prop){var sum=(start[prop]||0)+(delta[prop]||0);if(sum&&sum>=0) +style[prop]=sum||null;});$(this).css(style);});};if(typeof(o.alsoResize)=='object'){$.each(o.alsoResize,function(exp,c){_alsoResize(exp,c);});}else{_alsoResize(o.alsoResize);}},stop:function(e,ui){$(this).removeData("resizable-alsoresize-start");}});})(jQuery);(function($){$.widget("ui.selectable",$.extend({},$.ui.mouse,{_init:function(){var self=this;this.element.addClass("ui-selectable");this.dragged=false;var selectees;this.refresh=function(){selectees=$(self.options.filter,self.element[0]);selectees.each(function(){var $this=$(this);var pos=$this.offset();$.data(this,"selectable-item",{element:this,$element:$this,left:pos.left,top:pos.top,right:pos.left+$this.width(),bottom:pos.top+$this.height(),startselected:false,selected:$this.hasClass('ui-selected'),selecting:$this.hasClass('ui-selecting'),unselecting:$this.hasClass('ui-unselecting')});});};this.refresh();this.selectees=selectees.addClass("ui-selectee");this._mouseInit();this.helper=$(document.createElement('div')).css({border:'1px dotted black'}).addClass("ui-selectable-helper");},toggle:function(){if(this.options.disabled){this.enable();}else{this.disable();}},destroy:function(){this.element.removeClass("ui-selectable ui-selectable-disabled").removeData("selectable").unbind(".selectable");this._mouseDestroy();},_mouseStart:function(e){var self=this;this.opos=[e.pageX,e.pageY];if(this.options.disabled) +return;var options=this.options;this.selectees=$(options.filter,this.element[0]);this.element.triggerHandler("selectablestart",[e,{"selectable":this.element[0],"options":options}],options.start);$('body').append(this.helper);this.helper.css({"z-index":100,"position":"absolute","left":e.clientX,"top":e.clientY,"width":0,"height":0});if(options.autoRefresh){this.refresh();} +this.selectees.filter('.ui-selected').each(function(){var selectee=$.data(this,"selectable-item");selectee.startselected=true;if(!e.metaKey){selectee.$element.removeClass('ui-selected');selectee.selected=false;selectee.$element.addClass('ui-unselecting');selectee.unselecting=true;self.element.triggerHandler("selectableunselecting",[e,{selectable:self.element[0],unselecting:selectee.element,options:options}],options.unselecting);}});var isSelectee=false;$(e.target).parents().andSelf().each(function(){if($.data(this,"selectable-item"))isSelectee=true;});return this.options.keyboard?!isSelectee:true;},_mouseDrag:function(e){var self=this;this.dragged=true;if(this.options.disabled) +return;var options=this.options;var x1=this.opos[0],y1=this.opos[1],x2=e.pageX,y2=e.pageY;if(x1>x2){var tmp=x2;x2=x1;x1=tmp;} +if(y1>y2){var tmp=y2;y2=y1;y1=tmp;} +this.helper.css({left:x1,top:y1,width:x2-x1,height:y2-y1});this.selectees.each(function(){var selectee=$.data(this,"selectable-item");if(!selectee||selectee.element==self.element[0]) +return;var hit=false;if(options.tolerance=='touch'){hit=(!(selectee.left>x2||selectee.righty2||selectee.bottomx1&&selectee.righty1&&selectee.bottomt&&(y1+dyClick)l&&(x1+dxClick)item[this.floating?'width':'height'])){return isOverElement;}else{return(lt&&(y1+dyClick)l&&(x1+dxClick)item[this.floating?'width':'height'])){if(!isOverElement)return false;if(this.floating){if((x1+dxClick)>l&&(x1+dxClick)l+item.width/2&&(x1+dxClick)t+height/2){return 1;}}}else{if(!(ll&&x1r)return 1;}else{if(y2>t&&y1b)return 2;}} +return false;},refresh:function(){this._refreshItems();this.refreshPositions();},_getItemsAsjQuery:function(connected){var self=this;var items=[];var queries=[];if(this.options.connectWith&&connected){for(var i=this.options.connectWith.length-1;i>=0;i--){var cur=$(this.options.connectWith[i]);for(var j=cur.length-1;j>=0;j--){var inst=$.data(cur[j],'sortable');if(inst&&inst!=this&&!inst.options.disabled){queries.push([$.isFunction(inst.options.items)?inst.options.items.call(inst.element):$(inst.options.items,inst.element).not(".ui-sortable-helper"),inst]);}};};} +queries.push([$.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):$(this.options.items,this.element).not(".ui-sortable-helper"),this]);for(var i=queries.length-1;i>=0;i--){queries[i][0].each(function(){items.push(this);});};return $(items);},_removeCurrentsFromItems:function(){var list=this.currentItem.find(":data(sortable-item)");for(var i=0;i=0;i--){var cur=$(this.options.connectWith[i]);for(var j=cur.length-1;j>=0;j--){var inst=$.data(cur[j],'sortable');if(inst&&inst!=this&&!inst.options.disabled){queries.push([$.isFunction(inst.options.items)?inst.options.items.call(inst.element):$(inst.options.items,inst.element),inst]);this.containers.push(inst);}};};} +for(var i=queries.length-1;i>=0;i--){queries[i][0].each(function(){$.data(this,'sortable-item',queries[i][1]);items.push({item:$(this),instance:queries[i][1],width:0,height:0,left:0,top:0});});};},refreshPositions:function(fast){if(this.offsetParent){var po=this.offsetParent.offset();this.offset.parent={top:po.top+this.offsetParentBorders.top,left:po.left+this.offsetParentBorders.left};} +for(var i=this.items.length-1;i>=0;i--){if(this.items[i].instance!=this.currentContainer&&this.currentContainer&&this.items[i].item[0]!=this.currentItem[0]) +continue;var t=this.options.toleranceElement?$(this.options.toleranceElement,this.items[i].item):this.items[i].item;if(!fast){this.items[i].width=t[0].offsetWidth;this.items[i].height=t[0].offsetHeight;} +var p=t.offset();this.items[i].left=p.left;this.items[i].top=p.top;};if(this.options.custom&&this.options.custom.refreshContainers){this.options.custom.refreshContainers.call(this);}else{for(var i=this.containers.length-1;i>=0;i--){var p=this.containers[i].element.offset();this.containers[i].containerCache.left=p.left;this.containers[i].containerCache.top=p.top;this.containers[i].containerCache.width=this.containers[i].element.outerWidth();this.containers[i].containerCache.height=this.containers[i].element.outerHeight();};}},destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").removeData("sortable").unbind(".sortable");this._mouseDestroy();for(var i=this.items.length-1;i>=0;i--) +this.items[i].item.removeData("sortable-item");},_createPlaceholder:function(that){var self=that||this,o=self.options;if(!o.placeholder||o.placeholder.constructor==String){var className=o.placeholder;o.placeholder={element:function(){var el=$(document.createElement(self.currentItem[0].nodeName)).addClass(className||"ui-sortable-placeholder")[0];if(!className){el.style.visibility="hidden";document.body.appendChild(el);el.innerHTML=self.currentItem[0].innerHTML;document.body.removeChild(el);};return el;},update:function(container,p){if(className&&!o.forcePlaceholderSize)return;if(!p.height()){p.height(self.currentItem.innerHeight()-parseInt(self.currentItem.css('paddingTop')||0,10)-parseInt(self.currentItem.css('paddingBottom')||0,10));};if(!p.width()){p.width(self.currentItem.innerWidth()-parseInt(self.currentItem.css('paddingLeft')||0,10)-parseInt(self.currentItem.css('paddingRight')||0,10));};}};} +self.placeholder=$(o.placeholder.element.call(self.element,self.currentItem)) +self.currentItem.parent()[0].appendChild(self.placeholder[0]);self.placeholder[0].parentNode.insertBefore(self.placeholder[0],self.currentItem[0]);o.placeholder.update(self,self.placeholder);},_contactContainers:function(e){for(var i=this.containers.length-1;i>=0;i--){if(this._intersectsWith(this.containers[i].containerCache)){if(!this.containers[i].containerCache.over){if(this.currentContainer!=this.containers[i]){var dist=10000;var itemWithLeastDistance=null;var base=this.positionAbs[this.containers[i].floating?'left':'top'];for(var j=this.items.length-1;j>=0;j--){if(!contains(this.containers[i].element[0],this.items[j].item[0]))continue;var cur=this.items[j][this.containers[i].floating?'left':'top'];if(Math.abs(cur-base)=0;i--){this.containers[i]._propagate("activate",e,this);}} +if($.ui.ddmanager) +$.ui.ddmanager.current=this;if($.ui.ddmanager&&!o.dropBehaviour) +$.ui.ddmanager.prepareOffsets(this,e);this.dragging=true;this._mouseDrag(e);return true;},_convertPositionTo:function(d,pos){if(!pos)pos=this.position;var mod=d=="absolute"?1:-1;return{top:(pos.top ++this.offset.parent.top*mod +-(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)*mod ++this.margins.top*mod),left:(pos.left ++this.offset.parent.left*mod +-(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft)*mod ++this.margins.left*mod)};},_generatePosition:function(e){var o=this.options;var position={top:(e.pageY +-this.offset.click.top +-this.offset.parent.top ++(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)),left:(e.pageX +-this.offset.click.left +-this.offset.parent.left ++(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft))};if(!this.originalPosition)return position;if(this.containment){if(position.leftthis.containment[2])position.left=this.containment[2];if(position.top>this.containment[3])position.top=this.containment[3];} +if(o.grid){var top=this.originalPosition.top+Math.round((position.top-this.originalPosition.top)/o.grid[1])*o.grid[1];position.top=this.containment?(!(topthis.containment[3])?top:(!(topthis.containment[2])?left:(!(left=0;i--){var intersection=this._intersectsWithEdge(this.items[i]);if(!intersection)continue;if(this.items[i].item[0]!=this.currentItem[0]&&this.placeholder[intersection==1?"next":"prev"]()[0]!=this.items[i].item[0]&&!contains(this.placeholder[0],this.items[i].item[0])&&(this.options.type=='semi-dynamic'?!contains(this.element[0],this.items[i].item[0]):true)){this.updateOriginalPosition=this._generatePosition(e);this.direction=intersection==1?"down":"up";this.options.sortIndicator.call(this,e,this.items[i]);this._propagate("change",e);break;}} +this._contactContainers(e);if($.ui.ddmanager)$.ui.ddmanager.drag(this,e);this.element.triggerHandler("sort",[e,this.ui()],this.options["sort"]);return false;},_rearrange:function(e,i,a,hardRefresh){a?a[0].appendChild(this.placeholder[0]):i.item[0].parentNode.insertBefore(this.placeholder[0],(this.direction=='down'?i.item[0]:i.item[0].nextSibling));this.counter=this.counter?++this.counter:1;var self=this,counter=this.counter;window.setTimeout(function(){if(counter==self.counter)self.refreshPositions(!hardRefresh);},0);},_mouseStop:function(e,noPropagation){if($.ui.ddmanager&&!this.options.dropBehaviour) +$.ui.ddmanager.drop(this,e);if(this.options.revert){var self=this;var cur=self.placeholder.offset();$(this.helper).animate({left:cur.left-this.offset.parent.left-self.margins.left+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollLeft),top:cur.top-this.offset.parent.top-self.margins.top+(this.offsetParent[0]==document.body?0:this.offsetParent[0].scrollTop)},parseInt(this.options.revert,10)||500,function(){self._clear(e);});}else{this._clear(e,noPropagation);} +return false;},_clear:function(e,noPropagation){if(!this._noFinalSort)this.placeholder.before(this.currentItem);this._noFinalSort=null;if(this.options.helper=="original") +this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper");else +this.currentItem.show();if(this.domPosition.prev!=this.currentItem.prev().not(".ui-sortable-helper")[0]||this.domPosition.parent!=this.currentItem.parent()[0])this._propagate("update",e,null,noPropagation);if(!contains(this.element[0],this.currentItem[0])){this._propagate("remove",e,null,noPropagation);for(var i=this.containers.length-1;i>=0;i--){if(contains(this.containers[i].element[0],this.currentItem[0])){this.containers[i]._propagate("update",e,this,noPropagation);this.containers[i]._propagate("receive",e,this,noPropagation);}};};for(var i=this.containers.length-1;i>=0;i--){this.containers[i]._propagate("deactivate",e,this,noPropagation);if(this.containers[i].containerCache.over){this.containers[i]._propagate("out",e,this);this.containers[i].containerCache.over=0;}} +this.dragging=false;if(this.cancelHelperRemoval){this._propagate("beforeStop",e,null,noPropagation);this._propagate("stop",e,null,noPropagation);return false;} +this._propagate("beforeStop",e,null,noPropagation);this.placeholder.remove();if(this.options.helper!="original")this.helper.remove();this.helper=null;this._propagate("stop",e,null,noPropagation);return true;}}));$.extend($.ui.sortable,{getter:"serialize toArray",defaults:{helper:"original",tolerance:"guess",distance:1,delay:0,scroll:true,scrollSensitivity:20,scrollSpeed:20,cancel:":input",items:'> *',zIndex:1000,dropOnEmpty:true,appendTo:"parent",sortIndicator:$.ui.sortable.prototype._rearrange,scope:"default",forcePlaceholderSize:false}});$.ui.plugin.add("sortable","cursor",{start:function(e,ui){var t=$('body');if(t.css("cursor"))ui.options._cursor=t.css("cursor");t.css("cursor",ui.options.cursor);},beforeStop:function(e,ui){if(ui.options._cursor)$('body').css("cursor",ui.options._cursor);}});$.ui.plugin.add("sortable","zIndex",{start:function(e,ui){var t=ui.helper;if(t.css("zIndex"))ui.options._zIndex=t.css("zIndex");t.css('zIndex',ui.options.zIndex);},beforeStop:function(e,ui){if(ui.options._zIndex)$(ui.helper).css('zIndex',ui.options._zIndex);}});$.ui.plugin.add("sortable","opacity",{start:function(e,ui){var t=ui.helper;if(t.css("opacity"))ui.options._opacity=t.css("opacity");t.css('opacity',ui.options.opacity);},beforeStop:function(e,ui){if(ui.options._opacity)$(ui.helper).css('opacity',ui.options._opacity);}});$.ui.plugin.add("sortable","scroll",{start:function(e,ui){var o=ui.options;var i=$(this).data("sortable");i.overflowY=function(el){do{if(/auto|scroll/.test(el.css('overflow'))||(/auto|scroll/).test(el.css('overflow-y')))return el;el=el.parent();}while(el[0].parentNode);return $(document);}(i.currentItem);i.overflowX=function(el){do{if(/auto|scroll/.test(el.css('overflow'))||(/auto|scroll/).test(el.css('overflow-x')))return el;el=el.parent();}while(el[0].parentNode);return $(document);}(i.currentItem);if(i.overflowY[0]!=document&&i.overflowY[0].tagName!='HTML')i.overflowYOffset=i.overflowY.offset();if(i.overflowX[0]!=document&&i.overflowX[0].tagName!='HTML')i.overflowXOffset=i.overflowX.offset();},sort:function(e,ui){var o=ui.options;var i=$(this).data("sortable");if(i.overflowY[0]!=document&&i.overflowY[0].tagName!='HTML'){if((i.overflowYOffset.top+i.overflowY[0].offsetHeight)-e.pageY').insertBefore(options.headers);$('').appendTo(options.headers);options.headers.addClass("ui-accordion-header").attr("tabindex","0");} +var maxHeight;if(options.fillSpace){maxHeight=this.element.parent().height();options.headers.each(function(){maxHeight-=$(this).outerHeight();});var maxPadding=0;options.headers.next().each(function(){maxPadding=Math.max(maxPadding,$(this).innerHeight()-$(this).height());}).height(maxHeight-maxPadding);}else if(options.autoHeight){maxHeight=0;options.headers.next().each(function(){maxHeight=Math.max(maxHeight,$(this).outerHeight());}).height(maxHeight);} +options.headers.not(options.active||"").next().hide();options.active.parent().andSelf().addClass(options.selectedClass);if(options.event){this.element.bind((options.event)+".accordion",clickHandler);}},activate:function(index){clickHandler.call(this.element[0],{target:findActive(this.options.headers,index)[0]});},destroy:function(){this.options.headers.next().css("display","");if(this.options.fillSpace||this.options.autoHeight){this.options.headers.next().css("height","");} +$.removeData(this.element[0],"accordion");this.element.removeClass("ui-accordion").unbind(".accordion");}});function scopeCallback(callback,scope){return function(){return callback.apply(scope,arguments);};};function completed(cancel){if(!$.data(this,"accordion")){return;} +var instance=$.data(this,"accordion");var options=instance.options;options.running=cancel?0:--options.running;if(options.running){return;} +if(options.clearStyle){options.toShow.add(options.toHide).css({height:"",overflow:""});} +instance._trigger('change',null,options.data);} +function toggle(toShow,toHide,data,clickedActive,down){var options=$.data(this,"accordion").options;options.toShow=toShow;options.toHide=toHide;options.data=data;var complete=scopeCallback(completed,this);$.data(this,"accordion")._trigger("changestart",null,options.data);options.running=toHide.size()===0?toShow.size():toHide.size();if(options.animated){if(!options.alwaysOpen&&clickedActive){$.ui.accordion.animations[options.animated]({toShow:jQuery([]),toHide:toHide,complete:complete,down:down,autoHeight:options.autoHeight});}else{$.ui.accordion.animations[options.animated]({toShow:toShow,toHide:toHide,complete:complete,down:down,autoHeight:options.autoHeight});}}else{if(!options.alwaysOpen&&clickedActive){toShow.toggle();}else{toHide.hide();toShow.show();} +complete(true);}} +function clickHandler(event){var options=$.data(this,"accordion").options;if(options.disabled){return false;} +if(!event.target&&!options.alwaysOpen){options.active.parent().andSelf().toggleClass(options.selectedClass);var toHide=options.active.next(),data={options:options,newHeader:jQuery([]),oldHeader:options.active,newContent:jQuery([]),oldContent:toHide},toShow=(options.active=$([]));toggle.call(this,toShow,toHide,data);return false;} +var clicked=$(event.target);clicked=$(clicked.parents(options.header)[0]||clicked);var clickedActive=clicked[0]==options.active[0];if(options.running||(options.alwaysOpen&&clickedActive)){return false;} +if(!clicked.is(options.header)){return;} +options.active.parent().andSelf().toggleClass(options.selectedClass);if(!clickedActive){clicked.parent().andSelf().addClass(options.selectedClass);} +var toShow=clicked.next(),toHide=options.active.next(),data={options:options,newHeader:clickedActive&&!options.alwaysOpen?$([]):clicked,oldHeader:options.active,newContent:clickedActive&&!options.alwaysOpen?$([]):toShow,oldContent:toHide},down=options.headers.index(options.active[0])>options.headers.index(clicked[0]);options.active=clickedActive?$([]):clicked;toggle.call(this,toShow,toHide,data,clickedActive,down);return false;};function findActive(headers,selector){return selector?typeof selector=="number"?headers.filter(":eq("+selector+")"):headers.not(headers.not(selector)):selector===false?$([]):headers.filter(":eq(0)");} +$.extend($.ui.accordion,{defaults:{selectedClass:"selected",alwaysOpen:true,animated:'slide',event:"click",header:"a",autoHeight:true,running:0,navigationFilter:function(){return this.href.toLowerCase()==location.href.toLowerCase();}},animations:{slide:function(options,additions){options=$.extend({easing:"swing",duration:300},options,additions);if(!options.toHide.size()){options.toShow.animate({height:"show"},options);return;} +var hideHeight=options.toHide.height(),showHeight=options.toShow.height(),difference=showHeight/hideHeight;options.toShow.css({height:0,overflow:'hidden'}).show();options.toHide.filter(":hidden").each(options.complete).end().filter(":visible").animate({height:"hide"},{step:function(now){var current=(hideHeight-now)*difference;if($.browser.msie||$.browser.opera){current=Math.ceil(current);} +options.toShow.height(current);},duration:options.duration,easing:options.easing,complete:function(){if(!options.autoHeight){options.toShow.css("height","auto");} +options.complete();}});},bounceslide:function(options){this.slide(options,{easing:options.down?"bounceout":"swing",duration:options.down?1000:200});},easeslide:function(options){this.slide(options,{easing:"easeinout",duration:700});}}});})(jQuery);(function($){$.widget("ui.autocomplete",{_init:function(){$.extend(this.options,{delay:this.options.url?$.Autocompleter.defaults.delay:10,max:!this.options.scroll?10:150,highlight:this.options.highlight||function(value){return value;},formatMatch:this.options.formatMatch||this.options.formatItem});new $.Autocompleter(this.element[0],this.options);},result:function(handler){return this.element.bind("result",handler);},search:function(handler){return this.element.trigger("search",[handler]);},flushCache:function(){return this.element.trigger("flushCache");},setData:function(key,value){return this.element.trigger("setOptions",[{key:value}]);},destroy:function(){return this.element.trigger("unautocomplete");}});$.Autocompleter=function(input,options){var KEY={UP:38,DOWN:40,DEL:46,TAB:9,RETURN:13,ESC:27,COMMA:188,PAGEUP:33,PAGEDOWN:34,BACKSPACE:8};var $input=$(input).attr("autocomplete","off").addClass(options.inputClass);if(options.result)$input.bind('result.autocomplete',options.result);var timeout;var previousValue="";var cache=$.Autocompleter.Cache(options);var hasFocus=0;var lastKeyPressCode;var config={mouseDownOnSelect:false};var select=$.Autocompleter.Select(options,input,selectCurrent,config);var blockSubmit;$.browser.opera&&$(input.form).bind("submit.autocomplete",function(){if(blockSubmit){blockSubmit=false;return false;}});$input.bind(($.browser.opera?"keypress":"keydown")+".autocomplete",function(event){lastKeyPressCode=event.keyCode;switch(event.keyCode){case KEY.UP:event.preventDefault();if(select.visible()){select.prev();}else{onChange(0,true);} +break;case KEY.DOWN:event.preventDefault();if(select.visible()){select.next();}else{onChange(0,true);} +break;case KEY.PAGEUP:event.preventDefault();if(select.visible()){select.pageUp();}else{onChange(0,true);} +break;case KEY.PAGEDOWN:event.preventDefault();if(select.visible()){select.pageDown();}else{onChange(0,true);} +break;case options.multiple&&$.trim(options.multipleSeparator)==","&&KEY.COMMA:case KEY.TAB:case KEY.RETURN:if(selectCurrent()){event.preventDefault();blockSubmit=true;return false;} +break;case KEY.ESC:select.hide();break;default:clearTimeout(timeout);timeout=setTimeout(onChange,options.delay);break;}}).focus(function(){hasFocus++;}).blur(function(){hasFocus=0;if(!config.mouseDownOnSelect){hideResults();}}).click(function(){if(hasFocus++>1&&!select.visible()){onChange(0,true);}}).bind("search",function(){var fn=(arguments.length>1)?arguments[1]:null;function findValueCallback(q,data){var result;if(data&&data.length){for(var i=0;i1){v=words.slice(0,words.length-1).join(options.multipleSeparator)+options.multipleSeparator+v;} +v+=options.multipleSeparator;} +$input.val(v);hideResultsNow();$input.trigger("result",[selected.data,selected.value]);return true;} +function onChange(crap,skipPrevCheck){if(lastKeyPressCode==KEY.DEL){select.hide();return;} +var currentValue=$input.val();if(!skipPrevCheck&¤tValue==previousValue) +return;previousValue=currentValue;currentValue=lastWord(currentValue);if(currentValue.length>=options.minChars){$input.addClass(options.loadingClass);if(!options.matchCase) +currentValue=currentValue.toLowerCase();request(currentValue,receiveData,hideResultsNow);}else{stopLoading();select.hide();}};function trimWords(value){if(!value){return[""];} +var words=value.split(options.multipleSeparator);var result=[];$.each(words,function(i,value){if($.trim(value)) +result[i]=$.trim(value);});return result;} +function lastWord(value){if(!options.multiple) +return value;var words=trimWords(value);return words[words.length-1];} +function autoFill(q,sValue){if(options.autoFill&&(lastWord($input.val()).toLowerCase()==q.toLowerCase())&&lastKeyPressCode!=KEY.BACKSPACE){$input.val($input.val()+sValue.substring(lastWord(previousValue).length));$.Autocompleter.Selection(input,previousValue.length,previousValue.length+sValue.length);}};function hideResults(){clearTimeout(timeout);timeout=setTimeout(hideResultsNow,200);};function hideResultsNow(){var wasVisible=select.visible();select.hide();clearTimeout(timeout);stopLoading();if(options.mustMatch){$input.autocomplete("search",function(result){if(!result){if(options.multiple){var words=trimWords($input.val()).slice(0,-1);$input.val(words.join(options.multipleSeparator)+(words.length?options.multipleSeparator:""));} +else +$input.val("");}});} +if(wasVisible) +$.Autocompleter.Selection(input,input.value.length,input.value.length);};function receiveData(q,data){if(data&&data.length&&hasFocus){stopLoading();select.display(data,q);autoFill(q,data[0].value);select.show();}else{hideResultsNow();}};function request(term,success,failure){if(!options.matchCase) +term=term.toLowerCase();var data=cache.load(term);if(data&&data.length){success(term,data);}else if((typeof options.url=="string")&&(options.url.length>0)){var extraParams={timestamp:+new Date()};$.each(options.extraParams,function(key,param){extraParams[key]=typeof param=="function"?param():param;});$.ajax({mode:"abort",port:"autocomplete"+input.name,dataType:options.dataType,url:options.url,data:$.extend({q:lastWord(term),limit:options.max},extraParams),success:function(data){var parsed=options.parse&&options.parse(data)||parse(data);cache.add(term,parsed);success(term,parsed);}});} +else if(options.source&&typeof options.source=='function'){var resultData=options.source(term);var parsed=(options.parse)?options.parse(resultData):resultData;cache.add(term,parsed);success(term,parsed);}else{select.emptyList();failure(term);}};function parse(data){var parsed=[];var rows=data.split("\n");for(var i=0;i]*)("+term.replace(/([\^\$\(\)\[\]\{\}\*\.\+\?\|\\])/gi,"\\$1")+")(?![^<>]*>)(?![^&;]+;)","gi"),"$1");},scroll:true,scrollHeight:180};$.extend($.ui.autocomplete,{defaults:$.Autocompleter.defaults});$.Autocompleter.Cache=function(options){var data={};var length=0;function matchSubset(s,sub){if(!options.matchCase) +s=s.toLowerCase();var i=s.indexOf(sub);if(i==-1)return false;return i==0||options.matchContains;};function add(q,value){if(length>options.cacheLength){flush();} +if(!data[q]){length++;} +data[q]=value;} +function populate(){if(!options.data)return false;var stMatchSets={},nullData=0;if(!options.url)options.cacheLength=1;stMatchSets[""]=[];for(var i=0,ol=options.data.length;i0){var c=data[k];$.each(c,function(i,x){if(matchSubset(x.value,q)){csub.push(x);}});}} +return csub;}else +if(data[q]){return data[q];}else +if(options.matchSubset){for(var i=q.length-1;i>=options.minChars;i--){var c=data[q.substr(0,i)];if(c){var csub=[];$.each(c,function(i,x){if(matchSubset(x.value,q)){csub[csub.length]=x;}});return csub;}}} +return null;}};};$.Autocompleter.Select=function(options,input,select,config){var CLASSES={ACTIVE:"ui-autocomplete-over"};var listItems,active=-1,data,term="",needsInit=true,element,list;function init(){if(!needsInit) +return;element=$("
").hide().addClass(options.resultsClass).css("position","absolute").appendTo(document.body);list=$("
    ").appendTo(element).mouseover(function(event){if(target(event).nodeName&&target(event).nodeName.toUpperCase()=='LI'){active=$("li",list).removeClass(CLASSES.ACTIVE).index(target(event));$(target(event)).addClass(CLASSES.ACTIVE);}}).click(function(event){$(target(event)).addClass(CLASSES.ACTIVE);select();input.focus();return false;}).mousedown(function(){config.mouseDownOnSelect=true;}).mouseup(function(){config.mouseDownOnSelect=false;});if(options.width>0) +element.css("width",options.width);needsInit=false;} +function target(event){var element=event.target;while(element&&element.tagName!="LI") +element=element.parentNode;if(!element) +return[];return element;} +function moveSelect(step){listItems.slice(active,active+1).removeClass(CLASSES.ACTIVE);movePosition(step);var activeItem=listItems.slice(active,active+1).addClass(CLASSES.ACTIVE);if(options.scroll){var offset=0;listItems.slice(0,active).each(function(){offset+=this.offsetHeight;});if((offset+activeItem[0].offsetHeight-list.scrollTop())>list[0].clientHeight){list.scrollTop(offset+activeItem[0].offsetHeight-list.innerHeight());}else if(offset=listItems.size()){active=0;}} +function limitNumberOfItems(available){return options.max&&options.max").html(options.highlight(formatted,term)).addClass(i%2==0?"ui-autocomplete-even":"ui-autocomplete-odd").appendTo(list)[0];$.data(li,"ui-autocomplete-data",data[i]);} +listItems=list.find("li");if(options.selectFirst){listItems.slice(0,1).addClass(CLASSES.ACTIVE);active=0;} +if($.fn.bgiframe) +list.bgiframe();} +return{display:function(d,q){init();data=d;term=q;fillList();},next:function(){moveSelect(1);},prev:function(){moveSelect(-1);},pageUp:function(){if(active!=0&&active-8<0){moveSelect(-active);}else{moveSelect(-8);}},pageDown:function(){if(active!=listItems.size()-1&&active+8>listItems.size()){moveSelect(listItems.size()-1-active);}else{moveSelect(8);}},hide:function(){element&&element.hide();listItems&&listItems.removeClass(CLASSES.ACTIVE) +active=-1;$(input).triggerHandler("autocompletehide",[{},{options:options}],options["hide"]);},visible:function(){return element&&element.is(":visible");},current:function(){return this.visible()&&(listItems.filter("."+CLASSES.ACTIVE)[0]||options.selectFirst&&listItems[0]);},show:function(){var offset=$(input).offset();element.css({width:typeof options.width=="string"||options.width>0?options.width:$(input).width(),top:offset.top+input.offsetHeight,left:offset.left}).show();if(options.scroll){list.scrollTop(0);list.css({maxHeight:options.scrollHeight,overflow:'auto'});if($.browser.msie&&typeof document.body.style.maxHeight==="undefined"){var listHeight=0;listItems.each(function(){listHeight+=this.offsetHeight;});var scrollbarsVisible=listHeight>options.scrollHeight;list.css('height',scrollbarsVisible?options.scrollHeight:listHeight);if(!scrollbarsVisible){listItems.width(list.width()-parseInt(listItems.css("padding-left"))-parseInt(listItems.css("padding-right")));}}} +$(input).triggerHandler("autocompleteshow",[{},{options:options}],options["show"]);},selected:function(){var selected=listItems&&listItems.filter("."+CLASSES.ACTIVE).removeClass(CLASSES.ACTIVE);return selected&&selected.length&&$.data(selected[0],"ui-autocomplete-data");},emptyList:function(){list&&list.empty();},unbind:function(){element&&element.remove();}};};$.Autocompleter.Selection=function(field,start,end){if(field.createTextRange){var selRange=field.createTextRange();selRange.collapse(true);selRange.moveStart("character",start);selRange.moveEnd("character",end);selRange.select();}else if(field.setSelectionRange){field.setSelectionRange(start,end);}else{if(field.selectionStart){field.selectionStart=start;field.selectionEnd=end;}} +field.focus();};})(jQuery);(function($){$.widget("ui.colorpicker",{_init:function(){this.charMin=65;var o=this.options,self=this,tpl='
    ';if(typeof o.color=='string'){this.color=this._HexToHSB(o.color);}else if(o.color.r!=undefined&&o.color.g!=undefined&&o.color.b!=undefined){this.color=this._RGBToHSB(o.color);}else if(o.color.h!=undefined&&o.color.s!=undefined&&o.color.b!=undefined){this.color=this._fixHSB(o.color);}else{return this;} +this.origColor=this.color;this.picker=$(tpl);if(o.flat){this.picker.appendTo(this.element).show();}else{this.picker.appendTo(document.body);} +this.fields=this.picker.find('input').bind('keydown',function(e){return self._keyDown.call(self,e);}).bind('change',function(e){return self._change.call(self,e);}).bind('blur',function(e){return self._blur.call(self,e);}).bind('focus',function(e){return self._focus.call(self,e);});this.picker.find('span').bind('mousedown',function(e){return self._downIncrement.call(self,e);});this.selector=this.picker.find('div.ui-colorpicker-color').bind('mousedown',function(e){return self._downSelector.call(self,e);});this.selectorIndic=this.selector.find('div div');this.hue=this.picker.find('div.ui-colorpicker-hue div');this.picker.find('div.ui-colorpicker-hue').bind('mousedown',function(e){return self._downHue.call(self,e);});this.newColor=this.picker.find('div.ui-colorpicker-new-color');this.currentColor=this.picker.find('div.ui-colorpicker-current-color');this.picker.find('.ui-colorpicker-submit').bind('mouseenter',function(e){return self._enterSubmit.call(self,e);}).bind('mouseleave',function(e){return self._leaveSubmit.call(self,e);}).bind('click',function(e){return self._clickSubmit.call(self,e);});this._fillRGBFields(this.color);this._fillHSBFields(this.color);this._fillHexFields(this.color);this._setHue(this.color);this._setSelector(this.color);this._setCurrentColor(this.color);this._setNewColor(this.color);if(o.flat){this.picker.css({position:'relative',display:'block'});}else{$(this.element).bind(o.eventName+".colorpicker",function(e){return self._show.call(self,e);});}},destroy:function(){this.picker.remove();this.element.removeData("colorpicker").unbind(".colorpicker");},_fillRGBFields:function(hsb){var rgb=this._HSBToRGB(hsb);this.fields.eq(1).val(rgb.r).end().eq(2).val(rgb.g).end().eq(3).val(rgb.b).end();},_fillHSBFields:function(hsb){this.fields.eq(4).val(hsb.h).end().eq(5).val(hsb.s).end().eq(6).val(hsb.b).end();},_fillHexFields:function(hsb){this.fields.eq(0).val(this._HSBToHex(hsb)).end();},_setSelector:function(hsb){this.selector.css('backgroundColor','#'+this._HSBToHex({h:hsb.h,s:100,b:100}));this.selectorIndic.css({left:parseInt(150*hsb.s/100,10),top:parseInt(150*(100-hsb.b)/100,10)});},_setHue:function(hsb){this.hue.css('top',parseInt(150-150*hsb.h/360,10));},_setCurrentColor:function(hsb){this.currentColor.css('backgroundColor','#'+this._HSBToHex(hsb));},_setNewColor:function(hsb){this.newColor.css('backgroundColor','#'+this._HSBToHex(hsb));},_keyDown:function(e){var pressedKey=e.charCode||e.keyCode||-1;if((pressedKey>=this.charMin&&pressedKey<=90)||pressedKey==32){return false;}},_change:function(e,target){var col;target=target||e.target;if(target.parentNode.className.indexOf('-hex')>0){this.color=col=this._HexToHSB(this.value);this._fillRGBFields(col.color);this._fillHSBFields(col);}else if(target.parentNode.className.indexOf('-hsb')>0){this.color=col=this._fixHSB({h:parseInt(this.fields.eq(4).val(),10),s:parseInt(this.fields.eq(5).val(),10),b:parseInt(this.fields.eq(6).val(),10)});this._fillRGBFields(col);this._fillHexFields(col);}else{this.color=col=this._RGBToHSB(this._fixRGB({r:parseInt(this.fields.eq(1).val(),10),g:parseInt(this.fields.eq(2).val(),10),b:parseInt(this.fields.eq(3).val(),10)}));this._fillHexFields(col);this._fillHSBFields(col);} +this._setSelector(col);this._setHue(col);this._setNewColor(col);this._trigger('change',e,{options:this.options,hsb:col,hex:this._HSBToHex(col),rgb:this._HSBToRGB(col)});},_blur:function(e){var col=this.color;this._fillRGBFields(col);this._fillHSBFields(col);this._fillHexFields(col);this._setHue(col);this._setSelector(col);this._setNewColor(col);this.fields.parent().removeClass('ui-colorpicker-focus');},_focus:function(e){this.charMin=e.target.parentNode.className.indexOf('-hex')>0?70:65;this.fields.parent().removeClass('ui-colorpicker-focus');$(e.target.parentNode).addClass('ui-colorpicker-focus');},_downIncrement:function(e){var field=$(e.target).parent().find('input').focus(),self=this;this.currentIncrement={el:$(e.target).parent().addClass('ui-colorpicker-slider'),max:e.target.parentNode.className.indexOf('-hsb-h')>0?360:(e.target.parentNode.className.indexOf('-hsb')>0?100:255),y:e.pageY,field:field,val:parseInt(field.val(),10)};$(document).bind('mouseup.cpSlider',function(e){return self._upIncrement.call(self,e);});$(document).bind('mousemove.cpSlider',function(e){return self._moveIncrement.call(self,e);});return false;},_moveIncrement:function(e){this.currentIncrement.field.val(Math.max(0,Math.min(this.currentIncrement.max,parseInt(this.currentIncrement.val+e.pageY-this.currentIncrement.y,10))));this._change.apply(this,[e,this.currentIncrement.field.get(0)]);return false;},_upIncrement:function(e){this.currentIncrement.el.removeClass('ui-colorpicker-slider').find('input').focus();this._change.apply(this,[e,this.currentIncrement.field.get(0)]);$(document).unbind('mouseup.cpSlider');$(document).unbind('mousemove.cpSlider');return false;},_downHue:function(e){this.currentHue={y:this.picker.find('div.ui-colorpicker-hue').offset().top};this._change.apply(this,[e,this.fields.eq(4).val(parseInt(360*(150-Math.max(0,Math.min(150,(e.pageY-this.currentHue.y))))/150,10)).get(0)]);var self=this;$(document).bind('mouseup.cpSlider',function(e){return self._upHue.call(self,e);});$(document).bind('mousemove.cpSlider',function(e){return self._moveHue.call(self,e);});return false;},_moveHue:function(e){this._change.apply(this,[e,this.fields.eq(4).val(parseInt(360*(150-Math.max(0,Math.min(150,(e.pageY-this.currentHue.y))))/150,10)).get(0)]);return false;},_upHue:function(e){$(document).unbind('mouseup.cpSlider');$(document).unbind('mousemove.cpSlider');return false;},_downSelector:function(e){var self=this;this.currentSelector={pos:this.picker.find('div.ui-colorpicker-color').offset()};this._change.apply(this,[e,this.fields.eq(6).val(parseInt(100*(150-Math.max(0,Math.min(150,(e.pageY-this.currentSelector.pos.top))))/150,10)).end().eq(5).val(parseInt(100*(Math.max(0,Math.min(150,(e.pageX-this.currentSelector.pos.left))))/150,10)).get(0)]);$(document).bind('mouseup.cpSlider',function(e){return self._upSelector.call(self,e);});$(document).bind('mousemove.cpSlider',function(e){return self._moveSelector.call(self,e);});return false;},_moveSelector:function(e){this._change.apply(this,[e,this.fields.eq(6).val(parseInt(100*(150-Math.max(0,Math.min(150,(e.pageY-this.currentSelector.pos.top))))/150,10)).end().eq(5).val(parseInt(100*(Math.max(0,Math.min(150,(e.pageX-this.currentSelector.pos.left))))/150,10)).get(0)]);return false;},_upSelector:function(e){$(document).unbind('mouseup.cpSlider');$(document).unbind('mousemove.cpSlider');return false;},_enterSubmit:function(e){this.picker.find('.ui-colorpicker-submit').addClass('ui-colorpicker-focus');},_leaveSubmit:function(e){this.picker.find('.ui-colorpicker-submit').removeClass('ui-colorpicker-focus');},_clickSubmit:function(e){var col=this.color;this.origColor=col;this._setCurrentColor(col);this._trigger("submit",e,{options:this.options,hsb:col,hex:this._HSBToHex(col),rgb:this._HSBToRGB(col)});return false;},_show:function(e){this._trigger("beforeShow",e,{options:this.options,hsb:this.color,hex:this._HSBToHex(this.color),rgb:this._HSBToRGB(this.color)});var pos=this.element.offset();var viewPort=this._getScroll();var top=pos.top+this.element[0].offsetHeight;var left=pos.left;if(top+176>viewPort.t+Math.min(viewPort.h,viewPort.ih)){top-=this.element[0].offsetHeight+176;} +if(left+356>viewPort.l+Math.min(viewPort.w,viewPort.iw)){left-=356;} +this.picker.css({left:left+'px',top:top+'px'});if(this._trigger("show",e,{options:this.options,hsb:this.color,hex:this._HSBToHex(this.color),rgb:this._HSBToRGB(this.color)})!=false){this.picker.show();} +var self=this;$(document).bind('mousedown.colorpicker',function(e){return self._hide.call(self,e);});return false;},_hide:function(e){if(!this._isChildOf(this.picker[0],e.target,this.picker[0])){if(this._trigger("hide",e,{options:this.options,hsb:this.color,hex:this._HSBToHex(this.color),rgb:this._HSBToRGB(this.color)})!=false){this.picker.hide();} +$(document).unbind('mousedown.colorpicker');}},_isChildOf:function(parentEl,el,container){if(parentEl==el){return true;} +if(parentEl.contains&&!$.browser.safari){return parentEl.contains(el);} +if(parentEl.compareDocumentPosition){return!!(parentEl.compareDocumentPosition(el)&16);} +var prEl=el.parentNode;while(prEl&&prEl!=container){if(prEl==parentEl) +return true;prEl=prEl.parentNode;} +return false;},_getScroll:function(){var t,l,w,h,iw,ih;if(document.documentElement){t=document.documentElement.scrollTop;l=document.documentElement.scrollLeft;w=document.documentElement.scrollWidth;h=document.documentElement.scrollHeight;}else{t=document.body.scrollTop;l=document.body.scrollLeft;w=document.body.scrollWidth;h=document.body.scrollHeight;} +iw=self.innerWidth||document.documentElement.clientWidth||document.body.clientWidth||0;ih=self.innerHeight||document.documentElement.clientHeight||document.body.clientHeight||0;return{t:t,l:l,w:w,h:h,iw:iw,ih:ih};},_fixHSB:function(hsb){return{h:Math.min(360,Math.max(0,hsb.h)),s:Math.min(100,Math.max(0,hsb.s)),b:Math.min(100,Math.max(0,hsb.b))};},_fixRGB:function(rgb){return{r:Math.min(255,Math.max(0,rgb.r)),g:Math.min(255,Math.max(0,rgb.g)),b:Math.min(255,Math.max(0,rgb.b))};},_HexToRGB:function(hex){var hex=parseInt(((hex.indexOf('#')>-1)?hex.substring(1):hex),16);return{r:hex>>16,g:(hex&0x00FF00)>>8,b:(hex&0x0000FF)};},_HexToHSB:function(hex){return this._RGBToHSB(this._HexToRGB(hex));},_RGBToHSB:function(rgb){var hsb={};hsb.b=Math.max(Math.max(rgb.r,rgb.g),rgb.b);hsb.s=(hsb.b<=0)?0:Math.round(100*(hsb.b-Math.min(Math.min(rgb.r,rgb.g),rgb.b))/hsb.b);hsb.b=Math.round((hsb.b/255)*100);if((rgb.r==rgb.g)&&(rgb.g==rgb.b))hsb.h=0;else if(rgb.r>=rgb.g&&rgb.g>=rgb.b)hsb.h=60*(rgb.g-rgb.b)/(rgb.r-rgb.b);else if(rgb.g>=rgb.r&&rgb.r>=rgb.b)hsb.h=60+60*(rgb.g-rgb.r)/(rgb.g-rgb.b);else if(rgb.g>=rgb.b&&rgb.b>=rgb.r)hsb.h=120+60*(rgb.b-rgb.r)/(rgb.g-rgb.r);else if(rgb.b>=rgb.g&&rgb.g>=rgb.r)hsb.h=180+60*(rgb.b-rgb.g)/(rgb.b-rgb.r);else if(rgb.b>=rgb.r&&rgb.r>=rgb.g)hsb.h=240+60*(rgb.r-rgb.g)/(rgb.b-rgb.g);else if(rgb.r>=rgb.b&&rgb.b>=rgb.g)hsb.h=300+60*(rgb.r-rgb.b)/(rgb.r-rgb.g);else hsb.h=0;hsb.h=Math.round(hsb.h);return hsb;},_HSBToRGB:function(hsb){var rgb={};var h=Math.round(hsb.h);var s=Math.round(hsb.s*255/100);var v=Math.round(hsb.b*255/100);if(s==0){rgb.r=rgb.g=rgb.b=v;}else{var t1=v;var t2=(255-s)*v/255;var t3=(t1-t2)*(h%60)/60;if(h==360)h=0;if(h<60){rgb.r=t1;rgb.b=t2;rgb.g=t2+t3;} +else if(h<120){rgb.g=t1;rgb.b=t2;rgb.r=t1-t3;} +else if(h<180){rgb.g=t1;rgb.r=t2;rgb.b=t2+t3;} +else if(h<240){rgb.b=t1;rgb.r=t2;rgb.g=t1-t3;} +else if(h<300){rgb.b=t1;rgb.g=t2;rgb.r=t2+t3;} +else if(h<360){rgb.r=t1;rgb.g=t2;rgb.b=t1-t3;} +else{rgb.r=0;rgb.g=0;rgb.b=0;}} +return{r:Math.round(rgb.r),g:Math.round(rgb.g),b:Math.round(rgb.b)};},_RGBToHex:function(rgb){var hex=[rgb.r.toString(16),rgb.g.toString(16),rgb.b.toString(16)];$.each(hex,function(nr,val){if(val.length==1){hex[nr]='0'+val;}});return hex.join('');},_HSBToHex:function(hsb){return this._RGBToHex(this._HSBToRGB(hsb));},setColor:function(col){if(typeof col=='string'){col=this._HexToHSB(col);}else if(col.r!=undefined&&col.g!=undefined&&col.b!=undefined){col=this._RGBToHSB(col);}else if(col.h!=undefined&&col.s!=undefined&&col.b!=undefined){col=this._fixHSB(col);}else{return this;} +this.color=col;this.origColor=col;this._fillRGBFields(col);this._fillHSBFields(col);this._fillHexFields(col);this._setHue(col);this._setSelector(col);this._setCurrentColor(col);this._setNewColor(col);}});$.extend($.ui.colorpicker,{defaults:{eventName:'click',color:'ff0000',flat:false}});})(jQuery);(function($){var setDataSwitch={dragStart:"start.draggable",drag:"drag.draggable",dragStop:"stop.draggable",maxHeight:"maxHeight.resizable",minHeight:"minHeight.resizable",maxWidth:"maxWidth.resizable",minWidth:"minWidth.resizable",resizeStart:"start.resizable",resize:"drag.resizable",resizeStop:"stop.resizable"};$.widget("ui.dialog",{_init:function(){this.originalTitle=this.element.attr('title');this.options.title=this.options.title||this.originalTitle;var self=this,options=this.options,uiDialogContent=this.element.removeAttr('title').addClass('ui-dialog-content').wrap('
    ').wrap('
    '),uiDialogContainer=(this.uiDialogContainer=uiDialogContent.parent()).addClass('ui-dialog-container').css({position:'relative',width:'100%',height:'100%'}),uiDialogTitlebar=(this.uiDialogTitlebar=$('
    ')).addClass('ui-dialog-titlebar').append('X').prependTo(uiDialogContainer),title=options.title||' ',titleId=$.ui.dialog.getTitleId(this.element),uiDialogTitle=$('').addClass('ui-dialog-title').attr('id',titleId).html(title).prependTo(uiDialogTitlebar),uiDialog=(this.uiDialog=uiDialogContainer.parent()).appendTo(document.body).hide().addClass('ui-dialog').addClass(options.dialogClass).addClass(uiDialogContent.attr('className')).removeClass('ui-dialog-content').css({position:'absolute',width:options.width,height:options.height,overflow:'hidden',zIndex:options.zIndex}).attr('tabIndex',-1).css('outline',0).keydown(function(ev){(options.closeOnEscape&&ev.keyCode&&ev.keyCode==$.keyCode.ESCAPE&&self.close());}).mousedown(function(){self._moveToTop();}),uiDialogButtonPane=(this.uiDialogButtonPane=$('
    ')).addClass('ui-dialog-buttonpane').css({position:'absolute',bottom:0}).appendTo(uiDialog);this.uiDialogTitlebarClose=$('.ui-dialog-titlebar-close',uiDialogTitlebar).hover(function(){$(this).addClass('ui-dialog-titlebar-close-hover');},function(){$(this).removeClass('ui-dialog-titlebar-close-hover');}).mousedown(function(ev){ev.stopPropagation();}).click(function(){self.close();return false;});uiDialogTitlebar.find("*").add(uiDialogTitlebar).each(function(){$.ui.disableSelection(this);});(options.draggable&&$.fn.draggable&&this._makeDraggable());(options.resizable&&$.fn.resizable&&this._makeResizable());this._createButtons(options.buttons);this._isOpen=false;(options.bgiframe&&$.fn.bgiframe&&uiDialog.bgiframe());(options.autoOpen&&this.open());},destroy:function(){(this.overlay&&this.overlay.destroy());this.uiDialog.hide();this.element.unbind('.dialog').removeData('dialog').removeClass('ui-dialog-content').hide().appendTo('body');this.uiDialog.remove();(this.originalTitle&&this.element.attr('title',this.originalTitle));},close:function(){if(false===this._trigger('beforeclose',null,{options:this.options})){return;} +(this.overlay&&this.overlay.destroy());this.uiDialog.hide(this.options.hide).unbind('keypress.ui-dialog');this._trigger('close',null,{options:this.options});$.ui.dialog.overlay.resize();this._isOpen=false;},isOpen:function(){return this._isOpen;},open:function(){if(this._isOpen){return;} +this.overlay=this.options.modal?new $.ui.dialog.overlay(this):null;(this.uiDialog.next().length&&this.uiDialog.appendTo('body'));this._position(this.options.position);this.uiDialog.show(this.options.show);(this.options.autoResize&&this._size());this._moveToTop(true);(this.options.modal&&this.uiDialog.bind('keypress.ui-dialog',function(e){if(e.keyCode!=$.keyCode.TAB){return;} +var tabbables=$(':tabbable',this),first=tabbables.filter(':first')[0],last=tabbables.filter(':last')[0];if(e.target==last&&!e.shiftKey){setTimeout(function(){first.focus();},1);}else if(e.target==first&&e.shiftKey){setTimeout(function(){last.focus();},1);}}));this.uiDialog.find(':tabbable:first').focus();this._trigger('open',null,{options:this.options});this._isOpen=true;},_createButtons:function(buttons){var self=this,hasButtons=false,uiDialogButtonPane=this.uiDialogButtonPane;uiDialogButtonPane.empty().hide();$.each(buttons,function(){return!(hasButtons=true);});if(hasButtons){uiDialogButtonPane.show();$.each(buttons,function(name,fn){$('').text(name).click(function(){fn.apply(self.element[0],arguments);}).appendTo(uiDialogButtonPane);});}},_makeDraggable:function(){var self=this,options=this.options;this.uiDialog.draggable({cancel:'.ui-dialog-content',helper:options.dragHelper,handle:'.ui-dialog-titlebar',start:function(){self._moveToTop();(options.dragStart&&options.dragStart.apply(self.element[0],arguments));},drag:function(){(options.drag&&options.drag.apply(self.element[0],arguments));},stop:function(){(options.dragStop&&options.dragStop.apply(self.element[0],arguments));$.ui.dialog.overlay.resize();}});},_makeResizable:function(handles){handles=(handles===undefined?this.options.resizable:handles);var self=this,options=this.options,resizeHandles=typeof handles=='string'?handles:'n,e,s,w,se,sw,ne,nw';this.uiDialog.resizable({cancel:'.ui-dialog-content',helper:options.resizeHelper,maxWidth:options.maxWidth,maxHeight:options.maxHeight,minWidth:options.minWidth,minHeight:options.minHeight,start:function(){(options.resizeStart&&options.resizeStart.apply(self.element[0],arguments));},resize:function(){(options.autoResize&&self._size.apply(self));(options.resize&&options.resize.apply(self.element[0],arguments));},handles:resizeHandles,stop:function(){(options.autoResize&&self._size.apply(self));(options.resizeStop&&options.resizeStop.apply(self.element[0],arguments));$.ui.dialog.overlay.resize();}});},_moveToTop:function(force){if((this.options.modal&&!force)||(!this.options.stack&&!this.options.modal)){return this._trigger('focus',null,{options:this.options});} +var maxZ=this.options.zIndex,options=this.options;$('.ui-dialog:visible').each(function(){maxZ=Math.max(maxZ,parseInt($(this).css('z-index'),10)||options.zIndex);});(this.overlay&&this.overlay.$el.css('z-index',++maxZ));this.uiDialog.css('z-index',++maxZ);this._trigger('focus',null,{options:this.options});},_position:function(pos){var wnd=$(window),doc=$(document),pTop=doc.scrollTop(),pLeft=doc.scrollLeft(),minTop=pTop;if($.inArray(pos,['center','top','right','bottom','left'])>=0){pos=[pos=='right'||pos=='left'?pos:'center',pos=='top'||pos=='bottom'?pos:'middle'];} +if(pos.constructor!=Array){pos=['center','middle'];} +if(pos[0].constructor==Number){pLeft+=pos[0];}else{switch(pos[0]){case'left':pLeft+=0;break;case'right':pLeft+=wnd.width()-this.uiDialog.width();break;default:case'center':pLeft+=(wnd.width()-this.uiDialog.width())/2;}} +if(pos[1].constructor==Number){pTop+=pos[1];}else{switch(pos[1]){case'top':pTop+=0;break;case'bottom':pTop+=wnd.height()-this.uiDialog.height();break;default:case'middle':pTop+=(wnd.height()-this.uiDialog.height())/2;}} +pTop=Math.max(pTop,minTop);this.uiDialog.css({top:pTop,left:pLeft});},_setData:function(key,value){(setDataSwitch[key]&&this.uiDialog.data(setDataSwitch[key],value));switch(key){case"buttons":this._createButtons(value);break;case"draggable":(value?this._makeDraggable():this.uiDialog.draggable('destroy'));break;case"height":this.uiDialog.height(value);break;case"position":this._position(value);break;case"resizable":var uiDialog=this.uiDialog,isResizable=this.uiDialog.is(':data(resizable)');(isResizable&&!value&&uiDialog.resizable('destroy'));(isResizable&&typeof value=='string'&&uiDialog.resizable('option','handles',value));(isResizable||this._makeResizable(value));break;case"title":$(".ui-dialog-title",this.uiDialogTitlebar).html(value||' ');break;case"width":this.uiDialog.width(value);break;} +$.widget.prototype._setData.apply(this,arguments);},_size:function(){var container=this.uiDialogContainer,titlebar=this.uiDialogTitlebar,content=this.element,tbMargin=(parseInt(content.css('margin-top'),10)||0) ++(parseInt(content.css('margin-bottom'),10)||0),lrMargin=(parseInt(content.css('margin-left'),10)||0) ++(parseInt(content.css('margin-right'),10)||0);content.height(container.height()-titlebar.outerHeight()-tbMargin);content.width(container.width()-lrMargin);}});$.extend($.ui.dialog,{defaults:{autoOpen:true,autoResize:true,bgiframe:false,buttons:{},closeOnEscape:true,draggable:true,height:200,minHeight:100,minWidth:150,modal:false,overlay:{},position:'center',resizable:true,stack:true,width:300,zIndex:1000},getter:'isOpen',uuid:0,getTitleId:function($el){return'ui-dialog-title-'+($el.attr('id')||++this.uuid);},overlay:function(dialog){this.$el=$.ui.dialog.overlay.create(dialog);}});$.extend($.ui.dialog.overlay,{instances:[],events:$.map('focus,mousedown,mouseup,keydown,keypress,click'.split(','),function(e){return e+'.dialog-overlay';}).join(' '),create:function(dialog){if(this.instances.length===0){setTimeout(function(){$('a, :input').bind($.ui.dialog.overlay.events,function(){var allow=false;var $dialog=$(this).parents('.ui-dialog');if($dialog.length){var $overlays=$('.ui-dialog-overlay');if($overlays.length){var maxZ=parseInt($overlays.css('z-index'),10);$overlays.each(function(){maxZ=Math.max(maxZ,parseInt($(this).css('z-index'),10));});allow=parseInt($dialog.css('z-index'),10)>maxZ;}else{allow=true;}} +return allow;});},1);$(document).bind('keydown.dialog-overlay',function(e){(dialog.options.closeOnEscape&&e.keyCode&&e.keyCode==$.keyCode.ESCAPE&&dialog.close());});$(window).bind('resize.dialog-overlay',$.ui.dialog.overlay.resize);} +var $el=$('
    ').appendTo(document.body).addClass('ui-dialog-overlay').css($.extend({borderWidth:0,margin:0,padding:0,position:'absolute',top:0,left:0,width:this.width(),height:this.height()},dialog.options.overlay));(dialog.options.bgiframe&&$.fn.bgiframe&&$el.bgiframe());this.instances.push($el);return $el;},destroy:function($el){this.instances.splice($.inArray(this.instances,$el),1);if(this.instances.length===0){$('a, :input').add([document,window]).unbind('.dialog-overlay');} +$el.remove();},height:function(){if($.browser.msie&&$.browser.version<7){var scrollHeight=Math.max(document.documentElement.scrollHeight,document.body.scrollHeight);var offsetHeight=Math.max(document.documentElement.offsetHeight,document.body.offsetHeight);if(scrollHeight").addClass("ui-slider-handle").appendTo(self.element);if(this.id) +handle.attr("id",this.id);return handle[0];});} +var handleclass=function(el){this.element=$(el);this.element.data("mouse",this);this.options=self.options;this.element.bind("mousedown",function(){if(self.currentHandle)this.blur(self.currentHandle);self._focus(this,true);});this._mouseInit();};$.extend(handleclass.prototype,$.ui.mouse,{_mouseStart:function(e){return self._start.call(self,e,this.element[0]);},_mouseStop:function(e){return self._stop.call(self,e,this.element[0]);},_mouseDrag:function(e){return self._drag.call(self,e,this.element[0]);},_mouseCapture:function(){return true;},trigger:function(e){this._mouseDown(e);}});$(this.handle).each(function(){new handleclass(this);}).wrap('').parent().bind('click',function(){return false;}).bind('focus',function(e){self._focus(this.firstChild);}).bind('blur',function(e){self._blur(this.firstChild);}).bind('keydown',function(e){if(!self.options.noKeyboard)return self._keydown(e.keyCode,this.firstChild);});this.element.bind('mousedown.slider',function(e){self._click.apply(self,[e]);self.currentHandle.data("mouse").trigger(e);self.firstValue=self.firstValue+1;});$.each(this.options.handles||[],function(index,handle){self.moveTo(handle.start,index,true);});if(!isNaN(this.options.startValue)) +this.moveTo(this.options.startValue,0,true);this.previousHandle=$(this.handle[0]);if(this.handle.length==2&&this.options.range)this._createRange();},_initBoundaries:function(){var element=this.element[0],o=this.options;this.actualSize={width:this.element.outerWidth(),height:this.element.outerHeight()};$.extend(o,{axis:o.axis||(element.offsetWidth
    ').addClass('ui-slider-range').css({position:'absolute'}).appendTo(this.element);this._updateRange();},_removeRange:function(){this.rangeElement.remove();this.rangeElement=null;},_updateRange:function(){var prop=this.options.axis=="vertical"?"top":"left";var size=this.options.axis=="vertical"?"height":"width";this.rangeElement.css(prop,(parseInt($(this.handle[0]).css(prop),10)||0)+this._handleSize(0,this.options.axis=="vertical"?"y":"x")/2);this.rangeElement.css(size,(parseInt($(this.handle[1]).css(prop),10)||0)-(parseInt($(this.handle[0]).css(prop),10)||0));},_getRange:function(){return this.rangeElement?this._convertValue(parseInt(this.rangeElement.css(this.options.axis=="vertical"?"height":"width"),10),this.options.axis=="vertical"?"y":"x"):null;},_handleIndex:function(){return this.handle.index(this.currentHandle[0]);},value:function(handle,axis){if(this.handle.length==1)this.currentHandle=this.handle;if(!axis)axis=this.options.axis=="vertical"?"y":"x";var curHandle=$(handle!=undefined&&handle!==null?this.handle[handle]||handle:this.currentHandle);if(curHandle.data("mouse").sliderValue){return parseInt(curHandle.data("mouse").sliderValue[axis],10);}else{return parseInt(((parseInt(curHandle.css(axis=="x"?"left":"top"),10)/(this.actualSize[axis=="x"?"width":"height"]-this._handleSize(handle,axis)))*this.options.realMax[axis])+this.options.min[axis],10);}},_convertValue:function(value,axis){return this.options.min[axis]+(value/(this.actualSize[axis=="x"?"width":"height"]-this._handleSize(null,axis)))*this.options.realMax[axis];},_translateValue:function(value,axis){return((value-this.options.min[axis])/this.options.realMax[axis])*(this.actualSize[axis=="x"?"width":"height"]-this._handleSize(null,axis));},_translateRange:function(value,axis){if(this.rangeElement){if(this.currentHandle[0]==this.handle[0]&&value>=this._translateValue(this.value(1),axis)) +value=this._translateValue(this.value(1,axis)-this._oneStep(axis),axis);if(this.currentHandle[0]==this.handle[1]&&value<=this._translateValue(this.value(0),axis)) +value=this._translateValue(this.value(0,axis)+this._oneStep(axis),axis);} +if(this.options.handles){var handle=this.options.handles[this._handleIndex()];if(valuethis._translateValue(handle.max,axis)){value=this._translateValue(handle.max,axis);}} +return value;},_translateLimits:function(value,axis){if(value>=this.actualSize[axis=="x"?"width":"height"]-this._handleSize(null,axis)) +value=this.actualSize[axis=="x"?"width":"height"]-this._handleSize(null,axis);if(value<=0) +value=0;return value;},_handleSize:function(handle,axis){return $(handle!=undefined&&handle!==null?this.handle[handle]:this.currentHandle)[0]["offset"+(axis=="x"?"Width":"Height")];},_oneStep:function(axis){return this.options.stepping[axis]||1;},_pageStep:function(axis){return 10;},_start:function(e,handle){var o=this.options;if(o.disabled)return false;this.actualSize={width:this.element.outerWidth(),height:this.element.outerHeight()};if(!this.currentHandle) +this._focus(this.previousHandle,true);this.offset=this.element.offset();this.handleOffset=this.currentHandle.offset();this.clickOffset={top:e.pageY-this.handleOffset.top,left:e.pageX-this.handleOffset.left};this.firstValue=this.value();this._propagate('start',e);this._drag(e,handle);return true;},_stop:function(e){this._propagate('stop',e);if(this.firstValue!=this.value()) +this._propagate('change',e);this._focus(this.currentHandle,true);return false;},_drag:function(e,handle){var o=this.options;var position={top:e.pageY-this.offset.top-this.clickOffset.top,left:e.pageX-this.offset.left-this.clickOffset.left};if(!this.currentHandle)this._focus(this.previousHandle,true);position.left=this._translateLimits(position.left,"x");position.top=this._translateLimits(position.top,"y");if(o.stepping.x){var value=this._convertValue(position.left,"x");value=Math.round(value/o.stepping.x)*o.stepping.x;position.left=this._translateValue(value,"x");} +if(o.stepping.y){var value=this._convertValue(position.top,"y");value=Math.round(value/o.stepping.y)*o.stepping.y;position.top=this._translateValue(value,"y");} +position.left=this._translateRange(position.left,"x");position.top=this._translateRange(position.top,"y");if(o.axis!="vertical")this.currentHandle.css({left:position.left});if(o.axis!="horizontal")this.currentHandle.css({top:position.top});this.currentHandle.data("mouse").sliderValue={x:Math.round(this._convertValue(position.left,"x"))||0,y:Math.round(this._convertValue(position.top,"y"))||0};if(this.rangeElement) +this._updateRange();this._propagate('slide',e);return false;},moveTo:function(value,handle,noPropagation){var o=this.options;this.actualSize={width:this.element.outerWidth(),height:this.element.outerHeight()};if(handle==undefined&&!this.currentHandle&&this.handle.length!=1) +return false;if(handle==undefined&&!this.currentHandle) +handle=0;if(handle!=undefined) +this.currentHandle=this.previousHandle=$(this.handle[handle]||handle);if(value.x!==undefined&&value.y!==undefined){var x=value.x,y=value.y;}else{var x=value,y=value;} +if(x!==undefined&&x.constructor!=Number){var me=/^\-\=/.test(x),pe=/^\+\=/.test(x);if(me||pe){x=this.value(null,"x")+parseInt(x.replace(me?'=':'+=',''),10);}else{x=isNaN(parseInt(x,10))?undefined:parseInt(x,10);}} +if(y!==undefined&&y.constructor!=Number){var me=/^\-\=/.test(y),pe=/^\+\=/.test(y);if(me||pe){y=this.value(null,"y")+parseInt(y.replace(me?'=':'+=',''),10);}else{y=isNaN(parseInt(y,10))?undefined:parseInt(y,10);}} +if(o.axis!="vertical"&&x!==undefined){if(o.stepping.x)x=Math.round(x/o.stepping.x)*o.stepping.x;x=this._translateValue(x,"x");x=this._translateLimits(x,"x");x=this._translateRange(x,"x");o.animate?this.currentHandle.stop().animate({left:x},(Math.abs(parseInt(this.currentHandle.css("left"))-x))*(!isNaN(parseInt(o.animate))?o.animate:5)):this.currentHandle.css({left:x});} +if(o.axis!="horizontal"&&y!==undefined){if(o.stepping.y)y=Math.round(y/o.stepping.y)*o.stepping.y;y=this._translateValue(y,"y");y=this._translateLimits(y,"y");y=this._translateRange(y,"y");o.animate?this.currentHandle.stop().animate({top:y},(Math.abs(parseInt(this.currentHandle.css("top"))-y))*(!isNaN(parseInt(o.animate))?o.animate:5)):this.currentHandle.css({top:y});} +if(this.rangeElement) +this._updateRange();this.currentHandle.data("mouse").sliderValue={x:Math.round(this._convertValue(x,"x"))||0,y:Math.round(this._convertValue(y,"y"))||0};if(!noPropagation){this._propagate('start',null);this._propagate('stop',null);this._propagate('change',null);this._propagate("slide",null);}}});$.ui.slider.getter="value";$.ui.slider.defaults={handle:".ui-slider-handle",distance:1,animate:false};})(jQuery);(function($){$.widget("ui.tabs",{_init:function(){this.options.event+='.tabs';this._tabify(true);},_setData:function(key,value){if((/^selected/).test(key)) +this.select(value);else{this.options[key]=value;this._tabify();}},length:function(){return this.$tabs.length;},_tabId:function(a){return a.title&&a.title.replace(/\s/g,'_').replace(/[^A-Za-z0-9\-_:\.]/g,'')||this.options.idPrefix+$.data(a);},ui:function(tab,panel){return{options:this.options,tab:tab,panel:panel,index:this.$tabs.index(tab)};},_tabify:function(init){this.$lis=$('li:has(a[href])',this.element);this.$tabs=this.$lis.map(function(){return $('a',this)[0];});this.$panels=$([]);var self=this,o=this.options;this.$tabs.each(function(i,a){if(a.hash&&a.hash.replace('#','')) +self.$panels=self.$panels.add(a.hash);else if($(a).attr('href')!='#'){$.data(a,'href.tabs',a.href);$.data(a,'load.tabs',a.href);var id=self._tabId(a);a.href='#'+id;var $panel=$('#'+id);if(!$panel.length){$panel=$(o.panelTemplate).attr('id',id).addClass(o.panelClass).insertAfter(self.$panels[i-1]||self.element);$panel.data('destroy.tabs',true);} +self.$panels=self.$panels.add($panel);} +else +o.disabled.push(i+1);});if(init){this.element.addClass(o.navClass);this.$panels.each(function(){var $this=$(this);$this.addClass(o.panelClass);});if(o.selected===undefined){if(location.hash){this.$tabs.each(function(i,a){if(a.hash==location.hash){o.selected=i;if($.browser.msie||$.browser.opera){var $toShow=$(location.hash),toShowId=$toShow.attr('id');$toShow.attr('id','');setTimeout(function(){$toShow.attr('id',toShowId);},500);} +scrollTo(0,0);return false;}});} +else if(o.cookie){var index=parseInt($.cookie('ui-tabs-'+$.data(self.element[0])),10);if(index&&self.$tabs[index]) +o.selected=index;} +else if(self.$lis.filter('.'+o.selectedClass).length) +o.selected=self.$lis.index(self.$lis.filter('.'+o.selectedClass)[0]);} +o.selected=o.selected===null||o.selected!==undefined?o.selected:0;o.disabled=$.unique(o.disabled.concat($.map(this.$lis.filter('.'+o.disabledClass),function(n,i){return self.$lis.index(n);}))).sort();if($.inArray(o.selected,o.disabled)!=-1) +o.disabled.splice($.inArray(o.selected,o.disabled),1);this.$panels.addClass(o.hideClass);this.$lis.removeClass(o.selectedClass);if(o.selected!==null){this.$panels.eq(o.selected).show().removeClass(o.hideClass);this.$lis.eq(o.selected).addClass(o.selectedClass);var onShow=function(){self._trigger('show',null,self.ui(self.$tabs[o.selected],self.$panels[o.selected]));};if($.data(this.$tabs[o.selected],'load.tabs')) +this.load(o.selected,onShow);else +onShow();} +$(window).bind('unload',function(){self.$tabs.unbind('.tabs');self.$lis=self.$tabs=self.$panels=null;});} +else +o.selected=this.$lis.index(this.$lis.filter('.'+o.selectedClass)[0]);if(o.cookie) +$.cookie('ui-tabs-'+$.data(self.element[0]),o.selected,o.cookie);for(var i=0,li;li=this.$lis[i];i++) +$(li)[$.inArray(i,o.disabled)!=-1&&!$(li).hasClass(o.selectedClass)?'addClass':'removeClass'](o.disabledClass);if(o.cache===false) +this.$tabs.removeData('cache.tabs');var hideFx,showFx,baseFx={'min-width':0,duration:1},baseDuration='normal';if(o.fx&&o.fx.constructor==Array) +hideFx=o.fx[0]||baseFx,showFx=o.fx[1]||baseFx;else +hideFx=showFx=o.fx||baseFx;var resetCSS={display:'',overflow:'',height:''};if(!$.browser.msie) +resetCSS.opacity='';function hideTab(clicked,$hide,$show){$hide.animate(hideFx,hideFx.duration||baseDuration,function(){$hide.addClass(o.hideClass).css(resetCSS);if($.browser.msie&&hideFx.opacity) +$hide[0].style.filter='';if($show) +showTab(clicked,$show,$hide);});} +function showTab(clicked,$show,$hide){if(showFx===baseFx) +$show.css('display','block');$show.animate(showFx,showFx.duration||baseDuration,function(){$show.removeClass(o.hideClass).css(resetCSS);if($.browser.msie&&showFx.opacity) +$show[0].style.filter='';self._trigger('show',null,self.ui(clicked,$show[0]));});} +function switchTab(clicked,$li,$hide,$show){$li.addClass(o.selectedClass).siblings().removeClass(o.selectedClass);hideTab(clicked,$hide,$show);} +this.$tabs.unbind('.tabs').bind(o.event,function(){var $li=$(this).parents('li:eq(0)'),$hide=self.$panels.filter(':visible'),$show=$(this.hash);if(($li.hasClass(o.selectedClass)&&!o.unselect)||$li.hasClass(o.disabledClass)||$(this).hasClass(o.loadingClass)||self._trigger('select',null,self.ui(this,$show[0]))===false){this.blur();return false;} +self.options.selected=self.$tabs.index(this);if(o.unselect){if($li.hasClass(o.selectedClass)){self.options.selected=null;$li.removeClass(o.selectedClass);self.$panels.stop();hideTab(this,$hide);this.blur();return false;}else if(!$hide.length){self.$panels.stop();var a=this;self.load(self.$tabs.index(this),function(){$li.addClass(o.selectedClass).addClass(o.unselectClass);showTab(a,$show);});this.blur();return false;}} +if(o.cookie) +$.cookie('ui-tabs-'+$.data(self.element[0]),self.options.selected,o.cookie);self.$panels.stop();if($show.length){var a=this;self.load(self.$tabs.index(this),$hide.length?function(){switchTab(a,$li,$hide,$show);}:function(){$li.addClass(o.selectedClass);showTab(a,$show);});}else +throw'jQuery UI Tabs: Mismatching fragment identifier.';if($.browser.msie) +this.blur();return false;});if(!(/^click/).test(o.event)) +this.$tabs.bind('click.tabs',function(){return false;});},add:function(url,label,index){if(index==undefined) +index=this.$tabs.length;var o=this.options;var $li=$(o.tabTemplate.replace(/#\{href\}/g,url).replace(/#\{label\}/g,label));$li.data('destroy.tabs',true);var id=url.indexOf('#')==0?url.replace('#',''):this._tabId($('a:first-child',$li)[0]);var $panel=$('#'+id);if(!$panel.length){$panel=$(o.panelTemplate).attr('id',id).addClass(o.hideClass).data('destroy.tabs',true);} +$panel.addClass(o.panelClass);if(index>=this.$lis.length){$li.appendTo(this.element);$panel.appendTo(this.element[0].parentNode);}else{$li.insertBefore(this.$lis[index]);$panel.insertBefore(this.$panels[index]);} +o.disabled=$.map(o.disabled,function(n,i){return n>=index?++n:n});this._tabify();if(this.$tabs.length==1){$li.addClass(o.selectedClass);$panel.removeClass(o.hideClass);var href=$.data(this.$tabs[0],'load.tabs');if(href) +this.load(index,href);} +this._trigger('add',null,this.ui(this.$tabs[index],this.$panels[index]));},remove:function(index){var o=this.options,$li=this.$lis.eq(index).remove(),$panel=this.$panels.eq(index).remove();if($li.hasClass(o.selectedClass)&&this.$tabs.length>1) +this.select(index+(index+1=index?--n:n});this._tabify();this._trigger('remove',null,this.ui($li.find('a')[0],$panel[0]));},enable:function(index){var o=this.options;if($.inArray(index,o.disabled)==-1) +return;var $li=this.$lis.eq(index).removeClass(o.disabledClass);if($.browser.safari){$li.css('display','inline-block');setTimeout(function(){$li.css('display','block');},0);} +o.disabled=$.grep(o.disabled,function(n,i){return n!=index;});this._trigger('enable',null,this.ui(this.$tabs[index],this.$panels[index]));},disable:function(index){var self=this,o=this.options;if(index!=o.selected){this.$lis.eq(index).addClass(o.disabledClass);o.disabled.push(index);o.disabled.sort();this._trigger('disable',null,this.ui(this.$tabs[index],this.$panels[index]));}},select:function(index){if(typeof index=='string') +index=this.$tabs.index(this.$tabs.filter('[href$='+index+']')[0]);this.$tabs.eq(index).trigger(this.options.event);},load:function(index,callback){var self=this,o=this.options,$a=this.$tabs.eq(index),a=$a[0],bypassCache=callback==undefined||callback===false,url=$a.data('load.tabs');callback=callback||function(){};if(!url||!bypassCache&&$.data(a,'cache.tabs')){callback();return;} +var inner=function(parent){var $parent=$(parent),$inner=$parent.find('*:last');return $inner.length&&$inner.is(':not(img)')&&$inner||$parent;};var cleanup=function(){self.$tabs.filter('.'+o.loadingClass).removeClass(o.loadingClass).each(function(){if(o.spinner) +inner(this).parent().html(inner(this).data('label.tabs'));});self.xhr=null;};if(o.spinner){var label=inner(a).html();inner(a).wrapInner('').find('em').data('label.tabs',label).html(o.spinner);} +var ajaxOptions=$.extend({},o.ajaxOptions,{url:url,success:function(r,s){$(a.hash).html(r);cleanup();if(o.cache) +$.data(a,'cache.tabs',true);self._trigger('load',null,self.ui(self.$tabs[index],self.$panels[index]));o.ajaxOptions.success&&o.ajaxOptions.success(r,s);callback();}});if(this.xhr){this.xhr.abort();cleanup();} +$a.addClass(o.loadingClass);setTimeout(function(){self.xhr=$.ajax(ajaxOptions);},0);},url:function(index,url){this.$tabs.eq(index).removeData('cache.tabs').data('load.tabs',url);},destroy:function(){var o=this.options;this.element.unbind('.tabs').removeClass(o.navClass).removeData('tabs');this.$tabs.each(function(){var href=$.data(this,'href.tabs');if(href) +this.href=href;var $this=$(this).unbind('.tabs');$.each(['href','load','cache'],function(i,prefix){$this.removeData(prefix+'.tabs');});});this.$lis.add(this.$panels).each(function(){if($.data(this,'destroy.tabs')) +$(this).remove();else +$(this).removeClass([o.selectedClass,o.unselectClass,o.disabledClass,o.panelClass,o.hideClass].join(' '));});}});$.ui.tabs.defaults={unselect:false,event:'click',disabled:[],cookie:null,spinner:'Loading…',cache:false,idPrefix:'ui-tabs-',ajaxOptions:{},fx:null,tabTemplate:'
  • #{label}
  • ',panelTemplate:'
    ',navClass:'ui-tabs-nav',selectedClass:'ui-tabs-selected',unselectClass:'ui-tabs-unselect',disabledClass:'ui-tabs-disabled',panelClass:'ui-tabs-panel',hideClass:'ui-tabs-hide',loadingClass:'ui-tabs-loading'};$.ui.tabs.getter="length";$.extend($.ui.tabs.prototype,{rotation:null,rotate:function(ms,continuing){continuing=continuing||false;var self=this,t=this.options.selected;function start(){self.rotation=setInterval(function(){t=++t
    ');} +$.extend(Datepicker.prototype,{markerClassName:'hasDatepicker',log:function(){if(this.debug) +console.log.apply('',arguments);},setDefaults:function(settings){extendRemove(this._defaults,settings||{});return this;},_attachDatepicker:function(target,settings){var inlineSettings=null;for(attrName in this._defaults){var attrValue=target.getAttribute('date:'+attrName);if(attrValue){inlineSettings=inlineSettings||{};try{inlineSettings[attrName]=eval(attrValue);}catch(err){inlineSettings[attrName]=attrValue;}}} +var nodeName=target.nodeName.toLowerCase();var inline=(nodeName=='div'||nodeName=='span');if(!target.id) +target.id='dp'+(++this.uuid);var inst=this._newInst($(target),inline);inst.settings=$.extend({},settings||{},inlineSettings||{});if(nodeName=='input'){this._connectDatepicker(target,inst);}else if(inline){this._inlineDatepicker(target,inst);}},_newInst:function(target,inline){var id=target[0].id.replace(/([:\[\]\.])/g,'\\\\$1');return{id:id,input:target,selectedDay:0,selectedMonth:0,selectedYear:0,drawMonth:0,drawYear:0,inline:inline,dpDiv:(!inline?this.dpDiv:$('
    '))};},_connectDatepicker:function(target,inst){var input=$(target);if(input.hasClass(this.markerClassName)) +return;var appendText=this._get(inst,'appendText');var isRTL=this._get(inst,'isRTL');if(appendText) +input[isRTL?'before':'after'](''+appendText+'');var showOn=this._get(inst,'showOn');if(showOn=='focus'||showOn=='both') +input.focus(this._showDatepicker);if(showOn=='button'||showOn=='both'){var buttonText=this._get(inst,'buttonText');var buttonImage=this._get(inst,'buttonImage');var trigger=$(this._get(inst,'buttonImageOnly')?$('').addClass(this._triggerClass).attr({src:buttonImage,alt:buttonText,title:buttonText}):$('').addClass(this._triggerClass).html(buttonImage==''?buttonText:$('').attr({src:buttonImage,alt:buttonText,title:buttonText})));input[isRTL?'before':'after'](trigger);trigger.click(function(){if($.datepicker._datepickerShowing&&$.datepicker._lastInput==target) +$.datepicker._hideDatepicker();else +$.datepicker._showDatepicker(target);return false;});} +input.addClass(this.markerClassName).keydown(this._doKeyDown).keypress(this._doKeyPress).bind("setData.datepicker",function(event,key,value){inst.settings[key]=value;}).bind("getData.datepicker",function(event,key){return this._get(inst,key);});$.data(target,PROP_NAME,inst);},_inlineDatepicker:function(target,inst){var divSpan=$(target);if(divSpan.hasClass(this.markerClassName)) +return;divSpan.addClass(this.markerClassName).append(inst.dpDiv).bind("setData.datepicker",function(event,key,value){inst.settings[key]=value;}).bind("getData.datepicker",function(event,key){return this._get(inst,key);});$.data(target,PROP_NAME,inst);this._setDate(inst,this._getDefaultDate(inst));this._updateDatepicker(inst);},_inlineShow:function(inst){var numMonths=this._getNumberOfMonths(inst);inst.dpDiv.width(numMonths[1]*$('.ui-datepicker',inst.dpDiv[0]).width());},_dialogDatepicker:function(input,dateText,onSelect,settings,pos){var inst=this._dialogInst;if(!inst){var id='dp'+(++this.uuid);this._dialogInput=$('');this._dialogInput.keydown(this._doKeyDown);$('body').append(this._dialogInput);inst=this._dialogInst=this._newInst(this._dialogInput,false);inst.settings={};$.data(this._dialogInput[0],PROP_NAME,inst);} +extendRemove(inst.settings,settings||{});this._dialogInput.val(dateText);this._pos=(pos?(pos.length?pos:[pos.pageX,pos.pageY]):null);if(!this._pos){var browserWidth=window.innerWidth||document.documentElement.clientWidth||document.body.clientWidth;var browserHeight=window.innerHeight||document.documentElement.clientHeight||document.body.clientHeight;var scrollX=document.documentElement.scrollLeft||document.body.scrollLeft;var scrollY=document.documentElement.scrollTop||document.body.scrollTop;this._pos=[(browserWidth/2)-100+scrollX,(browserHeight/2)-150+scrollY];} +this._dialogInput.css('left',this._pos[0]+'px').css('top',this._pos[1]+'px');inst.settings.onSelect=onSelect;this._inDialog=true;this.dpDiv.addClass(this._dialogClass);this._showDatepicker(this._dialogInput[0]);if($.blockUI) +$.blockUI(this.dpDiv);$.data(this._dialogInput[0],PROP_NAME,inst);return this;},_destroyDatepicker:function(target){var $target=$(target);if(!$target.hasClass(this.markerClassName)){return;} +var nodeName=target.nodeName.toLowerCase();$.removeData(target,PROP_NAME);if(nodeName=='input'){$target.siblings('.'+this._appendClass).remove().end().siblings('.'+this._triggerClass).remove().end().removeClass(this.markerClassName).unbind('focus',this._showDatepicker).unbind('keydown',this._doKeyDown).unbind('keypress',this._doKeyPress);}else if(nodeName=='div'||nodeName=='span') +$target.removeClass(this.markerClassName).empty();},_enableDatepicker:function(target){var $target=$(target);if(!$target.hasClass(this.markerClassName)){return;} +var nodeName=target.nodeName.toLowerCase();if(nodeName=='input'){target.disabled=false;$target.siblings('button.'+this._triggerClass).each(function(){this.disabled=false;}).end().siblings('img.'+this._triggerClass).css({opacity:'1.0',cursor:''});} +else if(nodeName=='div'||nodeName=='span'){$target.children('.'+this._disableClass).remove();} +this._disabledInputs=$.map(this._disabledInputs,function(value){return(value==target?null:value);});},_disableDatepicker:function(target){var $target=$(target);if(!$target.hasClass(this.markerClassName)){return;} +var nodeName=target.nodeName.toLowerCase();if(nodeName=='input'){target.disabled=true;$target.siblings('button.'+this._triggerClass).each(function(){this.disabled=true;}).end().siblings('img.'+this._triggerClass).css({opacity:'0.5',cursor:'default'});} +else if(nodeName=='div'||nodeName=='span'){var inline=$target.children('.'+this._inlineClass);var offset=inline.offset();var relOffset={left:0,top:0};inline.parents().each(function(){if($(this).css('position')=='relative'){relOffset=$(this).offset();return false;}});$target.prepend('
    ');} +this._disabledInputs=$.map(this._disabledInputs,function(value){return(value==target?null:value);});this._disabledInputs[this._disabledInputs.length]=target;},_isDisabledDatepicker:function(target){if(!target) +return false;for(var i=0;i-1);},_showDatepicker:function(input){input=input.target||input;if(input.nodeName.toLowerCase()!='input') +input=$('input',input.parentNode)[0];if($.datepicker._isDisabledDatepicker(input)||$.datepicker._lastInput==input) +return;var inst=$.datepicker._getInst(input);var beforeShow=$.datepicker._get(inst,'beforeShow');extendRemove(inst.settings,(beforeShow?beforeShow.apply(input,[input,inst]):{}));$.datepicker._hideDatepicker(null,'');$.datepicker._lastInput=input;$.datepicker._setDateFromField(inst);if($.datepicker._inDialog) +input.value='';if(!$.datepicker._pos){$.datepicker._pos=$.datepicker._findPos(input);$.datepicker._pos[1]+=input.offsetHeight;} +var isFixed=false;$(input).parents().each(function(){isFixed|=$(this).css('position')=='fixed';return!isFixed;});if(isFixed&&$.browser.opera){$.datepicker._pos[0]-=document.documentElement.scrollLeft;$.datepicker._pos[1]-=document.documentElement.scrollTop;} +var offset={left:$.datepicker._pos[0],top:$.datepicker._pos[1]};$.datepicker._pos=null;inst.rangeStart=null;inst.dpDiv.css({position:'absolute',display:'block',top:'-1000px'});$.datepicker._updateDatepicker(inst);inst.dpDiv.width($.datepicker._getNumberOfMonths(inst)[1]*$('.ui-datepicker',inst.dpDiv[0])[0].offsetWidth);offset=$.datepicker._checkOffset(inst,offset,isFixed);inst.dpDiv.css({position:($.datepicker._inDialog&&$.blockUI?'static':(isFixed?'fixed':'absolute')),display:'none',left:offset.left+'px',top:offset.top+'px'});if(!inst.inline){var showAnim=$.datepicker._get(inst,'showAnim')||'show';var duration=$.datepicker._get(inst,'duration');var postProcess=function(){$.datepicker._datepickerShowing=true;if($.browser.msie&&parseInt($.browser.version,10)<7) +$('iframe.ui-datepicker-cover').css({width:inst.dpDiv.width()+4,height:inst.dpDiv.height()+4});};if($.effects&&$.effects[showAnim]) +inst.dpDiv.show(showAnim,$.datepicker._get(inst,'showOptions'),duration,postProcess);else +inst.dpDiv[showAnim](duration,postProcess);if(duration=='') +postProcess();if(inst.input[0].type!='hidden') +inst.input[0].focus();$.datepicker._curInst=inst;}},_updateDatepicker:function(inst){var dims={width:inst.dpDiv.width()+4,height:inst.dpDiv.height()+4};inst.dpDiv.empty().append(this._generateHTML(inst)).find('iframe.ui-datepicker-cover').css({width:dims.width,height:dims.height});var numMonths=this._getNumberOfMonths(inst);inst.dpDiv[(numMonths[0]!=1||numMonths[1]!=1?'add':'remove')+'Class']('ui-datepicker-multi');inst.dpDiv[(this._get(inst,'isRTL')?'add':'remove')+'Class']('ui-datepicker-rtl');if(inst.input&&inst.input[0].type!='hidden') +$(inst.input[0]).focus();},_checkOffset:function(inst,offset,isFixed){var pos=inst.input?this._findPos(inst.input[0]):null;var browserWidth=window.innerWidth||document.documentElement.clientWidth;var browserHeight=window.innerHeight||document.documentElement.clientHeight;var scrollX=document.documentElement.scrollLeft||document.body.scrollLeft;var scrollY=document.documentElement.scrollTop||document.body.scrollTop;if(this._get(inst,'isRTL')||(offset.left+inst.dpDiv.width()-scrollX)>browserWidth) +offset.left=Math.max((isFixed?0:scrollX),pos[0]+(inst.input?inst.input.width():0)-(isFixed?scrollX:0)-inst.dpDiv.width()- +(isFixed&&$.browser.opera?document.documentElement.scrollLeft:0));else +offset.left-=(isFixed?scrollX:0);if((offset.top+inst.dpDiv.height()-scrollY)>browserHeight) +offset.top=Math.max((isFixed?0:scrollY),pos[1]-(isFixed?scrollY:0)-(this._inDialog?0:inst.dpDiv.height())- +(isFixed&&$.browser.opera?document.documentElement.scrollTop:0));else +offset.top-=(isFixed?scrollY:0);return offset;},_findPos:function(obj){while(obj&&(obj.type=='hidden'||obj.nodeType!=1)){obj=obj.nextSibling;} +var position=$(obj).offset();return[position.left,position.top];},_hideDatepicker:function(input,duration){var inst=this._curInst;if(!inst||(input&&inst!=$.data(input,PROP_NAME))) +return;var rangeSelect=this._get(inst,'rangeSelect');if(rangeSelect&&inst.stayOpen) +this._selectDate('#'+inst.id,this._formatDate(inst,inst.currentDay,inst.currentMonth,inst.currentYear));inst.stayOpen=false;if(this._datepickerShowing){duration=(duration!=null?duration:this._get(inst,'duration'));var showAnim=this._get(inst,'showAnim');var postProcess=function(){$.datepicker._tidyDialog(inst);};if(duration!=''&&$.effects&&$.effects[showAnim]) +inst.dpDiv.hide(showAnim,$.datepicker._get(inst,'showOptions'),duration,postProcess);else +inst.dpDiv[(duration==''?'hide':(showAnim=='slideDown'?'slideUp':(showAnim=='fadeIn'?'fadeOut':'hide')))](duration,postProcess);if(duration=='') +this._tidyDialog(inst);var onClose=this._get(inst,'onClose');if(onClose) +onClose.apply((inst.input?inst.input[0]:null),[(inst.input?inst.input.val():''),inst]);this._datepickerShowing=false;this._lastInput=null;inst.settings.prompt=null;if(this._inDialog){this._dialogInput.css({position:'absolute',left:'0',top:'-100px'});if($.blockUI){$.unblockUI();$('body').append(this.dpDiv);}} +this._inDialog=false;} +this._curInst=null;},_tidyDialog:function(inst){inst.dpDiv.removeClass(this._dialogClass).unbind('.ui-datepicker');$('.'+this._promptClass,inst.dpDiv).remove();},_checkExternalClick:function(event){if(!$.datepicker._curInst) +return;var $target=$(event.target);if(($target.parents('#'+$.datepicker._mainDivId).length==0)&&!$target.hasClass($.datepicker.markerClassName)&&!$target.hasClass($.datepicker._triggerClass)&&$.datepicker._datepickerShowing&&!($.datepicker._inDialog&&$.blockUI)) +$.datepicker._hideDatepicker(null,'');},_adjustDate:function(id,offset,period){var target=$(id);var inst=this._getInst(target[0]);this._adjustInstDate(inst,offset,period);this._updateDatepicker(inst);},_gotoToday:function(id){var target=$(id);var inst=this._getInst(target[0]);if(this._get(inst,'gotoCurrent')&&inst.currentDay){inst.selectedDay=inst.currentDay;inst.drawMonth=inst.selectedMonth=inst.currentMonth;inst.drawYear=inst.selectedYear=inst.currentYear;} +else{var date=new Date();inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear();} +this._notifyChange(inst);this._adjustDate(target);},_selectMonthYear:function(id,select,period){var target=$(id);var inst=this._getInst(target[0]);inst._selectingMonthYear=false;inst['selected'+(period=='M'?'Month':'Year')]=inst['draw'+(period=='M'?'Month':'Year')]=parseInt(select.options[select.selectedIndex].value,10);this._notifyChange(inst);this._adjustDate(target);},_clickMonthYear:function(id){var target=$(id);var inst=this._getInst(target[0]);if(inst.input&&inst._selectingMonthYear&&!$.browser.msie) +inst.input[0].focus();inst._selectingMonthYear=!inst._selectingMonthYear;},_changeFirstDay:function(id,day){var target=$(id);var inst=this._getInst(target[0]);inst.settings.firstDay=day;this._updateDatepicker(inst);},_selectDay:function(id,month,year,td){if($(td).hasClass(this._unselectableClass)) +return;var target=$(id);var inst=this._getInst(target[0]);var rangeSelect=this._get(inst,'rangeSelect');if(rangeSelect){inst.stayOpen=!inst.stayOpen;if(inst.stayOpen){$('.ui-datepicker td',inst.dpDiv).removeClass(this._currentClass);$(td).addClass(this._currentClass);}} +inst.selectedDay=inst.currentDay=$('a',td).html();inst.selectedMonth=inst.currentMonth=month;inst.selectedYear=inst.currentYear=year;if(inst.stayOpen){inst.endDay=inst.endMonth=inst.endYear=null;} +else if(rangeSelect){inst.endDay=inst.currentDay;inst.endMonth=inst.currentMonth;inst.endYear=inst.currentYear;} +this._selectDate(id,this._formatDate(inst,inst.currentDay,inst.currentMonth,inst.currentYear));if(inst.stayOpen){inst.rangeStart=new Date(inst.currentYear,inst.currentMonth,inst.currentDay);this._updateDatepicker(inst);} +else if(rangeSelect){inst.selectedDay=inst.currentDay=inst.rangeStart.getDate();inst.selectedMonth=inst.currentMonth=inst.rangeStart.getMonth();inst.selectedYear=inst.currentYear=inst.rangeStart.getFullYear();inst.rangeStart=null;if(inst.inline) +this._updateDatepicker(inst);}},_clearDate:function(id){var target=$(id);var inst=this._getInst(target[0]);if(this._get(inst,'mandatory')) +return;inst.stayOpen=false;inst.endDay=inst.endMonth=inst.endYear=inst.rangeStart=null;this._selectDate(target,'');},_selectDate:function(id,dateStr){var target=$(id);var inst=this._getInst(target[0]);dateStr=(dateStr!=null?dateStr:this._formatDate(inst));if(this._get(inst,'rangeSelect')&&dateStr) +dateStr=(inst.rangeStart?this._formatDate(inst,inst.rangeStart):dateStr)+this._get(inst,'rangeSeparator')+dateStr;if(inst.input) +inst.input.val(dateStr);this._updateAlternate(inst);var onSelect=this._get(inst,'onSelect');if(onSelect) +onSelect.apply((inst.input?inst.input[0]:null),[dateStr,inst]);else if(inst.input) +inst.input.trigger('change');if(inst.inline) +this._updateDatepicker(inst);else if(!inst.stayOpen){this._hideDatepicker(null,this._get(inst,'duration'));this._lastInput=inst.input[0];if(typeof(inst.input[0])!='object') +inst.input[0].focus();this._lastInput=null;}},_updateAlternate:function(inst){var altField=this._get(inst,'altField');if(altField){var altFormat=this._get(inst,'altFormat');var date=this._getDate(inst);dateStr=(isArray(date)?(!date[0]&&!date[1]?'':this.formatDate(altFormat,date[0],this._getFormatConfig(inst))+ +this._get(inst,'rangeSeparator')+this.formatDate(altFormat,date[1]||date[0],this._getFormatConfig(inst))):this.formatDate(altFormat,date,this._getFormatConfig(inst)));$(altField).each(function(){$(this).val(dateStr);});}},noWeekends:function(date){var day=date.getDay();return[(day>0&&day<6),''];},iso8601Week:function(date){var checkDate=new Date(date.getFullYear(),date.getMonth(),date.getDate(),(date.getTimezoneOffset()/-60));var firstMon=new Date(checkDate.getFullYear(),1-1,4);var firstDay=firstMon.getDay()||7;firstMon.setDate(firstMon.getDate()+1-firstDay);if(firstDay<4&&checkDatenew Date(checkDate.getFullYear(),12-1,28)){firstDay=new Date(checkDate.getFullYear()+1,1-1,4).getDay()||7;if(firstDay>4&&(checkDate.getDay()||7)0&&iValue='0'&&value.charAt(iValue)<='9'){num=num*10+parseInt(value.charAt(iValue++),10);size--;} +if(size==origSize) +throw'Missing number at position '+iValue;return num;};var getName=function(match,shortNames,longNames){var names=(lookAhead(match)?longNames:shortNames);var size=0;for(var j=0;j0&&iValue-1){month=1;day=doy;do{var dim=this._getDaysInMonth(year,month-1);if(day<=dim) +break;month++;day-=dim;}while(true);} +var date=new Date(year,month-1,day);if(date.getFullYear()!=year||date.getMonth()+1!=month||date.getDate()!=day) +throw'Invalid date';return date;},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',TIMESTAMP:'@',W3C:'yy-mm-dd',formatDate:function(format,date,settings){if(!date) +return'';var dayNamesShort=(settings?settings.dayNamesShort:null)||this._defaults.dayNamesShort;var dayNames=(settings?settings.dayNames:null)||this._defaults.dayNames;var monthNamesShort=(settings?settings.monthNamesShort:null)||this._defaults.monthNamesShort;var monthNames=(settings?settings.monthNames:null)||this._defaults.monthNames;var lookAhead=function(match){var matches=(iFormat+1=0;m--) +doy+=this._getDaysInMonth(date.getFullYear(),m);output+=formatNumber('o',doy,3);break;case'm':output+=formatNumber('m',date.getMonth()+1,2);break;case'M':output+=formatName('M',date.getMonth(),monthNamesShort,monthNames);break;case'y':output+=(lookAhead('y')?date.getFullYear():(date.getYear()%100<10?'0':'')+date.getYear()%100);break;case'@':output+=date.getTime();break;case"'":if(lookAhead("'")) +output+="'";else +literal=true;break;default:output+=format.charAt(iFormat);}} +return output;},_possibleChars:function(format){var chars='';var literal=false;for(var iFormat=0;iFormat0){var settings=this._getFormatConfig(inst);if(dates.length>1){date=this.parseDate(dateFormat,dates[1],settings)||defaultDate;inst.endDay=date.getDate();inst.endMonth=date.getMonth();inst.endYear=date.getFullYear();} +try{date=this.parseDate(dateFormat,dates[0],settings)||defaultDate;}catch(e){this.log(e);date=defaultDate;}} +inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear();inst.currentDay=(dates[0]?date.getDate():0);inst.currentMonth=(dates[0]?date.getMonth():0);inst.currentYear=(dates[0]?date.getFullYear():0);this._adjustInstDate(inst);},_getDefaultDate:function(inst){var date=this._determineDate(this._get(inst,'defaultDate'),new Date());var minDate=this._getMinMaxDate(inst,'min',true);var maxDate=this._getMinMaxDate(inst,'max');date=(minDate&&datemaxDate?maxDate:date);return date;},_determineDate:function(date,defaultDate){var offsetNumeric=function(offset){var date=new Date();date.setUTCDate(date.getUTCDate()+offset);return date;};var offsetString=function(offset,getDaysInMonth){var date=new Date();var year=date.getFullYear();var month=date.getMonth();var day=date.getDate();var pattern=/([+-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g;var matches=pattern.exec(offset);while(matches){switch(matches[2]||'d'){case'd':case'D':day+=parseInt(matches[1],10);break;case'w':case'W':day+=parseInt(matches[1],10)*7;break;case'm':case'M':month+=parseInt(matches[1],10);day=Math.min(day,getDaysInMonth(year,month));break;case'y':case'Y':year+=parseInt(matches[1],10);day=Math.min(day,getDaysInMonth(year,month));break;} +matches=pattern.exec(offset);} +return new Date(year,month,day);};date=(date==null?defaultDate:(typeof date=='string'?offsetString(date,this._getDaysInMonth):(typeof date=='number'?(isNaN(date)?defaultDate:offsetNumeric(date)):date)));return(date&&date.toString()=='Invalid Date'?defaultDate:date);},_setDate:function(inst,date,endDate){var clear=!(date);var origMonth=inst.selectedMonth;var origYear=inst.selectedYear;date=this._determineDate(date,new Date());inst.selectedDay=inst.currentDay=date.getDate();inst.drawMonth=inst.selectedMonth=inst.currentMonth=date.getMonth();inst.drawYear=inst.selectedYear=inst.currentYear=date.getFullYear();if(this._get(inst,'rangeSelect')){if(endDate){endDate=this._determineDate(endDate,null);inst.endDay=endDate.getDate();inst.endMonth=endDate.getMonth();inst.endYear=endDate.getFullYear();}else{inst.endDay=inst.currentDay;inst.endMonth=inst.currentMonth;inst.endYear=inst.currentYear;}} +if(origMonth!=inst.selectedMonth||origYear!=inst.selectedYear) +this._notifyChange(inst);this._adjustInstDate(inst);if(inst.input) +inst.input.val(clear?'':this._formatDate(inst)+ +(!this._get(inst,'rangeSelect')?'':this._get(inst,'rangeSeparator')+ +this._formatDate(inst,inst.endDay,inst.endMonth,inst.endYear)));},_getDate:function(inst){var startDate=(!inst.currentYear||(inst.input&&inst.input.val()=='')?null:new Date(inst.currentYear,inst.currentMonth,inst.currentDay));if(this._get(inst,'rangeSelect')){return[inst.rangeStart||startDate,(!inst.endYear?inst.rangeStart||startDate:new Date(inst.endYear,inst.endMonth,inst.endDay))];}else +return startDate;},_generateHTML:function(inst){var today=new Date();today=new Date(today.getFullYear(),today.getMonth(),today.getDate());var showStatus=this._get(inst,'showStatus');var initStatus=this._get(inst,'initStatus')||' ';var isRTL=this._get(inst,'isRTL');var clear=(this._get(inst,'mandatory')?'':'');var controls='
    '+(isRTL?'':clear)+''+(isRTL?clear:'')+'
    ';var prompt=this._get(inst,'prompt');var closeAtTop=this._get(inst,'closeAtTop');var hideIfNoPrevNext=this._get(inst,'hideIfNoPrevNext');var navigationAsDateFormat=this._get(inst,'navigationAsDateFormat');var showBigPrevNext=this._get(inst,'showBigPrevNext');var numMonths=this._getNumberOfMonths(inst);var showCurrentAtPos=this._get(inst,'showCurrentAtPos');var stepMonths=this._get(inst,'stepMonths');var stepBigMonths=this._get(inst,'stepBigMonths');var isMultiMonth=(numMonths[0]!=1||numMonths[1]!=1);var currentDate=(!inst.currentDay?new Date(9999,9,9):new Date(inst.currentYear,inst.currentMonth,inst.currentDay));var minDate=this._getMinMaxDate(inst,'min',true);var maxDate=this._getMinMaxDate(inst,'max');var drawMonth=inst.drawMonth-showCurrentAtPos;var drawYear=inst.drawYear;if(drawMonth<0){drawMonth+=12;drawYear--;} +if(maxDate){var maxDraw=new Date(maxDate.getFullYear(),maxDate.getMonth()-numMonths[1]+1,maxDate.getDate());maxDraw=(minDate&&maxDrawmaxDraw){drawMonth--;if(drawMonth<0){drawMonth=11;drawYear--;}}} +var prevText=this._get(inst,'prevText');prevText=(!navigationAsDateFormat?prevText:this.formatDate(prevText,new Date(drawYear,drawMonth-stepMonths,1),this._getFormatConfig(inst)));var prevBigText=(showBigPrevNext?this._get(inst,'prevBigText'):'');prevBigText=(!navigationAsDateFormat?prevBigText:this.formatDate(prevBigText,new Date(drawYear,drawMonth-stepBigMonths,1),this._getFormatConfig(inst)));var prev='
    '+(this._canAdjustMonth(inst,-1,drawYear,drawMonth)?(showBigPrevNext?''+prevBigText+'':'')+''+prevText+'':(hideIfNoPrevNext?'':''))+'
    ';var nextText=this._get(inst,'nextText');nextText=(!navigationAsDateFormat?nextText:this.formatDate(nextText,new Date(drawYear,drawMonth+stepMonths,1),this._getFormatConfig(inst)));var nextBigText=(showBigPrevNext?this._get(inst,'nextBigText'):'');nextBigText=(!navigationAsDateFormat?nextBigText:this.formatDate(nextBigText,new Date(drawYear,drawMonth+stepBigMonths,1),this._getFormatConfig(inst)));var next='
    '+(this._canAdjustMonth(inst,+1,drawYear,drawMonth)?''+nextText+''+ +(showBigPrevNext?''+nextBigText+'':''):(hideIfNoPrevNext?'':''))+'
    ';var currentText=this._get(inst,'currentText');var gotoDate=(this._get(inst,'gotoCurrent')&&inst.currentDay?currentDate:today);currentText=(!navigationAsDateFormat?currentText:this.formatDate(currentText,gotoDate,this._getFormatConfig(inst)));var html=(prompt?'
    '+prompt+'
    ':'')+ +(closeAtTop&&!inst.inline?controls:'')+'';var firstDay=this._get(inst,'firstDay');var changeFirstDay=this._get(inst,'changeFirstDay');var dayNames=this._get(inst,'dayNames');var dayNamesShort=this._get(inst,'dayNamesShort');var dayNamesMin=this._get(inst,'dayNamesMin');var monthNames=this._get(inst,'monthNames');var beforeShowDay=this._get(inst,'beforeShowDay');var highlightWeek=this._get(inst,'highlightWeek');var showOtherMonths=this._get(inst,'showOtherMonths');var showWeeks=this._get(inst,'showWeeks');var calculateWeek=this._get(inst,'calculateWeek')||this.iso8601Week;var weekStatus=this._get(inst,'weekStatus');var status=(showStatus?this._get(inst,'dayStatus')||initStatus:'');var dateStatus=this._get(inst,'statusForDate')||this.dateStatus;var endDate=inst.endDay?new Date(inst.endYear,inst.endMonth,inst.endDay):currentDate;for(var row=0;row'+ +this._generateMonthYearHeader(inst,drawMonth,drawYear,minDate,maxDate,selectedDate,row>0||col>0,showStatus,initStatus,monthNames)+''+''+ +(showWeeks?''+ +this._get(inst,'weekHeader')+'':'');for(var dow=0;dow<7;dow++){var day=(dow+firstDay)%7;var dayStatus=(status.indexOf('DD')>-1?status.replace(/DD/,dayNames[day]):status.replace(/D/,dayNamesShort[day]));html+='=5?' class="ui-datepicker-week-end-cell"':'')+'>'+ +(!changeFirstDay?''+ +dayNamesMin[day]+(changeFirstDay?'':'')+'';} +html+='';var daysInMonth=this._getDaysInMonth(drawYear,drawMonth);if(drawYear==inst.selectedYear&&drawMonth==inst.selectedMonth) +inst.selectedDay=Math.min(inst.selectedDay,daysInMonth);var leadDays=(this._getFirstDayOfMonth(drawYear,drawMonth)-firstDay+7)%7;var tzDate=new Date(drawYear,drawMonth,1-leadDays);var utcDate=new Date(drawYear,drawMonth,1-leadDays);var printDate=utcDate;var numRows=(isMultiMonth?6:Math.ceil((leadDays+daysInMonth)/7));for(var dRow=0;dRow'+ +(showWeeks?'':'');for(var dow=0;dow<7;dow++){var daySettings=(beforeShowDay?beforeShowDay.apply((inst.input?inst.input[0]:null),[printDate]):[true,'']);var otherMonth=(printDate.getMonth()!=drawMonth);var unselectable=otherMonth||!daySettings[0]||(minDate&&printDatemaxDate);html+='';tzDate.setDate(tzDate.getDate()+1);utcDate.setUTCDate(utcDate.getUTCDate()+1);printDate=(tzDate>utcDate?tzDate:utcDate);} +html+='';} +drawMonth++;if(drawMonth>11){drawMonth=0;drawYear++;} +html+='
    '+ +calculateWeek(printDate)+''+ +(otherMonth?(showOtherMonths?printDate.getDate():' '):(unselectable?printDate.getDate():''+printDate.getDate()+''))+'
    ';} +html+=(showStatus?'
    '+initStatus+'
    ':'')+ +(!closeAtTop&&!inst.inline?controls:'')+'
    '+ +($.browser.msie&&parseInt($.browser.version,10)<7&&!inst.inline?'':'');return html;},_generateMonthYearHeader:function(inst,drawMonth,drawYear,minDate,maxDate,selectedDate,secondary,showStatus,initStatus,monthNames){minDate=(inst.rangeStart&&minDate&&selectedDate';for(var month=0;month<12;month++){if((!inMinYear||month>=minDate.getMonth())&&(!inMaxYear||month<=maxDate.getMonth())) +monthHtml+='';} +monthHtml+='';} +if(!showMonthAfterYear) +html+=monthHtml;if(secondary||!this._get(inst,'changeYear')) +html+=drawYear;else{var years=this._get(inst,'yearRange').split(':');var year=0;var endYear=0;if(years.length!=2){year=drawYear-10;endYear=drawYear+10;}else if(years[0].charAt(0)=='+'||years[0].charAt(0)=='-'){year=endYear=new Date().getFullYear();year+=parseInt(years[0],10);endYear+=parseInt(years[1],10);}else{year=parseInt(years[0],10);endYear=parseInt(years[1],10);} +year=(minDate?Math.max(year,minDate.getFullYear()):year);endYear=(maxDate?Math.min(endYear,maxDate.getFullYear()):endYear);html+='';} +if(showMonthAfterYear) +html+=monthHtml;html+='
    ';return html;},_addStatus:function(showStatus,id,text,initStatus){return(showStatus?' onmouseover="jQuery(\'#ui-datepicker-status-'+id+'\').html(\''+(text||initStatus)+'\');" '+'onmouseout="jQuery(\'#ui-datepicker-status-'+id+'\').html(\''+initStatus+'\');"':'');},_adjustInstDate:function(inst,offset,period){var year=inst.drawYear+(period=='Y'?offset:0);var month=inst.drawMonth+(period=='M'?offset:0);var day=Math.min(inst.selectedDay,this._getDaysInMonth(year,month))+ +(period=='D'?offset:0);var date=new Date(year,month,day);var minDate=this._getMinMaxDate(inst,'min',true);var maxDate=this._getMinMaxDate(inst,'max');date=(minDate&&datemaxDate?maxDate:date);inst.selectedDay=date.getDate();inst.drawMonth=inst.selectedMonth=date.getMonth();inst.drawYear=inst.selectedYear=date.getFullYear();if(period=='M'||period=='Y') +this._notifyChange(inst);},_notifyChange:function(inst){var onChange=this._get(inst,'onChangeMonthYear');if(onChange) +onChange.apply((inst.input?inst.input[0]:null),[inst.selectedYear,inst.selectedMonth+1,inst]);},_getNumberOfMonths:function(inst){var numMonths=this._get(inst,'numberOfMonths');return(numMonths==null?[1,1]:(typeof numMonths=='number'?[1,numMonths]:numMonths));},_getMinMaxDate:function(inst,minMax,checkRange){var date=this._determineDate(this._get(inst,minMax+'Date'),null);if(date){date.setHours(0);date.setMinutes(0);date.setSeconds(0);date.setMilliseconds(0);} +return(!checkRange||!inst.rangeStart?date:(!date||inst.rangeStart>date?inst.rangeStart:date));},_getDaysInMonth:function(year,month){return 32-new Date(year,month,32).getDate();},_getFirstDayOfMonth:function(year,month){return new Date(year,month,1).getDay();},_canAdjustMonth:function(inst,offset,curYear,curMonth){var numMonths=this._getNumberOfMonths(inst);var date=new Date(curYear,curMonth+(offset<0?offset:numMonths[1]),1);if(offset<0) +date.setDate(this._getDaysInMonth(date.getFullYear(),date.getMonth()));return this._isInRange(inst,date);},_isInRange:function(inst,date){var newMinDate=(!inst.rangeStart?null:new Date(inst.selectedYear,inst.selectedMonth,inst.selectedDay));newMinDate=(newMinDate&&inst.rangeStart=minDate)&&(!maxDate||date<=maxDate));},_getFormatConfig:function(inst){var shortYearCutoff=this._get(inst,'shortYearCutoff');shortYearCutoff=(typeof shortYearCutoff!='string'?shortYearCutoff:new Date().getFullYear()%100+parseInt(shortYearCutoff,10));return{shortYearCutoff:shortYearCutoff,dayNamesShort:this._get(inst,'dayNamesShort'),dayNames:this._get(inst,'dayNames'),monthNamesShort:this._get(inst,'monthNamesShort'),monthNames:this._get(inst,'monthNames')};},_formatDate:function(inst,day,month,year){if(!day){inst.currentDay=inst.selectedDay;inst.currentMonth=inst.selectedMonth;inst.currentYear=inst.selectedYear;} +var date=(day?(typeof day=='object'?day:new Date(year,month,day)):new Date(inst.currentYear,inst.currentMonth,inst.currentDay));return this.formatDate(this._get(inst,'dateFormat'),date,this._getFormatConfig(inst));}});function extendRemove(target,props){$.extend(target,props);for(var name in props) +if(props[name]==null||props[name]==undefined) +target[name]=props[name];return target;};function isArray(a){return(a&&(($.browser.safari&&typeof a=='object'&&a.length)||(a.constructor&&a.constructor.toString().match(/\Array\(\)/))));};$.fn.datepicker=function(options){if(!$.datepicker.initialized){$(document.body).append($.datepicker.dpDiv).mousedown($.datepicker._checkExternalClick);$.datepicker.initialized=true;} +var otherArgs=Array.prototype.slice.call(arguments,1);if(typeof options=='string'&&(options=='isDisabled'||options=='getDate')) +return $.datepicker['_'+options+'Datepicker'].apply($.datepicker,[this[0]].concat(otherArgs));return this.each(function(){typeof options=='string'?$.datepicker['_'+options+'Datepicker'].apply($.datepicker,[this].concat(otherArgs)):$.datepicker._attachDatepicker(this,options);});};$.datepicker=new Datepicker();$.datepicker.initialized=false;$.datepicker.uuid=new Date().getTime();})(jQuery);(function($){var counter=0;$.widget("ui.magnifier",{_init:function(){var self=this,o=this.options;this.element.addClass("ui-magnifier").bind('click.magnifier',function(e){(!self.disabled&&o.click&&o.click.apply(this,[e,{options:self.options,current:self.current[0],currentOffset:self.current[1]}]));});if(!(/^(r|a)/).test(this.element.css("position"))){this.element.css("position","relative");} +this.items=[];this.element.find(o.items).each(function(){var $this=$(this);self.items.push([this,$this.offset(),[$this.width(),$this.height()],(o.overlap?$this.position():null)]);(o.opacity&&$this.css('opacity',o.opacity.min));});(o.overlap&&$.each(this.items,function(){$(this[0]).css({position:"absolute",top:this[3].top,left:this[3].left});}));this.identifier=++counter;$(document).bind("mousemove.magnifier"+this.identifier,function(e){(self.disabled||self._magnify.apply(self,[e]));});this.pp=this.element.offset();},destroy:function(){this.reset();this.element.removeClass("ui-magnifier ui-magnifier-disabled").unbind(".magnifier");$(document).unbind("mousemove.magnifier"+this.identifier);},disable:function(){this.reset();$.widget.prototype.disable.apply(this,arguments);},reset:function(e){var o=this.options;$.each(this.items,function(){var item=this;$(item[0]).css({width:item[2][0],height:item[2][1],top:(item[3]?item[3].top:0),left:(item[3]?item[3].left:0)});(o.opacity&&$(item[0]).css('opacity',o.opacity.min));(o.zIndex&&$(item[0]).css("z-index",""));});},_magnify:function(e){var p=[e.pageX,e.pageY],o=this.options,c,distance=1;this.current=this.items[0];var overlap=((p[0]>this.pp.left-o.distance)&&(p[0]this.pp.top-o.distance)&&(p[1] *"}});})(jQuery);(function($){$.widget("ui.progressbar",{_init:function(){this._interval=this.options.interval;var self=this,options=this.options,id=(new Date()).getTime()+Math.random(),text=options.text||'0%';this.element.addClass("ui-progressbar").width(options.width);$.extend(this,{active:false,pixelState:0,percentState:0,identifier:id,bar:$('
    ').css({width:'0px',overflow:'hidden',zIndex:100}),textElement:$('
    ').html(text).css({width:'0px',overflow:'hidden'}),textBg:$('
    ').html(text).css({width:this.element.width()}),wrapper:$('
    ')});this.wrapper.append(this.bar.append(this.textElement.addClass(options.textClass)),this.textBg).appendTo(this.element);},plugins:{},ui:function(e){return{instance:this,identifier:this.identifier,options:this.options,element:this.bar,textElement:this.textElement,pixelState:this.pixelState,percentState:this.percentState};},_propagate:function(n,e){$.ui.plugin.call(this,n,[e,this.ui()]);this.element.triggerHandler(n=="progressbar"?n:["progressbar",n].join(""),[e,this.ui()],this.options[n]);},destroy:function(){this.stop();this.element.removeClass("ui-progressbar ui-progressbar-disabled").removeData("progressbar").unbind(".progressbar").find('.ui-progressbar-wrap').remove();delete jQuery.easing[this.identifier];},enable:function(){this.element.removeClass("ui-progressbar-disabled");this.disabled=false;},disable:function(){this.element.addClass("ui-progressbar-disabled");this.disabled=true;},start:function(){var self=this,options=this.options;if(this.disabled){return;} +jQuery.easing[this.identifier]=function(x,t,b,c,d){var inc=options.increment,width=options.width,step=((inc>width?width:inc)/width),state=Math.round(x/step)*step;return state>1?1:state;};self.active=true;setTimeout(function(){self.active=false;},options.duration);this._animate();this._propagate('start',this.ui());return false;},_animate:function(){var self=this,options=this.options,interval=options.interval;this.bar.animate({width:options.width},{duration:interval,easing:this.identifier,step:function(step,b){self.progress((step/options.width)*100);var timestamp=new Date().getTime(),elapsedTime=(timestamp-b.startTime);options.interval=interval-elapsedTime;},complete:function(){delete jQuery.easing[self.identifier];self.pause();if(self.active){}}});},pause:function(){if(this.disabled)return;this.bar.stop();this._propagate('pause',this.ui());},stop:function(){this.bar.stop();this.bar.width(0);this.textElement.width(0);this.bar.addClass('ui-hidden');this.options.interval=this._interval;this._propagate('stop',this.ui());},text:function(text){this.textElement.html(text);this.textBg.html(text);},progress:function(percentState){if(this.bar.is('.ui-hidden')){this.bar.removeClass('ui-hidden');} +this.percentState=percentState>100?100:percentState;this.pixelState=(this.percentState/100)*this.options.width;this.bar.width(this.pixelState);this.textElement.width(this.pixelState);if(this.options.range&&!this.options.text){this.textElement.html(Math.round(this.percentState)+'%');} +this._propagate('progress',this.ui());}});$.ui.progressbar.defaults={width:300,duration:3000,interval:200,increment:1,range:true,text:'',addClass:'',textClass:''};})(jQuery);(function($){$.widget('ui.spinner',{_init:function(){if($.data(this.element[0],'spinner'))return;if(this.options.init){this.options.init(this.ui(null));} +this._decimals=0;if(this.options.stepping.toString().indexOf('.')!=-1){var s=this.options.stepping.toString();this._decimals=s.slice(s.indexOf('.')+1,s.length).length;} +var self=this;this.element.addClass('ui-spinner-box').attr('autocomplete','off');this._setValue(isNaN(this._getValue())?this.options.start:this._getValue());this.element.wrap('
    ').parent().addClass('ui-spinner').append('').find('.ui-spinner-up').bind('mousedown',function(e){$(this).addClass('ui-spinner-pressed');if(!self.counter)self.counter=1;self._mousedown(100,'_up',e);}).bind('mouseup',function(e){$(this).removeClass('ui-spinner-pressed');if(self.counter==1)self._up(e);self._mouseup(e);}).bind('mouseout',function(e){$(this).removeClass('ui-spinner-pressed');self._mouseup(e);}).bind('dblclick',function(e){$(this).removeClass('ui-spinner-pressed');self._up(e);}).bind('keydown.spinner',function(e){var KEYS=$.keyCode;if(e.keyCode==KEYS.SPACE||e.keyCode==KEYS.ENTER){$(this).addClass('ui-spinner-pressed');if(!self.counter)self.counter=1;self._up.call(self,e);}else if(e.keyCode==KEYS.DOWN||e.keyCode==KEYS.RIGHT){self.element.siblings('.ui-spinner-down').focus();}else if(e.keyCode==KEYS.LEFT){self.element.focus();}}).bind('keyup.spinner',function(e){$(this).removeClass('ui-spinner-pressed');self.counter=0;self._propagate('change',e);}).end().append('').find('.ui-spinner-down').bind('mousedown',function(e){$(this).addClass('ui-spinner-pressed');if(!self.counter)self.counter=1;self._mousedown(100,'_down',e);}).bind('mouseup',function(e){$(this).removeClass('ui-spinner-pressed');if(self.counter==1)self._down();self._mouseup(e);}).bind('mouseout',function(e){$(this).removeClass('ui-spinner-pressed');self._mouseup(e);}).bind('dblclick',function(e){$(this).removeClass('ui-spinner-pressed');self._down(e);}).bind('keydown.spinner',function(e){var KEYS=$.keyCode;if(e.keyCode==KEYS.SPACE||e.keyCode==KEYS.ENTER){$(this).addClass('ui-spinner-pressed');if(!self.counter)self.counter=1;self._down.call(self,e);}else if(e.keyCode==KEYS.UP||e.keyCode==KEYS.LEFT){self.element.siblings('.ui-spinner-up').focus();}}).bind('keyup.spinner',function(e){$(this).removeClass('ui-spinner-pressed');self.counter=0;self._propagate('change',e);}).end();this._items=this.element.children().length;if(this._items>1){this.element.addClass('ui-spinner-list').css('height',this.element.outerHeight()/this._items).children().addClass('ui-spinner-listitem').end().parent().css('height',this.element.outerHeight()).end();this.options.stepping=1;this.options.min=0;this.options.max=this._items-1;} +this.element.bind('keydown.spinner',function(e){if(!self.counter)self.counter=1;return self._keydown.call(self,e);}).bind('keyup.spinner',function(e){self.counter=0;self._propagate('change',e);}).bind('blur.spinner',function(e){self._cleanUp();});if($.fn.mousewheel){this.element.mousewheel(function(e,delta){self._mousewheel(e,delta);});}},_constrain:function(){if(this.options.min!=undefined&&this._getValue()this.options.max)this._setValue(this.options.max);},_cleanUp:function(){this._setValue(this._getValue());this._constrain();},_spin:function(d,e){if(this.disabled)return;if(isNaN(this._getValue()))this._setValue(this.options.start);this._setValue(this._getValue()+(d=='up'?1:-1)*(this.options.incremental&&this.counter>100?(this.counter>200?100:10):1)*this.options.stepping);this._animate(d);this._constrain();if(this.counter)this.counter++;this._propagate('spin',e);},_down:function(e){this._spin('down',e);this._propagate('down',e);},_up:function(e){this._spin('up',e);this._propagate('up',e);},_mousedown:function(i,d,e){var self=this;i=i||100;if(this.timer)window.clearInterval(this.timer);this.timer=window.setInterval(function(){self[d](e);if(self.counter>20)self._mousedown(20,d,e);},i);},_mouseup:function(e){this.counter=0;if(this.timer)window.clearInterval(this.timer);this.element[0].focus();this._propagate('change',e);},_keydown:function(e){var KEYS=$.keyCode;if(e.keyCode==KEYS.UP)this._up(e);if(e.keyCode==KEYS.DOWN)this._down(e);if(e.keyCode==KEYS.HOME)this._setValue(this.options.min||this.options.start);if(e.keyCode==KEYS.END&&this.options.max!=undefined)this._setValue(this.options.max);return(e.keyCode==KEYS.TAB||e.keyCode==KEYS.BACKSPACE||e.keyCode==KEYS.LEFT||e.keyCode==KEYS.RIGHT||e.keyCode==KEYS.PERIOD||e.keyCode==KEYS.NUMPAD_DECIMAL||e.keyCode==KEYS.NUMPAD_SUBTRACT||(e.keyCode>=96&&e.keyCode<=105)||(/[0-9\-\.]/).test(String.fromCharCode(e.keyCode)))?true:false;},_mousewheel:function(e,delta){delta=($.browser.opera?-delta/Math.abs(delta):delta);delta>0?this._up(e):this._down(e);e.preventDefault();},_getValue:function(){return parseFloat(this.element.val().replace(/[^0-9\-\.]/g,''));},_setValue:function(newVal){if(isNaN(newVal))newVal=this.options.start;this.element.val(this.options.currency?$.ui.spinner.format.currency(newVal,this.options.currency):$.ui.spinner.format.number(newVal,this._decimals));},_animate:function(d){if(this.element.hasClass('ui-spinner-list')&&((d=='up'&&this._getValue()<=this.options.max)||(d=='down'&&this._getValue()>=this.options.min))){this.element.animate({marginTop:'-'+this._getValue()*this.element.outerHeight()},{duration:'fast',queue:false});}},_addItem:function(html){if(!this.element.is('input')){var wrapper='div';if(this.element.is('ol')||this.element.is('ul')){wrapper='li';} +this.element.append('<'+wrapper+' class="ui-spinner-dyn">'+html+'');}},plugins:{},ui:function(e){return{options:this.options,element:this.element,value:this._getValue(),add:this._addItem};},_propagate:function(n,e){$.ui.plugin.call(this,n,[e,this.ui()]);return this.element.triggerHandler(n=='spin'?n:'spin'+n,[e,this.ui()],this.options[n]);},destroy:function(){if(!$.data(this.element[0],'spinner'))return;if($.fn.mousewheel){this.element.unmousewheel();} +this.element.removeClass('ui-spinner-box ui-spinner-list').removeAttr('disabled').removeAttr('autocomplete').removeData('spinner').unbind('.spinner').siblings().remove().end().children().removeClass('ui-spinner-listitem').remove('.ui-spinner-dyn').end().parent().removeClass('ui-spinner ui-spinner-disabled').before(this.element.clone()).remove().end();},enable:function(){this.element.removeAttr('disabled').siblings().removeAttr('disabled').parent().removeClass('ui-spinner-disabled');this.disabled=false;},disable:function(){this.element.attr('disabled',true).siblings().attr('disabled',true).parent().addClass('ui-spinner-disabled');this.disabled=true;}});$.extend($.ui.spinner,{defaults:{stepping:1,start:0,incremental:true,currency:false},format:{number:function(num,dec){return this.round(num,dec);},currency:function(num,sym){return(num!==Math.abs(num)?'-':'')+sym+this.round(Math.abs(num),2);},round:function(num,dec){var s=Math.round(parseFloat(num)*Math.pow(10,dec))/Math.pow(10,dec);if(dec>0){s=s+((s.toString().indexOf('.')==-1)?'.':'')+'0000000001';s=s.substr(0,s.indexOf('.')+1+dec);}else{s=Math.round(s);} +return s;}}});})(jQuery);;(function($){$.effects=$.effects||{};$.extend($.effects,{save:function(el,set){for(var i=0;i
    ');var wrapper=el.parent();if(el.css('position')=='static'){wrapper.css({position:'relative'});el.css({position:'relative'});}else{var top=el.css('top');if(isNaN(parseInt(top)))top='auto';var left=el.css('left');if(isNaN(parseInt(left)))left='auto';wrapper.css({position:el.css('position'),top:top,left:left,zIndex:el.css('z-index')}).show();el.css({position:'relative',top:0,left:0});} +wrapper.css(props);return wrapper;},removeWrapper:function(el){if(el.parent().attr('id')=='fxWrapper') +return el.parent().replaceWith(el);return el;},setTransition:function(el,list,factor,val){val=val||{};$.each(list,function(i,x){unit=el.cssUnit(x);if(unit[0]>0)val[x]=unit[0]*factor+unit[1];});return val;},animateClass:function(value,duration,easing,callback){var cb=(typeof easing=="function"?easing:(callback?callback:null));var ea=(typeof easing=="object"?easing:null);return this.each(function(){var offset={};var that=$(this);var oldStyleAttr=that.attr("style")||'';if(typeof oldStyleAttr=='object')oldStyleAttr=oldStyleAttr["cssText"];if(value.toggle){that.hasClass(value.toggle)?value.remove=value.toggle:value.add=value.toggle;} +var oldStyle=$.extend({},(document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle));if(value.add)that.addClass(value.add);if(value.remove)that.removeClass(value.remove);var newStyle=$.extend({},(document.defaultView?document.defaultView.getComputedStyle(this,null):this.currentStyle));if(value.add)that.removeClass(value.add);if(value.remove)that.addClass(value.remove);for(var n in newStyle){if(typeof newStyle[n]!="function"&&newStyle[n]&&n.indexOf("Moz")==-1&&n.indexOf("length")==-1&&newStyle[n]!=oldStyle[n]&&(n.match(/color/i)||(!n.match(/color/i)&&!isNaN(parseInt(newStyle[n],10))))&&(oldStyle.position!="static"||(oldStyle.position=="static"&&!n.match(/left|top|bottom|right/))))offset[n]=newStyle[n];} +that.animate(offset,duration,ea,function(){if(typeof $(this).attr("style")=='object'){$(this).attr("style")["cssText"]="";$(this).attr("style")["cssText"]=oldStyleAttr;}else $(this).attr("style",oldStyleAttr);if(value.add)$(this).addClass(value.add);if(value.remove)$(this).removeClass(value.remove);if(cb)cb.apply(this,arguments);});});}});$.fn.extend({_show:$.fn.show,_hide:$.fn.hide,__toggle:$.fn.toggle,_addClass:$.fn.addClass,_removeClass:$.fn.removeClass,_toggleClass:$.fn.toggleClass,effect:function(fx,o,speed,callback){return $.effects[fx]?$.effects[fx].call(this,{method:fx,options:o||{},duration:speed,callback:callback}):null;},show:function(){if(!arguments[0]||(arguments[0].constructor==Number||/(slow|normal|fast)/.test(arguments[0]))) +return this._show.apply(this,arguments);else{var o=arguments[1]||{};o['mode']='show';return this.effect.apply(this,[arguments[0],o,arguments[2]||o.duration,arguments[3]||o.callback]);}},hide:function(){if(!arguments[0]||(arguments[0].constructor==Number||/(slow|normal|fast)/.test(arguments[0]))) +return this._hide.apply(this,arguments);else{var o=arguments[1]||{};o['mode']='hide';return this.effect.apply(this,[arguments[0],o,arguments[2]||o.duration,arguments[3]||o.callback]);}},toggle:function(){if(!arguments[0]||(arguments[0].constructor==Number||/(slow|normal|fast)/.test(arguments[0]))||(arguments[0].constructor==Function)) +return this.__toggle.apply(this,arguments);else{var o=arguments[1]||{};o['mode']='toggle';return this.effect.apply(this,[arguments[0],o,arguments[2]||o.duration,arguments[3]||o.callback]);}},addClass:function(classNames,speed,easing,callback){return speed?$.effects.animateClass.apply(this,[{add:classNames},speed,easing,callback]):this._addClass(classNames);},removeClass:function(classNames,speed,easing,callback){return speed?$.effects.animateClass.apply(this,[{remove:classNames},speed,easing,callback]):this._removeClass(classNames);},toggleClass:function(classNames,speed,easing,callback){return speed?$.effects.animateClass.apply(this,[{toggle:classNames},speed,easing,callback]):this._toggleClass(classNames);},morph:function(remove,add,speed,easing,callback){return $.effects.animateClass.apply(this,[{add:add,remove:remove},speed,easing,callback]);},switchClass:function(){return this.morph.apply(this,arguments);},cssUnit:function(key){var style=this.css(key),val=[];$.each(['em','px','%','pt'],function(i,unit){if(style.indexOf(unit)>0) +val=[parseFloat(style),unit];});return val;}});jQuery.each(['backgroundColor','borderBottomColor','borderLeftColor','borderRightColor','borderTopColor','color','outlineColor'],function(i,attr){jQuery.fx.step[attr]=function(fx){if(fx.state==0){fx.start=getColor(fx.elem,attr);fx.end=getRGB(fx.end);} +fx.elem.style[attr]="rgb("+[Math.max(Math.min(parseInt((fx.pos*(fx.end[0]-fx.start[0]))+fx.start[0]),255),0),Math.max(Math.min(parseInt((fx.pos*(fx.end[1]-fx.start[1]))+fx.start[1]),255),0),Math.max(Math.min(parseInt((fx.pos*(fx.end[2]-fx.start[2]))+fx.start[2]),255),0)].join(",")+")";}});function getRGB(color){var result;if(color&&color.constructor==Array&&color.length==3) +return color;if(result=/rgb\(\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*,\s*([0-9]{1,3})\s*\)/.exec(color)) +return[parseInt(result[1]),parseInt(result[2]),parseInt(result[3])];if(result=/rgb\(\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*,\s*([0-9]+(?:\.[0-9]+)?)\%\s*\)/.exec(color)) +return[parseFloat(result[1])*2.55,parseFloat(result[2])*2.55,parseFloat(result[3])*2.55];if(result=/#([a-fA-F0-9]{2})([a-fA-F0-9]{2})([a-fA-F0-9]{2})/.exec(color)) +return[parseInt(result[1],16),parseInt(result[2],16),parseInt(result[3],16)];if(result=/#([a-fA-F0-9])([a-fA-F0-9])([a-fA-F0-9])/.exec(color)) +return[parseInt(result[1]+result[1],16),parseInt(result[2]+result[2],16),parseInt(result[3]+result[3],16)];if(result=/rgba\(0, 0, 0, 0\)/.exec(color)) +return colors['transparent'] +return colors[jQuery.trim(color).toLowerCase()];} +function getColor(elem,attr){var color;do{color=jQuery.curCSS(elem,attr);if(color!=''&&color!='transparent'||jQuery.nodeName(elem,"body")) +break;attr="backgroundColor";}while(elem=elem.parentNode);return getRGB(color);};var colors={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]};jQuery.easing['jswing']=jQuery.easing['swing'];jQuery.extend(jQuery.easing,{def:'easeOutQuad',swing:function(x,t,b,c,d){return jQuery.easing[jQuery.easing.def](x,t,b,c,d);},easeInQuad:function(x,t,b,c,d){return c*(t/=d)*t+b;},easeOutQuad:function(x,t,b,c,d){return-c*(t/=d)*(t-2)+b;},easeInOutQuad:function(x,t,b,c,d){if((t/=d/2)<1)return c/2*t*t+b;return-c/2*((--t)*(t-2)-1)+b;},easeInCubic:function(x,t,b,c,d){return c*(t/=d)*t*t+b;},easeOutCubic:function(x,t,b,c,d){return c*((t=t/d-1)*t*t+1)+b;},easeInOutCubic:function(x,t,b,c,d){if((t/=d/2)<1)return c/2*t*t*t+b;return c/2*((t-=2)*t*t+2)+b;},easeInQuart:function(x,t,b,c,d){return c*(t/=d)*t*t*t+b;},easeOutQuart:function(x,t,b,c,d){return-c*((t=t/d-1)*t*t*t-1)+b;},easeInOutQuart:function(x,t,b,c,d){if((t/=d/2)<1)return c/2*t*t*t*t+b;return-c/2*((t-=2)*t*t*t-2)+b;},easeInQuint:function(x,t,b,c,d){return c*(t/=d)*t*t*t*t+b;},easeOutQuint:function(x,t,b,c,d){return c*((t=t/d-1)*t*t*t*t+1)+b;},easeInOutQuint:function(x,t,b,c,d){if((t/=d/2)<1)return c/2*t*t*t*t*t+b;return c/2*((t-=2)*t*t*t*t+2)+b;},easeInSine:function(x,t,b,c,d){return-c*Math.cos(t/d*(Math.PI/2))+c+b;},easeOutSine:function(x,t,b,c,d){return c*Math.sin(t/d*(Math.PI/2))+b;},easeInOutSine:function(x,t,b,c,d){return-c/2*(Math.cos(Math.PI*t/d)-1)+b;},easeInExpo:function(x,t,b,c,d){return(t==0)?b:c*Math.pow(2,10*(t/d-1))+b;},easeOutExpo:function(x,t,b,c,d){return(t==d)?b+c:c*(-Math.pow(2,-10*t/d)+1)+b;},easeInOutExpo:function(x,t,b,c,d){if(t==0)return b;if(t==d)return b+c;if((t/=d/2)<1)return c/2*Math.pow(2,10*(t-1))+b;return c/2*(-Math.pow(2,-10*--t)+2)+b;},easeInCirc:function(x,t,b,c,d){return-c*(Math.sqrt(1-(t/=d)*t)-1)+b;},easeOutCirc:function(x,t,b,c,d){return c*Math.sqrt(1-(t=t/d-1)*t)+b;},easeInOutCirc:function(x,t,b,c,d){if((t/=d/2)<1)return-c/2*(Math.sqrt(1-t*t)-1)+b;return c/2*(Math.sqrt(1-(t-=2)*t)+1)+b;},easeInElastic:function(x,t,b,c,d){var s=1.70158;var p=0;var a=c;if(t==0)return b;if((t/=d)==1)return b+c;if(!p)p=d*.3;if(a
    ').css({position:'absolute',visibility:'visible',left:-j*(width/cells),top:-i*(height/rows)}).parent().addClass('effects-explode').css({position:'absolute',overflow:'hidden',width:width/cells,height:height/rows,left:offset.left+j*(width/cells)+(o.options.mode=='show'?(j-Math.floor(cells/2))*(width/cells):0),top:offset.top+i*(height/rows)+(o.options.mode=='show'?(i-Math.floor(rows/2))*(height/rows):0),opacity:o.options.mode=='show'?0:1}).animate({left:offset.left+j*(width/cells)+(o.options.mode=='show'?0:(j-Math.floor(cells/2))*(width/cells)),top:offset.top+i*(height/rows)+(o.options.mode=='show'?0:(i-Math.floor(rows/2))*(height/rows)),opacity:o.options.mode=='show'?1:0},o.duration||500);}} +setTimeout(function(){o.options.mode=='show'?el.css({visibility:'visible'}):el.css({visibility:'visible'}).hide();if(o.callback)o.callback.apply(el[0]);el.dequeue();$('.effects-explode').remove();},o.duration||500);});};})(jQuery);(function($){$.effects.fold=function(o){return this.queue(function(){var el=$(this),props=['position','top','left'];var mode=$.effects.setMode(el,o.options.mode||'hide');var size=o.options.size||15;var horizFirst=!(!o.options.horizFirst);$.effects.save(el,props);el.show();var wrapper=$.effects.createWrapper(el).css({overflow:'hidden'});var widthFirst=((mode=='show')!=horizFirst);var ref=widthFirst?['width','height']:['height','width'];var distance=widthFirst?[wrapper.width(),wrapper.height()]:[wrapper.height(),wrapper.width()];var percent=/([0-9]+)%/.exec(size);if(percent)size=parseInt(percent[1])/100*distance[mode=='hide'?0:1];if(mode=='show')wrapper.css(horizFirst?{height:0,width:size}:{height:size,width:0});var animation1={},animation2={};animation1[ref[0]]=mode=='show'?distance[0]:size;animation2[ref[1]]=mode=='show'?distance[1]:0;wrapper.animate(animation1,o.duration/2,o.options.easing).animate(animation2,o.duration/2,o.options.easing,function(){if(mode=='hide')el.hide();$.effects.restore(el,props);$.effects.removeWrapper(el);if(o.callback)o.callback.apply(el[0],arguments);el.dequeue();});});};})(jQuery);;(function($){$.effects.highlight=function(o){return this.queue(function(){var el=$(this),props=['backgroundImage','backgroundColor','opacity'];var mode=$.effects.setMode(el,o.options.mode||'show');var color=o.options.color||"#ffff99";var oldColor=el.css("backgroundColor");$.effects.save(el,props);el.show();el.css({backgroundImage:'none',backgroundColor:color});var animation={backgroundColor:oldColor};if(mode=="hide")animation['opacity']=0;el.animate(animation,{queue:false,duration:o.duration,easing:o.options.easing,complete:function(){if(mode=="hide")el.hide();$.effects.restore(el,props);if(mode=="show"&&jQuery.browser.msie)this.style.removeAttribute('filter');if(o.callback)o.callback.apply(this,arguments);el.dequeue();}});});};})(jQuery);(function($){$.effects.pulsate=function(o){return this.queue(function(){var el=$(this);var mode=$.effects.setMode(el,o.options.mode||'show');var times=o.options.times||5;if(mode=='hide')times--;if(el.is(':hidden')){el.css('opacity',0);el.show();el.animate({opacity:1},o.duration/2,o.options.easing);times=times-2;} +for(var i=0;i
').appendTo(document.body);if(o.options.className)transfer.addClass(o.options.className);transfer.addClass(o.options.className);transfer.css({top:position.top,left:position.left,height:el.outerHeight()-parseInt(transfer.css('borderTopWidth'))-parseInt(transfer.css('borderBottomWidth')),width:el.outerWidth()-parseInt(transfer.css('borderLeftWidth'))-parseInt(transfer.css('borderRightWidth')),position:'absolute'});position=target.offset();animation={top:position.top,left:position.left,height:target.outerHeight()-parseInt(transfer.css('borderTopWidth'))-parseInt(transfer.css('borderBottomWidth')),width:target.outerWidth()-parseInt(transfer.css('borderLeftWidth'))-parseInt(transfer.css('borderRightWidth'))};transfer.animate(animation,o.duration,o.options.easing,function(){transfer.remove();if(o.callback)o.callback.apply(el[0],arguments);el.dequeue();});});};})(jQuery); +// load progress bar +myBar.loaded('jquery-ui-all.min.js'); diff --git a/xCAT-UI/js/jquery.form.js b/xCAT-UI/js/jquery.form.js new file mode 100644 index 000000000..eef237cd5 --- /dev/null +++ b/xCAT-UI/js/jquery.form.js @@ -0,0 +1,639 @@ +/* + * jQuery Form Plugin + * version: 2.24 (10-MAR-2009) + * @requires jQuery v1.2.2 or later + * + * Examples and documentation at: http://malsup.com/jquery/form/ + * Dual licensed under the MIT and GPL licenses: + * http://www.opensource.org/licenses/mit-license.php + * http://www.gnu.org/licenses/gpl.html + */ +;(function($) { + +/* + Usage Note: + ----------- + Do not use both ajaxSubmit and ajaxForm on the same form. These + functions are intended to be exclusive. Use ajaxSubmit if you want + to bind your own submit handler to the form. For example, + + $(document).ready(function() { + $('#myForm').bind('submit', function() { + $(this).ajaxSubmit({ + target: '#output' + }); + return false; // <-- important! + }); + }); + + Use ajaxForm when you want the plugin to manage all the event binding + for you. For example, + + $(document).ready(function() { + $('#myForm').ajaxForm({ + target: '#output' + }); + }); + + When using ajaxForm, the ajaxSubmit function will be invoked for you + at the appropriate time. +*/ + +/** + * ajaxSubmit() provides a mechanism for immediately submitting + * an HTML form using AJAX. + */ +$.fn.ajaxSubmit = function(options) { + // fast fail if nothing selected (http://dev.jquery.com/ticket/2752) + if (!this.length) { + log('ajaxSubmit: skipping submit process - no element selected'); + return this; + } + + if (typeof options == 'function') + options = { success: options }; + + // clean url (don't include hash vaue) + var url = this.attr('action') || window.location.href; + url = (url.match(/^([^#]+)/)||[])[1]; + url = url || ''; + + options = $.extend({ + url: url, + type: this.attr('method') || 'GET' + }, options || {}); + + // hook for manipulating the form data before it is extracted; + // convenient for use with rich editors like tinyMCE or FCKEditor + var veto = {}; + this.trigger('form-pre-serialize', [this, options, veto]); + if (veto.veto) { + log('ajaxSubmit: submit vetoed via form-pre-serialize trigger'); + return this; + } + + // provide opportunity to alter form data before it is serialized + if (options.beforeSerialize && options.beforeSerialize(this, options) === false) { + log('ajaxSubmit: submit aborted via beforeSerialize callback'); + return this; + } + + var a = this.formToArray(options.semantic); + if (options.data) { + options.extraData = options.data; + for (var n in options.data) { + if(options.data[n] instanceof Array) { + for (var k in options.data[n]) + a.push( { name: n, value: options.data[n][k] } ); + } + else + a.push( { name: n, value: options.data[n] } ); + } + } + + // give pre-submit callback an opportunity to abort the submit + if (options.beforeSubmit && options.beforeSubmit(a, this, options) === false) { + log('ajaxSubmit: submit aborted via beforeSubmit callback'); + return this; + } + + // fire vetoable 'validate' event + this.trigger('form-submit-validate', [a, this, options, veto]); + if (veto.veto) { + log('ajaxSubmit: submit vetoed via form-submit-validate trigger'); + return this; + } + + var q = $.param(a); + + if (options.type.toUpperCase() == 'GET') { + options.url += (options.url.indexOf('?') >= 0 ? '&' : '?') + q; + options.data = null; // data is null for 'get' + } + else + options.data = q; // data is the query string for 'post' + + var $form = this, callbacks = []; + if (options.resetForm) callbacks.push(function() { $form.resetForm(); }); + if (options.clearForm) callbacks.push(function() { $form.clearForm(); }); + + // perform a load on the target only if dataType is not provided + if (!options.dataType && options.target) { + var oldSuccess = options.success || function(){}; + callbacks.push(function(data) { + $(options.target).html(data).each(oldSuccess, arguments); + }); + } + else if (options.success) + callbacks.push(options.success); + + options.success = function(data, status) { + for (var i=0, max=callbacks.length; i < max; i++) + callbacks[i].apply(options, [data, status, $form]); + }; + + // are there files to upload? + var files = $('input:file', this).fieldValue(); + var found = false; + for (var j=0; j < files.length; j++) + if (files[j]) + found = true; + + // options.iframe allows user to force iframe mode + if (options.iframe || found) { + // hack to fix Safari hang (thanks to Tim Molendijk for this) + // see: http://groups.google.com/group/jquery-dev/browse_thread/thread/36395b7ab510dd5d + if (options.closeKeepAlive) + $.get(options.closeKeepAlive, fileUpload); + else + fileUpload(); + } + else + $.ajax(options); + + // fire 'notify' event + this.trigger('form-submit-notify', [this, options]); + return this; + + + // private function for handling file uploads (hat tip to YAHOO!) + function fileUpload() { + var form = $form[0]; + + if ($(':input[name=submit]', form).length) { + alert('Error: Form elements must not be named "submit".'); + return; + } + + var opts = $.extend({}, $.ajaxSettings, options); + var s = jQuery.extend(true, {}, $.extend(true, {}, $.ajaxSettings), opts); + + var id = 'jqFormIO' + (new Date().getTime()); + var $io = $('