From 1049080df53fd36168650bdd626784972df30227 Mon Sep 17 00:00:00 2001 From: Diogo Cordeiro Date: Fri, 20 Jul 2018 23:00:18 -0600 Subject: [PATCH] [CORE] Move public resources to a /public directory Advantages: * Increases security by preventing direct access to file/ * We are careful and have a defined('GNUSOCIAL') || die() to prevent direct access to GS files, but we may miss one or a vendor/extlib may not be as careful * Improves directory structure - It's more natural to physically separate what is public from what are GNU social resources --- index.php | 325 - install.php | 417 - js/emailsettings.js | 23 - js/extlib/jquery-jcrop/css/Jcrop.gif | 1 - js/extlib/jquery-jcrop/css/jcrop.css | 167 - js/extlib/jquery-jcrop/css/jcrop.min.css | 29 - js/extlib/jquery-jcrop/jcrop.js | 1694 -- .../images/ui-bg_flat_0_aaaaaa_40x100.png | Bin 212 -> 0 bytes .../images/ui-bg_flat_75_ffffff_40x100.png | Bin 208 -> 0 bytes .../images/ui-bg_glass_55_fbf9ee_1x400.png | Bin 335 -> 0 bytes .../images/ui-bg_glass_65_ffffff_1x400.png | Bin 207 -> 0 bytes .../images/ui-bg_glass_75_dadada_1x400.png | Bin 262 -> 0 bytes .../images/ui-bg_glass_75_e6e6e6_1x400.png | Bin 262 -> 0 bytes .../images/ui-bg_glass_95_fef1ec_1x400.png | Bin 332 -> 0 bytes .../ui-bg_highlight-soft_75_cccccc_1x100.png | Bin 280 -> 0 bytes .../images/ui-icons_222222_256x240.png | Bin 6922 -> 0 bytes .../images/ui-icons_2e83ff_256x240.png | Bin 4549 -> 0 bytes .../images/ui-icons_454545_256x240.png | Bin 6992 -> 0 bytes .../images/ui-icons_888888_256x240.png | Bin 6999 -> 0 bytes .../images/ui-icons_cd0a0a_256x240.png | Bin 4549 -> 0 bytes .../jquery-ui/css/smoothness/jquery-ui.css | 1225 -- js/extlib/jquery-ui/jquery-ui.js | 16607 ---------------- js/extlib/jquery.cookie.js | 117 - js/extlib/jquery.form.js | 1277 -- js/extlib/jquery.js | 9209 --------- js/identica-badge.js | 367 - js/install.js | 18 - js/jcrop.go.js | 50 - js/util.js | 1691 -- js/xbImportNode.js | 47 - plugins/ActivitySpam/icons/bullet_black.png | Bin 211 -> 0 bytes plugins/ActivitySpam/icons/exclamation.png | Bin 701 -> 0 bytes plugins/Autocomplete/js/autocomplete.go.js | 137 - plugins/Bookmark/bookmarklet | 9 - plugins/Bookmark/bookmarkpopup.js | 30 - plugins/Bookmark/css/bookmark.css | 134 - plugins/Bookmark/js/bookmark.js | 36 - plugins/ClientSideShorten/shorten.js | 77 - plugins/Comet/js/cometupdate.js | 27 - plugins/Comet/js/jquery.comet.js | 1451 -- .../jquery.DirectionDetector.js | 72 - plugins/Directory/css/directory.css | 60 - .../Directory/images/control_arrow_down.gif | Bin 110 -> 0 bytes plugins/Directory/images/control_arrow_up.gif | Bin 111 -> 0 bytes plugins/DomainWhitelist/js/whitelistinvite.js | 72 - plugins/Event/css/event.css | 126 - plugins/Event/js/event.js | 144 - plugins/ExtendedProfile/css/profiledetail.css | 165 - plugins/ExtendedProfile/js/profiledetail.js | 144 - .../GNUsocialPhotos/res/gnusocialphotos.js | 29 - plugins/GNUsocialPhotos/res/style.css | 14 - .../GNUsocialProfileExtensions/js/profile.js | 4 - .../res/bgstripe.gif | Bin 36 -> 0 bytes .../GNUsocialProfileExtensions/res/style.css | 23 - plugins/InfiniteScroll/ajax-loader.gif | Bin 10819 -> 0 bytes plugins/InfiniteScroll/infinitescroll.js | 161 - .../InfiniteScroll/jquery.infinitescroll.js | 261 - .../jquery.infinitescroll.min.js | 8 - .../InfiniteScroll/locale/InfiniteScroll.pot | 27 - .../locale/af/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/ar/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/arz/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/ast/LC_MESSAGES/InfiniteScroll.po | 27 - .../be-tarask/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/bg/LC_MESSAGES/InfiniteScroll.po | 27 - .../bn_IN/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/br/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/ca/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/cs/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/da/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/de/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/el/LC_MESSAGES/InfiniteScroll.po | 27 - .../en_GB/LC_MESSAGES/InfiniteScroll.po | 28 - .../locale/eo/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/es/LC_MESSAGES/InfiniteScroll.po | 28 - .../locale/eu/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/fa/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/fi/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/fr/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/fur/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/gl/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/he/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/hsb/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/hu/LC_MESSAGES/InfiniteScroll.po | 27 - .../hy_AM/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/ia/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/id/LC_MESSAGES/InfiniteScroll.po | 28 - .../locale/io/LC_MESSAGES/InfiniteScroll.po | 29 - .../locale/is/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/it/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/ja/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/ka/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/ko/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/ksh/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/lb/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/lt/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/lv/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/mg/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/mk/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/ml/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/ms/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/my/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/nb/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/ne/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/nl/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/nn/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/pl/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/pt/LC_MESSAGES/InfiniteScroll.po | 27 - .../pt_BR/LC_MESSAGES/InfiniteScroll.po | 27 - .../ro_RO/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/ru/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/sl/LC_MESSAGES/InfiniteScroll.po | 27 - .../sr-ec/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/sv/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/ta/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/te/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/tl/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/tr/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/uk/LC_MESSAGES/InfiniteScroll.po | 27 - .../ur_PK/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/vi/LC_MESSAGES/InfiniteScroll.po | 27 - .../locale/zh/LC_MESSAGES/InfiniteScroll.po | 27 - .../zh_CN/LC_MESSAGES/InfiniteScroll.po | 27 - .../zh_TW/LC_MESSAGES/InfiniteScroll.po | 27 - plugins/LinkPreview/js/linkpreview.js | 270 - plugins/Mapstraction/OpenLayers/Makefile | 15 - plugins/Mapstraction/OpenLayers/OpenLayers.js | 1 - plugins/Mapstraction/OpenLayers/README | 14 - plugins/Mapstraction/OpenLayers/img/blank.gif | Bin 42 -> 0 bytes .../OpenLayers/img/cloud-popup-relative.png | Bin 3177 -> 0 bytes .../OpenLayers/img/drag-rectangle-off.png | Bin 1202 -> 0 bytes .../OpenLayers/img/drag-rectangle-on.png | Bin 1218 -> 0 bytes .../Mapstraction/OpenLayers/img/east-mini.png | Bin 451 -> 0 bytes .../img/layer-switcher-maximize.png | Bin 451 -> 0 bytes .../img/layer-switcher-minimize.png | Bin 249 -> 0 bytes .../OpenLayers/img/marker-blue.png | Bin 992 -> 0 bytes .../OpenLayers/img/marker-gold.png | Bin 831 -> 0 bytes .../OpenLayers/img/marker-green.png | Bin 967 -> 0 bytes .../Mapstraction/OpenLayers/img/marker.png | Bin 606 -> 0 bytes .../OpenLayers/img/measuring-stick-off.png | Bin 3343 -> 0 bytes .../OpenLayers/img/measuring-stick-on.png | Bin 3816 -> 0 bytes .../OpenLayers/img/north-mini.png | Bin 484 -> 0 bytes .../OpenLayers/img/panning-hand-off.png | Bin 3875 -> 0 bytes .../OpenLayers/img/panning-hand-on.png | Bin 3977 -> 0 bytes .../Mapstraction/OpenLayers/img/slider.png | Bin 285 -> 0 bytes .../OpenLayers/img/south-mini.png | Bin 481 -> 0 bytes .../Mapstraction/OpenLayers/img/west-mini.png | Bin 453 -> 0 bytes .../OpenLayers/img/zoom-minus-mini.png | Bin 359 -> 0 bytes .../OpenLayers/img/zoom-plus-mini.png | Bin 489 -> 0 bytes .../OpenLayers/img/zoom-world-mini.png | Bin 1072 -> 0 bytes .../Mapstraction/OpenLayers/img/zoombar.png | Bin 463 -> 0 bytes plugins/Mapstraction/OpenLayers/statusnet.cfg | 43 - .../OpenLayers/theme/default/framedCloud.css | 0 .../OpenLayers/theme/default/ie6-style.css | 7 - .../theme/default/img/add_point_off.png | Bin 1616 -> 0 bytes .../theme/default/img/add_point_on.png | Bin 1464 -> 0 bytes .../OpenLayers/theme/default/img/blank.gif | Bin 42 -> 0 bytes .../OpenLayers/theme/default/img/close.gif | Bin 1078 -> 0 bytes .../theme/default/img/drag-rectangle-off.png | Bin 1202 -> 0 bytes .../theme/default/img/drag-rectangle-on.png | Bin 1218 -> 0 bytes .../theme/default/img/draw_line_off.png | Bin 1567 -> 0 bytes .../theme/default/img/draw_line_on.png | Bin 1399 -> 0 bytes .../theme/default/img/draw_point_off.png | Bin 1612 -> 0 bytes .../theme/default/img/draw_point_on.png | Bin 1460 -> 0 bytes .../theme/default/img/draw_polygon_off.png | Bin 1546 -> 0 bytes .../theme/default/img/draw_polygon_on.png | Bin 1407 -> 0 bytes .../theme/default/img/editing_tool_bar.png | Bin 3901 -> 0 bytes .../theme/default/img/move_feature_off.png | Bin 1543 -> 0 bytes .../theme/default/img/move_feature_on.png | Bin 1379 -> 0 bytes .../theme/default/img/navigation_history.png | Bin 7021 -> 0 bytes .../default/img/overview_replacement.gif | Bin 79 -> 0 bytes .../theme/default/img/pan-panel-NOALPHA.png | Bin 566 -> 0 bytes .../theme/default/img/pan-panel.png | Bin 1287 -> 0 bytes .../OpenLayers/theme/default/img/pan_off.png | Bin 1696 -> 0 bytes .../OpenLayers/theme/default/img/pan_on.png | Bin 1568 -> 0 bytes .../theme/default/img/panning-hand-off.png | Bin 3875 -> 0 bytes .../theme/default/img/panning-hand-on.png | Bin 3977 -> 0 bytes .../theme/default/img/remove_point_off.png | Bin 1612 -> 0 bytes .../theme/default/img/remove_point_on.png | Bin 1464 -> 0 bytes .../OpenLayers/theme/default/img/ruler.png | Bin 1211 -> 0 bytes .../theme/default/img/save_features_off.png | Bin 357 -> 0 bytes .../theme/default/img/save_features_on.png | Bin 364 -> 0 bytes .../theme/default/img/view_next_off.png | Bin 1644 -> 0 bytes .../theme/default/img/view_next_on.png | Bin 1686 -> 0 bytes .../theme/default/img/view_previous_off.png | Bin 1553 -> 0 bytes .../theme/default/img/view_previous_on.png | Bin 1592 -> 0 bytes .../theme/default/img/zoom-panel-NOALPHA.png | Bin 1173 -> 0 bytes .../theme/default/img/zoom-panel.png | Bin 1624 -> 0 bytes .../OpenLayers/theme/default/style.css | 389 - .../Mapstraction/js/mxn.(provider).core.js | 289 - plugins/Mapstraction/js/mxn.cloudmade.core.js | 357 - plugins/Mapstraction/js/mxn.core.js | 1755 -- .../Mapstraction/js/mxn.geocommons.core.js | 230 - plugins/Mapstraction/js/mxn.js | 482 - plugins/Mapstraction/js/mxn.microsoft.core.js | 402 - .../Mapstraction/js/mxn.openlayers.core.js | 485 - plugins/Mapstraction/js/mxn.yahoo.core.js | 391 - plugins/Mapstraction/usermap.js | 108 - plugins/Meteor/js/meteorupdater.js | 21 - plugins/MobileProfile/mp-handheld.css | 1 - plugins/MobileProfile/mp-screen.css | 353 - plugins/ModPlus/css/modplus.css | 18 - plugins/ModPlus/js/modplus.js | 39 - plugins/OStatus/images/24px-Feed-icon.svg.png | Bin 1204 -> 0 bytes plugins/OStatus/images/48px-Feed-icon.svg.png | Bin 2434 -> 0 bytes plugins/OStatus/images/96px-Feed-icon.svg.png | Bin 5440 -> 0 bytes plugins/OStatus/images/README | 5 - plugins/OStatus/js/ostatus.js | 90 - plugins/OStatus/theme/base/css/ostatus.css | 39 - plugins/Oembed/css/oembed.css | 15 - plugins/OpenID/icons/openid-16x16.gif | Bin 328 -> 0 bytes plugins/Orbited/js/orbitedextra.js | 2 - plugins/Orbited/js/orbitedupdater.js | 24 - plugins/Poll/css/poll.css | 20 - plugins/QnA/css/qna.css | 153 - plugins/QnA/js/qna.js | 360 - plugins/Realtime/css/realtimeupdate.css | 76 - plugins/Realtime/js/realtimeupdate.js | 644 - plugins/SensitiveContent/img/blocker.png | Bin 32222 -> 0 bytes .../SensitiveContent/js/sensitivecontent.js | 228 - plugins/ShareNotice/css/README | 9 - plugins/ShareNotice/css/icon-facebook.png | Bin 312 -> 0 bytes plugins/ShareNotice/css/icon-share.png | Bin 3838 -> 0 bytes plugins/ShareNotice/css/icon-statusnet.png | Bin 488 -> 0 bytes plugins/ShareNotice/css/icon-twitter.png | Bin 469 -> 0 bytes plugins/ShareNotice/css/sharenotice.css | 23 - plugins/SubMirror/css/mirrorsettings.css | 26 - .../SubMirror/images/providers/facebook.png | Bin 958 -> 0 bytes plugins/SubMirror/images/providers/feed.png | Bin 2434 -> 0 bytes .../SubMirror/images/providers/linkedin.png | Bin 2100 -> 0 bytes .../SubMirror/images/providers/statusnet.png | Bin 6168 -> 0 bytes .../SubMirror/images/providers/wordpress.png | Bin 4861 -> 0 bytes plugins/SubMirror/js/mirrorsettings.js | 47 - plugins/TabFocus/tabfocus.js | 7 - .../icons/twitter-bird-white-on-blue.png | Bin 433 -> 0 bytes .../apple-touch-icon.png | Bin favicon.ico => public/favicon.ico | Bin public/index.php | 78 +- public/theme/base/css/display.css | 1 + theme/README | 8 - theme/base/css/display.css | 2697 --- theme/base/css/rtl.css | 1 - theme/base/css/uap.css | 54 - theme/base/default-avatar-mini.png | Bin 1000 -> 0 bytes theme/base/default-avatar-profile.png | Bin 6350 -> 0 bytes theme/base/default-avatar-stream.png | Bin 2545 -> 0 bytes theme/base/images/icons/README | 60 - theme/base/images/icons/activitystreams.png | Bin 823 -> 0 bytes theme/base/images/icons/arrow_right.png | Bin 271 -> 0 bytes theme/base/images/icons/icon_atom.png | Bin 807 -> 0 bytes theme/base/images/icons/icon_foaf.gif | Bin 1144 -> 0 bytes theme/base/images/icons/icon_processing.gif | Bin 673 -> 0 bytes theme/base/images/icons/icon_rss.png | Bin 763 -> 0 bytes theme/base/images/icons/icon_vcard.gif | Bin 331 -> 0 bytes theme/base/images/icons/icons-01.gif | Bin 4107 -> 0 bytes theme/base/images/icons/lock.png | Bin 749 -> 0 bytes theme/base/images/icons/lock_open.png | Bin 727 -> 0 bytes .../base/images/icons/twotone/green/admin.gif | Bin 100 -> 0 bytes .../images/icons/twotone/green/against.gif | Bin 85 -> 0 bytes .../images/icons/twotone/green/arrow-left.gif | Bin 73 -> 0 bytes .../icons/twotone/green/arrow-right.gif | Bin 74 -> 0 bytes .../base/images/icons/twotone/green/badge.gif | Bin 105 -> 0 bytes .../images/icons/twotone/green/checkmark.gif | Bin 76 -> 0 bytes .../base/images/icons/twotone/green/clear.gif | Bin 82 -> 0 bytes .../images/icons/twotone/green/clip-01.gif | Bin 78 -> 0 bytes .../images/icons/twotone/green/clip-02.gif | Bin 70 -> 0 bytes .../icons/twotone/green/disfavourite.gif | Bin 88 -> 0 bytes .../base/images/icons/twotone/green/edit.gif | Bin 75 -> 0 bytes .../images/icons/twotone/green/favourite.gif | Bin 73 -> 0 bytes .../base/images/icons/twotone/green/flag.gif | Bin 80 -> 0 bytes theme/base/images/icons/twotone/green/key.gif | Bin 76 -> 0 bytes .../base/images/icons/twotone/green/mail.gif | Bin 82 -> 0 bytes .../base/images/icons/twotone/green/minus.gif | Bin 90 -> 0 bytes .../base/images/icons/twotone/green/news.gif | Bin 76 -> 0 bytes .../base/images/icons/twotone/green/plus.gif | Bin 74 -> 0 bytes .../base/images/icons/twotone/green/quote.gif | Bin 79 -> 0 bytes .../images/icons/twotone/green/recycle-02.gif | Bin 77 -> 0 bytes .../images/icons/twotone/green/recycle.gif | Bin 87 -> 0 bytes .../base/images/icons/twotone/green/reply.gif | Bin 79 -> 0 bytes .../images/icons/twotone/green/sandbox.gif | Bin 104 -> 0 bytes .../images/icons/twotone/green/shield.gif | Bin 85 -> 0 bytes .../images/icons/twotone/green/silence.gif | Bin 103 -> 0 bytes .../base/images/icons/twotone/green/skull.gif | Bin 85 -> 0 bytes .../base/images/icons/twotone/green/trash.gif | Bin 77 -> 0 bytes theme/base/images/icons/twotone/green/x.gif | Bin 79 -> 0 bytes theme/base/logo.png | Bin 11740 -> 0 bytes theme/base/mobilelogo.png | Bin 990 -> 0 bytes theme/licenses/cc_by-sa_3.0_80x15.png | Bin 672 -> 0 bytes theme/licenses/cc_by_3.0_80x15.png | Bin 640 -> 0 bytes theme/neo-blue/css/display.css | 73 - theme/neo-blue/css/mp-screen.css | 129 - theme/neo-blue/default-avatar-mini.png | Bin 1000 -> 0 bytes theme/neo-blue/default-avatar-profile.png | Bin 6350 -> 0 bytes theme/neo-blue/default-avatar-stream.png | Bin 2545 -> 0 bytes theme/neo-blue/logo.png | Bin 3617 -> 0 bytes theme/neo-blue/mobilelogo.png | Bin 1309 -> 0 bytes theme/neo-blue/theme.ini | 1 - theme/neo-gnu/README | 9 - theme/neo-gnu/css/display.css | 1427 -- theme/neo-gnu/css/mp-screen.css | 123 - theme/neo-gnu/css/rtl.css | 326 - theme/neo-gnu/default-avatar-mini.png | Bin 933 -> 0 bytes theme/neo-gnu/default-avatar-profile.png | Bin 4212 -> 0 bytes theme/neo-gnu/default-avatar-stream.png | Bin 2013 -> 0 bytes theme/neo-gnu/default-avatar.svg | 29 - theme/neo-gnu/favicon.ico | Bin 1150 -> 0 bytes theme/neo-gnu/images/bg.png | Bin 93458 -> 0 bytes theme/neo-gnu/images/bg.png.stripes | Bin 207 -> 0 bytes theme/neo-gnu/images/bg_paper.png | Bin 93458 -> 0 bytes theme/neo-gnu/images/bluearrow_down.png | Bin 381 -> 0 bytes theme/neo-gnu/images/bluearrow_up.png | Bin 349 -> 0 bytes theme/neo-gnu/images/brdr_black_dot.png | Bin 115 -> 0 bytes theme/neo-gnu/images/brdr_white_dot.png | Bin 114 -> 0 bytes theme/neo-gnu/images/lightbox_bg.png | Bin 189 -> 0 bytes theme/neo-gnu/images/lock.png | Bin 749 -> 0 bytes theme/neo-gnu/images/lock_open.png | Bin 727 -> 0 bytes theme/neo-gnu/images/magnifier.png | Bin 615 -> 0 bytes theme/neo-gnu/images/resultset_next.png | Bin 395 -> 0 bytes theme/neo-gnu/images/rosette.png | Bin 673 -> 0 bytes theme/neo-gnu/images/tick.png | Bin 537 -> 0 bytes theme/neo-gnu/logo.png | Bin 6502 -> 0 bytes theme/neo-gnu/logo.svg | 153 - theme/neo-gnu/mobilelogo.png | Bin 2223 -> 0 bytes theme/neo-gnu/theme.ini | 1 - theme/neo-light/css/display.css | 44 - theme/neo-light/css/mp-screen.css | 125 - theme/neo-light/default-avatar-mini.png | Bin 1000 -> 0 bytes theme/neo-light/default-avatar-profile.png | Bin 6350 -> 0 bytes theme/neo-light/default-avatar-stream.png | Bin 2545 -> 0 bytes theme/neo-light/logo.png | Bin 3617 -> 0 bytes theme/neo-light/mobilelogo.png | Bin 1309 -> 0 bytes theme/neo-light/theme.ini | 1 - theme/neo-quitter/LICENSE | 661 - theme/neo-quitter/README.md | 47 - theme/neo-quitter/css/display.css | 2074 -- .../neo-quitter/css/genericons/Genericons.eot | Bin 22760 -> 0 bytes .../neo-quitter/css/genericons/Genericons.svg | 543 - .../neo-quitter/css/genericons/Genericons.ttf | Bin 22576 -> 0 bytes .../css/genericons/Genericons.woff | Bin 14360 -> 0 bytes .../neo-quitter/css/genericons/genericons.css | 207 - theme/neo-quitter/css/mp-screen.css | 123 - theme/neo-quitter/css/rtl.css | 314 - theme/neo-quitter/default-avatar-mini.png | Bin 1535 -> 0 bytes theme/neo-quitter/default-avatar-profile.png | Bin 9113 -> 0 bytes theme/neo-quitter/default-avatar-stream.png | Bin 3907 -> 0 bytes theme/neo-quitter/favicon.ico | Bin 1150 -> 0 bytes theme/neo-quitter/fonts/FontAwesome.otf | Bin 85908 -> 0 bytes .../neo-quitter/fonts/fontawesome-webfont.eot | Bin 56006 -> 0 bytes .../neo-quitter/fonts/fontawesome-webfont.svg | 520 - .../neo-quitter/fonts/fontawesome-webfont.ttf | Bin 112160 -> 0 bytes .../fonts/fontawesome-webfont.woff | Bin 65452 -> 0 bytes theme/neo-quitter/icons-hires-quitter.ai | 737 - theme/neo-quitter/icons-hires-quitter.png | Bin 17696 -> 0 bytes theme/neo-quitter/icons-hires.ai | 855 - theme/neo-quitter/icons-hires.png | Bin 17312 -> 0 bytes theme/neo-quitter/images/bg.png | Bin 207 -> 0 bytes theme/neo-quitter/images/bluearrow_down.png | Bin 381 -> 0 bytes theme/neo-quitter/images/bluearrow_up.png | Bin 349 -> 0 bytes theme/neo-quitter/images/brdr_black_dot.png | Bin 115 -> 0 bytes theme/neo-quitter/images/brdr_white_dot.png | Bin 114 -> 0 bytes theme/neo-quitter/images/lightbox_bg.png | Bin 189 -> 0 bytes theme/neo-quitter/images/magnifier.png | Bin 615 -> 0 bytes theme/neo-quitter/images/resultset_next.png | Bin 395 -> 0 bytes theme/neo-quitter/images/rosette.png | Bin 673 -> 0 bytes theme/neo-quitter/images/tick.png | Bin 537 -> 0 bytes theme/neo-quitter/logo.png | Bin 2361 -> 0 bytes theme/neo-quitter/mobilelogo.png | Bin 1115 -> 0 bytes theme/neo-quitter/quitterclassiclogo.ai | 1453 -- theme/neo-quitter/quitterclassiclogo.png | Bin 9277 -> 0 bytes theme/neo-quitter/theme.ini | 1 - theme/neo/README | 10 - theme/neo/css/display.css | 1055 - theme/neo/css/mp-screen.css | 123 - theme/neo/css/rtl.css | 314 - theme/neo/default-avatar-mini.png | Bin 1000 -> 0 bytes theme/neo/default-avatar-profile.png | Bin 6350 -> 0 bytes theme/neo/default-avatar-stream.png | Bin 2545 -> 0 bytes theme/neo/fonts/lato-bold-webfont.eot | Bin 33202 -> 0 bytes theme/neo/fonts/lato-bold-webfont.svg | 297 - theme/neo/fonts/lato-bold-webfont.ttf | Bin 59412 -> 0 bytes theme/neo/fonts/lato-bold-webfont.woff | Bin 37248 -> 0 bytes theme/neo/fonts/lato-italic-webfont.eot | Bin 26336 -> 0 bytes theme/neo/fonts/lato-italic-webfont.svg | 281 - theme/neo/fonts/lato-italic-webfont.ttf | Bin 53652 -> 0 bytes theme/neo/fonts/lato-italic-webfont.woff | Bin 30844 -> 0 bytes theme/neo/fonts/lato-regular-webfont.eot | Bin 33864 -> 0 bytes theme/neo/fonts/lato-regular-webfont.svg | 297 - theme/neo/fonts/lato-regular-webfont.ttf | Bin 60848 -> 0 bytes theme/neo/fonts/lato-regular-webfont.woff | Bin 37908 -> 0 bytes theme/neo/fonts/stylesheet.css | 26 - theme/neo/images/bg.png | Bin 207 -> 0 bytes theme/neo/images/bluearrow_down.png | Bin 381 -> 0 bytes theme/neo/images/bluearrow_up.png | Bin 349 -> 0 bytes theme/neo/images/brdr_black_dot.png | Bin 115 -> 0 bytes theme/neo/images/brdr_white_dot.png | Bin 114 -> 0 bytes theme/neo/images/lightbox_bg.png | Bin 189 -> 0 bytes theme/neo/images/lock.png | Bin 749 -> 0 bytes theme/neo/images/lock_open.png | Bin 727 -> 0 bytes theme/neo/images/magnifier.png | Bin 615 -> 0 bytes theme/neo/images/resultset_next.png | Bin 395 -> 0 bytes theme/neo/images/rosette.png | Bin 673 -> 0 bytes theme/neo/images/tick.png | Bin 537 -> 0 bytes theme/neo/logo.png | Bin 3617 -> 0 bytes theme/neo/mobilelogo.png | Bin 1309 -> 0 bytes theme/neo/theme.ini | 1 - 405 files changed, 45 insertions(+), 60907 deletions(-) delete mode 100644 index.php delete mode 100644 install.php delete mode 100644 js/emailsettings.js delete mode 100644 js/extlib/jquery-jcrop/css/Jcrop.gif delete mode 100644 js/extlib/jquery-jcrop/css/jcrop.css delete mode 100644 js/extlib/jquery-jcrop/css/jcrop.min.css delete mode 100644 js/extlib/jquery-jcrop/jcrop.js delete mode 100644 js/extlib/jquery-ui/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png delete mode 100644 js/extlib/jquery-ui/css/smoothness/images/ui-bg_flat_75_ffffff_40x100.png delete mode 100644 js/extlib/jquery-ui/css/smoothness/images/ui-bg_glass_55_fbf9ee_1x400.png delete mode 100644 js/extlib/jquery-ui/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png delete mode 100644 js/extlib/jquery-ui/css/smoothness/images/ui-bg_glass_75_dadada_1x400.png delete mode 100644 js/extlib/jquery-ui/css/smoothness/images/ui-bg_glass_75_e6e6e6_1x400.png delete mode 100644 js/extlib/jquery-ui/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png delete mode 100644 js/extlib/jquery-ui/css/smoothness/images/ui-bg_highlight-soft_75_cccccc_1x100.png delete mode 100644 js/extlib/jquery-ui/css/smoothness/images/ui-icons_222222_256x240.png delete mode 100644 js/extlib/jquery-ui/css/smoothness/images/ui-icons_2e83ff_256x240.png delete mode 100644 js/extlib/jquery-ui/css/smoothness/images/ui-icons_454545_256x240.png delete mode 100644 js/extlib/jquery-ui/css/smoothness/images/ui-icons_888888_256x240.png delete mode 100644 js/extlib/jquery-ui/css/smoothness/images/ui-icons_cd0a0a_256x240.png delete mode 100644 js/extlib/jquery-ui/css/smoothness/jquery-ui.css delete mode 100644 js/extlib/jquery-ui/jquery-ui.js delete mode 100644 js/extlib/jquery.cookie.js delete mode 100644 js/extlib/jquery.form.js delete mode 100644 js/extlib/jquery.js delete mode 100644 js/identica-badge.js delete mode 100644 js/install.js delete mode 100644 js/jcrop.go.js delete mode 100644 js/util.js delete mode 100644 js/xbImportNode.js delete mode 100644 plugins/ActivitySpam/icons/bullet_black.png delete mode 100644 plugins/ActivitySpam/icons/exclamation.png delete mode 100644 plugins/Autocomplete/js/autocomplete.go.js delete mode 100644 plugins/Bookmark/bookmarklet delete mode 100644 plugins/Bookmark/bookmarkpopup.js delete mode 100644 plugins/Bookmark/css/bookmark.css delete mode 100644 plugins/Bookmark/js/bookmark.js delete mode 100644 plugins/ClientSideShorten/shorten.js delete mode 100644 plugins/Comet/js/cometupdate.js delete mode 100644 plugins/Comet/js/jquery.comet.js delete mode 100644 plugins/DirectionDetector/jquery.DirectionDetector.js delete mode 100644 plugins/Directory/css/directory.css delete mode 100644 plugins/Directory/images/control_arrow_down.gif delete mode 100644 plugins/Directory/images/control_arrow_up.gif delete mode 100644 plugins/DomainWhitelist/js/whitelistinvite.js delete mode 100644 plugins/Event/css/event.css delete mode 100644 plugins/Event/js/event.js delete mode 100644 plugins/ExtendedProfile/css/profiledetail.css delete mode 100644 plugins/ExtendedProfile/js/profiledetail.js delete mode 100644 plugins/GNUsocialPhotos/res/gnusocialphotos.js delete mode 100644 plugins/GNUsocialPhotos/res/style.css delete mode 100644 plugins/GNUsocialProfileExtensions/js/profile.js delete mode 100644 plugins/GNUsocialProfileExtensions/res/bgstripe.gif delete mode 100644 plugins/GNUsocialProfileExtensions/res/style.css delete mode 100644 plugins/InfiniteScroll/ajax-loader.gif delete mode 100644 plugins/InfiniteScroll/infinitescroll.js delete mode 100644 plugins/InfiniteScroll/jquery.infinitescroll.js delete mode 100644 plugins/InfiniteScroll/jquery.infinitescroll.min.js delete mode 100644 plugins/InfiniteScroll/locale/InfiniteScroll.pot delete mode 100644 plugins/InfiniteScroll/locale/af/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/ar/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/arz/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/ast/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/be-tarask/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/bg/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/bn_IN/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/br/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/ca/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/cs/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/da/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/de/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/el/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/en_GB/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/eo/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/es/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/eu/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/fa/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/fi/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/fr/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/fur/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/gl/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/he/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/hsb/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/hu/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/hy_AM/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/ia/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/id/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/io/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/is/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/it/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/ja/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/ka/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/ko/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/ksh/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/lb/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/lt/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/lv/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/mg/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/mk/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/ml/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/ms/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/my/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/nb/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/ne/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/nl/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/nn/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/pl/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/pt/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/pt_BR/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/ro_RO/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/ru/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/sl/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/sr-ec/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/sv/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/ta/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/te/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/tl/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/tr/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/uk/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/ur_PK/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/vi/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/zh/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/zh_CN/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/InfiniteScroll/locale/zh_TW/LC_MESSAGES/InfiniteScroll.po delete mode 100644 plugins/LinkPreview/js/linkpreview.js delete mode 100644 plugins/Mapstraction/OpenLayers/Makefile delete mode 100644 plugins/Mapstraction/OpenLayers/OpenLayers.js delete mode 100644 plugins/Mapstraction/OpenLayers/README delete mode 100644 plugins/Mapstraction/OpenLayers/img/blank.gif delete mode 100644 plugins/Mapstraction/OpenLayers/img/cloud-popup-relative.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/drag-rectangle-off.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/drag-rectangle-on.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/east-mini.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/layer-switcher-maximize.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/layer-switcher-minimize.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/marker-blue.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/marker-gold.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/marker-green.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/marker.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/measuring-stick-off.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/measuring-stick-on.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/north-mini.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/panning-hand-off.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/panning-hand-on.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/slider.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/south-mini.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/west-mini.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/zoom-minus-mini.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/zoom-plus-mini.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/zoom-world-mini.png delete mode 100644 plugins/Mapstraction/OpenLayers/img/zoombar.png delete mode 100644 plugins/Mapstraction/OpenLayers/statusnet.cfg delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/framedCloud.css delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/ie6-style.css delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/add_point_off.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/add_point_on.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/blank.gif delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/close.gif delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/drag-rectangle-off.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/drag-rectangle-on.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/draw_line_off.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/draw_line_on.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/draw_point_off.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/draw_point_on.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/draw_polygon_off.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/draw_polygon_on.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/editing_tool_bar.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/move_feature_off.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/move_feature_on.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/navigation_history.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/overview_replacement.gif delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/pan-panel-NOALPHA.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/pan-panel.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/pan_off.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/pan_on.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/panning-hand-off.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/panning-hand-on.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/remove_point_off.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/remove_point_on.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/ruler.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/save_features_off.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/save_features_on.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/view_next_off.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/view_next_on.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/view_previous_off.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/view_previous_on.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/zoom-panel-NOALPHA.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/img/zoom-panel.png delete mode 100644 plugins/Mapstraction/OpenLayers/theme/default/style.css delete mode 100644 plugins/Mapstraction/js/mxn.(provider).core.js delete mode 100644 plugins/Mapstraction/js/mxn.cloudmade.core.js delete mode 100644 plugins/Mapstraction/js/mxn.core.js delete mode 100644 plugins/Mapstraction/js/mxn.geocommons.core.js delete mode 100644 plugins/Mapstraction/js/mxn.js delete mode 100644 plugins/Mapstraction/js/mxn.microsoft.core.js delete mode 100644 plugins/Mapstraction/js/mxn.openlayers.core.js delete mode 100644 plugins/Mapstraction/js/mxn.yahoo.core.js delete mode 100644 plugins/Mapstraction/usermap.js delete mode 100644 plugins/Meteor/js/meteorupdater.js delete mode 100644 plugins/MobileProfile/mp-handheld.css delete mode 100644 plugins/MobileProfile/mp-screen.css delete mode 100644 plugins/ModPlus/css/modplus.css delete mode 100644 plugins/ModPlus/js/modplus.js delete mode 100644 plugins/OStatus/images/24px-Feed-icon.svg.png delete mode 100644 plugins/OStatus/images/48px-Feed-icon.svg.png delete mode 100644 plugins/OStatus/images/96px-Feed-icon.svg.png delete mode 100644 plugins/OStatus/images/README delete mode 100644 plugins/OStatus/js/ostatus.js delete mode 100644 plugins/OStatus/theme/base/css/ostatus.css delete mode 100644 plugins/Oembed/css/oembed.css delete mode 100644 plugins/OpenID/icons/openid-16x16.gif delete mode 100644 plugins/Orbited/js/orbitedextra.js delete mode 100644 plugins/Orbited/js/orbitedupdater.js delete mode 100644 plugins/Poll/css/poll.css delete mode 100644 plugins/QnA/css/qna.css delete mode 100644 plugins/QnA/js/qna.js delete mode 100644 plugins/Realtime/css/realtimeupdate.css delete mode 100644 plugins/Realtime/js/realtimeupdate.js delete mode 100644 plugins/SensitiveContent/img/blocker.png delete mode 100644 plugins/SensitiveContent/js/sensitivecontent.js delete mode 100644 plugins/ShareNotice/css/README delete mode 100644 plugins/ShareNotice/css/icon-facebook.png delete mode 100644 plugins/ShareNotice/css/icon-share.png delete mode 100644 plugins/ShareNotice/css/icon-statusnet.png delete mode 100644 plugins/ShareNotice/css/icon-twitter.png delete mode 100644 plugins/ShareNotice/css/sharenotice.css delete mode 100644 plugins/SubMirror/css/mirrorsettings.css delete mode 100644 plugins/SubMirror/images/providers/facebook.png delete mode 100644 plugins/SubMirror/images/providers/feed.png delete mode 100644 plugins/SubMirror/images/providers/linkedin.png delete mode 100644 plugins/SubMirror/images/providers/statusnet.png delete mode 100644 plugins/SubMirror/images/providers/wordpress.png delete mode 100644 plugins/SubMirror/js/mirrorsettings.js delete mode 100644 plugins/TabFocus/tabfocus.js delete mode 100644 plugins/TwitterBridge/icons/twitter-bird-white-on-blue.png rename apple-touch-icon.png => public/apple-touch-icon.png (100%) rename favicon.ico => public/favicon.ico (100%) delete mode 100644 theme/README delete mode 100644 theme/base/css/display.css delete mode 100644 theme/base/css/rtl.css delete mode 100644 theme/base/css/uap.css delete mode 100644 theme/base/default-avatar-mini.png delete mode 100644 theme/base/default-avatar-profile.png delete mode 100644 theme/base/default-avatar-stream.png delete mode 100644 theme/base/images/icons/README delete mode 100644 theme/base/images/icons/activitystreams.png delete mode 100644 theme/base/images/icons/arrow_right.png delete mode 100644 theme/base/images/icons/icon_atom.png delete mode 100644 theme/base/images/icons/icon_foaf.gif delete mode 100644 theme/base/images/icons/icon_processing.gif delete mode 100644 theme/base/images/icons/icon_rss.png delete mode 100644 theme/base/images/icons/icon_vcard.gif delete mode 100644 theme/base/images/icons/icons-01.gif delete mode 100644 theme/base/images/icons/lock.png delete mode 100644 theme/base/images/icons/lock_open.png delete mode 100644 theme/base/images/icons/twotone/green/admin.gif delete mode 100644 theme/base/images/icons/twotone/green/against.gif delete mode 100644 theme/base/images/icons/twotone/green/arrow-left.gif delete mode 100644 theme/base/images/icons/twotone/green/arrow-right.gif delete mode 100644 theme/base/images/icons/twotone/green/badge.gif delete mode 100644 theme/base/images/icons/twotone/green/checkmark.gif delete mode 100644 theme/base/images/icons/twotone/green/clear.gif delete mode 100644 theme/base/images/icons/twotone/green/clip-01.gif delete mode 100644 theme/base/images/icons/twotone/green/clip-02.gif delete mode 100644 theme/base/images/icons/twotone/green/disfavourite.gif delete mode 100644 theme/base/images/icons/twotone/green/edit.gif delete mode 100644 theme/base/images/icons/twotone/green/favourite.gif delete mode 100644 theme/base/images/icons/twotone/green/flag.gif delete mode 100644 theme/base/images/icons/twotone/green/key.gif delete mode 100644 theme/base/images/icons/twotone/green/mail.gif delete mode 100644 theme/base/images/icons/twotone/green/minus.gif delete mode 100644 theme/base/images/icons/twotone/green/news.gif delete mode 100644 theme/base/images/icons/twotone/green/plus.gif delete mode 100644 theme/base/images/icons/twotone/green/quote.gif delete mode 100644 theme/base/images/icons/twotone/green/recycle-02.gif delete mode 100644 theme/base/images/icons/twotone/green/recycle.gif delete mode 100644 theme/base/images/icons/twotone/green/reply.gif delete mode 100644 theme/base/images/icons/twotone/green/sandbox.gif delete mode 100644 theme/base/images/icons/twotone/green/shield.gif delete mode 100644 theme/base/images/icons/twotone/green/silence.gif delete mode 100644 theme/base/images/icons/twotone/green/skull.gif delete mode 100644 theme/base/images/icons/twotone/green/trash.gif delete mode 100644 theme/base/images/icons/twotone/green/x.gif delete mode 100644 theme/base/logo.png delete mode 100644 theme/base/mobilelogo.png delete mode 100644 theme/licenses/cc_by-sa_3.0_80x15.png delete mode 100644 theme/licenses/cc_by_3.0_80x15.png delete mode 100644 theme/neo-blue/css/display.css delete mode 100644 theme/neo-blue/css/mp-screen.css delete mode 100644 theme/neo-blue/default-avatar-mini.png delete mode 100644 theme/neo-blue/default-avatar-profile.png delete mode 100644 theme/neo-blue/default-avatar-stream.png delete mode 100644 theme/neo-blue/logo.png delete mode 100644 theme/neo-blue/mobilelogo.png delete mode 100644 theme/neo-blue/theme.ini delete mode 100644 theme/neo-gnu/README delete mode 100644 theme/neo-gnu/css/display.css delete mode 100644 theme/neo-gnu/css/mp-screen.css delete mode 100644 theme/neo-gnu/css/rtl.css delete mode 100644 theme/neo-gnu/default-avatar-mini.png delete mode 100644 theme/neo-gnu/default-avatar-profile.png delete mode 100644 theme/neo-gnu/default-avatar-stream.png delete mode 100644 theme/neo-gnu/default-avatar.svg delete mode 100644 theme/neo-gnu/favicon.ico delete mode 100644 theme/neo-gnu/images/bg.png delete mode 100644 theme/neo-gnu/images/bg.png.stripes delete mode 100644 theme/neo-gnu/images/bg_paper.png delete mode 100644 theme/neo-gnu/images/bluearrow_down.png delete mode 100644 theme/neo-gnu/images/bluearrow_up.png delete mode 100644 theme/neo-gnu/images/brdr_black_dot.png delete mode 100644 theme/neo-gnu/images/brdr_white_dot.png delete mode 100644 theme/neo-gnu/images/lightbox_bg.png delete mode 100644 theme/neo-gnu/images/lock.png delete mode 100644 theme/neo-gnu/images/lock_open.png delete mode 100644 theme/neo-gnu/images/magnifier.png delete mode 100644 theme/neo-gnu/images/resultset_next.png delete mode 100644 theme/neo-gnu/images/rosette.png delete mode 100644 theme/neo-gnu/images/tick.png delete mode 100644 theme/neo-gnu/logo.png delete mode 100644 theme/neo-gnu/logo.svg delete mode 100644 theme/neo-gnu/mobilelogo.png delete mode 100644 theme/neo-gnu/theme.ini delete mode 100644 theme/neo-light/css/display.css delete mode 100644 theme/neo-light/css/mp-screen.css delete mode 100644 theme/neo-light/default-avatar-mini.png delete mode 100644 theme/neo-light/default-avatar-profile.png delete mode 100644 theme/neo-light/default-avatar-stream.png delete mode 100644 theme/neo-light/logo.png delete mode 100644 theme/neo-light/mobilelogo.png delete mode 100644 theme/neo-light/theme.ini delete mode 100644 theme/neo-quitter/LICENSE delete mode 100644 theme/neo-quitter/README.md delete mode 100644 theme/neo-quitter/css/display.css delete mode 100644 theme/neo-quitter/css/genericons/Genericons.eot delete mode 100644 theme/neo-quitter/css/genericons/Genericons.svg delete mode 100644 theme/neo-quitter/css/genericons/Genericons.ttf delete mode 100644 theme/neo-quitter/css/genericons/Genericons.woff delete mode 100644 theme/neo-quitter/css/genericons/genericons.css delete mode 100644 theme/neo-quitter/css/mp-screen.css delete mode 100644 theme/neo-quitter/css/rtl.css delete mode 100644 theme/neo-quitter/default-avatar-mini.png delete mode 100644 theme/neo-quitter/default-avatar-profile.png delete mode 100644 theme/neo-quitter/default-avatar-stream.png delete mode 100644 theme/neo-quitter/favicon.ico delete mode 100644 theme/neo-quitter/fonts/FontAwesome.otf delete mode 100644 theme/neo-quitter/fonts/fontawesome-webfont.eot delete mode 100644 theme/neo-quitter/fonts/fontawesome-webfont.svg delete mode 100644 theme/neo-quitter/fonts/fontawesome-webfont.ttf delete mode 100644 theme/neo-quitter/fonts/fontawesome-webfont.woff delete mode 100644 theme/neo-quitter/icons-hires-quitter.ai delete mode 100644 theme/neo-quitter/icons-hires-quitter.png delete mode 100644 theme/neo-quitter/icons-hires.ai delete mode 100644 theme/neo-quitter/icons-hires.png delete mode 100644 theme/neo-quitter/images/bg.png delete mode 100644 theme/neo-quitter/images/bluearrow_down.png delete mode 100644 theme/neo-quitter/images/bluearrow_up.png delete mode 100644 theme/neo-quitter/images/brdr_black_dot.png delete mode 100644 theme/neo-quitter/images/brdr_white_dot.png delete mode 100644 theme/neo-quitter/images/lightbox_bg.png delete mode 100644 theme/neo-quitter/images/magnifier.png delete mode 100644 theme/neo-quitter/images/resultset_next.png delete mode 100644 theme/neo-quitter/images/rosette.png delete mode 100644 theme/neo-quitter/images/tick.png delete mode 100644 theme/neo-quitter/logo.png delete mode 100644 theme/neo-quitter/mobilelogo.png delete mode 100644 theme/neo-quitter/quitterclassiclogo.ai delete mode 100644 theme/neo-quitter/quitterclassiclogo.png delete mode 100644 theme/neo-quitter/theme.ini delete mode 100644 theme/neo/README delete mode 100644 theme/neo/css/display.css delete mode 100644 theme/neo/css/mp-screen.css delete mode 100644 theme/neo/css/rtl.css delete mode 100644 theme/neo/default-avatar-mini.png delete mode 100644 theme/neo/default-avatar-profile.png delete mode 100644 theme/neo/default-avatar-stream.png delete mode 100644 theme/neo/fonts/lato-bold-webfont.eot delete mode 100644 theme/neo/fonts/lato-bold-webfont.svg delete mode 100644 theme/neo/fonts/lato-bold-webfont.ttf delete mode 100644 theme/neo/fonts/lato-bold-webfont.woff delete mode 100644 theme/neo/fonts/lato-italic-webfont.eot delete mode 100644 theme/neo/fonts/lato-italic-webfont.svg delete mode 100644 theme/neo/fonts/lato-italic-webfont.ttf delete mode 100644 theme/neo/fonts/lato-italic-webfont.woff delete mode 100644 theme/neo/fonts/lato-regular-webfont.eot delete mode 100644 theme/neo/fonts/lato-regular-webfont.svg delete mode 100644 theme/neo/fonts/lato-regular-webfont.ttf delete mode 100644 theme/neo/fonts/lato-regular-webfont.woff delete mode 100644 theme/neo/fonts/stylesheet.css delete mode 100644 theme/neo/images/bg.png delete mode 100644 theme/neo/images/bluearrow_down.png delete mode 100644 theme/neo/images/bluearrow_up.png delete mode 100644 theme/neo/images/brdr_black_dot.png delete mode 100644 theme/neo/images/brdr_white_dot.png delete mode 100644 theme/neo/images/lightbox_bg.png delete mode 100644 theme/neo/images/lock.png delete mode 100644 theme/neo/images/lock_open.png delete mode 100644 theme/neo/images/magnifier.png delete mode 100644 theme/neo/images/resultset_next.png delete mode 100644 theme/neo/images/rosette.png delete mode 100644 theme/neo/images/tick.png delete mode 100644 theme/neo/logo.png delete mode 100644 theme/neo/mobilelogo.png delete mode 100644 theme/neo/theme.ini diff --git a/index.php b/index.php deleted file mode 100644 index 84a992efb3..0000000000 --- a/index.php +++ /dev/null @@ -1,325 +0,0 @@ -. - * - * @category StatusNet - * @package StatusNet - * @author Brenda Wallace - * @author Brion Vibber - * @author Christopher Vollick - * @author CiaranG - * @author Craig Andrews - * @author Evan Prodromou - * @author Gina Haeussge - * @author James Walker - * @author Jeffery To - * @author Mike Cochrane - * @author Robin Millette - * @author Sarven Capadisli - * @author Tom Adams - * @author Zach Copley - * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org - * - * @license GNU Affero General Public License http://www.gnu.org/licenses/ - */ - -$_startTime = microtime(true); -$_perfCounters = array(); - -// We provide all our dependencies through our own autoload. -// This will probably be configurable for distributing with -// system packages (like with Debian apt etc. where included -// libraries are maintained through repositories) -set_include_path('.'); // mainly fixes an issue where /usr/share/{pear,php*}/DB/DataObject.php is _old_ on various systems... - -define('INSTALLDIR', dirname(__FILE__)); -define('GNUSOCIAL', true); -define('STATUSNET', true); // compatibility - -$user = null; -$action = null; - -function getPath($req) -{ - $p = null; - - if ((common_config('site', 'fancy') || !array_key_exists('PATH_INFO', $_SERVER)) - && array_key_exists('p', $req) - ) { - $p = $req['p']; - } else if (array_key_exists('PATH_INFO', $_SERVER)) { - $path = $_SERVER['PATH_INFO']; - $script = $_SERVER['SCRIPT_NAME']; - if (substr($path, 0, mb_strlen($script)) == $script) { - $p = substr($path, mb_strlen($script) + 1); - } else { - $p = $path; - } - } else { - $p = null; - } - - // Trim all initial '/' - - $p = ltrim($p, '/'); - - return $p; -} - -/** - * logs and then displays error messages - * - * @return void - */ -function handleError($error) -{ - try { - - if ($error->getCode() == DB_DATAOBJECT_ERROR_NODATA) { - return; - } - - $logmsg = "Exception thrown: " . _ve($error->getMessage()); - if ($error instanceof PEAR_Exception && common_config('log', 'debugtrace')) { - $logmsg .= " PEAR: ". $error->toText(); - } - // DB queries often end up with a lot of newlines; merge to a single line - // for easier grepability... - $logmsg = str_replace("\n", " ", $logmsg); - common_log(LOG_ERR, $logmsg); - - // @fixme backtrace output should be consistent with exception handling - if (common_config('log', 'debugtrace')) { - $bt = $error->getTrace(); - foreach ($bt as $n => $line) { - common_log(LOG_ERR, formatBacktraceLine($n, $line)); - } - } - if ($error instanceof DB_DataObject_Error - || $error instanceof DB_Error - || ($error instanceof PEAR_Exception && $error->getCode() == -24) - ) { - //If we run into a DB error, assume we can't connect to the DB at all - //so set the current user to null, so we don't try to access the DB - //while rendering the error page. - global $_cur; - $_cur = null; - - $msg = sprintf( - // TRANS: Database error message. - _('The database for %1$s is not responding correctly, '. - 'so the site will not work properly. '. - 'The site admins probably know about the problem, '. - 'but you can contact them at %2$s to make sure. '. - 'Otherwise, wait a few minutes and try again.' - ), - common_config('site', 'name'), - common_config('site', 'email') - ); - - $erraction = new DBErrorAction($msg, 500); - } elseif ($error instanceof ClientException) { - $erraction = new ClientErrorAction($error->getMessage(), $error->getCode()); - } elseif ($error instanceof ServerException) { - $erraction = new ServerErrorAction($error->getMessage(), $error->getCode(), $error); - } else { - // If it wasn't specified more closely which kind of exception it was - $erraction = new ServerErrorAction($error->getMessage(), 500, $error); - } - $erraction->showPage(); - - } catch (Exception $e) { - // TRANS: Error message. - echo _('An error occurred.'); - exit(-1); - } - exit(-1); -} - -set_exception_handler('handleError'); - -// quick check for fancy URL auto-detection support in installer. -if (preg_replace("/\?.+$/", "", $_SERVER['REQUEST_URI']) === preg_replace("/^\/$/", "", (dirname($_SERVER['REQUEST_URI']))) . '/check-fancy') { - die("Fancy URL support detection succeeded. We suggest you enable this to get fancy (pretty) URLs."); -} - -require_once INSTALLDIR . '/lib/common.php'; - -/** - * Format a backtrace line for debug output roughly like debug_print_backtrace() does. - * Exceptions already have this built in, but PEAR error objects just give us the array. - * - * @param int $n line number - * @param array $line per-frame array item from debug_backtrace() - * @return string - */ -function formatBacktraceLine($n, $line) -{ - $out = "#$n "; - if (isset($line['class'])) $out .= $line['class']; - if (isset($line['type'])) $out .= $line['type']; - if (isset($line['function'])) $out .= $line['function']; - $out .= '('; - if (isset($line['args'])) { - $args = array(); - foreach ($line['args'] as $arg) { - // debug_print_backtrace seems to use var_export - // but this gets *very* verbose! - $args[] = gettype($arg); - } - $out .= implode(',', $args); - } - $out .= ')'; - $out .= ' called at ['; - if (isset($line['file'])) $out .= $line['file']; - if (isset($line['line'])) $out .= ':' . $line['line']; - $out .= ']'; - return $out; -} - -function setupRW() -{ - global $config; - - static $alwaysRW = array('session', 'remember_me'); - - $rwdb = $config['db']['database']; - - if (Event::handle('StartReadWriteTables', array(&$alwaysRW, &$rwdb))) { - - // We ensure that these tables always are used - // on the master DB - - $config['db']['database_rw'] = $rwdb; - $config['db']['ini_rw'] = INSTALLDIR.'/classes/statusnet.ini'; - - foreach ($alwaysRW as $table) { - $config['db']['table_'.$table] = 'rw'; - } - - Event::handle('EndReadWriteTables', array($alwaysRW, $rwdb)); - } - - return; -} - -function isLoginAction($action) -{ - static $loginActions = array('login', 'recoverpassword', 'api', 'doc', 'register', 'publicxrds', 'otp', 'opensearch', 'rsd'); - - $login = null; - - if (Event::handle('LoginAction', array($action, &$login))) { - $login = in_array($action, $loginActions); - } - - return $login; -} - -function main() -{ - global $user, $action; - - if (!_have_config()) { - $msg = sprintf( - // TRANS: Error message displayed when there is no StatusNet configuration file. - _("No configuration file found. Try running ". - "the installation program first." - ) - ); - $sac = new ServerErrorAction($msg); - $sac->showPage(); - return; - } - - // Make sure RW database is setup - - setupRW(); - - // XXX: we need a little more structure in this script - - // get and cache current user (may hit RW!) - - $user = common_current_user(); - - // initialize language env - - common_init_language(); - - $path = getPath($_REQUEST); - - $r = Router::get(); - - $args = $r->map($path); - - // If the request is HTTP and it should be HTTPS... - if (GNUsocial::useHTTPS() && !GNUsocial::isHTTPS()) { - common_redirect(common_local_url($args['action'], $args)); - } - - $args = array_merge($args, $_REQUEST ?: []); - - Event::handle('ArgsInitialize', array(&$args)); - - $action = basename($args['action']); - - if (!$action || !preg_match('/^[a-zA-Z0-9_-]*$/', $action)) { - common_redirect(common_local_url('public')); - } - - // If the site is private, and they're not on one of the "public" - // parts of the site, redirect to login - - if (!$user && common_config('site', 'private') - && !isLoginAction($action) - && !preg_match('/rss$/', $action) - && $action != 'robotstxt' - && !preg_match('/^Api/', $action)) { - - // set returnto - $rargs =& common_copy_args($args); - unset($rargs['action']); - if (common_config('site', 'fancy')) { - unset($rargs['p']); - } - if (array_key_exists('submit', $rargs)) { - unset($rargs['submit']); - } - foreach (array_keys($_COOKIE) as $cookie) { - unset($rargs[$cookie]); - } - common_set_returnto(common_local_url($action, $rargs)); - - common_redirect(common_local_url('login')); - } - - $action_class = ucfirst($action).'Action'; - - if (!class_exists($action_class)) { - // TRANS: Error message displayed when trying to perform an undefined action. - throw new ClientException(_('Unknown action'), 404); - } - - call_user_func("$action_class::run", $args); -} - -main(); - -// XXX: cleanup exit() calls or add an exit handler so -// this always gets called - -Event::handle('CleanupPlugin'); diff --git a/install.php b/install.php deleted file mode 100644 index 91445de8e0..0000000000 --- a/install.php +++ /dev/null @@ -1,417 +0,0 @@ -. - * - * @category Installation - * @package Installation - * - * @author Adrian Lang - * @author Brenda Wallace - * @author Brett Taylor - * @author Brion Vibber - * @author CiaranG - * @author Craig Andrews - * @author Eric Helgeson - * @author Evan Prodromou - * @author Mikael Nordfeldth - * @author Robin Millette - * @author Sarven Capadisli - * @author Tom Adams - * @author Zach Copley - * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org - * @license GNU Affero General Public License http://www.gnu.org/licenses/ - * @version 0.9.x - * @link http://status.net - */ - -define('INSTALLDIR', __DIR__); - -require INSTALLDIR . '/lib/installer.php'; - -/** - * Helper class for building form - */ -class Posted { - /** - * HTML-friendly escaped string for the POST param of given name, or empty. - * @param string $name - * @return string - */ - function value($name) - { - return htmlspecialchars($this->string($name)); - } - - /** - * The given POST parameter value, forced to a string. - * Missing value will give ''. - * - * @param string $name - * @return string - */ - function string($name) - { - return strval($this->raw($name)); - } - - /** - * The given POST parameter value, in its original form. - * Magic quotes are stripped, if provided. - * Missing value will give null. - * - * @param string $name - * @return mixed - */ - function raw($name) - { - if (isset($_POST[$name])) { - return $this->dequote($_POST[$name]); - } else { - return null; - } - } - - /** - * If necessary, strip magic quotes from the given value. - * - * @param mixed $val - * @return mixed - */ - function dequote($val) - { - if (get_magic_quotes_gpc()) { - if (is_string($val)) { - return stripslashes($val); - } else if (is_array($val)) { - return array_map(array($this, 'dequote'), $val); - } - } - return $val; - } -} - -/** - * Web-based installer: provides a form and such. - */ -class WebInstaller extends Installer -{ - /** - * the actual installation. - * If call libraries are present, then install - * - * @return void - */ - function main() - { - if (!$this->checkPrereqs()) { - $this->warning(_('Please fix the above stated problems and refresh this page to continue installing.')); - return; - } - - if ($_SERVER['REQUEST_METHOD'] == 'POST') { - $this->handlePost(); - } else { - $this->showForm(); - } - } - - /** - * Web implementation of warning output - */ - function warning($message, $submessage='') - { - print "

$message

\n"; - if ($submessage != '') { - print "

$submessage

\n"; - } - } - - /** - * Web implementation of status output - */ - function updateStatus($status, $error=false) - { - echo '$status"; - } - - /** - * Show the web form! - */ - function showForm() - { - global $dbModules; - $post = new Posted(); - $dbRadios = ''; - $dbtype = $post->raw('dbtype'); - foreach (self::$dbModules as $type => $info) { - if ($this->checkExtension($info['check_module'])) { - if ($dbtype == null || $dbtype == $type) { - $checked = 'checked="checked" '; - $dbtype = $type; // if we didn't have one checked, hit the first - } else { - $checked = ''; - } - $dbRadios .= sprintf('%3$s
', - htmlspecialchars($type), $checked, - htmlspecialchars($info['name'])); - } - } - - $ssl = array('always'=>null, 'never'=>null); - if (!empty($_SERVER['HTTPS'])) { - $ssl['always'] = 'checked="checked"'; - } else { - $ssl['never'] = 'checked="checked"'; - } - - echo<< -
-
- Site settings -
    -
  • - - -

    The name of your site

    -
  • -
  • - - enable
    - disable
    -

    Enable fancy (pretty) URLs. Auto-detection failed, it depends on Javascript.

    -
  • -
  • - - enable
    - disable
    -

    Enabling SSL (https://) requires extra webserver configuration and certificate generation not offered by this installation.

    -
  • -
-
- -
- Database settings -
    -
  • - - -

    Database hostname

    -
  • -
  • - - {$dbRadios} -

    Database type

    -
  • -
  • - - -

    Database name

    -
  • -
  • - - -

    Database username

    -
  • -
  • - - -

    Database password (optional)

    -
  • -
-
- -
- Administrator settings -
    -
  • - - -

    Nickname for the initial user (administrator)

    -
  • -
  • - - -

    Password for the initial user (administrator)

    -
  • -
  • - - -
  • -
  • - - -

    Optional email address for the initial user (administrator)

    -
  • -
-
-
- Site profile -
    -
  • - - -

    Initial access settings for your site

    -
  • -
-
- -
- - -E_O_T; - } - - /** - * Handle a POST submission... if we have valid input, start the install! - * Otherwise shows the form along with any error messages. - */ - function handlePost() - { - echo << -
Page notice
-
-
    -STR; - $this->validated = $this->prepare(); - if ($this->validated) { - $this->doInstall(); - } - echo << -
- -STR; - if (!$this->validated) { - $this->showForm(); - } - } - - /** - * Read and validate input data. - * May output side effects. - * - * @return boolean success - */ - function prepare() - { - $post = new Posted(); - $this->host = $post->string('host'); - $this->dbtype = $post->string('dbtype'); - $this->database = $post->string('database'); - $this->username = $post->string('dbusername'); - $this->password = $post->string('dbpassword'); - $this->sitename = $post->string('sitename'); - $this->fancy = (bool)$post->string('fancy'); - - $this->adminNick = strtolower($post->string('admin_nickname')); - $this->adminPass = $post->string('admin_password'); - $adminPass2 = $post->string('admin_password2'); - $this->adminEmail = $post->string('admin_email'); - - $this->siteProfile = $post->string('site_profile'); - - $this->ssl = $post->string('ssl'); - - $this->server = $_SERVER['HTTP_HOST']; - $this->path = substr(dirname($_SERVER['PHP_SELF']), 1); - - $fail = false; - if (!$this->validateDb()) { - $fail = true; - } - - if (!$this->validateAdmin()) { - $fail = true; - } - - if ($this->adminPass != $adminPass2) { - $this->updateStatus("Administrator passwords do not match. Did you mistype?", true); - $fail = true; - } - - if (!in_array($this->ssl, array('never', 'always'))) { - $this->updateStatus("Bad value for server SSL enabling."); - $fail = true; - } - - if (!$this->validateSiteProfile()) { - $fail = true; - } - - return !$fail; - } - -} - -?> - xml version="1.0" encoding="UTF-8" "; ?> - - - - Install GNU social - - - - - - - - -
- -
-
-
- -
-
-
- -
- - diff --git a/js/emailsettings.js b/js/emailsettings.js deleted file mode 100644 index f287c2d711..0000000000 --- a/js/emailsettings.js +++ /dev/null @@ -1,23 +0,0 @@ -$(function() { - -function toggleIncomingOptions() { - var enabled = $('#emailpost').prop('checked', true); - if (enabled) { - // Note: button style currently does not respond to disabled in our main themes. - // Graying out the whole section with a 50% transparency will do for now. :) - // @todo: add a general 'disabled' class style to the base themes. - $('#emailincoming').css('opacity', '') - .find('input').prop('disabled', false); - } else { - $('#emailincoming').css('opacity', '0.5') - .find('input').prop('disabled', true); - } -} - -toggleIncomingOptions(); - -$('#emailpost').click(function() { - toggleIncomingOptions(); -}); - -}); diff --git a/js/extlib/jquery-jcrop/css/Jcrop.gif b/js/extlib/jquery-jcrop/css/Jcrop.gif deleted file mode 100644 index 2ca00d5255..0000000000 --- a/js/extlib/jquery-jcrop/css/Jcrop.gif +++ /dev/null @@ -1 +0,0 @@ -You are being redirected. \ No newline at end of file diff --git a/js/extlib/jquery-jcrop/css/jcrop.css b/js/extlib/jquery-jcrop/css/jcrop.css deleted file mode 100644 index 7264b08333..0000000000 --- a/js/extlib/jquery-jcrop/css/jcrop.css +++ /dev/null @@ -1,167 +0,0 @@ -/* jquery.Jcrop.css v0.9.12 - MIT License */ -/* - The outer-most container in a typical Jcrop instance - If you are having difficulty with formatting related to styles - on a parent element, place any fixes here or in a like selector - - You can also style this element if you want to add a border, etc - A better method for styling can be seen below with .jcrop-light - (Add a class to the holder and style elements for that extended class) -*/ -.jcrop-holder { - direction: ltr; - text-align: left; - /* IE10 touch compatibility */ - -ms-touch-action: none; -} -/* Selection Border */ -.jcrop-vline, -.jcrop-hline { - background: #ffffff url("Jcrop.gif"); - font-size: 0; - position: absolute; -} -.jcrop-vline { - height: 100%; - width: 1px !important; -} -.jcrop-vline.right { - right: 0; -} -.jcrop-hline { - height: 1px !important; - width: 100%; -} -.jcrop-hline.bottom { - bottom: 0; -} -/* Invisible click targets */ -.jcrop-tracker { - height: 100%; - width: 100%; - /* "turn off" link highlight */ - -webkit-tap-highlight-color: transparent; - /* disable callout, image save panel */ - -webkit-touch-callout: none; - /* disable cut copy paste */ - -webkit-user-select: none; -} -/* Selection Handles */ -.jcrop-handle { - background-color: #333333; - border: 1px #eeeeee solid; - width: 7px; - height: 7px; - font-size: 1px; -} -.jcrop-handle.ord-n { - left: 50%; - margin-left: -4px; - margin-top: -4px; - top: 0; -} -.jcrop-handle.ord-s { - bottom: 0; - left: 50%; - margin-bottom: -4px; - margin-left: -4px; -} -.jcrop-handle.ord-e { - margin-right: -4px; - margin-top: -4px; - right: 0; - top: 50%; -} -.jcrop-handle.ord-w { - left: 0; - margin-left: -4px; - margin-top: -4px; - top: 50%; -} -.jcrop-handle.ord-nw { - left: 0; - margin-left: -4px; - margin-top: -4px; - top: 0; -} -.jcrop-handle.ord-ne { - margin-right: -4px; - margin-top: -4px; - right: 0; - top: 0; -} -.jcrop-handle.ord-se { - bottom: 0; - margin-bottom: -4px; - margin-right: -4px; - right: 0; -} -.jcrop-handle.ord-sw { - bottom: 0; - left: 0; - margin-bottom: -4px; - margin-left: -4px; -} -/* Dragbars */ -.jcrop-dragbar.ord-n, -.jcrop-dragbar.ord-s { - height: 7px; - width: 100%; -} -.jcrop-dragbar.ord-e, -.jcrop-dragbar.ord-w { - height: 100%; - width: 7px; -} -.jcrop-dragbar.ord-n { - margin-top: -4px; -} -.jcrop-dragbar.ord-s { - bottom: 0; - margin-bottom: -4px; -} -.jcrop-dragbar.ord-e { - margin-right: -4px; - right: 0; -} -.jcrop-dragbar.ord-w { - margin-left: -4px; -} -/* The "jcrop-light" class/extension */ -.jcrop-light .jcrop-vline, -.jcrop-light .jcrop-hline { - background: #ffffff; - filter: alpha(opacity=70) !important; - opacity: .70!important; -} -.jcrop-light .jcrop-handle { - -moz-border-radius: 3px; - -webkit-border-radius: 3px; - background-color: #000000; - border-color: #ffffff; - border-radius: 3px; -} -/* The "jcrop-dark" class/extension */ -.jcrop-dark .jcrop-vline, -.jcrop-dark .jcrop-hline { - background: #000000; - filter: alpha(opacity=70) !important; - opacity: 0.7 !important; -} -.jcrop-dark .jcrop-handle { - -moz-border-radius: 3px; - -webkit-border-radius: 3px; - background-color: #ffffff; - border-color: #000000; - border-radius: 3px; -} -/* Simple macro to turn off the antlines */ -.solid-line .jcrop-vline, -.solid-line .jcrop-hline { - background: #ffffff; -} -/* Fix for twitter bootstrap et al. */ -.jcrop-holder img, -img.jcrop-preview { - max-width: none; -} diff --git a/js/extlib/jquery-jcrop/css/jcrop.min.css b/js/extlib/jquery-jcrop/css/jcrop.min.css deleted file mode 100644 index aa5392052a..0000000000 --- a/js/extlib/jquery-jcrop/css/jcrop.min.css +++ /dev/null @@ -1,29 +0,0 @@ -/* jquery.Jcrop.min.css v0.9.12 (build:20130521) */ -.jcrop-holder{-ms-touch-action:none;direction:ltr;text-align:left;} -.jcrop-vline,.jcrop-hline{background:#FFF url(Jcrop.gif);font-size:0;position:absolute;} -.jcrop-vline{height:100%;width:1px!important;} -.jcrop-vline.right{right:0;} -.jcrop-hline{height:1px!important;width:100%;} -.jcrop-hline.bottom{bottom:0;} -.jcrop-tracker{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;height:100%;width:100%;} -.jcrop-handle{background-color:#333;border:1px #EEE solid;font-size:1px;height:7px;width:7px;} -.jcrop-handle.ord-n{left:50%;margin-left:-4px;margin-top:-4px;top:0;} -.jcrop-handle.ord-s{bottom:0;left:50%;margin-bottom:-4px;margin-left:-4px;} -.jcrop-handle.ord-e{margin-right:-4px;margin-top:-4px;right:0;top:50%;} -.jcrop-handle.ord-w{left:0;margin-left:-4px;margin-top:-4px;top:50%;} -.jcrop-handle.ord-nw{left:0;margin-left:-4px;margin-top:-4px;top:0;} -.jcrop-handle.ord-ne{margin-right:-4px;margin-top:-4px;right:0;top:0;} -.jcrop-handle.ord-se{bottom:0;margin-bottom:-4px;margin-right:-4px;right:0;} -.jcrop-handle.ord-sw{bottom:0;left:0;margin-bottom:-4px;margin-left:-4px;} -.jcrop-dragbar.ord-n,.jcrop-dragbar.ord-s{height:7px;width:100%;} -.jcrop-dragbar.ord-e,.jcrop-dragbar.ord-w{height:100%;width:7px;} -.jcrop-dragbar.ord-n{margin-top:-4px;} -.jcrop-dragbar.ord-s{bottom:0;margin-bottom:-4px;} -.jcrop-dragbar.ord-e{margin-right:-4px;right:0;} -.jcrop-dragbar.ord-w{margin-left:-4px;} -.jcrop-light .jcrop-vline,.jcrop-light .jcrop-hline{background:#FFF;filter:alpha(opacity=70)!important;opacity:.70!important;} -.jcrop-light .jcrop-handle{-moz-border-radius:3px;-webkit-border-radius:3px;background-color:#000;border-color:#FFF;border-radius:3px;} -.jcrop-dark .jcrop-vline,.jcrop-dark .jcrop-hline{background:#000;filter:alpha(opacity=70)!important;opacity:.7!important;} -.jcrop-dark .jcrop-handle{-moz-border-radius:3px;-webkit-border-radius:3px;background-color:#FFF;border-color:#000;border-radius:3px;} -.solid-line .jcrop-vline,.solid-line .jcrop-hline{background:#FFF;} -.jcrop-holder img,img.jcrop-preview{max-width:none;} diff --git a/js/extlib/jquery-jcrop/jcrop.js b/js/extlib/jquery-jcrop/jcrop.js deleted file mode 100644 index 3e32f04bd9..0000000000 --- a/js/extlib/jquery-jcrop/jcrop.js +++ /dev/null @@ -1,1694 +0,0 @@ -/** - * jquery.Jcrop.js v0.9.12 - * jQuery Image Cropping Plugin - released under MIT License - * Author: Kelly Hallman - * http://github.com/tapmodo/Jcrop - * Copyright (c) 2008-2013 Tapmodo Interactive LLC {{{ - * - * Permission is hereby granted, free of charge, to any person - * obtaining a copy of this software and associated documentation - * files (the "Software"), to deal in the Software without - * restriction, including without limitation the rights to use, - * copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following - * conditions: - * - * The above copyright notice and this permission notice shall be - * included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES - * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT - * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING - * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR - * OTHER DEALINGS IN THE SOFTWARE. - * - * }}} - */ - -(function ($) { - - $.Jcrop = function (obj, opt) { - var options = $.extend({}, $.Jcrop.defaults), - docOffset, - _ua = navigator.userAgent.toLowerCase(), - is_msie = /msie/.test(_ua), - ie6mode = /msie [1-6]\./.test(_ua); - - // Internal Methods {{{ - function px(n) { - return Math.round(n) + 'px'; - } - function cssClass(cl) { - return options.baseClass + '-' + cl; - } - function supportsColorFade() { - return $.fx.step.hasOwnProperty('backgroundColor'); - } - function getPos(obj) //{{{ - { - var pos = $(obj).offset(); - return [pos.left, pos.top]; - } - //}}} - function mouseAbs(e) //{{{ - { - return [(e.pageX - docOffset[0]), (e.pageY - docOffset[1])]; - } - //}}} - function setOptions(opt) //{{{ - { - if (typeof(opt) !== 'object') opt = {}; - options = $.extend(options, opt); - - $.each(['onChange','onSelect','onRelease','onDblClick'],function(i,e) { - if (typeof(options[e]) !== 'function') options[e] = function () {}; - }); - } - //}}} - function startDragMode(mode, pos, touch) //{{{ - { - docOffset = getPos($img); - Tracker.setCursor(mode === 'move' ? mode : mode + '-resize'); - - if (mode === 'move') { - return Tracker.activateHandlers(createMover(pos), doneSelect, touch); - } - - var fc = Coords.getFixed(); - var opp = oppLockCorner(mode); - var opc = Coords.getCorner(oppLockCorner(opp)); - - Coords.setPressed(Coords.getCorner(opp)); - Coords.setCurrent(opc); - - Tracker.activateHandlers(dragmodeHandler(mode, fc), doneSelect, touch); - } - //}}} - function dragmodeHandler(mode, f) //{{{ - { - return function (pos) { - if (!options.aspectRatio) { - switch (mode) { - case 'e': - pos[1] = f.y2; - break; - case 'w': - pos[1] = f.y2; - break; - case 'n': - pos[0] = f.x2; - break; - case 's': - pos[0] = f.x2; - break; - } - } else { - switch (mode) { - case 'e': - pos[1] = f.y + 1; - break; - case 'w': - pos[1] = f.y + 1; - break; - case 'n': - pos[0] = f.x + 1; - break; - case 's': - pos[0] = f.x + 1; - break; - } - } - Coords.setCurrent(pos); - Selection.update(); - }; - } - //}}} - function createMover(pos) //{{{ - { - var lloc = pos; - KeyManager.watchKeys(); - - return function (pos) { - Coords.moveOffset([pos[0] - lloc[0], pos[1] - lloc[1]]); - lloc = pos; - - Selection.update(); - }; - } - //}}} - function oppLockCorner(ord) //{{{ - { - switch (ord) { - case 'n': - return 'sw'; - case 's': - return 'nw'; - case 'e': - return 'nw'; - case 'w': - return 'ne'; - case 'ne': - return 'sw'; - case 'nw': - return 'se'; - case 'se': - return 'nw'; - case 'sw': - return 'ne'; - } - } - //}}} - function createDragger(ord) //{{{ - { - return function (e) { - if (options.disabled) { - return false; - } - if ((ord === 'move') && !options.allowMove) { - return false; - } - - // Fix position of crop area when dragged the very first time. - // Necessary when crop image is in a hidden element when page is loaded. - docOffset = getPos($img); - - btndown = true; - startDragMode(ord, mouseAbs(e)); - e.stopPropagation(); - e.preventDefault(); - return false; - }; - } - //}}} - function presize($obj, w, h) //{{{ - { - var nw = $obj.width(), - nh = $obj.height(); - if ((nw > w) && w > 0) { - nw = w; - nh = (w / $obj.width()) * $obj.height(); - } - if ((nh > h) && h > 0) { - nh = h; - nw = (h / $obj.height()) * $obj.width(); - } - xscale = $obj.width() / nw; - yscale = $obj.height() / nh; - $obj.width(nw).height(nh); - } - //}}} - function unscale(c) //{{{ - { - return { - x: c.x * xscale, - y: c.y * yscale, - x2: c.x2 * xscale, - y2: c.y2 * yscale, - w: c.w * xscale, - h: c.h * yscale - }; - } - //}}} - function doneSelect(pos) //{{{ - { - var c = Coords.getFixed(); - if ((c.w > options.minSelect[0]) && (c.h > options.minSelect[1])) { - Selection.enableHandles(); - Selection.done(); - } else { - Selection.release(); - } - Tracker.setCursor(options.allowSelect ? 'crosshair' : 'default'); - } - //}}} - function newSelection(e) //{{{ - { - if (options.disabled) { - return false; - } - if (!options.allowSelect) { - return false; - } - btndown = true; - docOffset = getPos($img); - Selection.disableHandles(); - Tracker.setCursor('crosshair'); - var pos = mouseAbs(e); - Coords.setPressed(pos); - Selection.update(); - Tracker.activateHandlers(selectDrag, doneSelect, e.type.substring(0,5)==='touch'); - KeyManager.watchKeys(); - - e.stopPropagation(); - e.preventDefault(); - return false; - } - //}}} - function selectDrag(pos) //{{{ - { - Coords.setCurrent(pos); - Selection.update(); - } - //}}} - function newTracker() //{{{ - { - var trk = $('
').addClass(cssClass('tracker')); - if (is_msie) { - trk.css({ - opacity: 0, - backgroundColor: 'white' - }); - } - return trk; - } - //}}} - - // }}} - // Initialization {{{ - // Sanitize some options {{{ - if (typeof(obj) !== 'object') { - obj = $(obj)[0]; - } - if (typeof(opt) !== 'object') { - opt = {}; - } - // }}} - setOptions(opt); - // Initialize some jQuery objects {{{ - // The values are SET on the image(s) for the interface - // If the original image has any of these set, they will be reset - // However, if you destroy() the Jcrop instance the original image's - // character in the DOM will be as you left it. - var img_css = { - border: 'none', - visibility: 'visible', - margin: 0, - padding: 0, - position: 'absolute', - top: 0, - left: 0 - }; - - var $origimg = $(obj), - img_mode = true; - - if (obj.tagName == 'IMG') { - // Fix size of crop image. - // Necessary when crop image is within a hidden element when page is loaded. - if ($origimg[0].width != 0 && $origimg[0].height != 0) { - // Obtain dimensions from contained img element. - $origimg.width($origimg[0].width); - $origimg.height($origimg[0].height); - } else { - // Obtain dimensions from temporary image in case the original is not loaded yet (e.g. IE 7.0). - var tempImage = new Image(); - tempImage.src = $origimg[0].src; - $origimg.width(tempImage.width); - $origimg.height(tempImage.height); - } - - var $img = $origimg.clone().removeAttr('id').css(img_css).show(); - - $img.width($origimg.width()); - $img.height($origimg.height()); - $origimg.after($img).hide(); - - } else { - $img = $origimg.css(img_css).show(); - img_mode = false; - if (options.shade === null) { options.shade = true; } - } - - presize($img, options.boxWidth, options.boxHeight); - - var boundx = $img.width(), - boundy = $img.height(), - - - $div = $('
').width(boundx).height(boundy).addClass(cssClass('holder')).css({ - position: 'relative', - backgroundColor: options.bgColor - }).insertAfter($origimg).append($img); - - if (options.addClass) { - $div.addClass(options.addClass); - } - - var $img2 = $('
'), - - $img_holder = $('
') - .width('100%').height('100%').css({ - zIndex: 310, - position: 'absolute', - overflow: 'hidden' - }), - - $hdl_holder = $('
') - .width('100%').height('100%').css('zIndex', 320), - - $sel = $('
') - .css({ - position: 'absolute', - zIndex: 600 - }).dblclick(function(){ - var c = Coords.getFixed(); - options.onDblClick.call(api,c); - }).insertBefore($img).append($img_holder, $hdl_holder); - - if (img_mode) { - - $img2 = $('') - .attr('src', $img.attr('src')).css(img_css).width(boundx).height(boundy), - - $img_holder.append($img2); - - } - - if (ie6mode) { - $sel.css({ - overflowY: 'hidden' - }); - } - - var bound = options.boundary; - var $trk = newTracker().width(boundx + (bound * 2)).height(boundy + (bound * 2)).css({ - position: 'absolute', - top: px(-bound), - left: px(-bound), - zIndex: 290 - }).mousedown(newSelection); - - /* }}} */ - // Set more variables {{{ - var bgcolor = options.bgColor, - bgopacity = options.bgOpacity, - xlimit, ylimit, xmin, ymin, xscale, yscale, enabled = true, - btndown, animating, shift_down; - - docOffset = getPos($img); - // }}} - // }}} - // Internal Modules {{{ - // Touch Module {{{ - var Touch = (function () { - // Touch support detection function adapted (under MIT License) - // from code by Jeffrey Sambells - http://github.com/iamamused/ - function hasTouchSupport() { - var support = {}, events = ['touchstart', 'touchmove', 'touchend'], - el = document.createElement('div'), i; - - try { - for(i=0; i x1 + ox) { - ox -= ox + x1; - } - if (0 > y1 + oy) { - oy -= oy + y1; - } - - if (boundy < y2 + oy) { - oy += boundy - (y2 + oy); - } - if (boundx < x2 + ox) { - ox += boundx - (x2 + ox); - } - - x1 += ox; - x2 += ox; - y1 += oy; - y2 += oy; - } - //}}} - function getCorner(ord) //{{{ - { - var c = getFixed(); - switch (ord) { - case 'ne': - return [c.x2, c.y]; - case 'nw': - return [c.x, c.y]; - case 'se': - return [c.x2, c.y2]; - case 'sw': - return [c.x, c.y2]; - } - } - //}}} - function getFixed() //{{{ - { - if (!options.aspectRatio) { - return getRect(); - } - // This function could use some optimization I think... - var aspect = options.aspectRatio, - min_x = options.minSize[0] / xscale, - - - //min_y = options.minSize[1]/yscale, - max_x = options.maxSize[0] / xscale, - max_y = options.maxSize[1] / yscale, - rw = x2 - x1, - rh = y2 - y1, - rwa = Math.abs(rw), - rha = Math.abs(rh), - real_ratio = rwa / rha, - xx, yy, w, h; - - if (max_x === 0) { - max_x = boundx * 10; - } - if (max_y === 0) { - max_y = boundy * 10; - } - if (real_ratio < aspect) { - yy = y2; - w = rha * aspect; - xx = rw < 0 ? x1 - w : w + x1; - - if (xx < 0) { - xx = 0; - h = Math.abs((xx - x1) / aspect); - yy = rh < 0 ? y1 - h : h + y1; - } else if (xx > boundx) { - xx = boundx; - h = Math.abs((xx - x1) / aspect); - yy = rh < 0 ? y1 - h : h + y1; - } - } else { - xx = x2; - h = rwa / aspect; - yy = rh < 0 ? y1 - h : y1 + h; - if (yy < 0) { - yy = 0; - w = Math.abs((yy - y1) * aspect); - xx = rw < 0 ? x1 - w : w + x1; - } else if (yy > boundy) { - yy = boundy; - w = Math.abs(yy - y1) * aspect; - xx = rw < 0 ? x1 - w : w + x1; - } - } - - // Magic %-) - if (xx > x1) { // right side - if (xx - x1 < min_x) { - xx = x1 + min_x; - } else if (xx - x1 > max_x) { - xx = x1 + max_x; - } - if (yy > y1) { - yy = y1 + (xx - x1) / aspect; - } else { - yy = y1 - (xx - x1) / aspect; - } - } else if (xx < x1) { // left side - if (x1 - xx < min_x) { - xx = x1 - min_x; - } else if (x1 - xx > max_x) { - xx = x1 - max_x; - } - if (yy > y1) { - yy = y1 + (x1 - xx) / aspect; - } else { - yy = y1 - (x1 - xx) / aspect; - } - } - - if (xx < 0) { - x1 -= xx; - xx = 0; - } else if (xx > boundx) { - x1 -= xx - boundx; - xx = boundx; - } - - if (yy < 0) { - y1 -= yy; - yy = 0; - } else if (yy > boundy) { - y1 -= yy - boundy; - yy = boundy; - } - - return makeObj(flipCoords(x1, y1, xx, yy)); - } - //}}} - function rebound(p) //{{{ - { - if (p[0] < 0) p[0] = 0; - if (p[1] < 0) p[1] = 0; - - if (p[0] > boundx) p[0] = boundx; - if (p[1] > boundy) p[1] = boundy; - - return [Math.round(p[0]), Math.round(p[1])]; - } - //}}} - function flipCoords(x1, y1, x2, y2) //{{{ - { - var xa = x1, - xb = x2, - ya = y1, - yb = y2; - if (x2 < x1) { - xa = x2; - xb = x1; - } - if (y2 < y1) { - ya = y2; - yb = y1; - } - return [xa, ya, xb, yb]; - } - //}}} - function getRect() //{{{ - { - var xsize = x2 - x1, - ysize = y2 - y1, - delta; - - if (xlimit && (Math.abs(xsize) > xlimit)) { - x2 = (xsize > 0) ? (x1 + xlimit) : (x1 - xlimit); - } - if (ylimit && (Math.abs(ysize) > ylimit)) { - y2 = (ysize > 0) ? (y1 + ylimit) : (y1 - ylimit); - } - - if (ymin / yscale && (Math.abs(ysize) < ymin / yscale)) { - y2 = (ysize > 0) ? (y1 + ymin / yscale) : (y1 - ymin / yscale); - } - if (xmin / xscale && (Math.abs(xsize) < xmin / xscale)) { - x2 = (xsize > 0) ? (x1 + xmin / xscale) : (x1 - xmin / xscale); - } - - if (x1 < 0) { - x2 -= x1; - x1 -= x1; - } - if (y1 < 0) { - y2 -= y1; - y1 -= y1; - } - if (x2 < 0) { - x1 -= x2; - x2 -= x2; - } - if (y2 < 0) { - y1 -= y2; - y2 -= y2; - } - if (x2 > boundx) { - delta = x2 - boundx; - x1 -= delta; - x2 -= delta; - } - if (y2 > boundy) { - delta = y2 - boundy; - y1 -= delta; - y2 -= delta; - } - if (x1 > boundx) { - delta = x1 - boundy; - y2 -= delta; - y1 -= delta; - } - if (y1 > boundy) { - delta = y1 - boundy; - y2 -= delta; - y1 -= delta; - } - - return makeObj(flipCoords(x1, y1, x2, y2)); - } - //}}} - function makeObj(a) //{{{ - { - return { - x: a[0], - y: a[1], - x2: a[2], - y2: a[3], - w: a[2] - a[0], - h: a[3] - a[1] - }; - } - //}}} - - return { - flipCoords: flipCoords, - setPressed: setPressed, - setCurrent: setCurrent, - getOffset: getOffset, - moveOffset: moveOffset, - getCorner: getCorner, - getFixed: getFixed - }; - }()); - - //}}} - // Shade Module {{{ - var Shade = (function() { - var enabled = false, - holder = $('
').css({ - position: 'absolute', - zIndex: 240, - opacity: 0 - }), - shades = { - top: createShade(), - left: createShade().height(boundy), - right: createShade().height(boundy), - bottom: createShade() - }; - - function resizeShades(w,h) { - shades.left.css({ height: px(h) }); - shades.right.css({ height: px(h) }); - } - function updateAuto() - { - return updateShade(Coords.getFixed()); - } - function updateShade(c) - { - shades.top.css({ - left: px(c.x), - width: px(c.w), - height: px(c.y) - }); - shades.bottom.css({ - top: px(c.y2), - left: px(c.x), - width: px(c.w), - height: px(boundy-c.y2) - }); - shades.right.css({ - left: px(c.x2), - width: px(boundx-c.x2) - }); - shades.left.css({ - width: px(c.x) - }); - } - function createShade() { - return $('
').css({ - position: 'absolute', - backgroundColor: options.shadeColor||options.bgColor - }).appendTo(holder); - } - function enableShade() { - if (!enabled) { - enabled = true; - holder.insertBefore($img); - updateAuto(); - Selection.setBgOpacity(1,0,1); - $img2.hide(); - - setBgColor(options.shadeColor||options.bgColor,1); - if (Selection.isAwake()) - { - setOpacity(options.bgOpacity,1); - } - else setOpacity(1,1); - } - } - function setBgColor(color,now) { - colorChangeMacro(getShades(),color,now); - } - function disableShade() { - if (enabled) { - holder.remove(); - $img2.show(); - enabled = false; - if (Selection.isAwake()) { - Selection.setBgOpacity(options.bgOpacity,1,1); - } else { - Selection.setBgOpacity(1,1,1); - Selection.disableHandles(); - } - colorChangeMacro($div,0,1); - } - } - function setOpacity(opacity,now) { - if (enabled) { - if (options.bgFade && !now) { - holder.animate({ - opacity: 1-opacity - },{ - queue: false, - duration: options.fadeTime - }); - } - else holder.css({opacity:1-opacity}); - } - } - function refreshAll() { - options.shade ? enableShade() : disableShade(); - if (Selection.isAwake()) setOpacity(options.bgOpacity); - } - function getShades() { - return holder.children(); - } - - return { - update: updateAuto, - updateRaw: updateShade, - getShades: getShades, - setBgColor: setBgColor, - enable: enableShade, - disable: disableShade, - resize: resizeShades, - refresh: refreshAll, - opacity: setOpacity - }; - }()); - // }}} - // Selection Module {{{ - var Selection = (function () { - var awake, - hdep = 370, - borders = {}, - handle = {}, - dragbar = {}, - seehandles = false; - - // Private Methods - function insertBorder(type) //{{{ - { - var jq = $('
').css({ - position: 'absolute', - opacity: options.borderOpacity - }).addClass(cssClass(type)); - $img_holder.append(jq); - return jq; - } - //}}} - function dragDiv(ord, zi) //{{{ - { - var jq = $('
').mousedown(createDragger(ord)).css({ - cursor: ord + '-resize', - position: 'absolute', - zIndex: zi - }).addClass('ord-'+ord); - - if (Touch.support) { - jq.bind('touchstart.jcrop', Touch.createDragger(ord)); - } - - $hdl_holder.append(jq); - return jq; - } - //}}} - function insertHandle(ord) //{{{ - { - var hs = options.handleSize, - - div = dragDiv(ord, hdep++).css({ - opacity: options.handleOpacity - }).addClass(cssClass('handle')); - - if (hs) { div.width(hs).height(hs); } - - return div; - } - //}}} - function insertDragbar(ord) //{{{ - { - return dragDiv(ord, hdep++).addClass('jcrop-dragbar'); - } - //}}} - function createDragbars(li) //{{{ - { - var i; - for (i = 0; i < li.length; i++) { - dragbar[li[i]] = insertDragbar(li[i]); - } - } - //}}} - function createBorders(li) //{{{ - { - var cl,i; - for (i = 0; i < li.length; i++) { - switch(li[i]){ - case'n': cl='hline'; break; - case's': cl='hline bottom'; break; - case'e': cl='vline right'; break; - case'w': cl='vline'; break; - } - borders[li[i]] = insertBorder(cl); - } - } - //}}} - function createHandles(li) //{{{ - { - var i; - for (i = 0; i < li.length; i++) { - handle[li[i]] = insertHandle(li[i]); - } - } - //}}} - function moveto(x, y) //{{{ - { - if (!options.shade) { - $img2.css({ - top: px(-y), - left: px(-x) - }); - } - $sel.css({ - top: px(y), - left: px(x) - }); - } - //}}} - function resize(w, h) //{{{ - { - $sel.width(Math.round(w)).height(Math.round(h)); - } - //}}} - function refresh() //{{{ - { - var c = Coords.getFixed(); - - Coords.setPressed([c.x, c.y]); - Coords.setCurrent([c.x2, c.y2]); - - updateVisible(); - } - //}}} - - // Internal Methods - function updateVisible(select) //{{{ - { - if (awake) { - return update(select); - } - } - //}}} - function update(select) //{{{ - { - var c = Coords.getFixed(); - - resize(c.w, c.h); - moveto(c.x, c.y); - if (options.shade) Shade.updateRaw(c); - - awake || show(); - - if (select) { - options.onSelect.call(api, unscale(c)); - } else { - options.onChange.call(api, unscale(c)); - } - } - //}}} - function setBgOpacity(opacity,force,now) //{{{ - { - if (!awake && !force) return; - if (options.bgFade && !now) { - $img.animate({ - opacity: opacity - },{ - queue: false, - duration: options.fadeTime - }); - } else { - $img.css('opacity', opacity); - } - } - //}}} - function show() //{{{ - { - $sel.show(); - - if (options.shade) Shade.opacity(bgopacity); - else setBgOpacity(bgopacity,true); - - awake = true; - } - //}}} - function release() //{{{ - { - disableHandles(); - $sel.hide(); - - if (options.shade) Shade.opacity(1); - else setBgOpacity(1); - - awake = false; - options.onRelease.call(api); - } - //}}} - function showHandles() //{{{ - { - if (seehandles) { - $hdl_holder.show(); - } - } - //}}} - function enableHandles() //{{{ - { - seehandles = true; - if (options.allowResize) { - $hdl_holder.show(); - return true; - } - } - //}}} - function disableHandles() //{{{ - { - seehandles = false; - $hdl_holder.hide(); - } - //}}} - function animMode(v) //{{{ - { - if (v) { - animating = true; - disableHandles(); - } else { - animating = false; - enableHandles(); - } - } - //}}} - function done() //{{{ - { - animMode(false); - refresh(); - } - //}}} - // Insert draggable elements {{{ - // Insert border divs for outline - - if (options.dragEdges && $.isArray(options.createDragbars)) - createDragbars(options.createDragbars); - - if ($.isArray(options.createHandles)) - createHandles(options.createHandles); - - if (options.drawBorders && $.isArray(options.createBorders)) - createBorders(options.createBorders); - - //}}} - - // This is a hack for iOS5 to support drag/move touch functionality - $(document).bind('touchstart.jcrop-ios',function(e) { - if ($(e.currentTarget).hasClass('jcrop-tracker')) e.stopPropagation(); - }); - - var $track = newTracker().mousedown(createDragger('move')).css({ - cursor: 'move', - position: 'absolute', - zIndex: 360 - }); - - if (Touch.support) { - $track.bind('touchstart.jcrop', Touch.createDragger('move')); - } - - $img_holder.append($track); - disableHandles(); - - return { - updateVisible: updateVisible, - update: update, - release: release, - refresh: refresh, - isAwake: function () { - return awake; - }, - setCursor: function (cursor) { - $track.css('cursor', cursor); - }, - enableHandles: enableHandles, - enableOnly: function () { - seehandles = true; - }, - showHandles: showHandles, - disableHandles: disableHandles, - animMode: animMode, - setBgOpacity: setBgOpacity, - done: done - }; - }()); - - //}}} - // Tracker Module {{{ - var Tracker = (function () { - var onMove = function () {}, - onDone = function () {}, - trackDoc = options.trackDocument; - - function toFront(touch) //{{{ - { - $trk.css({ - zIndex: 450 - }); - - if (touch) - $(document) - .bind('touchmove.jcrop', trackTouchMove) - .bind('touchend.jcrop', trackTouchEnd); - - else if (trackDoc) - $(document) - .bind('mousemove.jcrop',trackMove) - .bind('mouseup.jcrop',trackUp); - } - //}}} - function toBack() //{{{ - { - $trk.css({ - zIndex: 290 - }); - $(document).unbind('.jcrop'); - } - //}}} - function trackMove(e) //{{{ - { - onMove(mouseAbs(e)); - return false; - } - //}}} - function trackUp(e) //{{{ - { - e.preventDefault(); - e.stopPropagation(); - - if (btndown) { - btndown = false; - - onDone(mouseAbs(e)); - - if (Selection.isAwake()) { - options.onSelect.call(api, unscale(Coords.getFixed())); - } - - toBack(); - onMove = function () {}; - onDone = function () {}; - } - - return false; - } - //}}} - function activateHandlers(move, done, touch) //{{{ - { - btndown = true; - onMove = move; - onDone = done; - toFront(touch); - return false; - } - //}}} - function trackTouchMove(e) //{{{ - { - onMove(mouseAbs(Touch.cfilter(e))); - return false; - } - //}}} - function trackTouchEnd(e) //{{{ - { - return trackUp(Touch.cfilter(e)); - } - //}}} - function setCursor(t) //{{{ - { - $trk.css('cursor', t); - } - //}}} - - if (!trackDoc) { - $trk.mousemove(trackMove).mouseup(trackUp).mouseout(trackUp); - } - - $img.before($trk); - return { - activateHandlers: activateHandlers, - setCursor: setCursor - }; - }()); - //}}} - // KeyManager Module {{{ - var KeyManager = (function () { - var $keymgr = $('').css({ - position: 'fixed', - left: '-120px', - width: '12px' - }).addClass('jcrop-keymgr'), - - $keywrap = $('
').css({ - position: 'absolute', - overflow: 'hidden' - }).append($keymgr); - - function watchKeys() //{{{ - { - if (options.keySupport) { - $keymgr.show(); - $keymgr.focus(); - } - } - //}}} - function onBlur(e) //{{{ - { - $keymgr.hide(); - } - //}}} - function doNudge(e, x, y) //{{{ - { - if (options.allowMove) { - Coords.moveOffset([x, y]); - Selection.updateVisible(true); - } - e.preventDefault(); - e.stopPropagation(); - } - //}}} - function parseKey(e) //{{{ - { - if (e.ctrlKey || e.metaKey) { - return true; - } - shift_down = e.shiftKey ? true : false; - var nudge = shift_down ? 10 : 1; - - switch (e.keyCode) { - case 37: - doNudge(e, -nudge, 0); - break; - case 39: - doNudge(e, nudge, 0); - break; - case 38: - doNudge(e, 0, -nudge); - break; - case 40: - doNudge(e, 0, nudge); - break; - case 27: - if (options.allowSelect) Selection.release(); - break; - case 9: - return true; - } - - return false; - } - //}}} - - if (options.keySupport) { - $keymgr.keydown(parseKey).blur(onBlur); - if (ie6mode || !options.fixedSupport) { - $keymgr.css({ - position: 'absolute', - left: '-20px' - }); - $keywrap.append($keymgr).insertBefore($img); - } else { - $keymgr.insertBefore($img); - } - } - - - return { - watchKeys: watchKeys - }; - }()); - //}}} - // }}} - // API methods {{{ - function setClass(cname) //{{{ - { - $div.removeClass().addClass(cssClass('holder')).addClass(cname); - } - //}}} - function animateTo(a, callback) //{{{ - { - var x1 = a[0] / xscale, - y1 = a[1] / yscale, - x2 = a[2] / xscale, - y2 = a[3] / yscale; - - if (animating) { - return; - } - - var animto = Coords.flipCoords(x1, y1, x2, y2), - c = Coords.getFixed(), - initcr = [c.x, c.y, c.x2, c.y2], - animat = initcr, - interv = options.animationDelay, - ix1 = animto[0] - initcr[0], - iy1 = animto[1] - initcr[1], - ix2 = animto[2] - initcr[2], - iy2 = animto[3] - initcr[3], - pcent = 0, - velocity = options.swingSpeed; - - x1 = animat[0]; - y1 = animat[1]; - x2 = animat[2]; - y2 = animat[3]; - - Selection.animMode(true); - var anim_timer; - - function queueAnimator() { - window.setTimeout(animator, interv); - } - var animator = (function () { - return function () { - pcent += (100 - pcent) / velocity; - - animat[0] = Math.round(x1 + ((pcent / 100) * ix1)); - animat[1] = Math.round(y1 + ((pcent / 100) * iy1)); - animat[2] = Math.round(x2 + ((pcent / 100) * ix2)); - animat[3] = Math.round(y2 + ((pcent / 100) * iy2)); - - if (pcent >= 99.8) { - pcent = 100; - } - if (pcent < 100) { - setSelectRaw(animat); - queueAnimator(); - } else { - Selection.done(); - Selection.animMode(false); - if (typeof(callback) === 'function') { - callback.call(api); - } - } - }; - }()); - queueAnimator(); - } - //}}} - function setSelect(rect) //{{{ - { - setSelectRaw([rect[0] / xscale, rect[1] / yscale, rect[2] / xscale, rect[3] / yscale]); - options.onSelect.call(api, unscale(Coords.getFixed())); - Selection.enableHandles(); - } - //}}} - function setSelectRaw(l) //{{{ - { - Coords.setPressed([l[0], l[1]]); - Coords.setCurrent([l[2], l[3]]); - Selection.update(); - } - //}}} - function tellSelect() //{{{ - { - return unscale(Coords.getFixed()); - } - //}}} - function tellScaled() //{{{ - { - return Coords.getFixed(); - } - //}}} - function setOptionsNew(opt) //{{{ - { - setOptions(opt); - interfaceUpdate(); - } - //}}} - function disableCrop() //{{{ - { - options.disabled = true; - Selection.disableHandles(); - Selection.setCursor('default'); - Tracker.setCursor('default'); - } - //}}} - function enableCrop() //{{{ - { - options.disabled = false; - interfaceUpdate(); - } - //}}} - function cancelCrop() //{{{ - { - Selection.done(); - Tracker.activateHandlers(null, null); - } - //}}} - function destroy() //{{{ - { - $div.remove(); - $origimg.show(); - $origimg.css('visibility','visible'); - $(obj).removeData('Jcrop'); - } - //}}} - function setImage(src, callback) //{{{ - { - Selection.release(); - disableCrop(); - var img = new Image(); - img.onload = function () { - var iw = img.width; - var ih = img.height; - var bw = options.boxWidth; - var bh = options.boxHeight; - $img.width(iw).height(ih); - $img.attr('src', src); - $img2.attr('src', src); - presize($img, bw, bh); - boundx = $img.width(); - boundy = $img.height(); - $img2.width(boundx).height(boundy); - $trk.width(boundx + (bound * 2)).height(boundy + (bound * 2)); - $div.width(boundx).height(boundy); - Shade.resize(boundx,boundy); - enableCrop(); - - if (typeof(callback) === 'function') { - callback.call(api); - } - }; - img.src = src; - } - //}}} - function colorChangeMacro($obj,color,now) { - var mycolor = color || options.bgColor; - if (options.bgFade && supportsColorFade() && options.fadeTime && !now) { - $obj.animate({ - backgroundColor: mycolor - }, { - queue: false, - duration: options.fadeTime - }); - } else { - $obj.css('backgroundColor', mycolor); - } - } - function interfaceUpdate(alt) //{{{ - // This method tweaks the interface based on options object. - // Called when options are changed and at end of initialization. - { - if (options.allowResize) { - if (alt) { - Selection.enableOnly(); - } else { - Selection.enableHandles(); - } - } else { - Selection.disableHandles(); - } - - Tracker.setCursor(options.allowSelect ? 'crosshair' : 'default'); - Selection.setCursor(options.allowMove ? 'move' : 'default'); - - if (options.hasOwnProperty('trueSize')) { - xscale = options.trueSize[0] / boundx; - yscale = options.trueSize[1] / boundy; - } - - if (options.hasOwnProperty('setSelect')) { - setSelect(options.setSelect); - Selection.done(); - delete(options.setSelect); - } - - Shade.refresh(); - - if (options.bgColor != bgcolor) { - colorChangeMacro( - options.shade? Shade.getShades(): $div, - options.shade? - (options.shadeColor || options.bgColor): - options.bgColor - ); - bgcolor = options.bgColor; - } - - if (bgopacity != options.bgOpacity) { - bgopacity = options.bgOpacity; - if (options.shade) Shade.refresh(); - else Selection.setBgOpacity(bgopacity); - } - - xlimit = options.maxSize[0] || 0; - ylimit = options.maxSize[1] || 0; - xmin = options.minSize[0] || 0; - ymin = options.minSize[1] || 0; - - if (options.hasOwnProperty('outerImage')) { - $img.attr('src', options.outerImage); - delete(options.outerImage); - } - - Selection.refresh(); - } - //}}} - //}}} - - if (Touch.support) $trk.bind('touchstart.jcrop', Touch.newSelection); - - $hdl_holder.hide(); - interfaceUpdate(true); - - var api = { - setImage: setImage, - animateTo: animateTo, - setSelect: setSelect, - setOptions: setOptionsNew, - tellSelect: tellSelect, - tellScaled: tellScaled, - setClass: setClass, - - disable: disableCrop, - enable: enableCrop, - cancel: cancelCrop, - release: Selection.release, - destroy: destroy, - - focus: KeyManager.watchKeys, - - getBounds: function () { - return [boundx * xscale, boundy * yscale]; - }, - getWidgetSize: function () { - return [boundx, boundy]; - }, - getScaleFactor: function () { - return [xscale, yscale]; - }, - getOptions: function() { - // careful: internal values are returned - return options; - }, - - ui: { - holder: $div, - selection: $sel - } - }; - - if (is_msie) $div.bind('selectstart', function () { return false; }); - - $origimg.data('Jcrop', api); - return api; - }; - $.fn.Jcrop = function (options, callback) //{{{ - { - var api; - // Iterate over each object, attach Jcrop - this.each(function () { - // If we've already attached to this object - if ($(this).data('Jcrop')) { - // The API can be requested this way (undocumented) - if (options === 'api') return $(this).data('Jcrop'); - // Otherwise, we just reset the options... - else $(this).data('Jcrop').setOptions(options); - } - // If we haven't been attached, preload and attach - else { - if (this.tagName == 'IMG') - $.Jcrop.Loader(this,function(){ - $(this).css({display:'block',visibility:'hidden'}); - api = $.Jcrop(this, options); - if ($.isFunction(callback)) callback.call(api); - }); - else { - $(this).css({display:'block',visibility:'hidden'}); - api = $.Jcrop(this, options); - if ($.isFunction(callback)) callback.call(api); - } - } - }); - - // Return "this" so the object is chainable (jQuery-style) - return this; - }; - //}}} - // $.Jcrop.Loader - basic image loader {{{ - - $.Jcrop.Loader = function(imgobj,success,error){ - var $img = $(imgobj), img = $img[0]; - - function completeCheck(){ - if (img.complete) { - $img.unbind('.jcloader'); - if ($.isFunction(success)) success.call(img); - } - else window.setTimeout(completeCheck,50); - } - - $img - .bind('load.jcloader',completeCheck) - .bind('error.jcloader',function(e){ - $img.unbind('.jcloader'); - if ($.isFunction(error)) error.call(img); - }); - - if (img.complete && $.isFunction(success)){ - $img.unbind('.jcloader'); - success.call(img); - } - }; - - //}}} - // Global Defaults {{{ - $.Jcrop.defaults = { - - // Basic Settings - allowSelect: true, - allowMove: true, - allowResize: true, - - trackDocument: true, - - // Styling Options - baseClass: 'jcrop', - addClass: null, - bgColor: 'black', - bgOpacity: 0.6, - bgFade: false, - borderOpacity: 0.4, - handleOpacity: 0.5, - handleSize: null, - - aspectRatio: 0, - keySupport: true, - createHandles: ['n','s','e','w','nw','ne','se','sw'], - createDragbars: ['n','s','e','w'], - createBorders: ['n','s','e','w'], - drawBorders: true, - dragEdges: true, - fixedSupport: true, - touchSupport: null, - - shade: null, - - boxWidth: 0, - boxHeight: 0, - boundary: 2, - fadeTime: 400, - animationDelay: 20, - swingSpeed: 3, - - minSelect: [0, 0], - maxSize: [0, 0], - minSize: [0, 0], - - // Callbacks / Event Handlers - onChange: function () {}, - onSelect: function () {}, - onDblClick: function () {}, - onRelease: function () {} - }; - - // }}} -}(jQuery)); diff --git a/js/extlib/jquery-ui/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png b/js/extlib/jquery-ui/css/smoothness/images/ui-bg_flat_0_aaaaaa_40x100.png deleted file mode 100644 index b527b5a2d76c49b7c993ed3241401bc1bd2c4069..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 212 zcmeAS@N?(olHy`uVBq!ia0vp^8bF-F1SA+{?>A)!QcOwS?k)_>#w|r1Kptm-M`SUO z_5fqIli7AahM1>|V~EA+ zRdP`(kYX@0Ff`RQFxE9N3^6dbGB&j`Fw!?)F zK#IZ0z|d6Jz*yJ7FvP&z%GlJ(z)0J`z{nc6a#?2AmP!?*K(O3p^r= zfwTu0yPeFo12TF&T^vI^j=w#x$i?I+((tf;UXnmgbH|3oY>pC!)f}(GR!16S-u+#{ ze6YEqRkW=8vGl=5qArKM<9}TC-}iEvB{zdaTcX5$wyRTK&ALYGq)gZD3$! kV6gHfD>I6Q-29Zxv`X9>Zfx1RAE<%B)78&qol`;+05wZ>@c;k- diff --git a/js/extlib/jquery-ui/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png b/js/extlib/jquery-ui/css/smoothness/images/ui-bg_glass_65_ffffff_1x400.png deleted file mode 100644 index a97b928f282fdfca32eed74ac33371bd2485f3ab..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^j6gI2NH8$CE1Q=ADW)WEcNYf6yIsOdfIQ9ukH}&m z?E%JaC$sH<3_(v9#}JM4$r%X}t&0mp9yKsb%{ak$*<@oTP*SzTHKHUXu_Vlzq_7?@ibn_3wdX&V?=85pd5$;ynPAvZrIGp!Q0h8tVRXUCGx5b?-VBQkUm|IuXOmYJrBRJgj{Vx zMbNnqUkncy+qa2-mWYc>swkcIuvGK#>(0d)B7)5f`@$Ei28nH~0h*~=;u=wsl30>z zm0Xkxq!^403{7bld-nr1 OFnGH9xvX4ft7*5%9pInC>nC}Q!>*kacj7-W$%8V O1_n=8KbLh*2~7Z#)lUfk diff --git a/js/extlib/jquery-ui/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png b/js/extlib/jquery-ui/css/smoothness/images/ui-bg_glass_95_fef1ec_1x400.png deleted file mode 100644 index 920e13b6a61aba897fd634da06a531cd3242c7bb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 332 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 oFmD$4S&0RXheCg2zs^YN~b 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 diff --git a/js/extlib/jquery-ui/css/smoothness/images/ui-icons_cd0a0a_256x240.png b/js/extlib/jquery-ui/css/smoothness/images/ui-icons_cd0a0a_256x240.png deleted file mode 100644 index 7af13a6004008f4d683852d9098f23751ee6c293..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4549 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 RqI`A;po22hs?@+d{tuTKDi;6% diff --git a/js/extlib/jquery-ui/css/smoothness/jquery-ui.css b/js/extlib/jquery-ui/css/smoothness/jquery-ui.css deleted file mode 100644 index 05a54792b7..0000000000 --- a/js/extlib/jquery-ui/css/smoothness/jquery-ui.css +++ /dev/null @@ -1,1225 +0,0 @@ -/*! jQuery UI - v1.11.3 - 2015-03-07 -* http://jqueryui.com -* Includes: core.css, draggable.css, resizable.css, selectable.css, sortable.css, accordion.css, autocomplete.css, button.css, datepicker.css, dialog.css, menu.css, progressbar.css, selectmenu.css, slider.css, spinner.css, tabs.css, tooltip.css, theme.css -* To view and modify this theme, visit http://jqueryui.com/themeroller/?ffDefault=Verdana%2CArial%2Csans-serif&fwDefault=normal&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=cccccc&bgTextureHeader=highlight_soft&bgImgOpacityHeader=75&borderColorHeader=aaaaaa&fcHeader=222222&iconColorHeader=222222&bgColorContent=ffffff&bgTextureContent=flat&bgImgOpacityContent=75&borderColorContent=aaaaaa&fcContent=222222&iconColorContent=222222&bgColorDefault=e6e6e6&bgTextureDefault=glass&bgImgOpacityDefault=75&borderColorDefault=d3d3d3&fcDefault=555555&iconColorDefault=888888&bgColorHover=dadada&bgTextureHover=glass&bgImgOpacityHover=75&borderColorHover=999999&fcHover=212121&iconColorHover=454545&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=aaaaaa&fcActive=212121&iconColorActive=454545&bgColorHighlight=fbf9ee&bgTextureHighlight=glass&bgImgOpacityHighlight=55&borderColorHighlight=fcefa1&fcHighlight=363636&iconColorHighlight=2e83ff&bgColorError=fef1ec&bgTextureError=glass&bgImgOpacityError=95&borderColorError=cd0a0a&fcError=cd0a0a&iconColorError=cd0a0a&bgColorOverlay=aaaaaa&bgTextureOverlay=flat&bgImgOpacityOverlay=0&opacityOverlay=30&bgColorShadow=aaaaaa&bgTextureShadow=flat&bgImgOpacityShadow=0&opacityShadow=30&thicknessShadow=8px&offsetTopShadow=-8px&offsetLeftShadow=-8px&cornerRadiusShadow=8px -* Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */ - -/* Layout helpers -----------------------------------*/ -.ui-helper-hidden { - display: none; -} -.ui-helper-hidden-accessible { - border: 0; - clip: rect(0 0 0 0); - height: 1px; - margin: -1px; - overflow: hidden; - padding: 0; - position: absolute; - width: 1px; -} -.ui-helper-reset { - margin: 0; - padding: 0; - border: 0; - outline: 0; - line-height: 1.3; - text-decoration: none; - font-size: 100%; - list-style: none; -} -.ui-helper-clearfix:before, -.ui-helper-clearfix:after { - content: ""; - display: table; - border-collapse: collapse; -} -.ui-helper-clearfix:after { - clear: both; -} -.ui-helper-clearfix { - min-height: 0; /* support: IE7 */ -} -.ui-helper-zfix { - width: 100%; - height: 100%; - top: 0; - left: 0; - position: absolute; - opacity: 0; - filter:Alpha(Opacity=0); /* support: IE8 */ -} - -.ui-front { - z-index: 100; -} - - -/* Interaction Cues -----------------------------------*/ -.ui-state-disabled { - cursor: default !important; -} - - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { - display: block; - text-indent: -99999px; - overflow: hidden; - background-repeat: no-repeat; -} - - -/* Misc visuals -----------------------------------*/ - -/* Overlays */ -.ui-widget-overlay { - position: fixed; - top: 0; - left: 0; - width: 100%; - height: 100%; -} -.ui-draggable-handle { - -ms-touch-action: none; - touch-action: none; -} -.ui-resizable { - position: relative; -} -.ui-resizable-handle { - position: absolute; - font-size: 0.1px; - display: block; - -ms-touch-action: none; - touch-action: none; -} -.ui-resizable-disabled .ui-resizable-handle, -.ui-resizable-autohide .ui-resizable-handle { - display: none; -} -.ui-resizable-n { - cursor: n-resize; - height: 7px; - width: 100%; - top: -5px; - left: 0; -} -.ui-resizable-s { - cursor: s-resize; - height: 7px; - width: 100%; - bottom: -5px; - left: 0; -} -.ui-resizable-e { - cursor: e-resize; - width: 7px; - right: -5px; - top: 0; - height: 100%; -} -.ui-resizable-w { - cursor: w-resize; - width: 7px; - left: -5px; - top: 0; - height: 100%; -} -.ui-resizable-se { - cursor: se-resize; - width: 12px; - height: 12px; - right: 1px; - bottom: 1px; -} -.ui-resizable-sw { - cursor: sw-resize; - width: 9px; - height: 9px; - left: -5px; - bottom: -5px; -} -.ui-resizable-nw { - cursor: nw-resize; - width: 9px; - height: 9px; - left: -5px; - top: -5px; -} -.ui-resizable-ne { - cursor: ne-resize; - width: 9px; - height: 9px; - right: -5px; - top: -5px; -} -.ui-selectable { - -ms-touch-action: none; - touch-action: none; -} -.ui-selectable-helper { - position: absolute; - z-index: 100; - border: 1px dotted black; -} -.ui-sortable-handle { - -ms-touch-action: none; - touch-action: none; -} -.ui-accordion .ui-accordion-header { - display: block; - cursor: pointer; - position: relative; - margin: 2px 0 0 0; - padding: .5em .5em .5em .7em; - min-height: 0; /* support: IE7 */ - font-size: 100%; -} -.ui-accordion .ui-accordion-icons { - padding-left: 2.2em; -} -.ui-accordion .ui-accordion-icons .ui-accordion-icons { - padding-left: 2.2em; -} -.ui-accordion .ui-accordion-header .ui-accordion-header-icon { - position: absolute; - left: .5em; - top: 50%; - margin-top: -8px; -} -.ui-accordion .ui-accordion-content { - padding: 1em 2.2em; - border-top: 0; - overflow: auto; -} -.ui-autocomplete { - position: absolute; - top: 0; - left: 0; - cursor: default; -} -.ui-button { - display: inline-block; - position: relative; - padding: 0; - line-height: normal; - margin-right: .1em; - cursor: pointer; - vertical-align: middle; - text-align: center; - overflow: visible; /* removes extra width in IE */ -} -.ui-button, -.ui-button:link, -.ui-button:visited, -.ui-button:hover, -.ui-button:active { - text-decoration: none; -} -/* to make room for the icon, a width needs to be set here */ -.ui-button-icon-only { - width: 2.2em; -} -/* button elements seem to need a little more width */ -button.ui-button-icon-only { - width: 2.4em; -} -.ui-button-icons-only { - width: 3.4em; -} -button.ui-button-icons-only { - width: 3.7em; -} - -/* button text element */ -.ui-button .ui-button-text { - display: block; - line-height: normal; -} -.ui-button-text-only .ui-button-text { - padding: .4em 1em; -} -.ui-button-icon-only .ui-button-text, -.ui-button-icons-only .ui-button-text { - padding: .4em; - text-indent: -9999999px; -} -.ui-button-text-icon-primary .ui-button-text, -.ui-button-text-icons .ui-button-text { - padding: .4em 1em .4em 2.1em; -} -.ui-button-text-icon-secondary .ui-button-text, -.ui-button-text-icons .ui-button-text { - padding: .4em 2.1em .4em 1em; -} -.ui-button-text-icons .ui-button-text { - padding-left: 2.1em; - padding-right: 2.1em; -} -/* no icon support for input elements, provide padding by default */ -input.ui-button { - padding: .4em 1em; -} - -/* button icon element(s) */ -.ui-button-icon-only .ui-icon, -.ui-button-text-icon-primary .ui-icon, -.ui-button-text-icon-secondary .ui-icon, -.ui-button-text-icons .ui-icon, -.ui-button-icons-only .ui-icon { - position: absolute; - top: 50%; - margin-top: -8px; -} -.ui-button-icon-only .ui-icon { - left: 50%; - margin-left: -8px; -} -.ui-button-text-icon-primary .ui-button-icon-primary, -.ui-button-text-icons .ui-button-icon-primary, -.ui-button-icons-only .ui-button-icon-primary { - left: .5em; -} -.ui-button-text-icon-secondary .ui-button-icon-secondary, -.ui-button-text-icons .ui-button-icon-secondary, -.ui-button-icons-only .ui-button-icon-secondary { - right: .5em; -} - -/* button sets */ -.ui-buttonset { - margin-right: 7px; -} -.ui-buttonset .ui-button { - margin-left: 0; - margin-right: -.3em; -} - -/* workarounds */ -/* reset extra padding in Firefox, see h5bp.com/l */ -input.ui-button::-moz-focus-inner, -button.ui-button::-moz-focus-inner { - border: 0; - padding: 0; -} -.ui-datepicker { - width: 17em; - padding: .2em .2em 0; - display: none; -} -.ui-datepicker .ui-datepicker-header { - position: relative; - padding: .2em 0; -} -.ui-datepicker .ui-datepicker-prev, -.ui-datepicker .ui-datepicker-next { - position: absolute; - top: 2px; - width: 1.8em; - height: 1.8em; -} -.ui-datepicker .ui-datepicker-prev-hover, -.ui-datepicker .ui-datepicker-next-hover { - top: 1px; -} -.ui-datepicker .ui-datepicker-prev { - left: 2px; -} -.ui-datepicker .ui-datepicker-next { - right: 2px; -} -.ui-datepicker .ui-datepicker-prev-hover { - left: 1px; -} -.ui-datepicker .ui-datepicker-next-hover { - right: 1px; -} -.ui-datepicker .ui-datepicker-prev span, -.ui-datepicker .ui-datepicker-next span { - display: block; - position: absolute; - left: 50%; - margin-left: -8px; - top: 50%; - margin-top: -8px; -} -.ui-datepicker .ui-datepicker-title { - margin: 0 2.3em; - line-height: 1.8em; - text-align: center; -} -.ui-datepicker .ui-datepicker-title select { - font-size: 1em; - margin: 1px 0; -} -.ui-datepicker select.ui-datepicker-month, -.ui-datepicker select.ui-datepicker-year { - width: 45%; -} -.ui-datepicker table { - width: 100%; - font-size: .9em; - border-collapse: collapse; - margin: 0 0 .4em; -} -.ui-datepicker th { - padding: .7em .3em; - text-align: center; - font-weight: bold; - border: 0; -} -.ui-datepicker td { - border: 0; - padding: 1px; -} -.ui-datepicker td span, -.ui-datepicker td a { - display: block; - padding: .2em; - text-align: right; - text-decoration: none; -} -.ui-datepicker .ui-datepicker-buttonpane { - background-image: none; - margin: .7em 0 0 0; - padding: 0 .2em; - border-left: 0; - border-right: 0; - border-bottom: 0; -} -.ui-datepicker .ui-datepicker-buttonpane button { - float: right; - margin: .5em .2em .4em; - cursor: pointer; - padding: .2em .6em .3em .6em; - width: auto; - overflow: visible; -} -.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { - float: left; -} - -/* with multiple calendars */ -.ui-datepicker.ui-datepicker-multi { - width: auto; -} -.ui-datepicker-multi .ui-datepicker-group { - float: left; -} -.ui-datepicker-multi .ui-datepicker-group table { - width: 95%; - margin: 0 auto .4em; -} -.ui-datepicker-multi-2 .ui-datepicker-group { - width: 50%; -} -.ui-datepicker-multi-3 .ui-datepicker-group { - width: 33.3%; -} -.ui-datepicker-multi-4 .ui-datepicker-group { - width: 25%; -} -.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header, -.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header { - border-left-width: 0; -} -.ui-datepicker-multi .ui-datepicker-buttonpane { - clear: left; -} -.ui-datepicker-row-break { - clear: both; - width: 100%; - font-size: 0; -} - -/* RTL support */ -.ui-datepicker-rtl { - direction: rtl; -} -.ui-datepicker-rtl .ui-datepicker-prev { - right: 2px; - left: auto; -} -.ui-datepicker-rtl .ui-datepicker-next { - left: 2px; - right: auto; -} -.ui-datepicker-rtl .ui-datepicker-prev:hover { - right: 1px; - left: auto; -} -.ui-datepicker-rtl .ui-datepicker-next:hover { - left: 1px; - right: auto; -} -.ui-datepicker-rtl .ui-datepicker-buttonpane { - clear: right; -} -.ui-datepicker-rtl .ui-datepicker-buttonpane button { - float: left; -} -.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current, -.ui-datepicker-rtl .ui-datepicker-group { - float: right; -} -.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header, -.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header { - border-right-width: 0; - border-left-width: 1px; -} -.ui-dialog { - overflow: hidden; - position: absolute; - top: 0; - left: 0; - padding: .2em; - outline: 0; -} -.ui-dialog .ui-dialog-titlebar { - padding: .4em 1em; - position: relative; -} -.ui-dialog .ui-dialog-title { - float: left; - margin: .1em 0; - white-space: nowrap; - width: 90%; - overflow: hidden; - text-overflow: ellipsis; -} -.ui-dialog .ui-dialog-titlebar-close { - position: absolute; - right: .3em; - top: 50%; - width: 20px; - margin: -10px 0 0 0; - padding: 1px; - height: 20px; -} -.ui-dialog .ui-dialog-content { - position: relative; - border: 0; - padding: .5em 1em; - background: none; - overflow: auto; -} -.ui-dialog .ui-dialog-buttonpane { - text-align: left; - border-width: 1px 0 0 0; - background-image: none; - margin-top: .5em; - padding: .3em 1em .5em .4em; -} -.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { - float: right; -} -.ui-dialog .ui-dialog-buttonpane button { - margin: .5em .4em .5em 0; - cursor: pointer; -} -.ui-dialog .ui-resizable-se { - width: 12px; - height: 12px; - right: -5px; - bottom: -5px; - background-position: 16px 16px; -} -.ui-draggable .ui-dialog-titlebar { - cursor: move; -} -.ui-menu { - list-style: none; - padding: 0; - margin: 0; - display: block; - outline: none; -} -.ui-menu .ui-menu { - position: absolute; -} -.ui-menu .ui-menu-item { - position: relative; - margin: 0; - padding: 3px 1em 3px .4em; - cursor: pointer; - min-height: 0; /* support: IE7 */ - /* support: IE10, see #8844 */ - list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"); -} -.ui-menu .ui-menu-divider { - margin: 5px 0; - height: 0; - font-size: 0; - line-height: 0; - border-width: 1px 0 0 0; -} -.ui-menu .ui-state-focus, -.ui-menu .ui-state-active { - margin: -1px; -} - -/* icon support */ -.ui-menu-icons { - position: relative; -} -.ui-menu-icons .ui-menu-item { - padding-left: 2em; -} - -/* left-aligned */ -.ui-menu .ui-icon { - position: absolute; - top: 0; - bottom: 0; - left: .2em; - margin: auto 0; -} - -/* right-aligned */ -.ui-menu .ui-menu-icon { - left: auto; - right: 0; -} -.ui-progressbar { - height: 2em; - text-align: left; - overflow: hidden; -} -.ui-progressbar .ui-progressbar-value { - margin: -1px; - height: 100%; -} -.ui-progressbar .ui-progressbar-overlay { - background: url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw=="); - height: 100%; - filter: alpha(opacity=25); /* support: IE8 */ - opacity: 0.25; -} -.ui-progressbar-indeterminate .ui-progressbar-value { - background-image: none; -} -.ui-selectmenu-menu { - padding: 0; - margin: 0; - position: absolute; - top: 0; - left: 0; - display: none; -} -.ui-selectmenu-menu .ui-menu { - overflow: auto; - /* Support: IE7 */ - overflow-x: hidden; - padding-bottom: 1px; -} -.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup { - font-size: 1em; - font-weight: bold; - line-height: 1.5; - padding: 2px 0.4em; - margin: 0.5em 0 0 0; - height: auto; - border: 0; -} -.ui-selectmenu-open { - display: block; -} -.ui-selectmenu-button { - display: inline-block; - overflow: hidden; - position: relative; - text-decoration: none; - cursor: pointer; -} -.ui-selectmenu-button span.ui-icon { - right: 0.5em; - left: auto; - margin-top: -8px; - position: absolute; - top: 50%; -} -.ui-selectmenu-button span.ui-selectmenu-text { - text-align: left; - padding: 0.4em 2.1em 0.4em 1em; - display: block; - line-height: 1.4; - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; -} -.ui-slider { - position: relative; - text-align: left; -} -.ui-slider .ui-slider-handle { - position: absolute; - z-index: 2; - width: 1.2em; - height: 1.2em; - cursor: default; - -ms-touch-action: none; - touch-action: none; -} -.ui-slider .ui-slider-range { - position: absolute; - z-index: 1; - font-size: .7em; - display: block; - border: 0; - background-position: 0 0; -} - -/* support: IE8 - See #6727 */ -.ui-slider.ui-state-disabled .ui-slider-handle, -.ui-slider.ui-state-disabled .ui-slider-range { - filter: inherit; -} - -.ui-slider-horizontal { - height: .8em; -} -.ui-slider-horizontal .ui-slider-handle { - top: -.3em; - margin-left: -.6em; -} -.ui-slider-horizontal .ui-slider-range { - top: 0; - height: 100%; -} -.ui-slider-horizontal .ui-slider-range-min { - left: 0; -} -.ui-slider-horizontal .ui-slider-range-max { - right: 0; -} - -.ui-slider-vertical { - width: .8em; - height: 100px; -} -.ui-slider-vertical .ui-slider-handle { - left: -.3em; - margin-left: 0; - margin-bottom: -.6em; -} -.ui-slider-vertical .ui-slider-range { - left: 0; - width: 100%; -} -.ui-slider-vertical .ui-slider-range-min { - bottom: 0; -} -.ui-slider-vertical .ui-slider-range-max { - top: 0; -} -.ui-spinner { - position: relative; - display: inline-block; - overflow: hidden; - padding: 0; - vertical-align: middle; -} -.ui-spinner-input { - border: none; - background: none; - color: inherit; - padding: 0; - margin: .2em 0; - vertical-align: middle; - margin-left: .4em; - margin-right: 22px; -} -.ui-spinner-button { - width: 16px; - height: 50%; - font-size: .5em; - padding: 0; - margin: 0; - text-align: center; - position: absolute; - cursor: default; - display: block; - overflow: hidden; - right: 0; -} -/* more specificity required here to override default borders */ -.ui-spinner a.ui-spinner-button { - border-top: none; - border-bottom: none; - border-right: none; -} -/* vertically center icon */ -.ui-spinner .ui-icon { - position: absolute; - margin-top: -8px; - top: 50%; - left: 0; -} -.ui-spinner-up { - top: 0; -} -.ui-spinner-down { - bottom: 0; -} - -/* TR overrides */ -.ui-spinner .ui-icon-triangle-1-s { - /* need to fix icons sprite */ - background-position: -65px -16px; -} -.ui-tabs { - position: relative;/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */ - padding: .2em; -} -.ui-tabs .ui-tabs-nav { - margin: 0; - padding: .2em .2em 0; -} -.ui-tabs .ui-tabs-nav li { - list-style: none; - float: left; - position: relative; - top: 0; - margin: 1px .2em 0 0; - border-bottom-width: 0; - padding: 0; - white-space: nowrap; -} -.ui-tabs .ui-tabs-nav .ui-tabs-anchor { - float: left; - padding: .5em 1em; - text-decoration: none; -} -.ui-tabs .ui-tabs-nav li.ui-tabs-active { - margin-bottom: -1px; - padding-bottom: 1px; -} -.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor, -.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor, -.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor { - cursor: text; -} -.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor { - cursor: pointer; -} -.ui-tabs .ui-tabs-panel { - display: block; - border-width: 0; - padding: 1em 1.4em; - background: none; -} -.ui-tooltip { - padding: 8px; - position: absolute; - z-index: 9999; - max-width: 300px; - -webkit-box-shadow: 0 0 5px #aaa; - box-shadow: 0 0 5px #aaa; -} -body .ui-tooltip { - border-width: 2px; -} - -/* Component containers -----------------------------------*/ -.ui-widget { - font-family: Verdana,Arial,sans-serif; - font-size: 1.1em; -} -.ui-widget .ui-widget { - font-size: 1em; -} -.ui-widget input, -.ui-widget select, -.ui-widget textarea, -.ui-widget button { - font-family: Verdana,Arial,sans-serif; - font-size: 1em; -} -.ui-widget-content { - border: 1px solid #aaaaaa; - background: #ffffff url("images/ui-bg_flat_75_ffffff_40x100.png") 50% 50% repeat-x; - color: #222222; -} -.ui-widget-content a { - color: #222222; -} -.ui-widget-header { - border: 1px solid #aaaaaa; - background: #cccccc url("images/ui-bg_highlight-soft_75_cccccc_1x100.png") 50% 50% repeat-x; - color: #222222; - font-weight: bold; -} -.ui-widget-header a { - color: #222222; -} - -/* Interaction states -----------------------------------*/ -.ui-state-default, -.ui-widget-content .ui-state-default, -.ui-widget-header .ui-state-default { - border: 1px solid #d3d3d3; - background: #e6e6e6 url("images/ui-bg_glass_75_e6e6e6_1x400.png") 50% 50% repeat-x; - font-weight: normal; - color: #555555; -} -.ui-state-default a, -.ui-state-default a:link, -.ui-state-default a:visited { - color: #555555; - text-decoration: none; -} -.ui-state-hover, -.ui-widget-content .ui-state-hover, -.ui-widget-header .ui-state-hover, -.ui-state-focus, -.ui-widget-content .ui-state-focus, -.ui-widget-header .ui-state-focus { - border: 1px solid #999999; - background: #dadada url("images/ui-bg_glass_75_dadada_1x400.png") 50% 50% repeat-x; - font-weight: normal; - color: #212121; -} -.ui-state-hover a, -.ui-state-hover a:hover, -.ui-state-hover a:link, -.ui-state-hover a:visited, -.ui-state-focus a, -.ui-state-focus a:hover, -.ui-state-focus a:link, -.ui-state-focus a:visited { - color: #212121; - text-decoration: none; -} -.ui-state-active, -.ui-widget-content .ui-state-active, -.ui-widget-header .ui-state-active { - border: 1px solid #aaaaaa; - background: #ffffff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x; - font-weight: normal; - color: #212121; -} -.ui-state-active a, -.ui-state-active a:link, -.ui-state-active a:visited { - color: #212121; - text-decoration: none; -} - -/* Interaction Cues -----------------------------------*/ -.ui-state-highlight, -.ui-widget-content .ui-state-highlight, -.ui-widget-header .ui-state-highlight { - border: 1px solid #fcefa1; - background: #fbf9ee url("images/ui-bg_glass_55_fbf9ee_1x400.png") 50% 50% repeat-x; - color: #363636; -} -.ui-state-highlight a, -.ui-widget-content .ui-state-highlight a, -.ui-widget-header .ui-state-highlight a { - color: #363636; -} -.ui-state-error, -.ui-widget-content .ui-state-error, -.ui-widget-header .ui-state-error { - border: 1px solid #cd0a0a; - background: #fef1ec url("images/ui-bg_glass_95_fef1ec_1x400.png") 50% 50% repeat-x; - color: #cd0a0a; -} -.ui-state-error a, -.ui-widget-content .ui-state-error a, -.ui-widget-header .ui-state-error a { - color: #cd0a0a; -} -.ui-state-error-text, -.ui-widget-content .ui-state-error-text, -.ui-widget-header .ui-state-error-text { - color: #cd0a0a; -} -.ui-priority-primary, -.ui-widget-content .ui-priority-primary, -.ui-widget-header .ui-priority-primary { - font-weight: bold; -} -.ui-priority-secondary, -.ui-widget-content .ui-priority-secondary, -.ui-widget-header .ui-priority-secondary { - opacity: .7; - filter:Alpha(Opacity=70); /* support: IE8 */ - font-weight: normal; -} -.ui-state-disabled, -.ui-widget-content .ui-state-disabled, -.ui-widget-header .ui-state-disabled { - opacity: .35; - filter:Alpha(Opacity=35); /* support: IE8 */ - background-image: none; -} -.ui-state-disabled .ui-icon { - filter:Alpha(Opacity=35); /* support: IE8 - See #6059 */ -} - -/* Icons -----------------------------------*/ - -/* states and images */ -.ui-icon { - width: 16px; - height: 16px; -} -.ui-icon, -.ui-widget-content .ui-icon { - background-image: url("images/ui-icons_222222_256x240.png"); -} -.ui-widget-header .ui-icon { - background-image: url("images/ui-icons_222222_256x240.png"); -} -.ui-state-default .ui-icon { - background-image: url("images/ui-icons_888888_256x240.png"); -} -.ui-state-hover .ui-icon, -.ui-state-focus .ui-icon { - background-image: url("images/ui-icons_454545_256x240.png"); -} -.ui-state-active .ui-icon { - background-image: url("images/ui-icons_454545_256x240.png"); -} -.ui-state-highlight .ui-icon { - background-image: url("images/ui-icons_2e83ff_256x240.png"); -} -.ui-state-error .ui-icon, -.ui-state-error-text .ui-icon { - background-image: url("images/ui-icons_cd0a0a_256x240.png"); -} - -/* positioning */ -.ui-icon-blank { background-position: 16px 16px; } -.ui-icon-carat-1-n { background-position: 0 0; } -.ui-icon-carat-1-ne { background-position: -16px 0; } -.ui-icon-carat-1-e { background-position: -32px 0; } -.ui-icon-carat-1-se { background-position: -48px 0; } -.ui-icon-carat-1-s { background-position: -64px 0; } -.ui-icon-carat-1-sw { background-position: -80px 0; } -.ui-icon-carat-1-w { background-position: -96px 0; } -.ui-icon-carat-1-nw { background-position: -112px 0; } -.ui-icon-carat-2-n-s { background-position: -128px 0; } -.ui-icon-carat-2-e-w { background-position: -144px 0; } -.ui-icon-triangle-1-n { background-position: 0 -16px; } -.ui-icon-triangle-1-ne { background-position: -16px -16px; } -.ui-icon-triangle-1-e { background-position: -32px -16px; } -.ui-icon-triangle-1-se { background-position: -48px -16px; } -.ui-icon-triangle-1-s { background-position: -64px -16px; } -.ui-icon-triangle-1-sw { background-position: -80px -16px; } -.ui-icon-triangle-1-w { background-position: -96px -16px; } -.ui-icon-triangle-1-nw { background-position: -112px -16px; } -.ui-icon-triangle-2-n-s { background-position: -128px -16px; } -.ui-icon-triangle-2-e-w { background-position: -144px -16px; } -.ui-icon-arrow-1-n { background-position: 0 -32px; } -.ui-icon-arrow-1-ne { background-position: -16px -32px; } -.ui-icon-arrow-1-e { background-position: -32px -32px; } -.ui-icon-arrow-1-se { background-position: -48px -32px; } -.ui-icon-arrow-1-s { background-position: -64px -32px; } -.ui-icon-arrow-1-sw { background-position: -80px -32px; } -.ui-icon-arrow-1-w { background-position: -96px -32px; } -.ui-icon-arrow-1-nw { background-position: -112px -32px; } -.ui-icon-arrow-2-n-s { background-position: -128px -32px; } -.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; } -.ui-icon-arrow-2-e-w { background-position: -160px -32px; } -.ui-icon-arrow-2-se-nw { background-position: -176px -32px; } -.ui-icon-arrowstop-1-n { background-position: -192px -32px; } -.ui-icon-arrowstop-1-e { background-position: -208px -32px; } -.ui-icon-arrowstop-1-s { background-position: -224px -32px; } -.ui-icon-arrowstop-1-w { background-position: -240px -32px; } -.ui-icon-arrowthick-1-n { background-position: 0 -48px; } -.ui-icon-arrowthick-1-ne { background-position: -16px -48px; } -.ui-icon-arrowthick-1-e { background-position: -32px -48px; } -.ui-icon-arrowthick-1-se { background-position: -48px -48px; } -.ui-icon-arrowthick-1-s { background-position: -64px -48px; } -.ui-icon-arrowthick-1-sw { background-position: -80px -48px; } -.ui-icon-arrowthick-1-w { background-position: -96px -48px; } -.ui-icon-arrowthick-1-nw { background-position: -112px -48px; } -.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; } -.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; } -.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; } -.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; } -.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; } -.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; } -.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; } -.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; } -.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; } -.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; } -.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; } -.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; } -.ui-icon-arrowreturn-1-w { background-position: -64px -64px; } -.ui-icon-arrowreturn-1-n { background-position: -80px -64px; } -.ui-icon-arrowreturn-1-e { background-position: -96px -64px; } -.ui-icon-arrowreturn-1-s { background-position: -112px -64px; } -.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; } -.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; } -.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; } -.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; } -.ui-icon-arrow-4 { background-position: 0 -80px; } -.ui-icon-arrow-4-diag { background-position: -16px -80px; } -.ui-icon-extlink { background-position: -32px -80px; } -.ui-icon-newwin { background-position: -48px -80px; } -.ui-icon-refresh { background-position: -64px -80px; } -.ui-icon-shuffle { background-position: -80px -80px; } -.ui-icon-transfer-e-w { background-position: -96px -80px; } -.ui-icon-transferthick-e-w { background-position: -112px -80px; } -.ui-icon-folder-collapsed { background-position: 0 -96px; } -.ui-icon-folder-open { background-position: -16px -96px; } -.ui-icon-document { background-position: -32px -96px; } -.ui-icon-document-b { background-position: -48px -96px; } -.ui-icon-note { background-position: -64px -96px; } -.ui-icon-mail-closed { background-position: -80px -96px; } -.ui-icon-mail-open { background-position: -96px -96px; } -.ui-icon-suitcase { background-position: -112px -96px; } -.ui-icon-comment { background-position: -128px -96px; } -.ui-icon-person { background-position: -144px -96px; } -.ui-icon-print { background-position: -160px -96px; } -.ui-icon-trash { background-position: -176px -96px; } -.ui-icon-locked { background-position: -192px -96px; } -.ui-icon-unlocked { background-position: -208px -96px; } -.ui-icon-bookmark { background-position: -224px -96px; } -.ui-icon-tag { background-position: -240px -96px; } -.ui-icon-home { background-position: 0 -112px; } -.ui-icon-flag { background-position: -16px -112px; } -.ui-icon-calendar { background-position: -32px -112px; } -.ui-icon-cart { background-position: -48px -112px; } -.ui-icon-pencil { background-position: -64px -112px; } -.ui-icon-clock { background-position: -80px -112px; } -.ui-icon-disk { background-position: -96px -112px; } -.ui-icon-calculator { background-position: -112px -112px; } -.ui-icon-zoomin { background-position: -128px -112px; } -.ui-icon-zoomout { background-position: -144px -112px; } -.ui-icon-search { background-position: -160px -112px; } -.ui-icon-wrench { background-position: -176px -112px; } -.ui-icon-gear { background-position: -192px -112px; } -.ui-icon-heart { background-position: -208px -112px; } -.ui-icon-star { background-position: -224px -112px; } -.ui-icon-link { background-position: -240px -112px; } -.ui-icon-cancel { background-position: 0 -128px; } -.ui-icon-plus { background-position: -16px -128px; } -.ui-icon-plusthick { background-position: -32px -128px; } -.ui-icon-minus { background-position: -48px -128px; } -.ui-icon-minusthick { background-position: -64px -128px; } -.ui-icon-close { background-position: -80px -128px; } -.ui-icon-closethick { background-position: -96px -128px; } -.ui-icon-key { background-position: -112px -128px; } -.ui-icon-lightbulb { background-position: -128px -128px; } -.ui-icon-scissors { background-position: -144px -128px; } -.ui-icon-clipboard { background-position: -160px -128px; } -.ui-icon-copy { background-position: -176px -128px; } -.ui-icon-contact { background-position: -192px -128px; } -.ui-icon-image { background-position: -208px -128px; } -.ui-icon-video { background-position: -224px -128px; } -.ui-icon-script { background-position: -240px -128px; } -.ui-icon-alert { background-position: 0 -144px; } -.ui-icon-info { background-position: -16px -144px; } -.ui-icon-notice { background-position: -32px -144px; } -.ui-icon-help { background-position: -48px -144px; } -.ui-icon-check { background-position: -64px -144px; } -.ui-icon-bullet { background-position: -80px -144px; } -.ui-icon-radio-on { background-position: -96px -144px; } -.ui-icon-radio-off { background-position: -112px -144px; } -.ui-icon-pin-w { background-position: -128px -144px; } -.ui-icon-pin-s { background-position: -144px -144px; } -.ui-icon-play { background-position: 0 -160px; } -.ui-icon-pause { background-position: -16px -160px; } -.ui-icon-seek-next { background-position: -32px -160px; } -.ui-icon-seek-prev { background-position: -48px -160px; } -.ui-icon-seek-end { background-position: -64px -160px; } -.ui-icon-seek-start { background-position: -80px -160px; } -/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */ -.ui-icon-seek-first { background-position: -80px -160px; } -.ui-icon-stop { background-position: -96px -160px; } -.ui-icon-eject { background-position: -112px -160px; } -.ui-icon-volume-off { background-position: -128px -160px; } -.ui-icon-volume-on { background-position: -144px -160px; } -.ui-icon-power { background-position: 0 -176px; } -.ui-icon-signal-diag { background-position: -16px -176px; } -.ui-icon-signal { background-position: -32px -176px; } -.ui-icon-battery-0 { background-position: -48px -176px; } -.ui-icon-battery-1 { background-position: -64px -176px; } -.ui-icon-battery-2 { background-position: -80px -176px; } -.ui-icon-battery-3 { background-position: -96px -176px; } -.ui-icon-circle-plus { background-position: 0 -192px; } -.ui-icon-circle-minus { background-position: -16px -192px; } -.ui-icon-circle-close { background-position: -32px -192px; } -.ui-icon-circle-triangle-e { background-position: -48px -192px; } -.ui-icon-circle-triangle-s { background-position: -64px -192px; } -.ui-icon-circle-triangle-w { background-position: -80px -192px; } -.ui-icon-circle-triangle-n { background-position: -96px -192px; } -.ui-icon-circle-arrow-e { background-position: -112px -192px; } -.ui-icon-circle-arrow-s { background-position: -128px -192px; } -.ui-icon-circle-arrow-w { background-position: -144px -192px; } -.ui-icon-circle-arrow-n { background-position: -160px -192px; } -.ui-icon-circle-zoomin { background-position: -176px -192px; } -.ui-icon-circle-zoomout { background-position: -192px -192px; } -.ui-icon-circle-check { background-position: -208px -192px; } -.ui-icon-circlesmall-plus { background-position: 0 -208px; } -.ui-icon-circlesmall-minus { background-position: -16px -208px; } -.ui-icon-circlesmall-close { background-position: -32px -208px; } -.ui-icon-squaresmall-plus { background-position: -48px -208px; } -.ui-icon-squaresmall-minus { background-position: -64px -208px; } -.ui-icon-squaresmall-close { background-position: -80px -208px; } -.ui-icon-grip-dotted-vertical { background-position: 0 -224px; } -.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; } -.ui-icon-grip-solid-vertical { background-position: -32px -224px; } -.ui-icon-grip-solid-horizontal { background-position: -48px -224px; } -.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; } -.ui-icon-grip-diagonal-se { background-position: -80px -224px; } - - -/* Misc visuals -----------------------------------*/ - -/* Corner radius */ -.ui-corner-all, -.ui-corner-top, -.ui-corner-left, -.ui-corner-tl { - border-top-left-radius: 4px; -} -.ui-corner-all, -.ui-corner-top, -.ui-corner-right, -.ui-corner-tr { - border-top-right-radius: 4px; -} -.ui-corner-all, -.ui-corner-bottom, -.ui-corner-left, -.ui-corner-bl { - border-bottom-left-radius: 4px; -} -.ui-corner-all, -.ui-corner-bottom, -.ui-corner-right, -.ui-corner-br { - border-bottom-right-radius: 4px; -} - -/* Overlays */ -.ui-widget-overlay { - background: #aaaaaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x; - opacity: .3; - filter: Alpha(Opacity=30); /* support: IE8 */ -} -.ui-widget-shadow { - margin: -8px 0 0 -8px; - padding: 8px; - background: #aaaaaa url("images/ui-bg_flat_0_aaaaaa_40x100.png") 50% 50% repeat-x; - opacity: .3; - filter: Alpha(Opacity=30); /* support: IE8 */ - border-radius: 8px; -} diff --git a/js/extlib/jquery-ui/jquery-ui.js b/js/extlib/jquery-ui/jquery-ui.js deleted file mode 100644 index 1eeb5298b0..0000000000 --- a/js/extlib/jquery-ui/jquery-ui.js +++ /dev/null @@ -1,16607 +0,0 @@ -/*! jQuery UI - v1.11.3 - 2015-03-01 -* http://jqueryui.com -* Includes: core.js, widget.js, mouse.js, position.js, draggable.js, droppable.js, resizable.js, selectable.js, sortable.js, accordion.js, autocomplete.js, button.js, datepicker.js, dialog.js, menu.js, progressbar.js, selectmenu.js, slider.js, spinner.js, tabs.js, tooltip.js, effect.js, effect-blind.js, effect-bounce.js, effect-clip.js, effect-drop.js, effect-explode.js, effect-fade.js, effect-fold.js, effect-highlight.js, effect-puff.js, effect-pulsate.js, effect-scale.js, effect-shake.js, effect-size.js, effect-slide.js, effect-transfer.js -* Copyright 2015 jQuery Foundation and other contributors; Licensed MIT */ - -(function( factory ) { - if ( typeof define === "function" && define.amd ) { - - // AMD. Register as an anonymous module. - define([ "jquery" ], factory ); - } else { - - // Browser globals - factory( jQuery ); - } -}(function( $ ) { -/*! - * jQuery UI Core 1.11.3 - * http://jqueryui.com - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - * - * http://api.jqueryui.com/category/ui-core/ - */ - - -// $.ui might exist from components with no dependencies, e.g., $.ui.position -$.ui = $.ui || {}; - -$.extend( $.ui, { - version: "1.11.3", - - keyCode: { - BACKSPACE: 8, - COMMA: 188, - DELETE: 46, - DOWN: 40, - END: 35, - ENTER: 13, - ESCAPE: 27, - HOME: 36, - LEFT: 37, - PAGE_DOWN: 34, - PAGE_UP: 33, - PERIOD: 190, - RIGHT: 39, - SPACE: 32, - TAB: 9, - UP: 38 - } -}); - -// plugins -$.fn.extend({ - scrollParent: function( includeHidden ) { - var position = this.css( "position" ), - excludeStaticParent = position === "absolute", - overflowRegex = includeHidden ? /(auto|scroll|hidden)/ : /(auto|scroll)/, - scrollParent = this.parents().filter( function() { - var parent = $( this ); - if ( excludeStaticParent && parent.css( "position" ) === "static" ) { - return false; - } - return overflowRegex.test( parent.css( "overflow" ) + parent.css( "overflow-y" ) + parent.css( "overflow-x" ) ); - }).eq( 0 ); - - return position === "fixed" || !scrollParent.length ? $( this[ 0 ].ownerDocument || document ) : scrollParent; - }, - - uniqueId: (function() { - var uuid = 0; - - return function() { - return this.each(function() { - if ( !this.id ) { - this.id = "ui-id-" + ( ++uuid ); - } - }); - }; - })(), - - removeUniqueId: function() { - return this.each(function() { - if ( /^ui-id-\d+$/.test( this.id ) ) { - $( this ).removeAttr( "id" ); - } - }); - } -}); - -// selectors -function focusable( element, isTabIndexNotNaN ) { - var map, mapName, img, - nodeName = element.nodeName.toLowerCase(); - if ( "area" === nodeName ) { - map = element.parentNode; - mapName = map.name; - if ( !element.href || !mapName || map.nodeName.toLowerCase() !== "map" ) { - return false; - } - img = $( "img[usemap='#" + mapName + "']" )[ 0 ]; - return !!img && visible( img ); - } - return ( /^(input|select|textarea|button|object)$/.test( nodeName ) ? - !element.disabled : - "a" === nodeName ? - element.href || isTabIndexNotNaN : - isTabIndexNotNaN) && - // the element and all of its ancestors must be visible - visible( element ); -} - -function visible( element ) { - return $.expr.filters.visible( element ) && - !$( element ).parents().addBack().filter(function() { - return $.css( this, "visibility" ) === "hidden"; - }).length; -} - -$.extend( $.expr[ ":" ], { - data: $.expr.createPseudo ? - $.expr.createPseudo(function( dataName ) { - return function( elem ) { - return !!$.data( elem, dataName ); - }; - }) : - // support: jQuery <1.8 - function( elem, i, match ) { - return !!$.data( elem, match[ 3 ] ); - }, - - focusable: function( element ) { - return focusable( element, !isNaN( $.attr( element, "tabindex" ) ) ); - }, - - tabbable: function( element ) { - var tabIndex = $.attr( element, "tabindex" ), - isTabIndexNaN = isNaN( tabIndex ); - return ( isTabIndexNaN || tabIndex >= 0 ) && focusable( element, !isTabIndexNaN ); - } -}); - -// support: jQuery <1.8 -if ( !$( "" ).outerWidth( 1 ).jquery ) { - $.each( [ "Width", "Height" ], function( i, name ) { - var side = name === "Width" ? [ "Left", "Right" ] : [ "Top", "Bottom" ], - type = name.toLowerCase(), - orig = { - innerWidth: $.fn.innerWidth, - innerHeight: $.fn.innerHeight, - outerWidth: $.fn.outerWidth, - outerHeight: $.fn.outerHeight - }; - - function reduce( elem, size, border, margin ) { - $.each( side, function() { - size -= parseFloat( $.css( elem, "padding" + this ) ) || 0; - if ( border ) { - size -= parseFloat( $.css( elem, "border" + this + "Width" ) ) || 0; - } - if ( margin ) { - size -= parseFloat( $.css( elem, "margin" + this ) ) || 0; - } - }); - return size; - } - - $.fn[ "inner" + name ] = function( size ) { - if ( size === undefined ) { - return orig[ "inner" + name ].call( this ); - } - - return this.each(function() { - $( this ).css( type, reduce( this, size ) + "px" ); - }); - }; - - $.fn[ "outer" + name] = function( size, margin ) { - if ( typeof size !== "number" ) { - return orig[ "outer" + name ].call( this, size ); - } - - return this.each(function() { - $( this).css( type, reduce( this, size, true, margin ) + "px" ); - }); - }; - }); -} - -// support: jQuery <1.8 -if ( !$.fn.addBack ) { - $.fn.addBack = function( selector ) { - return this.add( selector == null ? - this.prevObject : this.prevObject.filter( selector ) - ); - }; -} - -// support: jQuery 1.6.1, 1.6.2 (http://bugs.jquery.com/ticket/9413) -if ( $( "" ).data( "a-b", "a" ).removeData( "a-b" ).data( "a-b" ) ) { - $.fn.removeData = (function( removeData ) { - return function( key ) { - if ( arguments.length ) { - return removeData.call( this, $.camelCase( key ) ); - } else { - return removeData.call( this ); - } - }; - })( $.fn.removeData ); -} - -// deprecated -$.ui.ie = !!/msie [\w.]+/.exec( navigator.userAgent.toLowerCase() ); - -$.fn.extend({ - focus: (function( orig ) { - return function( delay, fn ) { - return typeof delay === "number" ? - this.each(function() { - var elem = this; - setTimeout(function() { - $( elem ).focus(); - if ( fn ) { - fn.call( elem ); - } - }, delay ); - }) : - orig.apply( this, arguments ); - }; - })( $.fn.focus ), - - disableSelection: (function() { - var eventType = "onselectstart" in document.createElement( "div" ) ? - "selectstart" : - "mousedown"; - - return function() { - return this.bind( eventType + ".ui-disableSelection", function( event ) { - event.preventDefault(); - }); - }; - })(), - - enableSelection: function() { - return this.unbind( ".ui-disableSelection" ); - }, - - zIndex: function( zIndex ) { - if ( zIndex !== undefined ) { - return this.css( "zIndex", zIndex ); - } - - if ( this.length ) { - var elem = $( this[ 0 ] ), position, value; - while ( elem.length && elem[ 0 ] !== document ) { - // Ignore z-index if position is set to a value where z-index is ignored by the browser - // This makes behavior of this function consistent across browsers - // WebKit always returns auto if the element is positioned - position = elem.css( "position" ); - if ( position === "absolute" || position === "relative" || position === "fixed" ) { - // IE returns 0 when zIndex is not specified - // other browsers return a string - // we ignore the case of nested elements with an explicit value of 0 - //
- value = parseInt( elem.css( "zIndex" ), 10 ); - if ( !isNaN( value ) && value !== 0 ) { - return value; - } - } - elem = elem.parent(); - } - } - - return 0; - } -}); - -// $.ui.plugin is deprecated. Use $.widget() extensions instead. -$.ui.plugin = { - add: function( module, option, set ) { - var i, - proto = $.ui[ module ].prototype; - for ( i in set ) { - proto.plugins[ i ] = proto.plugins[ i ] || []; - proto.plugins[ i ].push( [ option, set[ i ] ] ); - } - }, - call: function( instance, name, args, allowDisconnected ) { - var i, - set = instance.plugins[ name ]; - - if ( !set ) { - return; - } - - if ( !allowDisconnected && ( !instance.element[ 0 ].parentNode || instance.element[ 0 ].parentNode.nodeType === 11 ) ) { - return; - } - - for ( i = 0; i < set.length; i++ ) { - if ( instance.options[ set[ i ][ 0 ] ] ) { - set[ i ][ 1 ].apply( instance.element, args ); - } - } - } -}; - - -/*! - * jQuery UI Widget 1.11.3 - * http://jqueryui.com - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - * - * http://api.jqueryui.com/jQuery.widget/ - */ - - -var widget_uuid = 0, - widget_slice = Array.prototype.slice; - -$.cleanData = (function( orig ) { - return function( elems ) { - var events, elem, i; - for ( i = 0; (elem = elems[i]) != null; i++ ) { - try { - - // Only trigger remove when necessary to save time - events = $._data( elem, "events" ); - if ( events && events.remove ) { - $( elem ).triggerHandler( "remove" ); - } - - // http://bugs.jquery.com/ticket/8235 - } catch ( e ) {} - } - orig( elems ); - }; -})( $.cleanData ); - -$.widget = function( name, base, prototype ) { - var fullName, existingConstructor, constructor, basePrototype, - // proxiedPrototype allows the provided prototype to remain unmodified - // so that it can be used as a mixin for multiple widgets (#8876) - proxiedPrototype = {}, - namespace = name.split( "." )[ 0 ]; - - name = name.split( "." )[ 1 ]; - fullName = namespace + "-" + name; - - if ( !prototype ) { - prototype = base; - base = $.Widget; - } - - // create selector for plugin - $.expr[ ":" ][ fullName.toLowerCase() ] = function( elem ) { - return !!$.data( elem, fullName ); - }; - - $[ namespace ] = $[ namespace ] || {}; - existingConstructor = $[ namespace ][ name ]; - constructor = $[ namespace ][ name ] = function( options, element ) { - // allow instantiation without "new" keyword - if ( !this._createWidget ) { - return new constructor( options, element ); - } - - // allow instantiation without initializing for simple inheritance - // must use "new" keyword (the code above always passes args) - if ( arguments.length ) { - this._createWidget( options, element ); - } - }; - // extend with the existing constructor to carry over any static properties - $.extend( constructor, existingConstructor, { - version: prototype.version, - // copy the object used to create the prototype in case we need to - // redefine the widget later - _proto: $.extend( {}, prototype ), - // track widgets that inherit from this widget in case this widget is - // redefined after a widget inherits from it - _childConstructors: [] - }); - - basePrototype = new base(); - // we need to make the options hash a property directly on the new instance - // otherwise we'll modify the options hash on the prototype that we're - // inheriting from - basePrototype.options = $.widget.extend( {}, basePrototype.options ); - $.each( prototype, function( prop, value ) { - if ( !$.isFunction( value ) ) { - proxiedPrototype[ prop ] = value; - return; - } - proxiedPrototype[ prop ] = (function() { - var _super = function() { - return base.prototype[ prop ].apply( this, arguments ); - }, - _superApply = function( args ) { - return base.prototype[ prop ].apply( this, args ); - }; - return function() { - var __super = this._super, - __superApply = this._superApply, - returnValue; - - this._super = _super; - this._superApply = _superApply; - - returnValue = value.apply( this, arguments ); - - this._super = __super; - this._superApply = __superApply; - - return returnValue; - }; - })(); - }); - constructor.prototype = $.widget.extend( basePrototype, { - // TODO: remove support for widgetEventPrefix - // always use the name + a colon as the prefix, e.g., draggable:start - // don't prefix for widgets that aren't DOM-based - widgetEventPrefix: existingConstructor ? (basePrototype.widgetEventPrefix || name) : name - }, proxiedPrototype, { - constructor: constructor, - namespace: namespace, - widgetName: name, - widgetFullName: fullName - }); - - // If this widget is being redefined then we need to find all widgets that - // are inheriting from it and redefine all of them so that they inherit from - // the new version of this widget. We're essentially trying to replace one - // level in the prototype chain. - if ( existingConstructor ) { - $.each( existingConstructor._childConstructors, function( i, child ) { - var childPrototype = child.prototype; - - // redefine the child widget using the same prototype that was - // originally used, but inherit from the new version of the base - $.widget( childPrototype.namespace + "." + childPrototype.widgetName, constructor, child._proto ); - }); - // remove the list of existing child constructors from the old constructor - // so the old child constructors can be garbage collected - delete existingConstructor._childConstructors; - } else { - base._childConstructors.push( constructor ); - } - - $.widget.bridge( name, constructor ); - - return constructor; -}; - -$.widget.extend = function( target ) { - var input = widget_slice.call( arguments, 1 ), - inputIndex = 0, - inputLength = input.length, - key, - value; - for ( ; inputIndex < inputLength; inputIndex++ ) { - for ( key in input[ inputIndex ] ) { - value = input[ inputIndex ][ key ]; - if ( input[ inputIndex ].hasOwnProperty( key ) && value !== undefined ) { - // Clone objects - if ( $.isPlainObject( value ) ) { - target[ key ] = $.isPlainObject( target[ key ] ) ? - $.widget.extend( {}, target[ key ], value ) : - // Don't extend strings, arrays, etc. with objects - $.widget.extend( {}, value ); - // Copy everything else by reference - } else { - target[ key ] = value; - } - } - } - } - return target; -}; - -$.widget.bridge = function( name, object ) { - var fullName = object.prototype.widgetFullName || name; - $.fn[ name ] = function( options ) { - var isMethodCall = typeof options === "string", - args = widget_slice.call( arguments, 1 ), - returnValue = this; - - if ( isMethodCall ) { - this.each(function() { - var methodValue, - instance = $.data( this, fullName ); - if ( options === "instance" ) { - returnValue = instance; - return false; - } - if ( !instance ) { - return $.error( "cannot call methods on " + name + " prior to initialization; " + - "attempted to call method '" + options + "'" ); - } - if ( !$.isFunction( instance[options] ) || options.charAt( 0 ) === "_" ) { - return $.error( "no such method '" + options + "' for " + name + " widget instance" ); - } - methodValue = instance[ options ].apply( instance, args ); - if ( methodValue !== instance && methodValue !== undefined ) { - returnValue = methodValue && methodValue.jquery ? - returnValue.pushStack( methodValue.get() ) : - methodValue; - return false; - } - }); - } else { - - // Allow multiple hashes to be passed on init - if ( args.length ) { - options = $.widget.extend.apply( null, [ options ].concat(args) ); - } - - this.each(function() { - var instance = $.data( this, fullName ); - if ( instance ) { - instance.option( options || {} ); - if ( instance._init ) { - instance._init(); - } - } else { - $.data( this, fullName, new object( options, this ) ); - } - }); - } - - return returnValue; - }; -}; - -$.Widget = function( /* options, element */ ) {}; -$.Widget._childConstructors = []; - -$.Widget.prototype = { - widgetName: "widget", - widgetEventPrefix: "", - defaultElement: "
", - options: { - disabled: false, - - // callbacks - create: null - }, - _createWidget: function( options, element ) { - element = $( element || this.defaultElement || this )[ 0 ]; - this.element = $( element ); - this.uuid = widget_uuid++; - this.eventNamespace = "." + this.widgetName + this.uuid; - - this.bindings = $(); - this.hoverable = $(); - this.focusable = $(); - - if ( element !== this ) { - $.data( element, this.widgetFullName, this ); - this._on( true, this.element, { - remove: function( event ) { - if ( event.target === element ) { - this.destroy(); - } - } - }); - this.document = $( element.style ? - // element within the document - element.ownerDocument : - // element is window or document - element.document || element ); - this.window = $( this.document[0].defaultView || this.document[0].parentWindow ); - } - - this.options = $.widget.extend( {}, - this.options, - this._getCreateOptions(), - options ); - - this._create(); - this._trigger( "create", null, this._getCreateEventData() ); - this._init(); - }, - _getCreateOptions: $.noop, - _getCreateEventData: $.noop, - _create: $.noop, - _init: $.noop, - - destroy: function() { - this._destroy(); - // we can probably remove the unbind calls in 2.0 - // all event bindings should go through this._on() - this.element - .unbind( this.eventNamespace ) - .removeData( this.widgetFullName ) - // support: jquery <1.6.3 - // http://bugs.jquery.com/ticket/9413 - .removeData( $.camelCase( this.widgetFullName ) ); - this.widget() - .unbind( this.eventNamespace ) - .removeAttr( "aria-disabled" ) - .removeClass( - this.widgetFullName + "-disabled " + - "ui-state-disabled" ); - - // clean up events and states - this.bindings.unbind( this.eventNamespace ); - this.hoverable.removeClass( "ui-state-hover" ); - this.focusable.removeClass( "ui-state-focus" ); - }, - _destroy: $.noop, - - widget: function() { - return this.element; - }, - - option: function( key, value ) { - var options = key, - parts, - curOption, - i; - - if ( arguments.length === 0 ) { - // don't return a reference to the internal hash - return $.widget.extend( {}, this.options ); - } - - if ( typeof key === "string" ) { - // handle nested keys, e.g., "foo.bar" => { foo: { bar: ___ } } - options = {}; - parts = key.split( "." ); - key = parts.shift(); - if ( parts.length ) { - curOption = options[ key ] = $.widget.extend( {}, this.options[ key ] ); - for ( i = 0; i < parts.length - 1; i++ ) { - curOption[ parts[ i ] ] = curOption[ parts[ i ] ] || {}; - curOption = curOption[ parts[ i ] ]; - } - key = parts.pop(); - if ( arguments.length === 1 ) { - return curOption[ key ] === undefined ? null : curOption[ key ]; - } - curOption[ key ] = value; - } else { - if ( arguments.length === 1 ) { - return this.options[ key ] === undefined ? null : this.options[ key ]; - } - options[ key ] = value; - } - } - - this._setOptions( options ); - - return this; - }, - _setOptions: function( options ) { - var key; - - for ( key in options ) { - this._setOption( key, options[ key ] ); - } - - return this; - }, - _setOption: function( key, value ) { - this.options[ key ] = value; - - if ( key === "disabled" ) { - this.widget() - .toggleClass( this.widgetFullName + "-disabled", !!value ); - - // If the widget is becoming disabled, then nothing is interactive - if ( value ) { - this.hoverable.removeClass( "ui-state-hover" ); - this.focusable.removeClass( "ui-state-focus" ); - } - } - - return this; - }, - - enable: function() { - return this._setOptions({ disabled: false }); - }, - disable: function() { - return this._setOptions({ disabled: true }); - }, - - _on: function( suppressDisabledCheck, element, handlers ) { - var delegateElement, - instance = this; - - // no suppressDisabledCheck flag, shuffle arguments - if ( typeof suppressDisabledCheck !== "boolean" ) { - handlers = element; - element = suppressDisabledCheck; - suppressDisabledCheck = false; - } - - // no element argument, shuffle and use this.element - if ( !handlers ) { - handlers = element; - element = this.element; - delegateElement = this.widget(); - } else { - element = delegateElement = $( element ); - this.bindings = this.bindings.add( element ); - } - - $.each( handlers, function( event, handler ) { - function handlerProxy() { - // allow widgets to customize the disabled handling - // - disabled as an array instead of boolean - // - disabled class as method for disabling individual parts - if ( !suppressDisabledCheck && - ( instance.options.disabled === true || - $( this ).hasClass( "ui-state-disabled" ) ) ) { - return; - } - return ( typeof handler === "string" ? instance[ handler ] : handler ) - .apply( instance, arguments ); - } - - // copy the guid so direct unbinding works - if ( typeof handler !== "string" ) { - handlerProxy.guid = handler.guid = - handler.guid || handlerProxy.guid || $.guid++; - } - - var match = event.match( /^([\w:-]*)\s*(.*)$/ ), - eventName = match[1] + instance.eventNamespace, - selector = match[2]; - if ( selector ) { - delegateElement.delegate( selector, eventName, handlerProxy ); - } else { - element.bind( eventName, handlerProxy ); - } - }); - }, - - _off: function( element, eventName ) { - eventName = (eventName || "").split( " " ).join( this.eventNamespace + " " ) + - this.eventNamespace; - element.unbind( eventName ).undelegate( eventName ); - - // Clear the stack to avoid memory leaks (#10056) - this.bindings = $( this.bindings.not( element ).get() ); - this.focusable = $( this.focusable.not( element ).get() ); - this.hoverable = $( this.hoverable.not( element ).get() ); - }, - - _delay: function( handler, delay ) { - function handlerProxy() { - return ( typeof handler === "string" ? instance[ handler ] : handler ) - .apply( instance, arguments ); - } - var instance = this; - return setTimeout( handlerProxy, delay || 0 ); - }, - - _hoverable: function( element ) { - this.hoverable = this.hoverable.add( element ); - this._on( element, { - mouseenter: function( event ) { - $( event.currentTarget ).addClass( "ui-state-hover" ); - }, - mouseleave: function( event ) { - $( event.currentTarget ).removeClass( "ui-state-hover" ); - } - }); - }, - - _focusable: function( element ) { - this.focusable = this.focusable.add( element ); - this._on( element, { - focusin: function( event ) { - $( event.currentTarget ).addClass( "ui-state-focus" ); - }, - focusout: function( event ) { - $( event.currentTarget ).removeClass( "ui-state-focus" ); - } - }); - }, - - _trigger: function( type, event, data ) { - var prop, orig, - callback = this.options[ type ]; - - data = data || {}; - event = $.Event( event ); - event.type = ( type === this.widgetEventPrefix ? - type : - this.widgetEventPrefix + type ).toLowerCase(); - // the original event may come from any element - // so we need to reset the target on the new event - event.target = this.element[ 0 ]; - - // copy original event properties over to the new event - orig = event.originalEvent; - if ( orig ) { - for ( prop in orig ) { - if ( !( prop in event ) ) { - event[ prop ] = orig[ prop ]; - } - } - } - - this.element.trigger( event, data ); - return !( $.isFunction( callback ) && - callback.apply( this.element[0], [ event ].concat( data ) ) === false || - event.isDefaultPrevented() ); - } -}; - -$.each( { show: "fadeIn", hide: "fadeOut" }, function( method, defaultEffect ) { - $.Widget.prototype[ "_" + method ] = function( element, options, callback ) { - if ( typeof options === "string" ) { - options = { effect: options }; - } - var hasOptions, - effectName = !options ? - method : - options === true || typeof options === "number" ? - defaultEffect : - options.effect || defaultEffect; - options = options || {}; - if ( typeof options === "number" ) { - options = { duration: options }; - } - hasOptions = !$.isEmptyObject( options ); - options.complete = callback; - if ( options.delay ) { - element.delay( options.delay ); - } - if ( hasOptions && $.effects && $.effects.effect[ effectName ] ) { - element[ method ]( options ); - } else if ( effectName !== method && element[ effectName ] ) { - element[ effectName ]( options.duration, options.easing, callback ); - } else { - element.queue(function( next ) { - $( this )[ method ](); - if ( callback ) { - callback.call( element[ 0 ] ); - } - next(); - }); - } - }; -}); - -var widget = $.widget; - - -/*! - * jQuery UI Mouse 1.11.3 - * http://jqueryui.com - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - * - * http://api.jqueryui.com/mouse/ - */ - - -var mouseHandled = false; -$( document ).mouseup( function() { - mouseHandled = false; -}); - -var mouse = $.widget("ui.mouse", { - version: "1.11.3", - options: { - cancel: "input,textarea,button,select,option", - distance: 1, - delay: 0 - }, - _mouseInit: function() { - var that = this; - - this.element - .bind("mousedown." + this.widgetName, function(event) { - return that._mouseDown(event); - }) - .bind("click." + this.widgetName, function(event) { - if (true === $.data(event.target, that.widgetName + ".preventClickEvent")) { - $.removeData(event.target, that.widgetName + ".preventClickEvent"); - event.stopImmediatePropagation(); - return false; - } - }); - - this.started = false; - }, - - // TODO: make sure destroying one instance of mouse doesn't mess with - // other instances of mouse - _mouseDestroy: function() { - this.element.unbind("." + this.widgetName); - if ( this._mouseMoveDelegate ) { - this.document - .unbind("mousemove." + this.widgetName, this._mouseMoveDelegate) - .unbind("mouseup." + this.widgetName, this._mouseUpDelegate); - } - }, - - _mouseDown: function(event) { - // don't let more than one widget handle mouseStart - if ( mouseHandled ) { - return; - } - - this._mouseMoved = false; - - // we may have missed mouseup (out of window) - (this._mouseStarted && this._mouseUp(event)); - - this._mouseDownEvent = event; - - var that = this, - btnIsLeft = (event.which === 1), - // event.target.nodeName works around a bug in IE 8 with - // disabled inputs (#7620) - elIsCancel = (typeof this.options.cancel === "string" && event.target.nodeName ? $(event.target).closest(this.options.cancel).length : false); - if (!btnIsLeft || elIsCancel || !this._mouseCapture(event)) { - return true; - } - - this.mouseDelayMet = !this.options.delay; - if (!this.mouseDelayMet) { - this._mouseDelayTimer = setTimeout(function() { - that.mouseDelayMet = true; - }, this.options.delay); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = (this._mouseStart(event) !== false); - if (!this._mouseStarted) { - event.preventDefault(); - return true; - } - } - - // Click event may never have fired (Gecko & Opera) - if (true === $.data(event.target, this.widgetName + ".preventClickEvent")) { - $.removeData(event.target, this.widgetName + ".preventClickEvent"); - } - - // these delegates are required to keep context - this._mouseMoveDelegate = function(event) { - return that._mouseMove(event); - }; - this._mouseUpDelegate = function(event) { - return that._mouseUp(event); - }; - - this.document - .bind( "mousemove." + this.widgetName, this._mouseMoveDelegate ) - .bind( "mouseup." + this.widgetName, this._mouseUpDelegate ); - - event.preventDefault(); - - mouseHandled = true; - return true; - }, - - _mouseMove: function(event) { - // Only check for mouseups outside the document if you've moved inside the document - // at least once. This prevents the firing of mouseup in the case of IE<9, which will - // fire a mousemove event if content is placed under the cursor. See #7778 - // Support: IE <9 - if ( this._mouseMoved ) { - // IE mouseup check - mouseup happened when mouse was out of window - if ($.ui.ie && ( !document.documentMode || document.documentMode < 9 ) && !event.button) { - return this._mouseUp(event); - - // Iframe mouseup check - mouseup occurred in another document - } else if ( !event.which ) { - return this._mouseUp( event ); - } - } - - if ( event.which || event.button ) { - this._mouseMoved = true; - } - - if (this._mouseStarted) { - this._mouseDrag(event); - return event.preventDefault(); - } - - if (this._mouseDistanceMet(event) && this._mouseDelayMet(event)) { - this._mouseStarted = - (this._mouseStart(this._mouseDownEvent, event) !== false); - (this._mouseStarted ? this._mouseDrag(event) : this._mouseUp(event)); - } - - return !this._mouseStarted; - }, - - _mouseUp: function(event) { - this.document - .unbind( "mousemove." + this.widgetName, this._mouseMoveDelegate ) - .unbind( "mouseup." + this.widgetName, this._mouseUpDelegate ); - - if (this._mouseStarted) { - this._mouseStarted = false; - - if (event.target === this._mouseDownEvent.target) { - $.data(event.target, this.widgetName + ".preventClickEvent", true); - } - - this._mouseStop(event); - } - - mouseHandled = false; - return false; - }, - - _mouseDistanceMet: function(event) { - return (Math.max( - Math.abs(this._mouseDownEvent.pageX - event.pageX), - Math.abs(this._mouseDownEvent.pageY - event.pageY) - ) >= this.options.distance - ); - }, - - _mouseDelayMet: function(/* event */) { - return this.mouseDelayMet; - }, - - // These are placeholder methods, to be overriden by extending plugin - _mouseStart: function(/* event */) {}, - _mouseDrag: function(/* event */) {}, - _mouseStop: function(/* event */) {}, - _mouseCapture: function(/* event */) { return true; } -}); - - -/*! - * jQuery UI Position 1.11.3 - * http://jqueryui.com - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - * - * http://api.jqueryui.com/position/ - */ - -(function() { - -$.ui = $.ui || {}; - -var cachedScrollbarWidth, supportsOffsetFractions, - max = Math.max, - abs = Math.abs, - round = Math.round, - rhorizontal = /left|center|right/, - rvertical = /top|center|bottom/, - roffset = /[\+\-]\d+(\.[\d]+)?%?/, - rposition = /^\w+/, - rpercent = /%$/, - _position = $.fn.position; - -function getOffsets( offsets, width, height ) { - return [ - parseFloat( offsets[ 0 ] ) * ( rpercent.test( offsets[ 0 ] ) ? width / 100 : 1 ), - parseFloat( offsets[ 1 ] ) * ( rpercent.test( offsets[ 1 ] ) ? height / 100 : 1 ) - ]; -} - -function parseCss( element, property ) { - return parseInt( $.css( element, property ), 10 ) || 0; -} - -function getDimensions( elem ) { - var raw = elem[0]; - if ( raw.nodeType === 9 ) { - return { - width: elem.width(), - height: elem.height(), - offset: { top: 0, left: 0 } - }; - } - if ( $.isWindow( raw ) ) { - return { - width: elem.width(), - height: elem.height(), - offset: { top: elem.scrollTop(), left: elem.scrollLeft() } - }; - } - if ( raw.preventDefault ) { - return { - width: 0, - height: 0, - offset: { top: raw.pageY, left: raw.pageX } - }; - } - return { - width: elem.outerWidth(), - height: elem.outerHeight(), - offset: elem.offset() - }; -} - -$.position = { - scrollbarWidth: function() { - if ( cachedScrollbarWidth !== undefined ) { - return cachedScrollbarWidth; - } - var w1, w2, - div = $( "
" ), - innerDiv = div.children()[0]; - - $( "body" ).append( div ); - w1 = innerDiv.offsetWidth; - div.css( "overflow", "scroll" ); - - w2 = innerDiv.offsetWidth; - - if ( w1 === w2 ) { - w2 = div[0].clientWidth; - } - - div.remove(); - - return (cachedScrollbarWidth = w1 - w2); - }, - getScrollInfo: function( within ) { - var overflowX = within.isWindow || within.isDocument ? "" : - within.element.css( "overflow-x" ), - overflowY = within.isWindow || within.isDocument ? "" : - within.element.css( "overflow-y" ), - hasOverflowX = overflowX === "scroll" || - ( overflowX === "auto" && within.width < within.element[0].scrollWidth ), - hasOverflowY = overflowY === "scroll" || - ( overflowY === "auto" && within.height < within.element[0].scrollHeight ); - return { - width: hasOverflowY ? $.position.scrollbarWidth() : 0, - height: hasOverflowX ? $.position.scrollbarWidth() : 0 - }; - }, - getWithinInfo: function( element ) { - var withinElement = $( element || window ), - isWindow = $.isWindow( withinElement[0] ), - isDocument = !!withinElement[ 0 ] && withinElement[ 0 ].nodeType === 9; - return { - element: withinElement, - isWindow: isWindow, - isDocument: isDocument, - offset: withinElement.offset() || { left: 0, top: 0 }, - scrollLeft: withinElement.scrollLeft(), - scrollTop: withinElement.scrollTop(), - - // support: jQuery 1.6.x - // jQuery 1.6 doesn't support .outerWidth/Height() on documents or windows - width: isWindow || isDocument ? withinElement.width() : withinElement.outerWidth(), - height: isWindow || isDocument ? withinElement.height() : withinElement.outerHeight() - }; - } -}; - -$.fn.position = function( options ) { - if ( !options || !options.of ) { - return _position.apply( this, arguments ); - } - - // make a copy, we don't want to modify arguments - options = $.extend( {}, options ); - - var atOffset, targetWidth, targetHeight, targetOffset, basePosition, dimensions, - target = $( options.of ), - within = $.position.getWithinInfo( options.within ), - scrollInfo = $.position.getScrollInfo( within ), - collision = ( options.collision || "flip" ).split( " " ), - offsets = {}; - - dimensions = getDimensions( target ); - if ( target[0].preventDefault ) { - // force left top to allow flipping - options.at = "left top"; - } - targetWidth = dimensions.width; - targetHeight = dimensions.height; - targetOffset = dimensions.offset; - // clone to reuse original targetOffset later - basePosition = $.extend( {}, targetOffset ); - - // force my and at to have valid horizontal and vertical positions - // if a value is missing or invalid, it will be converted to center - $.each( [ "my", "at" ], function() { - var pos = ( options[ this ] || "" ).split( " " ), - horizontalOffset, - verticalOffset; - - if ( pos.length === 1) { - pos = rhorizontal.test( pos[ 0 ] ) ? - pos.concat( [ "center" ] ) : - rvertical.test( pos[ 0 ] ) ? - [ "center" ].concat( pos ) : - [ "center", "center" ]; - } - pos[ 0 ] = rhorizontal.test( pos[ 0 ] ) ? pos[ 0 ] : "center"; - pos[ 1 ] = rvertical.test( pos[ 1 ] ) ? pos[ 1 ] : "center"; - - // calculate offsets - horizontalOffset = roffset.exec( pos[ 0 ] ); - verticalOffset = roffset.exec( pos[ 1 ] ); - offsets[ this ] = [ - horizontalOffset ? horizontalOffset[ 0 ] : 0, - verticalOffset ? verticalOffset[ 0 ] : 0 - ]; - - // reduce to just the positions without the offsets - options[ this ] = [ - rposition.exec( pos[ 0 ] )[ 0 ], - rposition.exec( pos[ 1 ] )[ 0 ] - ]; - }); - - // normalize collision option - if ( collision.length === 1 ) { - collision[ 1 ] = collision[ 0 ]; - } - - if ( options.at[ 0 ] === "right" ) { - basePosition.left += targetWidth; - } else if ( options.at[ 0 ] === "center" ) { - basePosition.left += targetWidth / 2; - } - - if ( options.at[ 1 ] === "bottom" ) { - basePosition.top += targetHeight; - } else if ( options.at[ 1 ] === "center" ) { - basePosition.top += targetHeight / 2; - } - - atOffset = getOffsets( offsets.at, targetWidth, targetHeight ); - basePosition.left += atOffset[ 0 ]; - basePosition.top += atOffset[ 1 ]; - - return this.each(function() { - var collisionPosition, using, - elem = $( this ), - elemWidth = elem.outerWidth(), - elemHeight = elem.outerHeight(), - marginLeft = parseCss( this, "marginLeft" ), - marginTop = parseCss( this, "marginTop" ), - collisionWidth = elemWidth + marginLeft + parseCss( this, "marginRight" ) + scrollInfo.width, - collisionHeight = elemHeight + marginTop + parseCss( this, "marginBottom" ) + scrollInfo.height, - position = $.extend( {}, basePosition ), - myOffset = getOffsets( offsets.my, elem.outerWidth(), elem.outerHeight() ); - - if ( options.my[ 0 ] === "right" ) { - position.left -= elemWidth; - } else if ( options.my[ 0 ] === "center" ) { - position.left -= elemWidth / 2; - } - - if ( options.my[ 1 ] === "bottom" ) { - position.top -= elemHeight; - } else if ( options.my[ 1 ] === "center" ) { - position.top -= elemHeight / 2; - } - - position.left += myOffset[ 0 ]; - position.top += myOffset[ 1 ]; - - // if the browser doesn't support fractions, then round for consistent results - if ( !supportsOffsetFractions ) { - position.left = round( position.left ); - position.top = round( position.top ); - } - - collisionPosition = { - marginLeft: marginLeft, - marginTop: marginTop - }; - - $.each( [ "left", "top" ], function( i, dir ) { - if ( $.ui.position[ collision[ i ] ] ) { - $.ui.position[ collision[ i ] ][ dir ]( position, { - targetWidth: targetWidth, - targetHeight: targetHeight, - elemWidth: elemWidth, - elemHeight: elemHeight, - collisionPosition: collisionPosition, - collisionWidth: collisionWidth, - collisionHeight: collisionHeight, - offset: [ atOffset[ 0 ] + myOffset[ 0 ], atOffset [ 1 ] + myOffset[ 1 ] ], - my: options.my, - at: options.at, - within: within, - elem: elem - }); - } - }); - - if ( options.using ) { - // adds feedback as second argument to using callback, if present - using = function( props ) { - var left = targetOffset.left - position.left, - right = left + targetWidth - elemWidth, - top = targetOffset.top - position.top, - bottom = top + targetHeight - elemHeight, - feedback = { - target: { - element: target, - left: targetOffset.left, - top: targetOffset.top, - width: targetWidth, - height: targetHeight - }, - element: { - element: elem, - left: position.left, - top: position.top, - width: elemWidth, - height: elemHeight - }, - horizontal: right < 0 ? "left" : left > 0 ? "right" : "center", - vertical: bottom < 0 ? "top" : top > 0 ? "bottom" : "middle" - }; - if ( targetWidth < elemWidth && abs( left + right ) < targetWidth ) { - feedback.horizontal = "center"; - } - if ( targetHeight < elemHeight && abs( top + bottom ) < targetHeight ) { - feedback.vertical = "middle"; - } - if ( max( abs( left ), abs( right ) ) > max( abs( top ), abs( bottom ) ) ) { - feedback.important = "horizontal"; - } else { - feedback.important = "vertical"; - } - options.using.call( this, props, feedback ); - }; - } - - elem.offset( $.extend( position, { using: using } ) ); - }); -}; - -$.ui.position = { - fit: { - left: function( position, data ) { - var within = data.within, - withinOffset = within.isWindow ? within.scrollLeft : within.offset.left, - outerWidth = within.width, - collisionPosLeft = position.left - data.collisionPosition.marginLeft, - overLeft = withinOffset - collisionPosLeft, - overRight = collisionPosLeft + data.collisionWidth - outerWidth - withinOffset, - newOverRight; - - // element is wider than within - if ( data.collisionWidth > outerWidth ) { - // element is initially over the left side of within - if ( overLeft > 0 && overRight <= 0 ) { - newOverRight = position.left + overLeft + data.collisionWidth - outerWidth - withinOffset; - position.left += overLeft - newOverRight; - // element is initially over right side of within - } else if ( overRight > 0 && overLeft <= 0 ) { - position.left = withinOffset; - // element is initially over both left and right sides of within - } else { - if ( overLeft > overRight ) { - position.left = withinOffset + outerWidth - data.collisionWidth; - } else { - position.left = withinOffset; - } - } - // too far left -> align with left edge - } else if ( overLeft > 0 ) { - position.left += overLeft; - // too far right -> align with right edge - } else if ( overRight > 0 ) { - position.left -= overRight; - // adjust based on position and margin - } else { - position.left = max( position.left - collisionPosLeft, position.left ); - } - }, - top: function( position, data ) { - var within = data.within, - withinOffset = within.isWindow ? within.scrollTop : within.offset.top, - outerHeight = data.within.height, - collisionPosTop = position.top - data.collisionPosition.marginTop, - overTop = withinOffset - collisionPosTop, - overBottom = collisionPosTop + data.collisionHeight - outerHeight - withinOffset, - newOverBottom; - - // element is taller than within - if ( data.collisionHeight > outerHeight ) { - // element is initially over the top of within - if ( overTop > 0 && overBottom <= 0 ) { - newOverBottom = position.top + overTop + data.collisionHeight - outerHeight - withinOffset; - position.top += overTop - newOverBottom; - // element is initially over bottom of within - } else if ( overBottom > 0 && overTop <= 0 ) { - position.top = withinOffset; - // element is initially over both top and bottom of within - } else { - if ( overTop > overBottom ) { - position.top = withinOffset + outerHeight - data.collisionHeight; - } else { - position.top = withinOffset; - } - } - // too far up -> align with top - } else if ( overTop > 0 ) { - position.top += overTop; - // too far down -> align with bottom edge - } else if ( overBottom > 0 ) { - position.top -= overBottom; - // adjust based on position and margin - } else { - position.top = max( position.top - collisionPosTop, position.top ); - } - } - }, - flip: { - left: function( position, data ) { - var within = data.within, - withinOffset = within.offset.left + within.scrollLeft, - outerWidth = within.width, - offsetLeft = within.isWindow ? within.scrollLeft : within.offset.left, - collisionPosLeft = position.left - data.collisionPosition.marginLeft, - overLeft = collisionPosLeft - offsetLeft, - overRight = collisionPosLeft + data.collisionWidth - outerWidth - offsetLeft, - myOffset = data.my[ 0 ] === "left" ? - -data.elemWidth : - data.my[ 0 ] === "right" ? - data.elemWidth : - 0, - atOffset = data.at[ 0 ] === "left" ? - data.targetWidth : - data.at[ 0 ] === "right" ? - -data.targetWidth : - 0, - offset = -2 * data.offset[ 0 ], - newOverRight, - newOverLeft; - - if ( overLeft < 0 ) { - newOverRight = position.left + myOffset + atOffset + offset + data.collisionWidth - outerWidth - withinOffset; - if ( newOverRight < 0 || newOverRight < abs( overLeft ) ) { - position.left += myOffset + atOffset + offset; - } - } else if ( overRight > 0 ) { - newOverLeft = position.left - data.collisionPosition.marginLeft + myOffset + atOffset + offset - offsetLeft; - if ( newOverLeft > 0 || abs( newOverLeft ) < overRight ) { - position.left += myOffset + atOffset + offset; - } - } - }, - top: function( position, data ) { - var within = data.within, - withinOffset = within.offset.top + within.scrollTop, - outerHeight = within.height, - offsetTop = within.isWindow ? within.scrollTop : within.offset.top, - collisionPosTop = position.top - data.collisionPosition.marginTop, - overTop = collisionPosTop - offsetTop, - overBottom = collisionPosTop + data.collisionHeight - outerHeight - offsetTop, - top = data.my[ 1 ] === "top", - myOffset = top ? - -data.elemHeight : - data.my[ 1 ] === "bottom" ? - data.elemHeight : - 0, - atOffset = data.at[ 1 ] === "top" ? - data.targetHeight : - data.at[ 1 ] === "bottom" ? - -data.targetHeight : - 0, - offset = -2 * data.offset[ 1 ], - newOverTop, - newOverBottom; - if ( overTop < 0 ) { - newOverBottom = position.top + myOffset + atOffset + offset + data.collisionHeight - outerHeight - withinOffset; - if ( newOverBottom < 0 || newOverBottom < abs( overTop ) ) { - position.top += myOffset + atOffset + offset; - } - } else if ( overBottom > 0 ) { - newOverTop = position.top - data.collisionPosition.marginTop + myOffset + atOffset + offset - offsetTop; - if ( newOverTop > 0 || abs( newOverTop ) < overBottom ) { - position.top += myOffset + atOffset + offset; - } - } - } - }, - flipfit: { - left: function() { - $.ui.position.flip.left.apply( this, arguments ); - $.ui.position.fit.left.apply( this, arguments ); - }, - top: function() { - $.ui.position.flip.top.apply( this, arguments ); - $.ui.position.fit.top.apply( this, arguments ); - } - } -}; - -// fraction support test -(function() { - var testElement, testElementParent, testElementStyle, offsetLeft, i, - body = document.getElementsByTagName( "body" )[ 0 ], - div = document.createElement( "div" ); - - //Create a "fake body" for testing based on method used in jQuery.support - testElement = document.createElement( body ? "div" : "body" ); - testElementStyle = { - visibility: "hidden", - width: 0, - height: 0, - border: 0, - margin: 0, - background: "none" - }; - if ( body ) { - $.extend( testElementStyle, { - position: "absolute", - left: "-1000px", - top: "-1000px" - }); - } - for ( i in testElementStyle ) { - testElement.style[ i ] = testElementStyle[ i ]; - } - testElement.appendChild( div ); - testElementParent = body || document.documentElement; - testElementParent.insertBefore( testElement, testElementParent.firstChild ); - - div.style.cssText = "position: absolute; left: 10.7432222px;"; - - offsetLeft = $( div ).offset().left; - supportsOffsetFractions = offsetLeft > 10 && offsetLeft < 11; - - testElement.innerHTML = ""; - testElementParent.removeChild( testElement ); -})(); - -})(); - -var position = $.ui.position; - - -/*! - * jQuery UI Draggable 1.11.3 - * http://jqueryui.com - * - * Copyright jQuery Foundation and other contributors - * Released under the MIT license. - * http://jquery.org/license - * - * http://api.jqueryui.com/draggable/ - */ - - -$.widget("ui.draggable", $.ui.mouse, { - version: "1.11.3", - widgetEventPrefix: "drag", - options: { - addClasses: true, - appendTo: "parent", - axis: false, - connectToSortable: false, - containment: false, - cursor: "auto", - cursorAt: false, - grid: false, - handle: false, - helper: "original", - iframeFix: false, - opacity: false, - refreshPositions: false, - revert: false, - revertDuration: 500, - scope: "default", - scroll: true, - scrollSensitivity: 20, - scrollSpeed: 20, - snap: false, - snapMode: "both", - snapTolerance: 20, - stack: false, - zIndex: false, - - // callbacks - drag: null, - start: null, - stop: null - }, - _create: function() { - - if ( this.options.helper === "original" ) { - this._setPositionRelative(); - } - if (this.options.addClasses){ - this.element.addClass("ui-draggable"); - } - if (this.options.disabled){ - this.element.addClass("ui-draggable-disabled"); - } - this._setHandleClassName(); - - this._mouseInit(); - }, - - _setOption: function( key, value ) { - this._super( key, value ); - if ( key === "handle" ) { - this._removeHandleClassName(); - this._setHandleClassName(); - } - }, - - _destroy: function() { - if ( ( this.helper || this.element ).is( ".ui-draggable-dragging" ) ) { - this.destroyOnClear = true; - return; - } - this.element.removeClass( "ui-draggable ui-draggable-dragging ui-draggable-disabled" ); - this._removeHandleClassName(); - this._mouseDestroy(); - }, - - _mouseCapture: function(event) { - var o = this.options; - - this._blurActiveElement( event ); - - // among others, prevent a drag on a resizable-handle - if (this.helper || o.disabled || $(event.target).closest(".ui-resizable-handle").length > 0) { - return false; - } - - //Quit if we're not on a valid handle - this.handle = this._getHandle(event); - if (!this.handle) { - return false; - } - - this._blockFrames( o.iframeFix === true ? "iframe" : o.iframeFix ); - - return true; - - }, - - _blockFrames: function( selector ) { - this.iframeBlocks = this.document.find( selector ).map(function() { - var iframe = $( this ); - - return $( "
" ) - .css( "position", "absolute" ) - .appendTo( iframe.parent() ) - .outerWidth( iframe.outerWidth() ) - .outerHeight( iframe.outerHeight() ) - .offset( iframe.offset() )[ 0 ]; - }); - }, - - _unblockFrames: function() { - if ( this.iframeBlocks ) { - this.iframeBlocks.remove(); - delete this.iframeBlocks; - } - }, - - _blurActiveElement: function( event ) { - var document = this.document[ 0 ]; - - // Only need to blur if the event occurred on the draggable itself, see #10527 - if ( !this.handleElement.is( event.target ) ) { - return; - } - - // support: IE9 - // IE9 throws an "Unspecified error" accessing document.activeElement from an