From 14e6d0ed4be07a4d6bf94a141af83b7d60f1ac5f Mon Sep 17 00:00:00 2001 From: Ruben Rodriguez Date: Mon, 20 Oct 2014 02:43:14 +0200 Subject: Make generation scripts distro-independent --- .../DATA/firefox/trisquel/abouthome/aboutHome.css | 429 - .../DATA/firefox/trisquel/abouthome/aboutHome.js | 502 -- .../firefox/trisquel/abouthome/aboutHome.xhtml | 117 - helpers/DATA/firefox/trisquel/abouthome/addons.png | Bin 1444 -> 0 bytes .../DATA/firefox/trisquel/abouthome/addons@2x.png | Bin 3783 -> 0 bytes helpers/DATA/firefox/trisquel/abouthome/apps.png | Bin 961 -> 0 bytes .../DATA/firefox/trisquel/abouthome/apps@2x.png | Bin 2562 -> 0 bytes .../DATA/firefox/trisquel/abouthome/bookmarks.png | Bin 1276 -> 0 bytes .../firefox/trisquel/abouthome/bookmarks@2x.png | Bin 2946 -> 0 bytes .../DATA/firefox/trisquel/abouthome/downloads.png | Bin 898 -> 0 bytes .../firefox/trisquel/abouthome/downloads@2x.png | Bin 2018 -> 0 bytes .../DATA/firefox/trisquel/abouthome/history.png | Bin 1654 -> 0 bytes .../DATA/firefox/trisquel/abouthome/history@2x.png | Bin 4629 -> 0 bytes .../firefox/trisquel/abouthome/restore-large.png | Bin 2841 -> 0 bytes .../trisquel/abouthome/restore-large@2x.png | Bin 7267 -> 0 bytes .../DATA/firefox/trisquel/abouthome/restore.png | Bin 1796 -> 0 bytes .../DATA/firefox/trisquel/abouthome/restore@2x.png | Bin 4810 -> 0 bytes .../DATA/firefox/trisquel/abouthome/settings.png | Bin 1557 -> 0 bytes .../firefox/trisquel/abouthome/settings@2x.png | Bin 3836 -> 0 bytes .../DATA/firefox/trisquel/abouthome/snippet1.png | Bin 1470 -> 0 bytes .../firefox/trisquel/abouthome/snippet1@2x.png | Bin 3243 -> 0 bytes .../DATA/firefox/trisquel/abouthome/snippet2.png | Bin 3287 -> 0 bytes .../firefox/trisquel/abouthome/snippet2@2x.png | Bin 11027 -> 0 bytes helpers/DATA/firefox/trisquel/abouthome/sync.png | Bin 1879 -> 0 bytes .../DATA/firefox/trisquel/abouthome/sync@2x.png | Bin 4615 -> 0 bytes .../DATA/firefox/trisquel/adblock_artwork/100.png | Bin 7303 -> 0 bytes .../DATA/firefox/trisquel/adblock_artwork/16.png | Bin 1376 -> 0 bytes .../DATA/firefox/trisquel/adblock_artwork/24.png | Bin 2278 -> 0 bytes .../DATA/firefox/trisquel/adblock_artwork/32.png | Bin 2906 -> 0 bytes .../DATA/firefox/trisquel/adblock_artwork/48.png | Bin 3040 -> 0 bytes .../DATA/firefox/trisquel/adblock_artwork/64.png | Bin 4177 -> 0 bytes .../firefox/trisquel/adblock_artwork/adblock.svg | 989 --- helpers/DATA/firefox/trisquel/bookmarks.html.in | 23 - helpers/DATA/firefox/trisquel/branding/Makefile.in | 67 - .../trisquel/branding/VisualElementsManifest.xml | 16 - helpers/DATA/firefox/trisquel/branding/appname.bmp | Bin 47490 -> 0 bytes .../DATA/firefox/trisquel/branding/background.png | Bin 1143 -> 0 bytes helpers/DATA/firefox/trisquel/branding/bgintro.bmp | Bin 908606 -> 0 bytes helpers/DATA/firefox/trisquel/branding/bgplain.bmp | Bin 682144 -> 0 bytes .../DATA/firefox/trisquel/branding/branding.nsi | 50 - helpers/DATA/firefox/trisquel/branding/clock.bmp | Bin 124214 -> 0 bytes .../DATA/firefox/trisquel/branding/configure.sh | 5 - .../firefox/trisquel/branding/content/Makefile.in | 13 - .../branding/content/VisualElements_logo.png | Bin 24397 -> 0 bytes .../branding/content/VisualElements_smalllogo.png | Bin 2588 -> 0 bytes .../content/VisualElements_splashscreen.png | Bin 75713 -> 0 bytes .../trisquel/branding/content/about-background.png | Bin 122354 -> 0 bytes .../trisquel/branding/content/about-logo.png | Bin 29465 -> 0 bytes .../trisquel/branding/content/about-logo@2x.png | Bin 114832 -> 0 bytes .../trisquel/branding/content/about-wordmark.svg | 78 - .../firefox/trisquel/branding/content/about.png | Bin 22792 -> 0 bytes .../trisquel/branding/content/aboutDialog.css | 25 - .../firefox/trisquel/branding/content/icon48.png | Bin 5395 -> 0 bytes .../firefox/trisquel/branding/content/icon64.png | Bin 7318 -> 0 bytes .../branding/content/identity-icons-brand.png | Bin 1601 -> 0 bytes .../branding/content/identity-icons-brand@2x.png | Bin 4114 -> 0 bytes .../DATA/firefox/trisquel/branding/content/jar.mn | 27 - .../branding/content/metro-about-footer.png | Bin 93828 -> 0 bytes .../branding/content/metro-about-wordmark.png | Bin 4411 -> 0 bytes .../trisquel/branding/content/metro-about.css | 14 - .../branding/content/metro_firstrun_logo.png | Bin 49057 -> 0 bytes .../branding/content/metro_firstrun_logo@1.4x.png | Bin 83476 -> 0 bytes .../branding/content/metro_firstrun_logo@1.8x.png | Bin 117482 -> 0 bytes .../firefox/trisquel/branding/content/moz.build | 7 - .../DATA/firefox/trisquel/branding/default16.png | Bin 1409 -> 0 bytes .../DATA/firefox/trisquel/branding/default32.png | Bin 5467 -> 0 bytes .../DATA/firefox/trisquel/branding/default48.png | Bin 5395 -> 0 bytes helpers/DATA/firefox/trisquel/branding/disk.icns | Bin 710029 -> 0 bytes .../firefox/trisquel/branding/document-os2.ico | Bin 7824 -> 0 bytes .../DATA/firefox/trisquel/branding/document.icns | Bin 746810 -> 0 bytes .../DATA/firefox/trisquel/branding/document.ico | Bin 71636 -> 0 bytes helpers/DATA/firefox/trisquel/branding/dsstore | Bin 12292 -> 0 bytes .../DATA/firefox/trisquel/branding/icecat-os2.ico | Bin 7824 -> 0 bytes helpers/DATA/firefox/trisquel/branding/icecat.icns | Bin 648208 -> 0 bytes helpers/DATA/firefox/trisquel/branding/icecat.ico | Bin 87290 -> 0 bytes .../firefox/trisquel/branding/locales/Makefile.in | 5 - .../branding/locales/browserconfig.properties | 6 - .../trisquel/branding/locales/en-US/brand.dtd | 8 - .../branding/locales/en-US/brand.properties | 15 - .../DATA/firefox/trisquel/branding/locales/jar.mn | 12 - .../firefox/trisquel/branding/locales/moz.build | 9 - helpers/DATA/firefox/trisquel/branding/moz.build | 10 - .../DATA/firefox/trisquel/branding/mozicon128.png | Bin 25374 -> 0 bytes helpers/DATA/firefox/trisquel/branding/newtab.ico | Bin 1150 -> 0 bytes .../DATA/firefox/trisquel/branding/newwindow.ico | Bin 1150 -> 0 bytes .../DATA/firefox/trisquel/branding/particles.bmp | Bin 124216 -> 0 bytes helpers/DATA/firefox/trisquel/branding/pbmode.ico | Bin 1150 -> 0 bytes .../DATA/firefox/trisquel/branding/pencil-rtl.bmp | Bin 124214 -> 0 bytes helpers/DATA/firefox/trisquel/branding/pencil.bmp | Bin 124214 -> 0 bytes .../trisquel/branding/pref/icecat-branding.js | 24 - .../DATA/firefox/trisquel/branding/wizHeader.bmp | Bin 34254 -> 0 bytes .../firefox/trisquel/branding/wizHeaderRTL.bmp | Bin 34254 -> 0 bytes .../firefox/trisquel/branding/wizWatermark.bmp | Bin 206038 -> 0 bytes .../extensions/abouticecat@gnu.org/LICENSE | 24 - .../extensions/abouticecat@gnu.org/chrome.manifest | 8 - .../chrome/content/aboutIceCat/aboutIceCat.xhtml | 299 - .../chrome/locale/en/aboutIceCat.dtd | 1 - .../chrome/locale/es/aboutIceCat.dtd | 1 - .../abouticecat@gnu.org/components/aboutIceCat.js | 72 - .../defaults/preferences/preferences.js | 0 .../extensions/abouticecat@gnu.org/install.rdf | 21 - .../extensions/https-everywhere@eff.org/Changelog | 1426 --- .../https-everywhere@eff.org/chrome.manifest | 53 - .../chrome/content/about.xul | 72 - .../chrome/content/code/ApplicableList.js | 266 - .../chrome/content/code/ChannelReplacement.js | 387 - .../chrome/content/code/Cookie.js | 148 - .../chrome/content/code/HTTPS.js | 296 - .../chrome/content/code/HTTPSRules.js | 762 -- .../chrome/content/code/IOUtil.js | 263 - .../chrome/content/code/NSS.js | 491 -- .../chrome/content/code/Root-CAs.js | 348 - .../chrome/content/code/STS.js | 228 - .../chrome/content/code/Thread.js | 100 - .../chrome/content/code/X509ChainWhitelist.js | 1007 --- .../chrome/content/code/sha256.js | 249 - .../chrome/content/fetch-source.js | 161 - .../chrome/content/fetch-source.xul | 29 - .../chrome/content/meta-preferences.xul | 30 - .../chrome/content/observatory-popup.xul | 61 - .../chrome/content/observatory-preferences.xul | 106 - .../chrome/content/observatory-warning.xul | 49 - .../chrome/content/observatory-xul.js | 194 - .../chrome/content/preferences.css | 11 - .../chrome/content/preferences.js | 269 - .../chrome/content/preferences.xul | 62 - .../chrome/content/rules/00README | 17 - .../chrome/content/ruleset-tests-status.css | 14 - .../chrome/content/ruleset-tests-status.js | 31 - .../chrome/content/ruleset-tests-status.xul | 44 - .../chrome/content/ruleset-tests.js | 155 - .../chrome/content/toolbar_button.js | 369 - .../chrome/content/toolbar_button.xul | 71 - .../chrome/content/toolbar_button_binding.xml | 33 - .../chrome/locale/ar/https-everywhere.dtd | 48 - .../chrome/locale/ar/https-everywhere.properties | 8 - .../chrome/locale/ar/ssl-observatory.dtd | 97 - .../chrome/locale/bg/https-everywhere.dtd | 48 - .../chrome/locale/bg/https-everywhere.properties | 8 - .../chrome/locale/bg/ssl-observatory.dtd | 93 - .../chrome/locale/cs/https-everywhere.dtd | 48 - .../chrome/locale/cs/https-everywhere.properties | 8 - .../chrome/locale/cs/ssl-observatory.dtd | 94 - .../chrome/locale/da/https-everywhere.dtd | 48 - .../chrome/locale/da/https-everywhere.properties | 8 - .../chrome/locale/da/ssl-observatory.dtd | 100 - .../chrome/locale/de/https-everywhere.dtd | 48 - .../chrome/locale/de/https-everywhere.properties | 8 - .../chrome/locale/de/ssl-observatory.dtd | 91 - .../chrome/locale/el/https-everywhere.dtd | 48 - .../chrome/locale/el/https-everywhere.properties | 8 - .../chrome/locale/el/ssl-observatory.dtd | 99 - .../chrome/locale/en/https-everywhere.dtd | 47 - .../chrome/locale/en/https-everywhere.properties | 8 - .../chrome/locale/en/ssl-observatory.dtd | 95 - .../chrome/locale/es/https-everywhere.dtd | 48 - .../chrome/locale/es/https-everywhere.properties | 8 - .../chrome/locale/es/ssl-observatory.dtd | 100 - .../chrome/locale/eu/https-everywhere.dtd | 48 - .../chrome/locale/eu/https-everywhere.properties | 8 - .../chrome/locale/eu/ssl-observatory.dtd | 95 - .../chrome/locale/fa/https-everywhere.dtd | 48 - .../chrome/locale/fa/https-everywhere.properties | 8 - .../chrome/locale/fa/ssl-observatory.dtd | 91 - .../chrome/locale/fi/https-everywhere.dtd | 48 - .../chrome/locale/fi/https-everywhere.properties | 8 - .../chrome/locale/fi/ssl-observatory.dtd | 91 - .../chrome/locale/fr/https-everywhere.dtd | 48 - .../chrome/locale/fr/https-everywhere.properties | 8 - .../chrome/locale/fr/ssl-observatory.dtd | 90 - .../chrome/locale/he/https-everywhere.dtd | 48 - .../chrome/locale/he/https-everywhere.properties | 8 - .../chrome/locale/he/ssl-observatory.dtd | 92 - .../chrome/locale/hr/https-everywhere.dtd | 48 - .../chrome/locale/hr/https-everywhere.properties | 8 - .../chrome/locale/hr/ssl-observatory.dtd | 98 - .../chrome/locale/hu/https-everywhere.dtd | 48 - .../chrome/locale/hu/https-everywhere.properties | 8 - .../chrome/locale/hu/ssl-observatory.dtd | 96 - .../chrome/locale/it/https-everywhere.dtd | 48 - .../chrome/locale/it/https-everywhere.properties | 8 - .../chrome/locale/it/ssl-observatory.dtd | 98 - .../chrome/locale/ja/https-everywhere.dtd | 48 - .../chrome/locale/ja/https-everywhere.properties | 8 - .../chrome/locale/ja/ssl-observatory.dtd | 94 - .../chrome/locale/ko/https-everywhere.dtd | 49 - .../chrome/locale/ko/https-everywhere.properties | 8 - .../chrome/locale/ko/ssl-observatory.dtd | 92 - .../chrome/locale/lt/https-everywhere.dtd | 48 - .../chrome/locale/lt/https-everywhere.properties | 8 - .../chrome/locale/lt/ssl-observatory.dtd | 100 - .../chrome/locale/lv/https-everywhere.dtd | 48 - .../chrome/locale/lv/https-everywhere.properties | 8 - .../chrome/locale/lv/ssl-observatory.dtd | 99 - .../chrome/locale/ms/https-everywhere.dtd | 48 - .../chrome/locale/ms/https-everywhere.properties | 8 - .../chrome/locale/ms/ssl-observatory.dtd | 104 - .../chrome/locale/nb/https-everywhere.dtd | 48 - .../chrome/locale/nb/https-everywhere.properties | 8 - .../chrome/locale/nb/ssl-observatory.dtd | 100 - .../chrome/locale/nl/https-everywhere.dtd | 48 - .../chrome/locale/nl/https-everywhere.properties | 7 - .../chrome/locale/nl/ssl-observatory.dtd | 99 - .../chrome/locale/pl/https-everywhere.dtd | 48 - .../chrome/locale/pl/https-everywhere.properties | 8 - .../chrome/locale/pl/ssl-observatory.dtd | 91 - .../chrome/locale/pt/https-everywhere.dtd | 48 - .../chrome/locale/pt/https-everywhere.properties | 8 - .../chrome/locale/pt/ssl-observatory.dtd | 94 - .../chrome/locale/ru/https-everywhere.dtd | 48 - .../chrome/locale/ru/https-everywhere.properties | 8 - .../chrome/locale/ru/ssl-observatory.dtd | 120 - .../chrome/locale/si/https-everywhere.dtd | 48 - .../chrome/locale/si/https-everywhere.properties | 8 - .../chrome/locale/si/ssl-observatory.dtd | 100 - .../chrome/locale/sk/https-everywhere.dtd | 48 - .../chrome/locale/sk/https-everywhere.properties | 8 - .../chrome/locale/sk/ssl-observatory.dtd | 100 - .../chrome/locale/sl/https-everywhere.dtd | 48 - .../chrome/locale/sl/https-everywhere.properties | 8 - .../chrome/locale/sl/ssl-observatory.dtd | 97 - .../chrome/locale/sv/https-everywhere.dtd | 48 - .../chrome/locale/sv/https-everywhere.properties | 8 - .../chrome/locale/sv/ssl-observatory.dtd | 100 - .../chrome/locale/tr/https-everywhere.dtd | 48 - .../chrome/locale/tr/https-everywhere.properties | 8 - .../chrome/locale/tr/ssl-observatory.dtd | 96 - .../chrome/locale/zh-CN/https-everywhere.dtd | 48 - .../locale/zh-CN/https-everywhere.properties | 8 - .../chrome/locale/zh-CN/ssl-observatory.dtd | 98 - .../chrome/locale/zh-TW/https-everywhere.dtd | 49 - .../locale/zh-TW/https-everywhere.properties | 8 - .../chrome/locale/zh-TW/ssl-observatory.dtd | 91 - .../https-everywhere@eff.org/chrome/skin/cross.png | Bin 282 -> 0 bytes .../chrome/skin/https-everywhere-16-gray.png | Bin 373 -> 0 bytes .../chrome/skin/https-everywhere-16.png | Bin 615 -> 0 bytes .../chrome/skin/https-everywhere-24-gray.png | Bin 638 -> 0 bytes .../chrome/skin/https-everywhere-24.png | Bin 1084 -> 0 bytes .../chrome/skin/https-everywhere-banner.jpg | Bin 20216 -> 0 bytes .../chrome/skin/https-everywhere-half-24.png | Bin 1084 -> 0 bytes .../chrome/skin/https-everywhere.css | 72 - .../chrome/skin/https-everywhere.png | Bin 1761 -> 0 bytes .../https-everywhere@eff.org/chrome/skin/loop.png | Bin 364 -> 0 bytes .../chrome/skin/ssl-observatory-messy.jpg | Bin 34968 -> 0 bytes .../chrome/skin/tick-moot.png | Bin 344 -> 0 bytes .../https-everywhere@eff.org/chrome/skin/tick.png | Bin 348 -> 0 bytes .../components/https-everywhere.js | 832 -- .../components/ssl-observatory.js | 1026 --- .../defaults/preferences/preferences.js | 45 - .../defaults/rulesets.sqlite | Bin 4258816 -> 0 bytes .../https-everywhere@eff.org/install.rdf | 51 - .../jid1-KtlZuoiikVfFew@jetpack/bootstrap.js | 350 - .../defaults/preferences/prefs.js | 3 - .../harness-options.json | 737 -- .../jid1-KtlZuoiikVfFew@jetpack/install.rdf | 29 - .../jid1-KtlZuoiikVfFew@jetpack/locales.json | 1 - .../jid1-KtlZuoiikVfFew@jetpack/options.xul | 6 - .../resources/addon-tab/lib/addon-tab.js | 153 - .../resources/librejs/data/README | 2 - .../resources/librejs/data/assets/css/style.css | 150 - .../resources/librejs/data/assets/images/README | 21 - .../data/assets/images/complain-button3.png | Bin 8958 -> 0 bytes .../librejs/data/assets/images/info-title.png | Bin 4310 -> 0 bytes .../librejs/data/assets/images/separator.png | Bin 279 -> 0 bytes .../librejs/data/assets/images/torchy.png | Bin 1364 -> 0 bytes .../librejs/data/assets/images/torchy2.png | Bin 273 -> 0 bytes .../data/chrome_worker/narcissus_parser/jsdefs.js | 751 -- .../data/chrome_worker/narcissus_parser/jslex.js | 719 -- .../data/chrome_worker/narcissus_parser/jsparse.js | 2042 ----- .../narcissus_parser/narcissus_parse.js | 58 - .../librejs/data/complain/contact_finder.js | 465 - .../librejs/data/complain/contact_regex.js | 49 - .../resources/librejs/data/complain/link_types.js | 42 - .../librejs/data/complain/pagemod_finder.js | 291 - .../librejs/data/complain/worker_finder.js | 35 - .../librejs/data/display_panel/content/README | 21 - .../display_panel/content/background-panel.jpg | Bin 96427 -> 0 bytes .../data/display_panel/content/display-panel.html | 56 - .../display_panel/content/librejs-title-old.png | Bin 2673 -> 0 bytes .../data/display_panel/content/librejs-title.png | Bin 14123 -> 0 bytes .../data/display_panel/content/panel-styles.css | 177 - .../librejs/data/display_panel/main_panel.js | 319 - .../librejs/data/images/gnu-icon-white.ico | Bin 4286 -> 0 bytes .../resources/librejs/data/images/gnu-icon.ico | Bin 4286 -> 0 bytes .../resources/librejs/data/images/gnu-icon.png | Bin 2667 -> 0 bytes .../resources/librejs/data/librejs-settings.html | 23 - .../resources/librejs/data/licenses/Boost-1.0.txt | 23 - .../resources/librejs/data/licenses/ISC.txt | 12 - .../resources/librejs/data/licenses/IntelACPI.txt | 116 - .../resources/librejs/data/licenses/agpl-3.0.txt | 661 -- .../resources/librejs/data/licenses/apache-2.0.txt | 202 - .../librejs/data/licenses/artistic-2.0.txt | 201 - .../librejs/data/licenses/bsd-3-clause.txt | 27 - .../resources/librejs/data/licenses/cc0.txt | 118 - .../resources/librejs/data/licenses/clear-bsd.txt | 33 - .../resources/librejs/data/licenses/cpal-1.0.txt | 105 - .../librejs/data/licenses/create-magnets.sh | 28 - .../resources/librejs/data/licenses/expat.txt | 5 - .../resources/librejs/data/licenses/freebsd.txt | 25 - .../resources/librejs/data/licenses/gpl-2.0.txt | 339 - .../resources/librejs/data/licenses/gpl-3.0.txt | 674 -- .../librejs/data/licenses/illinois-NCSA.txt | 24 - .../resources/librejs/data/licenses/imlib2.txt | 31 - .../resources/librejs/data/licenses/lgpl-2.0.txt | 481 - .../resources/librejs/data/licenses/lgpl-2.1.txt | 502 -- .../resources/librejs/data/licenses/lgpl-3.0.txt | 165 - .../librejs/data/licenses/magnet-links.txt | 26 - .../resources/librejs/data/licenses/mpl-2.0.txt | 373 - .../librejs/data/licenses/public-domain.txt | 18 - .../data/licenses/torrents/Boost-1.0.txt.torrent | 2 - .../librejs/data/licenses/torrents/ISC.txt.torrent | 1 - .../data/licenses/torrents/IntelACPI.txt.torrent | 1 - .../data/licenses/torrents/agpl-3.0.txt.torrent | 1 - .../data/licenses/torrents/apache-2.0.txt.torrent | 1 - .../licenses/torrents/artistic-2.0.txt.torrent | Bin 200 -> 0 bytes .../licenses/torrents/bsd-3-clause.txt.torrent | 1 - .../librejs/data/licenses/torrents/cc0.txt.torrent | 1 - .../data/licenses/torrents/clear-bsd.txt.torrent | 1 - .../data/licenses/torrents/cpal-1.0.txt.torrent | 1 - .../data/licenses/torrents/expat.txt.torrent | 1 - .../data/licenses/torrents/freebsd.txt.torrent | 1 - .../data/licenses/torrents/gpl-2.0.txt.torrent | 1 - .../data/licenses/torrents/gpl-3.0.txt.torrent | 1 - .../licenses/torrents/illinois-NCSA.txt.torrent | 1 - .../data/licenses/torrents/imlib2.txt.torrent | 1 - .../data/licenses/torrents/lgpl-2.0.txt.torrent | 1 - .../data/licenses/torrents/lgpl-2.1.txt.torrent | 1 - .../data/licenses/torrents/lgpl-3.0.txt.torrent | 2 - .../licenses/torrents/magnet-links.txt.torrent | Bin 200 -> 0 bytes .../data/licenses/torrents/mpl-2.0.txt.torrent | 1 - .../licenses/torrents/public-domain.txt.torrent | 1 - .../data/licenses/torrents/unlicense.txt.torrent | 1 - .../data/licenses/torrents/wtfpl.txt.torrent | 1 - .../librejs/data/licenses/torrents/x11.txt.torrent | 1 - .../data/licenses/torrents/xfree86.txt.torrent | 1 - .../resources/librejs/data/licenses/unlicense.txt | 25 - .../resources/librejs/data/licenses/wtfpl.txt | 11 - .../resources/librejs/data/licenses/x11.txt | 26 - .../resources/librejs/data/licenses/xfree86.txt | 43 - .../resources/librejs/data/loading/loader.gif | Bin 8787 -> 0 bytes .../librejs/data/loading/loading-panel.html | 31 - .../data/preferences_panel/contentscript.js | 70 - .../data/preferences_panel/preferences_panel.html | 71 - .../data/script_detector/script_detector.js | 363 - .../librejs/data/script_libraries/gethash.sh | 10 - .../data/script_libraries/script-libraries.json | 1440 --- .../data/settings/images/beta-ribbon-cropped.png | Bin 7302 -> 0 bytes .../librejs/data/settings/images/beta-ribbon.png | Bin 8658 -> 0 bytes .../data/settings/images/button-download.png | Bin 3426 -> 0 bytes .../data/settings/images/collapsed-nonfree.png | Bin 468604 -> 0 bytes .../data/settings/images/expanded-nonfree.png | Bin 450090 -> 0 bytes .../librejs/data/settings/images/libre.png | Bin 19048 -> 0 bytes .../images/librejs-running-blocked-wikipedia.jpg | Bin 91736 -> 0 bytes .../librejs/data/settings/images/logo-medium.png | Bin 11050 -> 0 bytes .../resources/librejs/data/settings/index.html | 131 - .../resources/librejs/data/settings/js/form-row.js | 110 - .../librejs/data/settings/js/form-types.js | 150 - .../librejs/data/settings/js/pagescript-emitter.js | 14 - .../data/settings/js/pagescript-listener.js | 59 - .../data/settings/js/permafrost-info-box.js | 21 - .../librejs/data/settings/styles/1140.css | 130 - .../librejs/data/settings/styles/form.css | 8 - .../librejs/data/settings/styles/index.html | 277 - .../librejs/data/settings/styles/styles.css | 135 - .../third-party/block-ui/jquery.blockUI.js | 574 -- .../bootstrap/css/bootstrap-responsive.min.css | 9 - .../third-party/bootstrap/css/bootstrap.min.css | 9 - .../bootstrap/img/glyphicons-halflings-white.png | Bin 8777 -> 0 bytes .../bootstrap/img/glyphicons-halflings.png | Bin 12097 -> 0 bytes .../third-party/bootstrap/js/bootstrap.min.js | 6 - .../settings/third-party/editable/CHANGELOG.txt | 103 - .../data/settings/third-party/editable/LICENSE-MIT | 22 - .../data/settings/third-party/editable/README.md | 71 - .../bootstrap-editable/css/bootstrap-editable.css | 434 - .../bootstrap-editable/css/img/loading.gif | Bin 1849 -> 0 bytes .../js/bootstrap-editable-inline.min.js | 5 - .../jquery-ui/css/no-theme/jquery-ui.min.css | 7 - .../css/no-theme/jquery-ui.structure.min.css | 5 - .../ui-bg_diagonals-thick_18_b81900_40x40.png | Bin 205 -> 0 bytes .../ui-bg_diagonals-thick_20_666666_40x40.png | Bin 160 -> 0 bytes .../images/ui-bg_flat_10_000000_40x100.png | Bin 71 -> 0 bytes .../images/ui-bg_glass_100_f6f6f6_1x400.png | Bin 123 -> 0 bytes .../images/ui-bg_glass_100_fdf5ce_1x400.png | Bin 193 -> 0 bytes .../images/ui-bg_glass_65_ffffff_1x400.png | Bin 74 -> 0 bytes .../images/ui-bg_gloss-wave_35_f6a828_500x100.png | Bin 4824 -> 0 bytes .../ui-bg_highlight-soft_100_eeeeee_1x100.png | Bin 125 -> 0 bytes .../ui-bg_highlight-soft_75_ffe45c_1x100.png | Bin 166 -> 0 bytes .../images/ui-icons_222222_256x240.png | Bin 3887 -> 0 bytes .../images/ui-icons_228ef1_256x240.png | Bin 3887 -> 0 bytes .../images/ui-icons_ef8c08_256x240.png | Bin 3887 -> 0 bytes .../images/ui-icons_ffd27a_256x240.png | Bin 3887 -> 0 bytes .../images/ui-icons_ffffff_256x240.png | Bin 3887 -> 0 bytes .../css/ui-lightness/jquery-ui.theme.min.css | 5 - .../third-party/jquery-ui/js/jquery-ui.min.js | 13 - .../data/settings/third-party/jquery/jquery.min.js | 9190 -------------------- .../resources/librejs/data/third_party/README | 14 - .../librejs/data/third_party/jquery-src.js | 9190 -------------------- .../librejs/data/third_party/jquery.easing.1.3.js | 205 - .../resources/librejs/data/widget/images/README | 21 - .../librejs/data/widget/images/librejs-off.png | Bin 498 -> 0 bytes .../librejs/data/widget/images/librejs.png | Bin 503 -> 0 bytes .../resources/librejs/data/widget/widget.js | 32 - .../lib/addon_management/install_uninstall.js | 68 - .../librejs/lib/addon_management/prefchange.js | 118 - .../librejs/lib/html_script_finder/bug_fix.js | 23 - .../librejs/lib/html_script_finder/dom_handler.js | 560 -- .../html_script_finder/dom_handler/attributes.js | 137 - .../html_script_finder/dom_handler/dom_checker.js | 464 - .../html_script_finder/dom_handler/dom_gatherer.js | 301 - .../lib/html_script_finder/dom_handler/request.js | 112 - .../dom_handler/script_object.js | 198 - .../dom_handler/script_properties.js | 43 - .../librejs/lib/html_script_finder/html_parser.js | 158 - .../lib/html_script_finder/url_seen_tester.js | 87 - .../web_labels/find_js_labels.js | 95 - .../html_script_finder/web_labels/js_web_labels.js | 216 - .../web_labels/script_hash_worker.js | 58 - .../librejs/lib/http_observer/allowed_referrers.js | 75 - .../resources/librejs/lib/http_observer/caching.js | 30 - .../lib/http_observer/http_request_observer.js | 161 - .../librejs/lib/http_observer/process_response.js | 408 - .../librejs/lib/http_observer/stream_loader.js | 110 - .../librejs/lib/js_checker/constant_types.js | 190 - .../librejs/lib/js_checker/free_checker.js | 227 - .../resources/librejs/lib/js_checker/js_checker.js | 513 -- .../librejs/lib/js_checker/license_definitions.js | 196 - .../librejs/lib/js_checker/nontrivial_checker.js | 389 - .../librejs/lib/js_checker/pattern_utils.js | 40 - .../librejs/lib/js_checker/privacy_checker.js | 48 - .../lib/js_checker/privacy_threat_definitions.js | 40 - .../librejs/lib/js_checker/relation_checker.js | 289 - .../resources/librejs/lib/main.js | 212 - .../lib/narcissus_parser/narcissus_worker.js | 67 - .../librejs/lib/script_entries/accepted_scripts.js | 67 - .../librejs/lib/script_entries/all_scripts.js | 108 - .../resources/librejs/lib/script_entries/crypto.js | 60 - .../librejs/lib/script_entries/dryrun_scripts.js | 76 - .../librejs/lib/script_entries/free_libraries.js | 67 - .../librejs/lib/script_entries/removed_scripts.js | 71 - .../librejs/lib/script_entries/scripts_cache.js | 182 - .../resources/librejs/lib/settings/settings_tab.js | 84 - .../resources/librejs/lib/settings/storage.js | 164 - .../resources/librejs/lib/ui/notification.js | 77 - .../resources/librejs/lib/ui/script_panel.js | 73 - .../resources/librejs/lib/ui/ui_info.js | 232 - .../librejs/lib/url_handler/node_punycode.js | 219 - .../librejs/lib/url_handler/node_querystring.js | 187 - .../resources/librejs/lib/url_handler/node_url.js | 611 -- .../librejs/lib/url_handler/url_handler.js | 120 - .../resources/menuitems/lib/menuitems.js | 195 - .../notification-box/lib/notification-box.js | 129 - .../resources/vold-utils/lib/unload+.js | 80 - .../extensions/spyblock@gnu.org/bootstrap.js | 169 - .../extensions/spyblock@gnu.org/chrome.manifest | 58 - .../spyblock@gnu.org/chrome/content/errors.html | 111 - .../spyblock@gnu.org/chrome/content/objtabs.css | 82 - .../spyblock@gnu.org/chrome/content/ui/composer.js | 412 - .../chrome/content/ui/composer.xul | 118 - .../chrome/content/ui/fennecSettings.xul | 38 - .../chrome/content/ui/filters-backup.js | 348 - .../chrome/content/ui/filters-filteractions.js | 561 -- .../chrome/content/ui/filters-filterview.js | 849 -- .../chrome/content/ui/filters-search.js | 269 - .../content/ui/filters-subscriptionactions.js | 606 -- .../chrome/content/ui/filters-subscriptionview.js | 330 - .../spyblock@gnu.org/chrome/content/ui/filters.js | 226 - .../spyblock@gnu.org/chrome/content/ui/filters.xul | 400 - .../chrome/content/ui/firstRun.html | 141 - .../spyblock@gnu.org/chrome/content/ui/firstRun.js | 253 - .../spyblock@gnu.org/chrome/content/ui/flasher.js | 108 - .../spyblock@gnu.org/chrome/content/ui/i18n.js | 150 - .../spyblock@gnu.org/chrome/content/ui/overlay.xul | 134 - .../chrome/content/ui/progressBar.js | 158 - .../chrome/content/ui/progressBar.xul | 29 - .../chrome/content/ui/sendReport.js | 1571 ---- .../chrome/content/ui/sendReport.xul | 259 - .../chrome/content/ui/settings.xul | 38 - .../spyblock@gnu.org/chrome/content/ui/sidebar.js | 1246 --- .../spyblock@gnu.org/chrome/content/ui/sidebar.xul | 139 - .../chrome/content/ui/sidebarDetached.xul | 50 - .../chrome/content/ui/subscriptionSelection.js | 308 - .../chrome/content/ui/subscriptionSelection.xul | 75 - .../chrome/content/ui/subscriptions.xml | 117 - .../spyblock@gnu.org/chrome/content/ui/utils.js | 66 - .../spyblock@gnu.org/chrome/locale/ar/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/ar/filters.dtd | 74 - .../chrome/locale/ar/firstRun.properties | 20 - .../chrome/locale/ar/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/ar/overlay.dtd | 32 - .../chrome/locale/ar/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/ar/sidebar.dtd | 35 - .../chrome/locale/ar/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/bg/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/bg/filters.dtd | 74 - .../chrome/locale/bg/firstRun.properties | 20 - .../chrome/locale/bg/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/bg/overlay.dtd | 32 - .../chrome/locale/bg/sendReport.dtd | 69 - .../spyblock@gnu.org/chrome/locale/bg/sidebar.dtd | 35 - .../chrome/locale/bg/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/ca/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/ca/filters.dtd | 72 - .../chrome/locale/ca/firstRun.properties | 20 - .../chrome/locale/ca/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/ca/overlay.dtd | 32 - .../chrome/locale/ca/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/ca/sidebar.dtd | 35 - .../chrome/locale/ca/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/cs/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/cs/filters.dtd | 72 - .../chrome/locale/cs/firstRun.properties | 20 - .../chrome/locale/cs/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/cs/overlay.dtd | 32 - .../chrome/locale/cs/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/cs/sidebar.dtd | 35 - .../chrome/locale/cs/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/da/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/da/filters.dtd | 74 - .../chrome/locale/da/firstRun.properties | 20 - .../chrome/locale/da/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/da/overlay.dtd | 32 - .../chrome/locale/da/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/da/sidebar.dtd | 35 - .../chrome/locale/da/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/de/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/de/filters.dtd | 73 - .../chrome/locale/de/firstRun.properties | 20 - .../chrome/locale/de/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/de/overlay.dtd | 32 - .../chrome/locale/de/sendReport.dtd | 105 - .../spyblock@gnu.org/chrome/locale/de/sidebar.dtd | 35 - .../chrome/locale/de/subscriptionSelection.dtd | 12 - .../chrome/locale/dsb/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/dsb/filters.dtd | 72 - .../chrome/locale/dsb/firstRun.properties | 20 - .../chrome/locale/dsb/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/dsb/overlay.dtd | 32 - .../chrome/locale/dsb/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/dsb/sidebar.dtd | 35 - .../chrome/locale/dsb/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/el/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/el/filters.dtd | 72 - .../chrome/locale/el/firstRun.properties | 20 - .../chrome/locale/el/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/el/overlay.dtd | 32 - .../chrome/locale/el/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/el/sidebar.dtd | 35 - .../chrome/locale/el/subscriptionSelection.dtd | 12 - .../chrome/locale/en-GB/composer.dtd | 33 - .../chrome/locale/en-GB/filters.dtd | 74 - .../chrome/locale/en-GB/firstRun.properties | 20 - .../chrome/locale/en-GB/global.properties | 41 - .../chrome/locale/en-GB/overlay.dtd | 32 - .../chrome/locale/en-GB/sendReport.dtd | 71 - .../chrome/locale/en-GB/sidebar.dtd | 35 - .../chrome/locale/en-GB/subscriptionSelection.dtd | 12 - .../chrome/locale/en-US/composer.dtd | 38 - .../chrome/locale/en-US/filters.dtd | 92 - .../chrome/locale/en-US/firstRun.properties | 24 - .../chrome/locale/en-US/global.properties | 58 - .../chrome/locale/en-US/overlay.dtd | 41 - .../chrome/locale/en-US/sendReport.dtd | 181 - .../chrome/locale/en-US/sidebar.dtd | 41 - .../chrome/locale/en-US/subscriptionSelection.dtd | 19 - .../spyblock@gnu.org/chrome/locale/eo/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/eo/filters.dtd | 72 - .../chrome/locale/eo/firstRun.properties | 20 - .../chrome/locale/eo/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/eo/overlay.dtd | 32 - .../chrome/locale/eo/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/eo/sidebar.dtd | 35 - .../chrome/locale/eo/subscriptionSelection.dtd | 12 - .../chrome/locale/es-AR/composer.dtd | 33 - .../chrome/locale/es-AR/filters.dtd | 72 - .../chrome/locale/es-AR/firstRun.properties | 20 - .../chrome/locale/es-AR/global.properties | 41 - .../chrome/locale/es-AR/overlay.dtd | 32 - .../chrome/locale/es-AR/sendReport.dtd | 65 - .../chrome/locale/es-AR/sidebar.dtd | 35 - .../chrome/locale/es-AR/subscriptionSelection.dtd | 12 - .../chrome/locale/es-ES/composer.dtd | 33 - .../chrome/locale/es-ES/filters.dtd | 72 - .../chrome/locale/es-ES/firstRun.properties | 20 - .../chrome/locale/es-ES/global.properties | 41 - .../chrome/locale/es-ES/overlay.dtd | 32 - .../chrome/locale/es-ES/sendReport.dtd | 65 - .../chrome/locale/es-ES/sidebar.dtd | 35 - .../chrome/locale/es-ES/subscriptionSelection.dtd | 12 - .../chrome/locale/es-MX/composer.dtd | 33 - .../chrome/locale/es-MX/filters.dtd | 74 - .../chrome/locale/es-MX/firstRun.properties | 20 - .../chrome/locale/es-MX/global.properties | 41 - .../chrome/locale/es-MX/overlay.dtd | 32 - .../chrome/locale/es-MX/sendReport.dtd | 65 - .../chrome/locale/es-MX/sidebar.dtd | 35 - .../chrome/locale/es-MX/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/et/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/et/filters.dtd | 72 - .../chrome/locale/et/firstRun.properties | 20 - .../chrome/locale/et/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/et/overlay.dtd | 32 - .../chrome/locale/et/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/et/sidebar.dtd | 35 - .../chrome/locale/et/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/eu/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/eu/filters.dtd | 73 - .../chrome/locale/eu/firstRun.properties | 20 - .../chrome/locale/eu/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/eu/overlay.dtd | 32 - .../chrome/locale/eu/sendReport.dtd | 66 - .../spyblock@gnu.org/chrome/locale/eu/sidebar.dtd | 35 - .../chrome/locale/eu/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/fa/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/fa/filters.dtd | 72 - .../chrome/locale/fa/firstRun.properties | 20 - .../chrome/locale/fa/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/fa/overlay.dtd | 32 - .../chrome/locale/fa/sendReport.dtd | 66 - .../spyblock@gnu.org/chrome/locale/fa/sidebar.dtd | 35 - .../chrome/locale/fa/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/fi/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/fi/filters.dtd | 74 - .../chrome/locale/fi/firstRun.properties | 20 - .../chrome/locale/fi/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/fi/overlay.dtd | 32 - .../chrome/locale/fi/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/fi/sidebar.dtd | 35 - .../chrome/locale/fi/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/fr/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/fr/filters.dtd | 72 - .../chrome/locale/fr/firstRun.properties | 20 - .../chrome/locale/fr/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/fr/overlay.dtd | 32 - .../chrome/locale/fr/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/fr/sidebar.dtd | 35 - .../chrome/locale/fr/subscriptionSelection.dtd | 12 - .../chrome/locale/fy-NL/composer.dtd | 33 - .../chrome/locale/fy-NL/filters.dtd | 74 - .../chrome/locale/fy-NL/firstRun.properties | 20 - .../chrome/locale/fy-NL/global.properties | 41 - .../chrome/locale/fy-NL/overlay.dtd | 32 - .../chrome/locale/fy-NL/sendReport.dtd | 65 - .../chrome/locale/fy-NL/sidebar.dtd | 35 - .../chrome/locale/fy-NL/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/gl/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/gl/filters.dtd | 72 - .../chrome/locale/gl/firstRun.properties | 20 - .../chrome/locale/gl/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/gl/overlay.dtd | 32 - .../chrome/locale/gl/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/gl/sidebar.dtd | 35 - .../chrome/locale/gl/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/he/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/he/filters.dtd | 72 - .../chrome/locale/he/firstRun.properties | 20 - .../chrome/locale/he/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/he/overlay.dtd | 32 - .../chrome/locale/he/sendReport.dtd | 66 - .../spyblock@gnu.org/chrome/locale/he/sidebar.dtd | 35 - .../chrome/locale/he/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/hr/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/hr/filters.dtd | 74 - .../chrome/locale/hr/firstRun.properties | 20 - .../chrome/locale/hr/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/hr/overlay.dtd | 32 - .../chrome/locale/hr/sendReport.dtd | 102 - .../spyblock@gnu.org/chrome/locale/hr/sidebar.dtd | 35 - .../chrome/locale/hr/subscriptionSelection.dtd | 12 - .../chrome/locale/hsb/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/hsb/filters.dtd | 72 - .../chrome/locale/hsb/firstRun.properties | 20 - .../chrome/locale/hsb/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/hsb/overlay.dtd | 32 - .../chrome/locale/hsb/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/hsb/sidebar.dtd | 35 - .../chrome/locale/hsb/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/hu/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/hu/filters.dtd | 72 - .../chrome/locale/hu/firstRun.properties | 20 - .../chrome/locale/hu/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/hu/overlay.dtd | 32 - .../chrome/locale/hu/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/hu/sidebar.dtd | 35 - .../chrome/locale/hu/subscriptionSelection.dtd | 12 - .../chrome/locale/hy-AM/composer.dtd | 33 - .../chrome/locale/hy-AM/filters.dtd | 72 - .../chrome/locale/hy-AM/firstRun.properties | 20 - .../chrome/locale/hy-AM/global.properties | 41 - .../chrome/locale/hy-AM/overlay.dtd | 32 - .../chrome/locale/hy-AM/sendReport.dtd | 65 - .../chrome/locale/hy-AM/sidebar.dtd | 35 - .../chrome/locale/hy-AM/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/id/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/id/filters.dtd | 72 - .../chrome/locale/id/firstRun.properties | 20 - .../chrome/locale/id/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/id/overlay.dtd | 32 - .../chrome/locale/id/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/id/sidebar.dtd | 35 - .../chrome/locale/id/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/is/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/is/filters.dtd | 74 - .../chrome/locale/is/firstRun.properties | 20 - .../chrome/locale/is/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/is/overlay.dtd | 32 - .../chrome/locale/is/sendReport.dtd | 97 - .../spyblock@gnu.org/chrome/locale/is/sidebar.dtd | 35 - .../chrome/locale/is/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/it/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/it/filters.dtd | 74 - .../chrome/locale/it/firstRun.properties | 20 - .../chrome/locale/it/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/it/overlay.dtd | 32 - .../chrome/locale/it/sendReport.dtd | 97 - .../spyblock@gnu.org/chrome/locale/it/sidebar.dtd | 35 - .../chrome/locale/it/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/ja/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/ja/filters.dtd | 72 - .../chrome/locale/ja/firstRun.properties | 20 - .../chrome/locale/ja/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/ja/overlay.dtd | 32 - .../chrome/locale/ja/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/ja/sidebar.dtd | 35 - .../chrome/locale/ja/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/kk/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/kk/filters.dtd | 74 - .../chrome/locale/kk/firstRun.properties | 20 - .../chrome/locale/kk/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/kk/overlay.dtd | 32 - .../chrome/locale/kk/sendReport.dtd | 66 - .../spyblock@gnu.org/chrome/locale/kk/sidebar.dtd | 35 - .../chrome/locale/kk/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/ko/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/ko/filters.dtd | 72 - .../chrome/locale/ko/firstRun.properties | 20 - .../chrome/locale/ko/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/ko/overlay.dtd | 32 - .../chrome/locale/ko/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/ko/sidebar.dtd | 35 - .../chrome/locale/ko/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/lt/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/lt/filters.dtd | 74 - .../chrome/locale/lt/firstRun.properties | 20 - .../chrome/locale/lt/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/lt/overlay.dtd | 32 - .../chrome/locale/lt/sendReport.dtd | 96 - .../spyblock@gnu.org/chrome/locale/lt/sidebar.dtd | 35 - .../chrome/locale/lt/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/lv/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/lv/filters.dtd | 72 - .../chrome/locale/lv/firstRun.properties | 20 - .../chrome/locale/lv/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/lv/overlay.dtd | 32 - .../chrome/locale/lv/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/lv/sidebar.dtd | 35 - .../chrome/locale/lv/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/ms/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/ms/filters.dtd | 73 - .../chrome/locale/ms/firstRun.properties | 20 - .../chrome/locale/ms/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/ms/overlay.dtd | 32 - .../chrome/locale/ms/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/ms/sidebar.dtd | 35 - .../chrome/locale/ms/subscriptionSelection.dtd | 12 - .../chrome/locale/nb-NO/composer.dtd | 33 - .../chrome/locale/nb-NO/filters.dtd | 72 - .../chrome/locale/nb-NO/firstRun.properties | 20 - .../chrome/locale/nb-NO/global.properties | 41 - .../chrome/locale/nb-NO/overlay.dtd | 32 - .../chrome/locale/nb-NO/sendReport.dtd | 65 - .../chrome/locale/nb-NO/sidebar.dtd | 35 - .../chrome/locale/nb-NO/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/nl/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/nl/filters.dtd | 72 - .../chrome/locale/nl/firstRun.properties | 20 - .../chrome/locale/nl/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/nl/overlay.dtd | 32 - .../chrome/locale/nl/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/nl/sidebar.dtd | 35 - .../chrome/locale/nl/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/pl/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/pl/filters.dtd | 72 - .../chrome/locale/pl/firstRun.properties | 20 - .../chrome/locale/pl/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/pl/overlay.dtd | 32 - .../chrome/locale/pl/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/pl/sidebar.dtd | 35 - .../chrome/locale/pl/subscriptionSelection.dtd | 12 - .../chrome/locale/pt-BR/composer.dtd | 33 - .../chrome/locale/pt-BR/filters.dtd | 72 - .../chrome/locale/pt-BR/firstRun.properties | 20 - .../chrome/locale/pt-BR/global.properties | 41 - .../chrome/locale/pt-BR/overlay.dtd | 32 - .../chrome/locale/pt-BR/sendReport.dtd | 65 - .../chrome/locale/pt-BR/sidebar.dtd | 35 - .../chrome/locale/pt-BR/subscriptionSelection.dtd | 12 - .../chrome/locale/pt-PT/composer.dtd | 33 - .../chrome/locale/pt-PT/filters.dtd | 74 - .../chrome/locale/pt-PT/firstRun.properties | 20 - .../chrome/locale/pt-PT/global.properties | 41 - .../chrome/locale/pt-PT/overlay.dtd | 32 - .../chrome/locale/pt-PT/sendReport.dtd | 65 - .../chrome/locale/pt-PT/sidebar.dtd | 35 - .../chrome/locale/pt-PT/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/ro/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/ro/filters.dtd | 72 - .../chrome/locale/ro/firstRun.properties | 20 - .../chrome/locale/ro/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/ro/overlay.dtd | 32 - .../chrome/locale/ro/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/ro/sidebar.dtd | 35 - .../chrome/locale/ro/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/ru/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/ru/filters.dtd | 73 - .../chrome/locale/ru/firstRun.properties | 20 - .../chrome/locale/ru/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/ru/overlay.dtd | 32 - .../chrome/locale/ru/sendReport.dtd | 100 - .../spyblock@gnu.org/chrome/locale/ru/sidebar.dtd | 35 - .../chrome/locale/ru/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/sk/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/sk/filters.dtd | 74 - .../chrome/locale/sk/firstRun.properties | 20 - .../chrome/locale/sk/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/sk/overlay.dtd | 32 - .../chrome/locale/sk/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/sk/sidebar.dtd | 35 - .../chrome/locale/sk/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/sl/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/sl/filters.dtd | 74 - .../chrome/locale/sl/firstRun.properties | 20 - .../chrome/locale/sl/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/sl/overlay.dtd | 32 - .../chrome/locale/sl/sendReport.dtd | 70 - .../spyblock@gnu.org/chrome/locale/sl/sidebar.dtd | 35 - .../chrome/locale/sl/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/sq/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/sq/filters.dtd | 72 - .../chrome/locale/sq/firstRun.properties | 24 - .../chrome/locale/sq/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/sq/overlay.dtd | 32 - .../chrome/locale/sq/sendReport.dtd | 71 - .../spyblock@gnu.org/chrome/locale/sq/sidebar.dtd | 35 - .../chrome/locale/sq/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/sr/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/sr/filters.dtd | 72 - .../chrome/locale/sr/firstRun.properties | 20 - .../chrome/locale/sr/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/sr/overlay.dtd | 32 - .../chrome/locale/sr/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/sr/sidebar.dtd | 35 - .../chrome/locale/sr/subscriptionSelection.dtd | 12 - .../chrome/locale/sv-SE/composer.dtd | 33 - .../chrome/locale/sv-SE/filters.dtd | 72 - .../chrome/locale/sv-SE/firstRun.properties | 20 - .../chrome/locale/sv-SE/global.properties | 41 - .../chrome/locale/sv-SE/overlay.dtd | 32 - .../chrome/locale/sv-SE/sendReport.dtd | 65 - .../chrome/locale/sv-SE/sidebar.dtd | 35 - .../chrome/locale/sv-SE/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/th/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/th/filters.dtd | 73 - .../chrome/locale/th/firstRun.properties | 20 - .../chrome/locale/th/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/th/overlay.dtd | 32 - .../chrome/locale/th/sendReport.dtd | 66 - .../spyblock@gnu.org/chrome/locale/th/sidebar.dtd | 35 - .../chrome/locale/th/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/tr/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/tr/filters.dtd | 74 - .../chrome/locale/tr/firstRun.properties | 20 - .../chrome/locale/tr/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/tr/overlay.dtd | 32 - .../chrome/locale/tr/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/tr/sidebar.dtd | 35 - .../chrome/locale/tr/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/uk/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/uk/filters.dtd | 72 - .../chrome/locale/uk/firstRun.properties | 20 - .../chrome/locale/uk/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/uk/overlay.dtd | 32 - .../chrome/locale/uk/sendReport.dtd | 70 - .../spyblock@gnu.org/chrome/locale/uk/sidebar.dtd | 35 - .../chrome/locale/uk/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/locale/vi/composer.dtd | 33 - .../spyblock@gnu.org/chrome/locale/vi/filters.dtd | 72 - .../chrome/locale/vi/firstRun.properties | 20 - .../chrome/locale/vi/global.properties | 41 - .../spyblock@gnu.org/chrome/locale/vi/overlay.dtd | 32 - .../chrome/locale/vi/sendReport.dtd | 65 - .../spyblock@gnu.org/chrome/locale/vi/sidebar.dtd | 35 - .../chrome/locale/vi/subscriptionSelection.dtd | 12 - .../chrome/locale/zh-CN/composer.dtd | 33 - .../chrome/locale/zh-CN/filters.dtd | 73 - .../chrome/locale/zh-CN/firstRun.properties | 20 - .../chrome/locale/zh-CN/global.properties | 41 - .../chrome/locale/zh-CN/overlay.dtd | 32 - .../chrome/locale/zh-CN/sendReport.dtd | 78 - .../chrome/locale/zh-CN/sidebar.dtd | 35 - .../chrome/locale/zh-CN/subscriptionSelection.dtd | 12 - .../chrome/locale/zh-TW/composer.dtd | 33 - .../chrome/locale/zh-TW/filters.dtd | 72 - .../chrome/locale/zh-TW/firstRun.properties | 20 - .../chrome/locale/zh-TW/global.properties | 41 - .../chrome/locale/zh-TW/overlay.dtd | 32 - .../chrome/locale/zh-TW/sendReport.dtd | 66 - .../chrome/locale/zh-TW/sidebar.dtd | 35 - .../chrome/locale/zh-TW/subscriptionSelection.dtd | 12 - .../spyblock@gnu.org/chrome/skin/abp-icon-big.png | Bin 15201 -> 0 bytes .../spyblock@gnu.org/chrome/skin/abp-status-16.png | Bin 1304 -> 0 bytes .../spyblock@gnu.org/chrome/skin/abp-status-32.png | Bin 3419 -> 0 bytes .../spyblock@gnu.org/chrome/skin/abp-status.png | Bin 2433 -> 0 bytes .../spyblock@gnu.org/chrome/skin/ajax-loader.gif | Bin 3208 -> 0 bytes .../chrome/skin/background-main.png | Bin 163 -> 0 bytes .../chrome/skin/background-share.png | Bin 162 -> 0 bytes .../spyblock@gnu.org/chrome/skin/background.png | Bin 162 -> 0 bytes .../spyblock@gnu.org/chrome/skin/checkbox.png | Bin 356 -> 0 bytes .../spyblock@gnu.org/chrome/skin/close.png | Bin 1211 -> 0 bytes .../spyblock@gnu.org/chrome/skin/composer.css | 77 - .../spyblock@gnu.org/chrome/skin/donate.png | Bin 160 -> 0 bytes .../chrome/skin/features/malware.png | Bin 3335 -> 0 bytes .../chrome/skin/features/social.png | Bin 4260 -> 0 bytes .../chrome/skin/features/tracking.png | Bin 3562 -> 0 bytes .../spyblock@gnu.org/chrome/skin/filters.css | 221 - .../spyblock@gnu.org/chrome/skin/firstRun.css | 588 -- .../chrome/skin/fonts/CreteRound-Italic.otf | Bin 43152 -> 0 bytes .../chrome/skin/fonts/CreteRound-Regular.otf | Bin 40968 -> 0 bytes .../spyblock@gnu.org/chrome/skin/item-state.png | Bin 533 -> 0 bytes .../spyblock@gnu.org/chrome/skin/overlay.css | 226 - .../spyblock@gnu.org/chrome/skin/sendReport.css | 129 - .../spyblock@gnu.org/chrome/skin/sidebar.css | 112 - .../spyblock@gnu.org/chrome/skin/slow.png | Bin 718 -> 0 bytes .../chrome/skin/social/facebook.png | Bin 3861 -> 0 bytes .../chrome/skin/social/googleplus.png | Bin 4009 -> 0 bytes .../spyblock@gnu.org/chrome/skin/social/renren.png | Bin 2619 -> 0 bytes .../chrome/skin/social/twitter.png | Bin 3944 -> 0 bytes .../spyblock@gnu.org/chrome/skin/social/weibo.png | Bin 3497 -> 0 bytes .../chrome/skin/subscriptionSelection.css | 69 - .../extensions/spyblock@gnu.org/defaults/prefs.js | 38 - .../trisquel/extensions/spyblock@gnu.org/icon.png | Bin 3387 -> 0 bytes .../extensions/spyblock@gnu.org/icon64.png | Bin 5727 -> 0 bytes .../extensions/spyblock@gnu.org/install.rdf | 76 - .../extensions/spyblock@gnu.org/lib/Public.jsm | 202 - .../spyblock@gnu.org/lib/antiadblockInit.js | 78 - .../extensions/spyblock@gnu.org/lib/appSupport.js | 948 -- .../spyblock@gnu.org/lib/contentPolicy.js | 779 -- .../spyblock@gnu.org/lib/customizableUI.js | 320 - .../extensions/spyblock@gnu.org/lib/downloader.js | 381 - .../extensions/spyblock@gnu.org/lib/elemHide.js | 419 - .../lib/elemHideHitRegistration.js | 160 - .../spyblock@gnu.org/lib/filterClasses.js | 906 -- .../spyblock@gnu.org/lib/filterListener.js | 282 - .../spyblock@gnu.org/lib/filterNotifier.js | 73 - .../spyblock@gnu.org/lib/filterStorage.js | 897 -- .../trisquel/extensions/spyblock@gnu.org/lib/io.js | 365 - .../extensions/spyblock@gnu.org/lib/keySelector.js | 228 - .../extensions/spyblock@gnu.org/lib/main.js | 73 - .../extensions/spyblock@gnu.org/lib/matcher.js | 446 - .../spyblock@gnu.org/lib/notification.js | 339 - .../extensions/spyblock@gnu.org/lib/objectTabs.js | 492 -- .../extensions/spyblock@gnu.org/lib/prefs.js | 203 - .../spyblock@gnu.org/lib/requestNotifier.js | 378 - .../spyblock@gnu.org/lib/subscriptionClasses.js | 597 -- .../extensions/spyblock@gnu.org/lib/sync.js | 459 - .../spyblock@gnu.org/lib/synchronizer.js | 330 - .../extensions/spyblock@gnu.org/lib/timeline.js | 155 - .../trisquel/extensions/spyblock@gnu.org/lib/ui.js | 1973 ----- .../extensions/spyblock@gnu.org/lib/utils.js | 787 -- .../spyblock@gnu.org/lib/windowObserver.js | 112 - .../trisquel/searchplugins/trisquel-packages.xml | 9 - .../firefox/trisquel/searchplugins/trisquel.xml | 9 - helpers/DATA/firefox/trisquel/settings.js | 148 - 972 files changed, 100349 deletions(-) delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/aboutHome.css delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/aboutHome.js delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/aboutHome.xhtml delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/addons.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/addons@2x.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/apps.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/apps@2x.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/bookmarks.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/bookmarks@2x.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/downloads.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/downloads@2x.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/history.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/history@2x.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/restore-large.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/restore-large@2x.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/restore.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/restore@2x.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/settings.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/settings@2x.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/snippet1.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/snippet1@2x.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/snippet2.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/snippet2@2x.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/sync.png delete mode 100644 helpers/DATA/firefox/trisquel/abouthome/sync@2x.png delete mode 100644 helpers/DATA/firefox/trisquel/adblock_artwork/100.png delete mode 100644 helpers/DATA/firefox/trisquel/adblock_artwork/16.png delete mode 100644 helpers/DATA/firefox/trisquel/adblock_artwork/24.png delete mode 100644 helpers/DATA/firefox/trisquel/adblock_artwork/32.png delete mode 100644 helpers/DATA/firefox/trisquel/adblock_artwork/48.png delete mode 100644 helpers/DATA/firefox/trisquel/adblock_artwork/64.png delete mode 100644 helpers/DATA/firefox/trisquel/adblock_artwork/adblock.svg delete mode 100644 helpers/DATA/firefox/trisquel/bookmarks.html.in delete mode 100644 helpers/DATA/firefox/trisquel/branding/Makefile.in delete mode 100644 helpers/DATA/firefox/trisquel/branding/VisualElementsManifest.xml delete mode 100644 helpers/DATA/firefox/trisquel/branding/appname.bmp delete mode 100644 helpers/DATA/firefox/trisquel/branding/background.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/bgintro.bmp delete mode 100644 helpers/DATA/firefox/trisquel/branding/bgplain.bmp delete mode 100644 helpers/DATA/firefox/trisquel/branding/branding.nsi delete mode 100644 helpers/DATA/firefox/trisquel/branding/clock.bmp delete mode 100644 helpers/DATA/firefox/trisquel/branding/configure.sh delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/Makefile.in delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/VisualElements_logo.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/VisualElements_smalllogo.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/VisualElements_splashscreen.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/about-background.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/about-logo.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/about-logo@2x.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/about-wordmark.svg delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/about.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/aboutDialog.css delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/icon48.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/icon64.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/identity-icons-brand.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/identity-icons-brand@2x.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/jar.mn delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/metro-about-footer.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/metro-about-wordmark.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/metro-about.css delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/metro_firstrun_logo.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/metro_firstrun_logo@1.4x.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/metro_firstrun_logo@1.8x.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/content/moz.build delete mode 100644 helpers/DATA/firefox/trisquel/branding/default16.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/default32.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/default48.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/disk.icns delete mode 100644 helpers/DATA/firefox/trisquel/branding/document-os2.ico delete mode 100644 helpers/DATA/firefox/trisquel/branding/document.icns delete mode 100644 helpers/DATA/firefox/trisquel/branding/document.ico delete mode 100644 helpers/DATA/firefox/trisquel/branding/dsstore delete mode 100644 helpers/DATA/firefox/trisquel/branding/icecat-os2.ico delete mode 100644 helpers/DATA/firefox/trisquel/branding/icecat.icns delete mode 100644 helpers/DATA/firefox/trisquel/branding/icecat.ico delete mode 100644 helpers/DATA/firefox/trisquel/branding/locales/Makefile.in delete mode 100644 helpers/DATA/firefox/trisquel/branding/locales/browserconfig.properties delete mode 100644 helpers/DATA/firefox/trisquel/branding/locales/en-US/brand.dtd delete mode 100644 helpers/DATA/firefox/trisquel/branding/locales/en-US/brand.properties delete mode 100644 helpers/DATA/firefox/trisquel/branding/locales/jar.mn delete mode 100644 helpers/DATA/firefox/trisquel/branding/locales/moz.build delete mode 100644 helpers/DATA/firefox/trisquel/branding/moz.build delete mode 100644 helpers/DATA/firefox/trisquel/branding/mozicon128.png delete mode 100644 helpers/DATA/firefox/trisquel/branding/newtab.ico delete mode 100644 helpers/DATA/firefox/trisquel/branding/newwindow.ico delete mode 100644 helpers/DATA/firefox/trisquel/branding/particles.bmp delete mode 100644 helpers/DATA/firefox/trisquel/branding/pbmode.ico delete mode 100644 helpers/DATA/firefox/trisquel/branding/pencil-rtl.bmp delete mode 100644 helpers/DATA/firefox/trisquel/branding/pencil.bmp delete mode 100644 helpers/DATA/firefox/trisquel/branding/pref/icecat-branding.js delete mode 100644 helpers/DATA/firefox/trisquel/branding/wizHeader.bmp delete mode 100644 helpers/DATA/firefox/trisquel/branding/wizHeaderRTL.bmp delete mode 100644 helpers/DATA/firefox/trisquel/branding/wizWatermark.bmp delete mode 100644 helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/LICENSE delete mode 100644 helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome.manifest delete mode 100644 helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome/content/aboutIceCat/aboutIceCat.xhtml delete mode 100644 helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome/locale/en/aboutIceCat.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome/locale/es/aboutIceCat.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/components/aboutIceCat.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/defaults/preferences/preferences.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/install.rdf delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/Changelog delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome.manifest delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/about.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/code/ApplicableList.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/code/ChannelReplacement.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/code/Cookie.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/code/HTTPS.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/code/HTTPSRules.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/code/IOUtil.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/code/NSS.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/code/Root-CAs.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/code/STS.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/code/Thread.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/code/X509ChainWhitelist.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/code/sha256.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/fetch-source.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/fetch-source.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/meta-preferences.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/observatory-popup.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/observatory-preferences.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/observatory-warning.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/observatory-xul.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/preferences.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/preferences.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/preferences.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/rules/00README delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/ruleset-tests-status.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/ruleset-tests-status.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/ruleset-tests-status.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/ruleset-tests.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/toolbar_button.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/toolbar_button.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/toolbar_button_binding.xml delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/ar/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/ar/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/ar/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/bg/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/bg/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/bg/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/cs/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/cs/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/cs/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/da/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/da/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/da/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/de/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/de/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/de/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/el/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/el/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/el/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/en/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/en/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/en/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/es/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/es/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/es/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/eu/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/eu/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/eu/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/fa/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/fa/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/fa/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/fi/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/fi/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/fi/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/fr/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/fr/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/fr/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/he/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/he/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/he/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/hr/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/hr/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/hr/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/hu/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/hu/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/hu/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/it/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/it/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/it/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/ja/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/ja/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/ja/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/ko/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/ko/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/ko/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/lt/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/lt/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/lt/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/lv/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/lv/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/lv/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/ms/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/ms/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/ms/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/nb/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/nb/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/nb/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/nl/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/nl/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/nl/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/pl/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/pl/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/pl/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/pt/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/pt/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/pt/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/ru/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/ru/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/ru/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/si/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/si/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/si/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/sk/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/sk/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/sk/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/sl/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/sl/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/sl/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/sv/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/sv/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/sv/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/tr/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/tr/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/tr/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/zh-CN/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/zh-CN/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/zh-CN/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/zh-TW/https-everywhere.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/zh-TW/https-everywhere.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/locale/zh-TW/ssl-observatory.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/skin/cross.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/skin/https-everywhere-16-gray.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/skin/https-everywhere-16.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/skin/https-everywhere-24-gray.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/skin/https-everywhere-24.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/skin/https-everywhere-banner.jpg delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/skin/https-everywhere-half-24.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/skin/https-everywhere.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/skin/https-everywhere.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/skin/loop.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/skin/ssl-observatory-messy.jpg delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/skin/tick-moot.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/skin/tick.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/components/https-everywhere.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/components/ssl-observatory.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/defaults/preferences/preferences.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/defaults/rulesets.sqlite delete mode 100644 helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/install.rdf delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/bootstrap.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/defaults/preferences/prefs.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/harness-options.json delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/install.rdf delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/locales.json delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/options.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/addon-tab/lib/addon-tab.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/README delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/assets/css/style.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/assets/images/README delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/assets/images/complain-button3.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/assets/images/info-title.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/assets/images/separator.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/assets/images/torchy.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/assets/images/torchy2.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/chrome_worker/narcissus_parser/jsdefs.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/chrome_worker/narcissus_parser/jslex.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/chrome_worker/narcissus_parser/jsparse.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/chrome_worker/narcissus_parser/narcissus_parse.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/complain/contact_finder.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/complain/contact_regex.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/complain/link_types.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/complain/pagemod_finder.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/complain/worker_finder.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/display_panel/content/README delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/display_panel/content/background-panel.jpg delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/display_panel/content/display-panel.html delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/display_panel/content/librejs-title-old.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/display_panel/content/librejs-title.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/display_panel/content/panel-styles.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/display_panel/main_panel.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/images/gnu-icon-white.ico delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/images/gnu-icon.ico delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/images/gnu-icon.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/librejs-settings.html delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/Boost-1.0.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/ISC.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/IntelACPI.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/agpl-3.0.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/apache-2.0.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/artistic-2.0.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/bsd-3-clause.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/cc0.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/clear-bsd.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/cpal-1.0.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/create-magnets.sh delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/expat.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/freebsd.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/gpl-2.0.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/gpl-3.0.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/illinois-NCSA.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/imlib2.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/lgpl-2.0.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/lgpl-2.1.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/lgpl-3.0.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/magnet-links.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/mpl-2.0.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/public-domain.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/Boost-1.0.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/ISC.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/IntelACPI.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/agpl-3.0.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/apache-2.0.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/artistic-2.0.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/bsd-3-clause.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/cc0.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/clear-bsd.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/cpal-1.0.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/expat.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/freebsd.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/gpl-2.0.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/gpl-3.0.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/illinois-NCSA.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/imlib2.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/lgpl-2.0.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/lgpl-2.1.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/lgpl-3.0.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/magnet-links.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/mpl-2.0.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/public-domain.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/unlicense.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/wtfpl.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/x11.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/torrents/xfree86.txt.torrent delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/unlicense.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/wtfpl.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/x11.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/licenses/xfree86.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/loading/loader.gif delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/loading/loading-panel.html delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/preferences_panel/contentscript.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/preferences_panel/preferences_panel.html delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/script_detector/script_detector.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/script_libraries/gethash.sh delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/script_libraries/script-libraries.json delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/images/beta-ribbon-cropped.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/images/beta-ribbon.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/images/button-download.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/images/collapsed-nonfree.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/images/expanded-nonfree.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/images/libre.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/images/librejs-running-blocked-wikipedia.jpg delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/images/logo-medium.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/index.html delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/js/form-row.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/js/form-types.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/js/pagescript-emitter.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/js/pagescript-listener.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/js/permafrost-info-box.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/styles/1140.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/styles/form.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/styles/index.html delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/styles/styles.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/block-ui/jquery.blockUI.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/bootstrap/css/bootstrap-responsive.min.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/bootstrap/css/bootstrap.min.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/bootstrap/img/glyphicons-halflings-white.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/bootstrap/img/glyphicons-halflings.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/bootstrap/js/bootstrap.min.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/editable/CHANGELOG.txt delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/editable/LICENSE-MIT delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/editable/README.md delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/editable/bootstrap-editable/css/bootstrap-editable.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/editable/bootstrap-editable/css/img/loading.gif delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/editable/bootstrap-editable/js/bootstrap-editable-inline.min.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/no-theme/jquery-ui.min.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/no-theme/jquery-ui.structure.min.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_222222_256x240.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_228ef1_256x240.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_ef8c08_256x240.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_ffd27a_256x240.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_ffffff_256x240.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/jquery-ui.theme.min.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/js/jquery-ui.min.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery/jquery.min.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/third_party/README delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/third_party/jquery-src.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/third_party/jquery.easing.1.3.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/widget/images/README delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/widget/images/librejs-off.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/widget/images/librejs.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/widget/widget.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/addon_management/install_uninstall.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/addon_management/prefchange.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/html_script_finder/bug_fix.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/html_script_finder/dom_handler.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/html_script_finder/dom_handler/attributes.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/html_script_finder/dom_handler/dom_checker.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/html_script_finder/dom_handler/dom_gatherer.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/html_script_finder/dom_handler/request.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/html_script_finder/dom_handler/script_object.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/html_script_finder/dom_handler/script_properties.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/html_script_finder/html_parser.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/html_script_finder/url_seen_tester.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/html_script_finder/web_labels/find_js_labels.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/html_script_finder/web_labels/js_web_labels.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/html_script_finder/web_labels/script_hash_worker.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/http_observer/allowed_referrers.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/http_observer/caching.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/http_observer/http_request_observer.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/http_observer/process_response.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/http_observer/stream_loader.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/js_checker/constant_types.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/js_checker/free_checker.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/js_checker/js_checker.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/js_checker/license_definitions.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/js_checker/nontrivial_checker.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/js_checker/pattern_utils.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/js_checker/privacy_checker.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/js_checker/privacy_threat_definitions.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/js_checker/relation_checker.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/main.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/narcissus_parser/narcissus_worker.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/script_entries/accepted_scripts.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/script_entries/all_scripts.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/script_entries/crypto.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/script_entries/dryrun_scripts.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/script_entries/free_libraries.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/script_entries/removed_scripts.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/script_entries/scripts_cache.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/settings/settings_tab.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/settings/storage.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/ui/notification.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/ui/script_panel.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/ui/ui_info.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/url_handler/node_punycode.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/url_handler/node_querystring.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/url_handler/node_url.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/lib/url_handler/url_handler.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/menuitems/lib/menuitems.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/notification-box/lib/notification-box.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/vold-utils/lib/unload+.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/bootstrap.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome.manifest delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/errors.html delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/objtabs.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/composer.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/composer.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/fennecSettings.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/filters-backup.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/filters-filteractions.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/filters-filterview.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/filters-search.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/filters-subscriptionactions.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/filters-subscriptionview.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/filters.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/filters.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/firstRun.html delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/firstRun.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/flasher.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/i18n.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/overlay.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/progressBar.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/progressBar.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/sendReport.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/sendReport.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/settings.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/sidebar.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/sidebar.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/sidebarDetached.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/subscriptionSelection.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/subscriptionSelection.xul delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/subscriptions.xml delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/utils.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ar/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ar/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ar/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ar/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ar/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ar/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ar/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ar/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/bg/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/bg/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/bg/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/bg/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/bg/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/bg/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/bg/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/bg/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ca/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ca/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ca/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ca/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ca/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ca/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ca/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ca/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/cs/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/cs/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/cs/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/cs/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/cs/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/cs/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/cs/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/cs/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/da/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/da/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/da/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/da/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/da/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/da/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/da/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/da/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/de/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/de/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/de/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/de/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/de/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/de/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/de/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/de/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/dsb/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/dsb/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/dsb/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/dsb/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/dsb/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/dsb/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/dsb/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/dsb/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/el/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/el/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/el/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/el/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/el/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/el/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/el/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/el/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-GB/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-GB/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-GB/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-GB/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-GB/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-GB/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-GB/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-GB/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-US/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-US/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-US/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-US/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-US/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-US/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-US/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/en-US/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eo/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eo/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eo/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eo/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eo/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eo/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eo/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eo/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-AR/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-AR/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-AR/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-AR/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-AR/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-AR/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-AR/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-AR/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-ES/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-ES/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-ES/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-ES/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-ES/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-ES/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-ES/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-ES/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-MX/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-MX/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-MX/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-MX/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-MX/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-MX/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-MX/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/es-MX/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/et/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/et/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/et/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/et/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/et/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/et/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/et/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/et/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eu/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eu/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eu/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eu/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eu/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eu/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eu/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/eu/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fa/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fa/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fa/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fa/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fa/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fa/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fa/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fa/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fi/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fi/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fi/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fi/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fi/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fi/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fi/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fi/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fr/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fr/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fr/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fr/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fr/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fr/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fr/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fr/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fy-NL/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fy-NL/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fy-NL/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fy-NL/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fy-NL/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fy-NL/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fy-NL/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/fy-NL/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/gl/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/gl/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/gl/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/gl/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/gl/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/gl/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/gl/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/gl/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/he/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/he/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/he/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/he/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/he/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/he/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/he/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/he/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hr/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hr/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hr/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hr/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hr/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hr/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hr/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hr/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hsb/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hsb/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hsb/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hsb/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hsb/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hsb/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hsb/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hsb/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hu/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hu/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hu/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hu/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hu/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hu/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hu/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hu/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hy-AM/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hy-AM/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hy-AM/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hy-AM/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hy-AM/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hy-AM/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hy-AM/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/hy-AM/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/id/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/id/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/id/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/id/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/id/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/id/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/id/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/id/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/is/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/is/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/is/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/is/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/is/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/is/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/is/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/is/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/it/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/it/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/it/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/it/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/it/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/it/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/it/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/it/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ja/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ja/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ja/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ja/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ja/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ja/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ja/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ja/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/kk/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/kk/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/kk/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/kk/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/kk/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/kk/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/kk/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/kk/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ko/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ko/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ko/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ko/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ko/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ko/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ko/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ko/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lt/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lt/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lt/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lt/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lt/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lt/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lt/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lt/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lv/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lv/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lv/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lv/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lv/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lv/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lv/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/lv/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ms/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ms/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ms/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ms/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ms/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ms/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ms/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ms/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nb-NO/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nb-NO/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nb-NO/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nb-NO/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nb-NO/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nb-NO/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nb-NO/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nb-NO/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nl/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nl/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nl/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nl/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nl/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nl/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nl/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/nl/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pl/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pl/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pl/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pl/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pl/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pl/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pl/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pl/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-BR/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-BR/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-BR/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-BR/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-BR/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-BR/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-BR/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-BR/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-PT/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-PT/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-PT/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-PT/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-PT/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-PT/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-PT/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/pt-PT/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ro/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ro/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ro/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ro/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ro/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ro/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ro/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ro/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ru/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ru/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ru/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ru/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ru/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ru/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ru/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/ru/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sk/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sk/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sk/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sk/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sk/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sk/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sk/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sk/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sl/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sl/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sl/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sl/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sl/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sl/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sl/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sl/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sq/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sq/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sq/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sq/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sq/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sq/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sq/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sq/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sr/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sr/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sr/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sr/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sr/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sr/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sr/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sr/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sv-SE/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sv-SE/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sv-SE/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sv-SE/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sv-SE/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sv-SE/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sv-SE/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/sv-SE/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/th/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/th/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/th/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/th/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/th/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/th/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/th/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/th/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/tr/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/tr/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/tr/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/tr/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/tr/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/tr/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/tr/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/tr/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/uk/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/uk/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/uk/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/uk/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/uk/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/uk/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/uk/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/uk/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/vi/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/vi/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/vi/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/vi/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/vi/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/vi/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/vi/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/vi/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-CN/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-CN/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-CN/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-CN/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-CN/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-CN/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-CN/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-CN/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-TW/composer.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-TW/filters.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-TW/firstRun.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-TW/global.properties delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-TW/overlay.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-TW/sendReport.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-TW/sidebar.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/locale/zh-TW/subscriptionSelection.dtd delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/abp-icon-big.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/abp-status-16.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/abp-status-32.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/abp-status.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/ajax-loader.gif delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/background-main.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/background-share.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/background.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/checkbox.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/close.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/composer.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/donate.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/features/malware.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/features/social.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/features/tracking.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/filters.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/firstRun.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/fonts/CreteRound-Italic.otf delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/fonts/CreteRound-Regular.otf delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/item-state.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/overlay.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/sendReport.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/sidebar.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/slow.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/social/facebook.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/social/googleplus.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/social/renren.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/social/twitter.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/social/weibo.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/skin/subscriptionSelection.css delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/defaults/prefs.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/icon.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/icon64.png delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/install.rdf delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/Public.jsm delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/antiadblockInit.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/appSupport.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/contentPolicy.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/customizableUI.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/downloader.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/elemHide.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/elemHideHitRegistration.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/filterClasses.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/filterListener.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/filterNotifier.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/filterStorage.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/io.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/keySelector.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/main.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/matcher.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/notification.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/objectTabs.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/prefs.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/requestNotifier.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/subscriptionClasses.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/sync.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/synchronizer.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/timeline.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/ui.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/utils.js delete mode 100644 helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/lib/windowObserver.js delete mode 100644 helpers/DATA/firefox/trisquel/searchplugins/trisquel-packages.xml delete mode 100644 helpers/DATA/firefox/trisquel/searchplugins/trisquel.xml delete mode 100644 helpers/DATA/firefox/trisquel/settings.js (limited to 'helpers/DATA') diff --git a/helpers/DATA/firefox/trisquel/abouthome/aboutHome.css b/helpers/DATA/firefox/trisquel/abouthome/aboutHome.css deleted file mode 100644 index 8635239..0000000 --- a/helpers/DATA/firefox/trisquel/abouthome/aboutHome.css +++ /dev/null @@ -1,429 +0,0 @@ -%if 0 -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -%endif - -html { - font: message-box; - font-size: 100%; - background-color: hsl(0,0%,95%); - color: #000; - height: 100%; -} - -body { - margin: 0; - display: -moz-box; - -moz-box-orient: vertical; - width: 100%; - height: 100%; -} - -input, -button { - font-size: inherit; - font-family: inherit; -} - -a { - color: -moz-nativehyperlinktext; - text-decoration: none; -} - -.spacer { - -moz-box-flex: 1; -} - -#topSection { - text-align: center; -} - -#brandLogo { - height: 420px; - width: 150px; - margin: 22px auto 31px; - background-image: url("chrome://branding/content/about-logo.png"); - background-size: 420px 150px; - background-position: center center; - background-repeat: no-repeat; -} - -#searchForm, -#snippets { - width: 470px; -} - -#searchForm { - display: -moz-box; -} - -#searchLogoContainer { - display: -moz-box; - -moz-box-align: center; - padding-top: 2px; - -moz-padding-end: 8px; -} - -#searchLogoContainer[hidden] { - display: none; -} - -#searchEngineLogo { - display: inline-block; - height: 28px; - width: 70px; - min-width: 70px; -} - -#searchText { - -moz-box-flex: 1; - padding: 6px 8px; - background: hsla(0,0%,100%,.9) padding-box; - border: 1px solid; - border-color: hsla(210,54%,20%,.15) hsla(210,54%,20%,.17) hsla(210,54%,20%,.2); - box-shadow: 0 1px 0 hsla(210,65%,9%,.02) inset, - 0 0 2px hsla(210,65%,9%,.1) inset, - 0 1px 0 hsla(0,0%,100%,.2); - border-radius: 2.5px 0 0 2.5px; -} - -#searchText:-moz-dir(rtl) { - border-radius: 0 2.5px 2.5px 0; -} - -#searchText:focus, -#searchText[autofocus] { - border-color: hsla(206,100%,60%,.6) hsla(206,76%,52%,.6) hsla(204,100%,40%,.6); -} - -#searchSubmit { - -moz-margin-start: -1px; - background: linear-gradient(hsla(0,0%,100%,.8), hsla(0,0%,100%,.1)) padding-box; - padding: 0 9px; - border: 1px solid; - border-color: hsla(210,54%,20%,.15) hsla(210,54%,20%,.17) hsla(210,54%,20%,.2); - -moz-border-start: 1px solid transparent; - border-radius: 0 2.5px 2.5px 0; - box-shadow: 0 0 2px hsla(0,0%,100%,.5) inset, - 0 1px 0 hsla(0,0%,100%,.2); - cursor: pointer; - transition-property: background-color, border-color, box-shadow; - transition-duration: 150ms; -} - -#searchSubmit:-moz-dir(rtl) { - border-radius: 2.5px 0 0 2.5px; -} - -#searchText:focus + #searchSubmit, -#searchText + #searchSubmit:hover, -#searchText[autofocus] + #searchSubmit { - border-color: #59b5fc #45a3e7 #3294d5; - color: white; -} - -#searchText:focus + #searchSubmit, -#searchText[autofocus] + #searchSubmit { - background-image: linear-gradient(#4cb1ff, #1793e5); - box-shadow: 0 1px 0 hsla(0,0%,100%,.2) inset, - 0 0 0 1px hsla(0,0%,100%,.1) inset, - 0 1px 0 hsla(210,54%,20%,.03); -} - -#searchText + #searchSubmit:hover { - background-image: linear-gradient(#66bdff, #0d9eff); - box-shadow: 0 1px 0 hsla(0,0%,100%,.2) inset, - 0 0 0 1px hsla(0,0%,100%,.1) inset, - 0 1px 0 hsla(210,54%,20%,.03), - 0 0 4px hsla(206,100%,20%,.2); -} - -#searchText + #searchSubmit:hover:active { - box-shadow: 0 1px 1px hsla(211,79%,6%,.1) inset, - 0 0 1px hsla(211,79%,6%,.2) inset; - transition-duration: 0ms; -} - -#defaultSnippet1, -#defaultSnippet2, -#rightsSnippet { - display: block; - min-height: 38px; - background: 30px center no-repeat; - padding: 6px 0; - -moz-padding-start: 79px; -} - -#rightsSnippet[hidden] { - display: none; -} - -#defaultSnippet1:-moz-dir(rtl), -#defaultSnippet2:-moz-dir(rtl), -#rightsSnippet:-moz-dir(rtl) { - background-position: right 30px center; -} - -#defaultSnippet1 { - background-image: url("chrome://browser/content/abouthome/snippet1.png"); -} - -#defaultSnippet2 { - background-image: url("chrome://browser/content/abouthome/snippet2.png"); -} - -#snippets { - display: inline-block; - text-align: start; - margin: 12px 0; - color: #3c3c3c; - font-size: 75%; - /* 12px is the computed font size, 15px the computed line height of the snippets - with Segoe UI on a default Windows 7 setup. The 15/12 multiplier approximately - converts em from units of font-size to units of line-height. The goal is to - preset the height of a three-line snippet to avoid visual moving/flickering as - the snippets load. */ - min-height: calc(15/12 * 3em); -} - -#launcher { - display: -moz-box; - -moz-box-align: center; - -moz-box-pack: center; - width: 100%; - background-color: hsla(0,0%,0%,.03); - border-top: 1px solid hsla(0,0%,0%,.03); - box-shadow: 0 1px 2px hsla(0,0%,0%,.02) inset, - 0 -1px 0 hsla(0,0%,100%,.25); -} - -#launcher:not([session]), -body[narrow] #launcher[session] { - display: block; /* display separator and restore button on separate lines */ - text-align: center; - white-space: nowrap; /* prevent navigational buttons from wrapping */ -} - -.launchButton { - display: -moz-box; - -moz-box-orient: vertical; - margin: 16px 1px; - padding: 14px 6px; - min-width: 88px; - max-width: 176px; - max-height: 85px; - vertical-align: top; - white-space: normal; - background: transparent padding-box; - border: 1px solid transparent; - border-radius: 2.5px; - color: #525c66; - font-size: 75%; - cursor: pointer; - transition-property: background-color, border-color, box-shadow; - transition-duration: 150ms; -} - -body[narrow] #launcher[session] > .launchButton { - margin: 4px 1px; -} - -.launchButton:hover { - background-color: hsla(211,79%,6%,.03); - border-color: hsla(210,54%,20%,.15) hsla(210,54%,20%,.17) hsla(210,54%,20%,.2); -} - -.launchButton:hover:active { - background-image: linear-gradient(hsla(211,79%,6%,.02), hsla(211,79%,6%,.05)); - border-color: hsla(210,54%,20%,.2) hsla(210,54%,20%,.23) hsla(210,54%,20%,.25); - box-shadow: 0 1px 1px hsla(211,79%,6%,.05) inset, - 0 0 1px hsla(211,79%,6%,.1) inset; - transition-duration: 0ms; -} - -.launchButton[hidden], -#launcher:not([session]) > #restorePreviousSessionSeparator, -#launcher:not([session]) > #restorePreviousSession { - display: none; -} - -#restorePreviousSessionSeparator { - width: 3px; - height: 116px; - margin: 0 10px; - background-image: linear-gradient(hsla(0,0%,100%,0), hsla(0,0%,100%,.35), hsla(0,0%,100%,0)), - linear-gradient(hsla(211,79%,6%,0), hsla(211,79%,6%,.2), hsla(211,79%,6%,0)), - linear-gradient(hsla(0,0%,100%,0), hsla(0,0%,100%,.35), hsla(0,0%,100%,0)); - background-position: left top, center, right bottom; - background-size: 1px auto; - background-repeat: no-repeat; -} - -body[narrow] #restorePreviousSessionSeparator { - margin: 0 auto; - width: 512px; - height: 3px; - background-image: linear-gradient(to right, hsla(0,0%,100%,0), hsla(0,0%,100%,.35), hsla(0,0%,100%,0)), - linear-gradient(to right, hsla(211,79%,6%,0), hsla(211,79%,6%,.2), hsla(211,79%,6%,0)), - linear-gradient(to right, hsla(0,0%,100%,0), hsla(0,0%,100%,.35), hsla(0,0%,100%,0)); - background-size: auto 1px; -} - -#restorePreviousSession { - max-width: none; - font-size: 90%; -} - -body[narrow] #restorePreviousSession { - font-size: 80%; -} - -.launchButton::before { - display: block; - width: 32px; - height: 32px; - margin: 0 auto 6px; - line-height: 0; /* remove extra vertical space due to non-zero font-size */ -} - -#downloads::before { - content: url("chrome://browser/content/abouthome/downloads.png"); -} - -#bookmarks::before { - content: url("chrome://browser/content/abouthome/bookmarks.png"); -} - -#history::before { - content: url("chrome://browser/content/abouthome/history.png"); -} - -#apps::before { - content: url("chrome://browser/content/abouthome/apps.png"); -} - -#addons::before { - content: url("chrome://browser/content/abouthome/addons.png"); -} - -#sync::before { - content: url("chrome://browser/content/abouthome/sync.png"); -} - -#settings::before { - content: url("chrome://browser/content/abouthome/settings.png"); -} - -#restorePreviousSession::before { - content: url("chrome://browser/content/abouthome/restore-large.png"); - height: 48px; - width: 48px; - display: inline-block; /* display on same line as text label */ - vertical-align: middle; - margin-bottom: 0; - -moz-margin-end: 8px; -} - -#restorePreviousSession:-moz-dir(rtl)::before { - transform: scaleX(-1); -} - -body[narrow] #restorePreviousSession::before { - content: url("chrome://browser/content/abouthome/restore.png"); - height: 32px; - width: 32px; -} - -#aboutMozilla { - display: block; - position: relative; /* pin wordmark to edge of document, not of viewport */ - -moz-box-ordinal-group: 0; - opacity: .5; - transition: opacity 150ms; -} - -#aboutMozilla:hover { - opacity: 1; -} - -#aboutMozilla::before { - content: url("chrome://browser/content/abouthome/mozilla.png"); - display: block; - position: absolute; - top: 12px; - right: 12px; - width: 69px; - height: 19px; -} - -/* [HiDPI] - * At resolutions above 1dppx, prefer downscaling the 2x Retina graphics - * rather than upscaling the original-size ones (bug 818940). - */ -@media not all and (max-resolution: 1dppx) { - #brandLogo { - background-image: url("chrome://branding/content/about-logo@2x.png"); - } - - #defaultSnippet1, - #defaultSnippet2, - #rightsSnippet { - background-size: 40px; - } - - #defaultSnippet1 { - background-image: url("chrome://browser/content/abouthome/snippet1@2x.png"); - } - - #defaultSnippet2 { - background-image: url("chrome://browser/content/abouthome/snippet2@2x.png"); - } - - .launchButton::before, - #aboutMozilla::before { - transform: scale(.5); - transform-origin: 0 0; - } - - #downloads::before { - content: url("chrome://browser/content/abouthome/downloads@2x.png"); - } - - #bookmarks::before { - content: url("chrome://browser/content/abouthome/bookmarks@2x.png"); - } - - #history::before { - content: url("chrome://browser/content/abouthome/history@2x.png"); - } - - #apps::before { - content: url("chrome://browser/content/abouthome/apps@2x.png"); - } - - #addons::before { - content: url("chrome://browser/content/abouthome/addons@2x.png"); - } - - #sync::before { - content: url("chrome://browser/content/abouthome/sync@2x.png"); - } - - #settings::before { - content: url("chrome://browser/content/abouthome/settings@2x.png"); - } - - #restorePreviousSession::before { - content: url("chrome://browser/content/abouthome/restore-large@2x.png"); - } - - body[narrow] #restorePreviousSession::before { - content: url("chrome://browser/content/abouthome/restore@2x.png"); - } - - #aboutMozilla::before { - content: url("chrome://browser/content/abouthome/mozilla@2x.png"); - } -} - diff --git a/helpers/DATA/firefox/trisquel/abouthome/aboutHome.js b/helpers/DATA/firefox/trisquel/abouthome/aboutHome.js deleted file mode 100644 index d3b4aa9..0000000 --- a/helpers/DATA/firefox/trisquel/abouthome/aboutHome.js +++ /dev/null @@ -1,502 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -const SEARCH_ENGINES = { - "Google": { - // This is the "2x" image designed for OS X retina resolution, Windows at 192dpi, etc.; - // it will be scaled down as necessary on lower-dpi displays. - image: "data:image/png;base64," + - "iVBORw0KGgoAAAANSUhEUgAAAIwAAAA4CAYAAAAvmxBdAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ" + - "bWFnZVJlYWR5ccllPAAAGrFJREFUeNrtfHt4VdW172+utZOASLJ5+BaIFrUeXkFsa0Fl++gDnznV" + - "VlvFxt7aqvUUarXtse3Bau35ak/rZ9XT26NtfOvV6wFET+FYCQEKWqsQIT5RCAgSXnlnrzXneNw/" + - "1lphJSSQ8BB7bub3zW+LO3uN+fiNMcf4jTEX0N/6W3/rb/2tv30smtnXB3zmRi2FQakxQNKX3WkW" + - "9S/tgW3HLpmQM543A0BWVSHMYGIwOTDxzxrOf3/RQQfMZ2/SLAvKhTFVBGUqKFONH2QAzwOMF38a" + - "wHhYZAxWAqhe/iszp3+b970d/sInc57vz/J8L2eMB2MAEYkBQ6DQ3dRw4dq7AUjcP3rAfPZmLWXC" + - "LHKoIAcQAUxaB5EaEfc6AEBhjDEwmcx43/fO9HxT4vkReBIAAZgjgodW3NcPnn1sHgD/iHknn+0d" + - "6s8XEUhsXXac/34WAAGw8afuT8GZ3X055YeSJcIsG+pMZwFn0UihezRofPt3G54f/0E8cNMN+Myo" + - "8jVTCgYd823PLzrPeIBnABiUQ1F+UoWsVOYb33mkoKp/7/dKyT0AGc47X4s0sjBEoLxbBqAQAMfW" + - "Rfe38B4BM+VHUkYOs8mi1FrABbK4dcvK73zwp1M3xYPOxANKBqbpCdXNGb0UwPKRF74xpfDQ0t+K" + - "54+IvlKoahmAhaO/mv/ZmicG3tqPgT61ZM2dZMQJOYhIdByRM/F3dCCOox4Bc3oEliqyyNoQCPPu" + - "sXceKZqRsigu7pwaWBowiRb46+f9Q1V2wl1nDx09/R7jF30x9adNlN8yPx4DHwht+B/cBIBoRqeI" + - "E4hE/oshTcB0wNbT6/o/zrhFyohR5ZxmrVWE+fDxdx4puhGAH4OkPe5B6pykeJAc/7cDEMZ/095Y" + - "870P339m+BXs2v4kbCFsm9u2vnpJ3bzR7wAo2B/R2v+PjSnyXcRxtOLUSXFxwAFz5i2SZUIVO82S" + - "BWye/vLOIwNvjL8OYqCEfXCmJAZPHkC7sK1REbj2+lmbq86qTVmmfuuyN2cTiREWKCvACgml9kDL" + - "7HQksehsZmSdA6yVpsa6P38v3swg7m4vN1dGXrThKGP8yS5fP33j/LEvxKDbl2f2A0YFCtkZQDOa" + - "PjLAnP4jrmBGjh1AVhG2ttxfX33++vjY2eeNXf/siLUAzgEwMJZrY2vF/Vu/t4BRqCqgCmj07wMV" + - "HXUCzJQfUlZE72ICnANcqNj21h8eiK1AX46gXh29KT9H+rd9XxBjYGCgig7QHOgjPgMAKigXQZYp" + - "si4uCOc3v35zY2wF9ufGSgxA7fdd9g8ho9ol4P4ojiQWnSUMMANECrJNy1NWYH8eGfsEvJbLv1IK" + - "1XIAUwEtA0xplJMwjcaYlTDeShg8dOgjj6/cJxNYfWIWkHJoh5yyjkSZ8RbB89YBZq4/pXafGeuz" + - "b9WciXJxo2B2houqgAjABJCLOwFMqFv57+bBxMIAJm1det3avnl1OYCLAeSgWhofaY1QXQSRuYc+" + - "/OiD3QLmUzNdqTBKhRVMADsF5beuToXJB90KtFz+lVIVniXOVUAUqjpXVB4WwPjGTPB8/0zjeTnj" + - "ezl43szmKy6vNkDF4MeeXNc3oJyUhfAMkJsJkSxUVrLos6o6z/O8Ucb3phrPzyHKeVTwkpPXseg3" + - "Cqe+1SfG+swfaw6KGTAoJ5eyGF3IBeEIJB2AcXxb0FI/L45uFQBMGiu6Z3ai9eqrclBUClFWVatV" + - "5GERNT5wEVQnQLUcIuVNX75kFjn60rA5c1d0AoywlkcxfdwZ2LSgbOmBZAv70povu7RcyFUqcZYd" + - "Pbxix44fnLv8pbYUOWh+P3ZM9uJRo34xoLDgq8b3YTxvqhqsaPzyJTdmn36msjdyqPqkMhWqBFGZ" + - "MtV8uDX4zMjp2zemyEoPgGn4zyOvGzy48A54GcD3Sz1jFrqqE+4uOOvdmb0ASlYEs5mQE9afUdhy" + - "0yv3lHzwya/8ZcjgI0+5yssU3QKYkgQ4Ivp60LL1n8kBQfOWuvdnj6uLldgHQKoKxU7HV/eg2y1X" + - "XXmXEs1U0ZVb29o//4k5c5P5eQB+s+68aVeUFBTcCxUoS6kRWfjhueecc9SfX3ytA9QTr7eVACqY" + - "FDYEwnbB2qcHHg6gLY6ODhpomi77coUyVaojhKH9+ZHzF/wqXiztEg34APxNX/jCvQOLCi83fpy8" + - "UsCJXHLYnGdn785S0uKTyyBUBXJZcW5x4bSN56ciyLQcD4Bf/+ThVwwbUvRb+JkoswqAWX5b9Lm1" + - "M3uSM/UnUiaCKiZk2blvvnxX0ePxuBNAmpMur51wyLBPzjVeBBoVwIXBk6vuP+SG+LkcuwkWAA96" + - "/JjZKnKxkACkkFb5Nztz220xX9bJlWi+6opKFalQlpqlmzZNu6B6SaJ0knKJ/DW5qd8p8TO3x6AB" + - "qza1EE06cdmy9wDAY5LjmBTMkQnUnZ42H0ywNF52aU6FK4UY5NySI+cv+E3MCnMM5HyqtwFoO3rB" + - "gmuDMFjGjiCOIEQwzH9c+7lzju+JTaYlJ2ehUqXMWWFqeurFxqsAFMVf25Ss9kTOEZdvebClJbxT" + - "yUGZoEzwlL/b9tzRX+pOztSfSBZApSqyIrL45buKnkaUJEzLCN5+csxr+ab6fyILkI2OIZYBlx9/" + - "2bYvpLgw2+EqKLKdwoceVKJp+tfuEpYKZcaW1tZbLqheEsbj3GV+oxdV3x0GwQZrHUIiWKIST3Vm" + - "DG54zFrKrBBWiGgSyx9Uv6Xh0n/MKlGlOII4h80trQ+kuJt8HGklZHg6FZF/Y/uOb7O1YOvAzkGt" + - "Kxmoehe6SYNEpkErwZIFC4I2fuLKf2tLtDOPzumPhA6wAPJDLt1yuzjaAEcAMUCMApXfvPP7IcO6" + - "gkYFs4RRpgy49qanUsAPu/T8W48e/YwL6S/kYtBYwM8U/yu6KVlQUShr9CkKyK7b1vDVy0qVeaYy" + - "gaxbdeK85/8a/z7sYR3zgXM1gXUInEPoCEw8PR6z8YQxaidQPh6RrgrPEOZS4chKjFuydEEKFD1x" + - "QgrAnfO3V98Jw/B5dhFgmByU+MK/nnrq6K6gcQtPyqlIubJAibCxPv/fsVVNgCI9yGEAQdBq71NH" + - "UEdQIoBo5PBBeklazuQfSpYFM0UAFsDmd2yMf9+1XkUT3otc8AiRwpFChCBCI0detGbSLtYr5uw6" + - "tk26XctZwgxhRt65ZSmr1t389M1Jk85wzKcHRAiJkCfasDnI/0sMGN+jlLMrAigMhp0+f+TBBIw4" + - "milEYOcQBHZZAoZeEIgKgIIgeJbD2MqEFhxaDAFmdAWMisxQFigzlAUnX9e4rA9yeHuTna3koBQB" + - "RogxwOPvxNbQAAA7VHQEFKSQKEFIu4lA5d3HiiuFNB4XQZlhUHBK11QO0oRdD7ouROVCkeJZG7ak" + - "/KBOYHlz4sTy1WVlVY5oYego2+bs82+3tFw6YcVrp01dteqpxNfyhKQuGlxCMSsKBh570ABT/8XP" + - "5dhRVpyDWAd2Ns0O9yrhWdfcMpvCEByEoNCCwhBgvgBdM+PM5TH5FPW+1ZLo8de2viehe12dhVoH" + - "OAtDPO61O4o+kYCTnE5wVuGsxlzKHul7BUDKdomKgwpB2QHAyNiP2Dl+0Z2WRXZ9YP0F55WJczvX" + - "0jp09U3fLiurWD1+/NqQaHZIVNbu3O1vt7aM+fSqVRWXvPvu0pRldwAkQ5brjO+NMh0kgMIvGjYZ" + - "wIKETPxIrYt1U5M8iThKJil9yZGc++ab298dP36Jb8wZohqhQHRErKEeAA6fG5FT5yIlYYI6tzfO" + - "vtiQni3MYDw0ChqEgUMyejyAdwGwDeW4ZI9FAGQOmwzgv/cERmZbDXhnKBNUGMJkUhGVduSSJJ1P" + - "6rw8HIalJo7ilBkchgCgL48fVzLceDc4kZnWUdap1AQi10x+660n4jXyk1M7ZXEZgHhMUkMO4Njp" + - "hQGMf8h56Fx++ZE1a+1xZC2Szjs3sk9uUEhUbSMvP3LeyOGZ0tKJiearo1J1DHVRPYmS7JUcG2g1" + - "pxxUsooBnpmQWAOb10YbKGygcKFCZOC0XqxrRKokCBQG5euX77In2k1P+2hhWEZBAAoCuCCEcW7E" + - "2xMn/m6oYo0jyjnmuc3Off6UN96YMvmtt5LILSmQ61r3xAA0I+xqPBiIejAd1f7e2MPPfvm4LQs/" + - "89a+bP6nZuSzfsaU+T7g+UBixYQVRFGS01kFO22srRy0EgA4CEvFRHS3MANMY/fGbybmlQqAFSBV" + - "sCp8kWwCGA5dqefFShnnRV77ecHYU37iXuqLoB0tsuIo34v3NfJR1GlJsrnOuiXGy1y8k+rwxh57" + - "3srSD/6rbLdra7yMqgjUCGAULR8uWr0LJPYAGApCeCbKNygLPKIxJ65YOSU+YpLUUCYGiqBzQVy3" + - "Ft1zbevnJl60UARqACgcVDo9ZZr63Mqua68QxlpmrWJC1FmrmLSKCFVktcpZrbKhzg4D26E5Lgjg" + - "8vnoMwwh1hU/dvTRo/qcDyJqcESw5Dp6o3XNHVrqLDSubAdFjuXwwWZcX+Wc9APboKxQUoiLurXa" + - "IYfCpjlCDsoxZ6OCouLRt+xpbY3nA8aDMR6E2+9vffOWxl02cQ+Bbdjevt7l83D5ABRaKNHYO484" + - "YmgMkoJ4jElCOL8Lz9NN87YumrRDxc2DElQZKgIVhZcZcO1hZ74wtK/H0thvtuXGXdM2S0S/ziQ1" + - "FPJiG7pHwvbgDhtKnQ0VNhCEeUHQLmiuf2fymieGvJGY8DCfX+yCEC5xWIlwtO+P6+s4VESJGS4+" + - "liwxKjZ/2FGRZvPhYgktxEZdHWOAr2P34ihWIQWTgJ2CnWJbo9Ymz1g/5+h1QsF9wgKJ19Z4hV87" + - "4fKNE3cnx8v4V8H4UOjqhvce+zW6qdWVlOvSjQsDlw/WUT4A5QNQGIJDizMPHXR+CiRBb4GSzlYr" + - "26Z7vYKSC42nUOPBqA9VU1I0ZOJPEYWj1NvVW/3AoEUAFgO4IzZ1hYk2jf9WUw7IjCIXHUVhXrFp" + - "/sQtKZPIoXXr/PjoSkZeoHo6gP/bFyeciECqcHG3IrXp37a2SF3xQNPxRAXgq5nS1bHsDWCYALYA" + - "u+h0W/impI8Pad9ec/vAoWVTjV84Nsn5FAwcvmDMN5rOqf1jyatdHzjuGjvThloKYH3b5qVXt775" + - "44ZuN1QEKknF3a6ImfDee4tWjBrV6R5Qoeq1AP6Avaxx8gDolhdPXAh2qzQmZFQ4ZhALrj/mvLpT" + - "+qhxya0BP5VVZQBkA6jNR0AJ2xUUcjKGjsx4k3PVYUwaJU6rJ3reLiHlHppjBjF3fLYSzU/noEZ8" + - "3611VusoVJBVsFWAdezim/3jemSFe+SNIsvCpAhCXf7TBZI+PnTr4nO2t2xcME3ZroYKIouEEqDo" + - "xfHfav/GxOttFgBOucGWll0XVqrqXYDWNLz3aG7bsovWp4i2TvkhScLqNBezq/M/zxLBxV2Yx/75" + - "yCPP6usc04CJ+B3bcLMwQTiK+0UIwgz1ip8+4pyaYX0x0SnWMkjnYGygkm9nBO0MGzoI2TTDyQBw" + - "7ubNawPmeZYZNt5wZhrxX8OHX9yXSTJzGcVgIWasbs8/hc7XRzXM670cg0Vs5H+MHm6u74ucrb/K" + - "lAlFPoySoqFFn+rm+OCGV762df2cYWe4fP0M5qDWhoowRIm1/h+s1YZx3wrVOV1LDhXMaGzfXntF" + - "46vXtMQRS/clsqRRT9SNd0GMBo6edRStZbKeg4D//ciQIcP2CTDbqsdVKQePq1JMFkXxv4qO9AaM" + - "fPGoaeuG9kXp0LkU0wGgMFC1gYAdAeyg0m3IrE3W3mtTvodjRpHq9X3xL4h5Qsq63P/z9ra6LqSc" + - "vvmBPkwOTex2lnf4wNee/47fa99NGGVJ8Zl1qP3UPfwkdr15mDDV+Y3Pf+Kh9c9kz9pee89J7dve" + - "vaRt+7qLbVv47y5UUKggp3BB/okNz0/aHI8332OaIgELxWDpptQtt6X+Qcu03nVYGQYxjxzl+7/e" + - "GyvjdYrCtv31JiW7QTjy6qWj83jF4AeP/MLaodiHRtZBXAihEEIWkq4eSgGmvKGhqpX5d1YEVhiW" + - "BaI6Zf6QITN7s5ELhw4tZZavkwhIZMOC1rZfo5s64nPv4+1NzXot2/hYiqKckglH4/7eRojCOosp" + - "St6u2ijfS1Hv3I0SdVy5aam9ecumBeOqN8w7aRkxSlMVdRDmRHa4m5xWPKPEusUA6maIrcy/cCKw" + - "InASKaCoXrlo2LAH+xpMpAEjLauu2ObaNnxVmZqUHaI8SaR+KnIhTPHCo6ZtOn6vk4qUPNNGnV2P" + - "J0ptENweMq92zHBMcMwwIrfMLS6etKdJEnMlCYOZm9YE4dUPkWvsIUckJ/+SZwd5PCEOEBc5rh7j" + - "grqf+VfvSc7mO/xZSihVAra3YMY/PqqrUhZVe7C8yRHTBqAVQJuQN5idgJ2ASQAz4PJjptWevKc0" + - "RZQ0TQATRWDd/dmFDQ2VeaLH0z4dRVTK9EXZ7IqFJSXH7W6eLw0blntp2NAydGOSqPGVs/5mW9Zc" + - "JGKbRSxELIRDCFuIuAmiBa8eMW37rcdc1JDtM+3PYdSp43k9/ulPgmDrsnz+vFBktRWBZYEVKSlU" + - "feH5wYPP7u5Hfy4uzi4oLq50IjkSaXrf2vIfBPnV6PlKiwKg0XfyNe2BPkmJ8+oUGeh/bLjNu7En" + - "0Gy+w5sppLcyKRra9IZJ98hTvciop9MPSSFUwGTnEjHICsgpyKHYHzjquWMvrJ+wewUENPFjCIAx" + - "k3uStyIMbw5FVieWJvJpBE5kgqq+X1VcPGdRcfHMxSUluSUlJbmlUZ+1tKRkLRGVnrZ9Rw12rSLt" + - "sDpFg8vmfbpw0HH3wcuMMSaiao2XAbwMjPFhPL/ReN6DfsY8tHHekN0WXR929vqsCpWruFshPEqF" + - "o3IyADuWTxgea1rYTbRVeEMmc+SnCwp+OcB4l3kmLq0D4BnzkA/MMUBjvDMXC1DBqlkCFr9N9E//" + - "HIZpPyDsQVuTFwsMfP273k8GFeLbvo9izwe8DGA8VMPgIc/D2piALlPFDGWUMqNuazOun/RbeQU7" + - "L/zl0cfC+SPOXjG84NBRawCvJNoSE7PiBgr5Xx/MKf7jLnzIbUPKlHVF5C11KgJfD9+shY8Vxjd3" + - "0780rEvP8bFDDvnVQGO+lU5MeTDwzM5aTbOzNyrw/XNbWx9JFLknk+sjqjobUHJq9XS/cNj3jZcZ" + - "Ac9PwBIDyAeMD2O8RhhvpTFYqYpGqMQOM2UhlFOhsvjfgNJ6ofxyoZaXbHPt8mDNjDU9ACYBbyGA" + - "AT/KZEZ/MpO5qciYyRlgROeJGSh0nQCL21Ufmx4EL8dMpqScRt4DFVAAYMCtORx+0Rhz7aFF+GJB" + - "BmNM/JKklGo1KlBtHZ474U79P9hZOZcQYb0unD/mwu05qADCZwE4C8Y7I3kTk4kFx+mUuzfMKf5e" + - "+rn+rUMq4PR4hFII0gw0xpdvGAWGoDqHf9m8IuV8m2Qtf1pQMPok37+50JhpHlC8EzwRcAzwOqs+" + - "Vkv06I+da04nInd3RvuxgCIAhcUTF5zvFQ79oucP+Cy8zIjE6qQnt5Pviu5IqAogVKNCNSrBUte6" + - "blnrqi/Vo3O9rI3Pc7cbP6sgGQcAf7rvl3zK908uBKjAGK5jrrmNKKHj/RS3E6L3V2USLUzkZAB4" + - "i75pTivwwQMyoKYQ685+QOtScvzUHPbIlJ54ZVsuDPTrZDmnQqUQggo1qkoNRDyFeJ6XGQfjF0fW" + - "3O9YWxW6adNzw36Dzm/JKEJ0k7QgtfiSygd1vSrkdZ3jlb6fneT7Y+MN1xrmVX9gbkw9q1MdsemF" + - "U5wkpwqSRSw49gfZAcPPHOsVlIww/sBjjPEVnqfGZEQlWKVCjWK31TW/dv56pCruU126TGxPl+US" + - "IrAgNQ7TQ+pNukQqfalLNimApvMt6CZMTvsiu3VOJ17XnrNWZ9m85oK8Qmz4sFB+CeXrF29dfOqG" + - "1PwKs6fOKyvKjrnb8wrHGD8TWfCOEoX85zb96dgXY9leN2NM+y3SJZG4u7XsSldIykFPz09NHxbR" + - "T2U3M11AsKf8aRqtnBqQoG91oWkGOS0/XaQo2Pf3u5mUDK9LukD7Mv5Tv9teSQ4VzipsINUtW9Zc" + - "t/mFiRu7WbcOuQNP+MXQ4hGX3mEKBl1mjB9bbwAqSz6cf+TZ8Qaabta/u6hM92ItpZs5dvyor5R/" + - "dwvp9QAa6eFzfxRlpVMk2mXh93czeyPn1Bn5ShWtYAJsyEve+OPgC7Hzmgx3USDtejQedlbtDX7h" + - "0Ns6HChV5LcvP7rpb1+qx/690dHrtewL05c2c7ZLtrM91fOpDGjXyvT9+WYBPQAg3NPcey1n4vVt" + - "FUJSIfGNjJZNy2ekkqzpazIJOefSoTaA9q1VY+5Wbvs9NAoYVBkFh5Sesi9lJ/u6lt5+WETpoi2M" + - "PpZU/k9szmKGtVGRWBjQ6g3zP78pxfSGKb+tJ4LPAsi31S/+uXCUlVZmCIc+DlI15L4Cpr/1FA1d" + - "0VLqAilzgcCGChdQc5eoTXqpkNS66hv1YLsUElURiG1sOZj7lunf3v3fwlBKjRfX9EjEHKcscV98" + - "D40zRKIqgEpz4yvTVnfjU/VbmL/r4yhwTTbPCNsZNi8g50/OnvbCsXu5wQqVURCBuOb7seu98n7A" + - "/L23Tc8NX8mW6pL73UoOhYPH/GJv/I7Dzlqbg5pRUG1q++A//+Ng+4f9gDlATVzLHfErZiHioKrn" + - "H37uhgeG597sdYnIYeeszypQqQawre9dHNbd0Yj9/5KnfsB8DJpuXXj8Q+ryj3dUZglD1Uz3MsWv" + - "HX7uh1fv6QGHn7upAmrWQpEV2zSt+bVptamw+6C9VaP/hcoHrvkABgydUjPLywy6Oboh6HW6PgLj" + - "LYqStqYRQHKDMQflMhXOQrnata27tvGvufrEn8ZBfmdPP2AO7NpmAAw85B8qTyjKlt1svAHTjPGL" + - "k4w0jAcTAyllnBoh9Kxw/tEdS8cuT0WyH4vX1PYD5qMBzQDE2eFDxz09zsscWuwVHX6a8YwaFAiM" + - "NAkHr4vdUdf82rQN6JwnSl4N4vAxeKdxP2A+mjXuKTvcXcY9TdOnyxPk4zKZ/vbRAqe75C3QfZZY" + - "0P/y6/7299z+H4QrdGsoib8JAAAAAElFTkSuQmCC" - } -}; - -// The process of adding a new default snippet involves: -// * add a new entity to aboutHome.dtd -// * add a for it in aboutHome.xhtml -// * add an entry here in the proper ordering (based on spans) -// The part of the snippet will be linked to the corresponding url. -const DEFAULT_SNIPPETS_URLS = [ "" ]; - -const SNIPPETS_UPDATE_INTERVAL_MS = 86400000; // 1 Day. - -// IndexedDB storage constants. -const DATABASE_NAME = "abouthome"; -const DATABASE_VERSION = 1; -const SNIPPETS_OBJECTSTORE_NAME = "snippets"; - -// This global tracks if the page has been set up before, to prevent double inits -let gInitialized = false; -let gObserver = new MutationObserver(function (mutations) { - for (let mutation of mutations) { - if (mutation.attributeName == "searchEngineName") { - setupSearchEngine(); - if (!gInitialized) { -// ensureSnippetsMapThen(loadSnippets); - gInitialized = true; - } - return; - } - } -}); - -window.addEventListener("pageshow", function () { - // Delay search engine setup, cause browser.js::BrowserOnAboutPageLoad runs - // later and may use asynchronous getters. - window.gObserver.observe(document.documentElement, { attributes: true }); - fitToWidth(); - window.addEventListener("resize", fitToWidth); - - // Ask chrome to update snippets. - var event = new CustomEvent("AboutHomeLoad", {bubbles:true}); - document.dispatchEvent(event); -}); - -window.addEventListener("pagehide", function() { - window.gObserver.disconnect(); - window.removeEventListener("resize", fitToWidth); -}); - -// This object has the same interface as Map and is used to store and retrieve -// the snippets data. It is lazily initialized by ensureSnippetsMapThen(), so -// be sure its callback returned before trying to use it. -let gSnippetsMap; -let gSnippetsMapCallbacks = []; - -/** - * Ensure the snippets map is properly initialized. - * - * @param aCallback - * Invoked once the map has been initialized, gets the map as argument. - * @note Snippets should never directly manage the underlying storage, since - * it may change inadvertently. - */ -function ensureSnippetsMapThen(aCallback) -{ -return; - if (gSnippetsMap) { - aCallback(gSnippetsMap); - return; - } - - // Handle multiple requests during the async initialization. - gSnippetsMapCallbacks.push(aCallback); - if (gSnippetsMapCallbacks.length > 1) { - // We are already updating, the callbacks will be invoked when done. - return; - } - - let invokeCallbacks = function () { - if (!gSnippetsMap) { - gSnippetsMap = Object.freeze(new Map()); - } - - for (let callback of gSnippetsMapCallbacks) { - callback(gSnippetsMap); - } - gSnippetsMapCallbacks.length = 0; - } - - let openRequest = indexedDB.open(DATABASE_NAME, DATABASE_VERSION); - - openRequest.onerror = function (event) { - // Try to delete the old database so that we can start this process over - // next time. - indexedDB.deleteDatabase(DATABASE_NAME); - invokeCallbacks(); - }; - - openRequest.onupgradeneeded = function (event) { - let db = event.target.result; - if (!db.objectStoreNames.contains(SNIPPETS_OBJECTSTORE_NAME)) { - db.createObjectStore(SNIPPETS_OBJECTSTORE_NAME); - } - } - - openRequest.onsuccess = function (event) { - let db = event.target.result; - - db.onerror = function (event) { - invokeCallbacks(); - } - - db.onversionchange = function (event) { - event.target.close(); - invokeCallbacks(); - } - - let cache = new Map(); - let cursorRequest = db.transaction(SNIPPETS_OBJECTSTORE_NAME) - .objectStore(SNIPPETS_OBJECTSTORE_NAME).openCursor(); - cursorRequest.onerror = function (event) { - invokeCallbacks(); - } - - cursorRequest.onsuccess = function(event) { - let cursor = event.target.result; - - // Populate the cache from the persistent storage. - if (cursor) { - cache.set(cursor.key, cursor.value); - cursor.continue(); - return; - } - - // The cache has been filled up, create the snippets map. - gSnippetsMap = Object.freeze({ - get: function (aKey) cache.get(aKey), - set: function (aKey, aValue) { - db.transaction(SNIPPETS_OBJECTSTORE_NAME, "readwrite") - .objectStore(SNIPPETS_OBJECTSTORE_NAME).put(aValue, aKey); - return cache.set(aKey, aValue); - }, - has: function (aKey) cache.has(aKey), - delete: function (aKey) { - db.transaction(SNIPPETS_OBJECTSTORE_NAME, "readwrite") - .objectStore(SNIPPETS_OBJECTSTORE_NAME).delete(aKey); - return cache.delete(aKey); - }, - clear: function () { - db.transaction(SNIPPETS_OBJECTSTORE_NAME, "readwrite") - .objectStore(SNIPPETS_OBJECTSTORE_NAME).clear(); - return cache.clear(); - }, - get size() cache.size - }); - - setTimeout(invokeCallbacks, 0); - } - } -} - -function onSearchSubmit(aEvent) -{ - let searchTerms = document.getElementById("searchText").value; - let engineName = document.documentElement.getAttribute("searchEngineName"); - - if (engineName && searchTerms.length > 0) { - // Send an event that will perform a search and Firefox Health Report will - // record that a search from about:home has occurred. - let eventData = JSON.stringify({ - engineName: engineName, - searchTerms: searchTerms - }); - let event = new CustomEvent("AboutHomeSearchEvent", {detail: eventData}); - document.dispatchEvent(event); - } - - aEvent.preventDefault(); -} - - -function setupSearchEngine() -{ - // The "autofocus" attribute doesn't focus the form element - // immediately when the element is first drawn, so the - // attribute is also used for styling when the page first loads. - let searchText = document.getElementById("searchText"); - searchText.addEventListener("blur", function searchText_onBlur() { - searchText.removeEventListener("blur", searchText_onBlur); - searchText.removeAttribute("autofocus"); - }); - - let searchEngineName = document.documentElement.getAttribute("searchEngineName"); - let searchEngineInfo = SEARCH_ENGINES[searchEngineName]; - let logoElt = document.getElementById("searchEngineLogo"); - - // Add search engine logo. - if (searchEngineInfo && searchEngineInfo.image) { - logoElt.parentNode.hidden = false; - logoElt.src = searchEngineInfo.image; - logoElt.alt = searchEngineName; - searchText.placeholder = ""; - } - else { - logoElt.parentNode.hidden = true; - searchText.placeholder = searchEngineName; - } - -} - -/** - * Inform the test harness that we're done loading the page. - */ -function loadSucceeded() -{ - var event = new CustomEvent("AboutHomeLoadSnippetsSucceeded", {bubbles:true}); - document.dispatchEvent(event); -} - -/** - * Update the local snippets from the remote storage, then show them through - * showSnippets. - */ -function loadSnippets() -{ -return; - if (!gSnippetsMap) - throw new Error("Snippets map has not properly been initialized"); - - // Allow tests to modify the snippets map before using it. - var event = new CustomEvent("AboutHomeLoadSnippets", {bubbles:true}); - document.dispatchEvent(event); - - // Check cached snippets version. - let cachedVersion = gSnippetsMap.get("snippets-cached-version") || 0; - let currentVersion = document.documentElement.getAttribute("snippetsVersion"); - if (cachedVersion < currentVersion) { - // The cached snippets are old and unsupported, restart from scratch. - gSnippetsMap.clear(); - } - - // Check last snippets update. - let lastUpdate = gSnippetsMap.get("snippets-last-update"); - let updateURL = document.documentElement.getAttribute("snippetsURL"); - let shouldUpdate = !lastUpdate || - Date.now() - lastUpdate > SNIPPETS_UPDATE_INTERVAL_MS; - if (updateURL && shouldUpdate) { - // Try to update from network. - let xhr = new XMLHttpRequest(); - try { - xhr.open("GET", updateURL, true); - } catch (ex) { - showSnippets(); - loadSucceeded(); - return; - } - // Even if fetching should fail we don't want to spam the server, thus - // set the last update time regardless its results. Will retry tomorrow. - gSnippetsMap.set("snippets-last-update", Date.now()); - xhr.onerror = function (event) { - showSnippets(); - }; - xhr.onload = function (event) - { - if (xhr.status == 200) { - gSnippetsMap.set("snippets", xhr.responseText); - gSnippetsMap.set("snippets-cached-version", currentVersion); - } - showSnippets(); - loadSucceeded(); - }; - xhr.send(null); - } else { - showSnippets(); - loadSucceeded(); - } -} - -/** - * Shows locally cached remote snippets, or default ones when not available. - * - * @note: snippets should never invoke showSnippets(), or they may cause - * a "too much recursion" exception. - */ -let _snippetsShown = false; -function showSnippets() -{ -return; - let snippetsElt = document.getElementById("snippets"); - - // Show about:rights notification, if needed. - let showRights = document.documentElement.getAttribute("showKnowYourRights"); - if (showRights) { - let rightsElt = document.getElementById("rightsSnippet"); - let anchor = rightsElt.getElementsByTagName("a")[0]; - anchor.href = "about:rights"; - snippetsElt.appendChild(rightsElt); - rightsElt.removeAttribute("hidden"); - return; - } - - if (!gSnippetsMap) - throw new Error("Snippets map has not properly been initialized"); - if (_snippetsShown) { - // There's something wrong with the remote snippets, just in case fall back - // to the default snippets. - showDefaultSnippets(); - throw new Error("showSnippets should never be invoked multiple times"); - } - _snippetsShown = true; - - let snippets = gSnippetsMap.get("snippets"); - // If there are remotely fetched snippets, try to to show them. - if (snippets) { - // Injecting snippets can throw if they're invalid XML. - try { - snippetsElt.innerHTML = snippets; - // Scripts injected by innerHTML are inactive, so we have to relocate them - // through DOM manipulation to activate their contents. - Array.forEach(snippetsElt.getElementsByTagName("script"), function(elt) { - let relocatedScript = document.createElement("script"); - relocatedScript.type = "text/javascript;version=1.8"; - relocatedScript.text = elt.text; - elt.parentNode.replaceChild(relocatedScript, elt); - }); - return; - } catch (ex) { - // Bad content, continue to show default snippets. - } - } - - showDefaultSnippets(); -} - -/** - * Clear snippets element contents and show default snippets. - */ -function showDefaultSnippets() -{ -return; - // Clear eventual contents... - let snippetsElt = document.getElementById("snippets"); - snippetsElt.innerHTML = ""; - - // ...then show default snippets. - let defaultSnippetsElt = document.getElementById("defaultSnippets"); - let entries = defaultSnippetsElt.querySelectorAll("span"); - // Choose a random snippet. Assume there is always at least one. - let randIndex = Math.floor(Math.random() * entries.length); - let entry = entries[randIndex]; - // Inject url in the eventual link. - if (DEFAULT_SNIPPETS_URLS[randIndex]) { - let links = entry.getElementsByTagName("a"); - // Default snippets can have only one link, otherwise something is messed - // up in the translation. - if (links.length == 1) { - links[0].href = DEFAULT_SNIPPETS_URLS[randIndex]; - } - } - // Move the default snippet to the snippets element. - snippetsElt.appendChild(entry); -} - -function fitToWidth() { - if (window.scrollMaxX) { - document.body.setAttribute("narrow", "true"); - } else if (document.body.hasAttribute("narrow")) { - document.body.removeAttribute("narrow"); - fitToWidth(); - } -} diff --git a/helpers/DATA/firefox/trisquel/abouthome/aboutHome.xhtml b/helpers/DATA/firefox/trisquel/abouthome/aboutHome.xhtml deleted file mode 100644 index c21b9d7..0000000 --- a/helpers/DATA/firefox/trisquel/abouthome/aboutHome.xhtml +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - %htmlDTD; - - %globalDTD; - - %aboutHomeDTD; - - %browserDTD; -]> - - - - &abouthome.pageTitle; - - - - - - - - - - - -
-
- - -
-
- - - -
-
- -
- -
- - - - - - diff --git a/helpers/DATA/firefox/trisquel/abouthome/addons.png b/helpers/DATA/firefox/trisquel/abouthome/addons.png deleted file mode 100644 index 41519ce..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/addons.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/addons@2x.png b/helpers/DATA/firefox/trisquel/abouthome/addons@2x.png deleted file mode 100644 index d4d04ee..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/addons@2x.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/apps.png b/helpers/DATA/firefox/trisquel/abouthome/apps.png deleted file mode 100644 index 79fc95d..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/apps.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/apps@2x.png b/helpers/DATA/firefox/trisquel/abouthome/apps@2x.png deleted file mode 100644 index cbe7a6d..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/apps@2x.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/bookmarks.png b/helpers/DATA/firefox/trisquel/abouthome/bookmarks.png deleted file mode 100644 index 5c7e194..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/bookmarks.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/bookmarks@2x.png b/helpers/DATA/firefox/trisquel/abouthome/bookmarks@2x.png deleted file mode 100644 index 7ede007..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/bookmarks@2x.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/downloads.png b/helpers/DATA/firefox/trisquel/abouthome/downloads.png deleted file mode 100644 index 3d4d10e..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/downloads.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/downloads@2x.png b/helpers/DATA/firefox/trisquel/abouthome/downloads@2x.png deleted file mode 100644 index d384a22..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/downloads@2x.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/history.png b/helpers/DATA/firefox/trisquel/abouthome/history.png deleted file mode 100644 index ae742b1..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/history.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/history@2x.png b/helpers/DATA/firefox/trisquel/abouthome/history@2x.png deleted file mode 100644 index 696902e..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/history@2x.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/restore-large.png b/helpers/DATA/firefox/trisquel/abouthome/restore-large.png deleted file mode 100644 index ef593e6..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/restore-large.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/restore-large@2x.png b/helpers/DATA/firefox/trisquel/abouthome/restore-large@2x.png deleted file mode 100644 index d5c71d0..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/restore-large@2x.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/restore.png b/helpers/DATA/firefox/trisquel/abouthome/restore.png deleted file mode 100644 index 5c3d6f4..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/restore.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/restore@2x.png b/helpers/DATA/firefox/trisquel/abouthome/restore@2x.png deleted file mode 100644 index 5acb630..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/restore@2x.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/settings.png b/helpers/DATA/firefox/trisquel/abouthome/settings.png deleted file mode 100644 index 4b0c309..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/settings.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/settings@2x.png b/helpers/DATA/firefox/trisquel/abouthome/settings@2x.png deleted file mode 100644 index c77cb9a..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/settings@2x.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/snippet1.png b/helpers/DATA/firefox/trisquel/abouthome/snippet1.png deleted file mode 100644 index ce2ec55..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/snippet1.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/snippet1@2x.png b/helpers/DATA/firefox/trisquel/abouthome/snippet1@2x.png deleted file mode 100644 index f57cd0a..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/snippet1@2x.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/snippet2.png b/helpers/DATA/firefox/trisquel/abouthome/snippet2.png deleted file mode 100644 index e0724fb..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/snippet2.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/snippet2@2x.png b/helpers/DATA/firefox/trisquel/abouthome/snippet2@2x.png deleted file mode 100644 index 40577f5..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/snippet2@2x.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/sync.png b/helpers/DATA/firefox/trisquel/abouthome/sync.png deleted file mode 100644 index 11e40cc..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/sync.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/abouthome/sync@2x.png b/helpers/DATA/firefox/trisquel/abouthome/sync@2x.png deleted file mode 100644 index 6354f5b..0000000 Binary files a/helpers/DATA/firefox/trisquel/abouthome/sync@2x.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/adblock_artwork/100.png b/helpers/DATA/firefox/trisquel/adblock_artwork/100.png deleted file mode 100644 index f1485e4..0000000 Binary files a/helpers/DATA/firefox/trisquel/adblock_artwork/100.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/adblock_artwork/16.png b/helpers/DATA/firefox/trisquel/adblock_artwork/16.png deleted file mode 100644 index 27339c7..0000000 Binary files a/helpers/DATA/firefox/trisquel/adblock_artwork/16.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/adblock_artwork/24.png b/helpers/DATA/firefox/trisquel/adblock_artwork/24.png deleted file mode 100644 index e7ecf24..0000000 Binary files a/helpers/DATA/firefox/trisquel/adblock_artwork/24.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/adblock_artwork/32.png b/helpers/DATA/firefox/trisquel/adblock_artwork/32.png deleted file mode 100644 index 7d98d62..0000000 Binary files a/helpers/DATA/firefox/trisquel/adblock_artwork/32.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/adblock_artwork/48.png b/helpers/DATA/firefox/trisquel/adblock_artwork/48.png deleted file mode 100644 index 4bb73bf..0000000 Binary files a/helpers/DATA/firefox/trisquel/adblock_artwork/48.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/adblock_artwork/64.png b/helpers/DATA/firefox/trisquel/adblock_artwork/64.png deleted file mode 100644 index 5735fd3..0000000 Binary files a/helpers/DATA/firefox/trisquel/adblock_artwork/64.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/adblock_artwork/adblock.svg b/helpers/DATA/firefox/trisquel/adblock_artwork/adblock.svg deleted file mode 100644 index 82f4003..0000000 --- a/helpers/DATA/firefox/trisquel/adblock_artwork/adblock.svg +++ /dev/null @@ -1,989 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - SPY - SPY - - - - - - - SPY - SPY - - - - - - - SPY - SPY - - - - - - - SPY - SPY - - - - - - - SPY - SPY - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/helpers/DATA/firefox/trisquel/bookmarks.html.in b/helpers/DATA/firefox/trisquel/bookmarks.html.in deleted file mode 100644 index 9767e59..0000000 --- a/helpers/DATA/firefox/trisquel/bookmarks.html.in +++ /dev/null @@ -1,23 +0,0 @@ - - - -Bookmarks -

Bookmarks Menu

- -

-

Bookmarks Toolbar

-
Add bookmarks to this folder to see them displayed on the Bookmarks Toolbar -

-


-
Trisquel GNU/Linux -
Wiki -
Donate -
Store -
-
GNU's not UNIX! -
GNU Planet -
Free Software Foundation -

-

diff --git a/helpers/DATA/firefox/trisquel/branding/Makefile.in b/helpers/DATA/firefox/trisquel/branding/Makefile.in deleted file mode 100644 index 9cc8935..0000000 --- a/helpers/DATA/firefox/trisquel/branding/Makefile.in +++ /dev/null @@ -1,67 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -include $(topsrcdir)/config/config.mk - -PREF_JS_EXPORTS = $(srcdir)/pref/icecat-branding.js - -# On Windows only do this step for browser, skip for metro. -ifeq ($(MOZ_WIDGET_TOOLKIT) $(DIST_SUBDIR),windows browser) -BRANDING_FILES := \ - icecat.ico \ - document.ico \ - branding.nsi \ - appname.bmp \ - bgintro.bmp \ - bgplain.bmp \ - clock.bmp \ - particles.bmp \ - pencil.bmp \ - pencil-rtl.bmp \ - wizHeader.bmp \ - wizHeaderRTL.bmp \ - wizWatermark.bmp \ - newwindow.ico \ - newtab.ico \ - pbmode.ico \ - $(NULL) -endif - -ifeq ($(MOZ_WIDGET_TOOLKIT),cocoa) -BRANDING_FILES := \ - background.png \ - icecat.icns \ - disk.icns \ - document.icns \ - dsstore \ - $(NULL) -endif - -ifdef MOZ_WIDGET_GTK -BRANDING_FILES := \ - default16.png \ - default32.png \ - default48.png \ - mozicon128.png \ - $(NULL) -endif - -ifeq ($(OS_ARCH),OS2) -BRANDING_FILES := \ - icecat-os2.ico \ - document-os2.ico \ - $(NULL) -endif - -BRANDING_DEST := $(DIST)/branding -BRANDING_TARGET := export -INSTALL_TARGETS += BRANDING - -ifeq ($(MOZ_WIDGET_TOOLKIT) $(DIST_SUBDIR),windows metro) -VISUALMANIFEST := VisualElementsManifest.xml -VISUALMANIFEST_FLAGS := -Fsubstitution -DMOZ_APP_DISPLAYNAME=${MOZ_APP_DISPLAYNAME} -VISUALMANIFEST_PATH := $(DIST)/bin -PP_TARGETS += VISUALMANIFEST -endif - diff --git a/helpers/DATA/firefox/trisquel/branding/VisualElementsManifest.xml b/helpers/DATA/firefox/trisquel/branding/VisualElementsManifest.xml deleted file mode 100644 index f763409..0000000 --- a/helpers/DATA/firefox/trisquel/branding/VisualElementsManifest.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - diff --git a/helpers/DATA/firefox/trisquel/branding/appname.bmp b/helpers/DATA/firefox/trisquel/branding/appname.bmp deleted file mode 100644 index 69d9e0f..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/appname.bmp and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/background.png b/helpers/DATA/firefox/trisquel/branding/background.png deleted file mode 100644 index e52f31d..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/background.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/bgintro.bmp b/helpers/DATA/firefox/trisquel/branding/bgintro.bmp deleted file mode 100644 index 14214ce..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/bgintro.bmp and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/bgplain.bmp b/helpers/DATA/firefox/trisquel/branding/bgplain.bmp deleted file mode 100644 index c82f896..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/bgplain.bmp and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/branding.nsi b/helpers/DATA/firefox/trisquel/branding/branding.nsi deleted file mode 100644 index 9b6ab6a..0000000 --- a/helpers/DATA/firefox/trisquel/branding/branding.nsi +++ /dev/null @@ -1,50 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -# NSIS branding defines for official release builds. -# The nightly build branding.nsi is located in browser/installer/windows/nsis/ -# The unofficial build branding.nsi is located in browser/branding/unofficial/ - -# BrandFullNameInternal is used for some registry and file system values -# instead of BrandFullName and typically should not be modified. -!define BrandFullNameInternal "IceCat" -!define CompanyName "GNU" -!define URLInfoAbout "http://www.gnu.org/software/gnuzilla/" -!define URLUpdateInfo "http://www.gnu.org/software/gnuzilla/" - -!define URLStubDownload "http://www.gnu.org/software/gnuzilla/" -!define URLManualDownload "http://ftp.gnu.org/gnu/gnuzilla/" - -; The OFFICIAL define is a workaround to support different urls for Release and -; Beta since they share the same branding when building with other branches that -; set the update channel to beta. -!define OFFICIAL -!define Channel "release" - -# The installer's certificate name and issuer expected by the stub installer -!define CertNameDownload "Mozilla Corporation" -!define CertIssuerDownload "DigiCert Assured ID Code Signing CA-1" - -# Dialog units are used so the UI displays correctly with the system's DPI -# settings. -# The dialog units for the bitmap's dimensions should match exactly with the -# bitmap's width and height in pixels. -!define APPNAME_BMP_WIDTH_DU "134u" -!define APPNAME_BMP_HEIGHT_DU "36u" -!define INTRO_BLURB_WIDTH_DU "258u" -!define INTRO_BLURB_EDGE_DU "170u" -!define INTRO_BLURB_LTR_TOP_DU "20u" -!define INTRO_BLURB_RTL_TOP_DU "12u" - -# UI Colors that can be customized for each channel -!define FOOTER_CONTROL_TEXT_COLOR_NORMAL 0x000000 -!define FOOTER_CONTROL_TEXT_COLOR_FADED 0x666666 -!define FOOTER_BKGRD_COLOR 0xFFFFFF -!define INTRO_BLURB_TEXT_COLOR 0x666666 -!define OPTIONS_TEXT_COLOR_NORMAL 0x000000 -!define OPTIONS_TEXT_COLOR_FADED 0x666666 -!define OPTIONS_BKGRD_COLOR 0xF0F0F0 -!define INSTALL_BLURB_TEXT_COLOR 0x666666 -!define INSTALL_PROGRESS_TEXT_COLOR_NORMAL 0x666666 -!define INSTALL_PROGRESS_TEXT_COLOR_FADED 0x999999 diff --git a/helpers/DATA/firefox/trisquel/branding/clock.bmp b/helpers/DATA/firefox/trisquel/branding/clock.bmp deleted file mode 100644 index c74398e..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/clock.bmp and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/configure.sh b/helpers/DATA/firefox/trisquel/branding/configure.sh deleted file mode 100644 index 7481c2c..0000000 --- a/helpers/DATA/firefox/trisquel/branding/configure.sh +++ /dev/null @@ -1,5 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -MOZ_APP_DISPLAYNAME=IceCat diff --git a/helpers/DATA/firefox/trisquel/branding/content/Makefile.in b/helpers/DATA/firefox/trisquel/branding/content/Makefile.in deleted file mode 100644 index 2d17f36..0000000 --- a/helpers/DATA/firefox/trisquel/branding/content/Makefile.in +++ /dev/null @@ -1,13 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -# Branding Makefile -# - jars chrome artwork - -# resources needed for the metro tile interface -ifeq ($(MOZ_WIDGET_TOOLKIT) $(DIST_SUBDIR),windows metro) -TILE_FILES := $(wildcard $(srcdir)/VisualElements*) -TILE_DEST := $(DIST)/bin/tileresources -INSTALL_TARGETS += TILE -endif diff --git a/helpers/DATA/firefox/trisquel/branding/content/VisualElements_logo.png b/helpers/DATA/firefox/trisquel/branding/content/VisualElements_logo.png deleted file mode 100644 index 0cbf367..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/VisualElements_logo.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/VisualElements_smalllogo.png b/helpers/DATA/firefox/trisquel/branding/content/VisualElements_smalllogo.png deleted file mode 100644 index 425f9fd..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/VisualElements_smalllogo.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/VisualElements_splashscreen.png b/helpers/DATA/firefox/trisquel/branding/content/VisualElements_splashscreen.png deleted file mode 100644 index 484ac2f..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/VisualElements_splashscreen.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/about-background.png b/helpers/DATA/firefox/trisquel/branding/content/about-background.png deleted file mode 100644 index f626f74..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/about-background.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/about-logo.png b/helpers/DATA/firefox/trisquel/branding/content/about-logo.png deleted file mode 100644 index 554a13d..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/about-logo.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/about-logo@2x.png b/helpers/DATA/firefox/trisquel/branding/content/about-logo@2x.png deleted file mode 100644 index 1c4dea8..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/about-logo@2x.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/about-wordmark.svg b/helpers/DATA/firefox/trisquel/branding/content/about-wordmark.svg deleted file mode 100644 index 7c73566..0000000 --- a/helpers/DATA/firefox/trisquel/branding/content/about-wordmark.svg +++ /dev/null @@ -1,78 +0,0 @@ - -image/svg+xml - - - - - - - \ No newline at end of file diff --git a/helpers/DATA/firefox/trisquel/branding/content/about.png b/helpers/DATA/firefox/trisquel/branding/content/about.png deleted file mode 100644 index eaa1a31..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/about.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/aboutDialog.css b/helpers/DATA/firefox/trisquel/branding/content/aboutDialog.css deleted file mode 100644 index 4c2a7b6..0000000 --- a/helpers/DATA/firefox/trisquel/branding/content/aboutDialog.css +++ /dev/null @@ -1,25 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#aboutDialogContainer { - background-image: url("chrome://branding/content/about-background.png"); - background-repeat: no-repeat; - background-color: #000; - color: #fff; -} - -.text-link { - color: #fff !important; - text-decoration: underline; -} - -#rightBox { - /* this margin prevents text from overlapping the planet image */ - margin-left: 280px; - margin-right: 20px; -} - -#bottomBox { - background-color: rgba(0,0,0,.7); -} diff --git a/helpers/DATA/firefox/trisquel/branding/content/icon48.png b/helpers/DATA/firefox/trisquel/branding/content/icon48.png deleted file mode 100644 index 2f18a7d..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/icon48.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/icon64.png b/helpers/DATA/firefox/trisquel/branding/content/icon64.png deleted file mode 100644 index 16e1d6e..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/icon64.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/identity-icons-brand.png b/helpers/DATA/firefox/trisquel/branding/content/identity-icons-brand.png deleted file mode 100644 index b26b76d..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/identity-icons-brand.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/identity-icons-brand@2x.png b/helpers/DATA/firefox/trisquel/branding/content/identity-icons-brand@2x.png deleted file mode 100644 index 41e9a1d..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/identity-icons-brand@2x.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/jar.mn b/helpers/DATA/firefox/trisquel/branding/content/jar.mn deleted file mode 100644 index dc07b3d..0000000 --- a/helpers/DATA/firefox/trisquel/branding/content/jar.mn +++ /dev/null @@ -1,27 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -browser.jar: -% content branding %content/branding/ contentaccessible=yes - content/branding/about.png (about.png) - content/branding/about-background.png (about-background.png) - content/branding/about-logo.png (about-logo.png) - content/branding/about-logo@2x.png (about-logo@2x.png) - content/branding/about-wordmark.svg (about-wordmark.svg) - content/branding/icon48.png (icon48.png) - content/branding/icon64.png (icon64.png) - content/branding/icon16.png (../default16.png) - content/branding/icon32.png (../default32.png) - content/branding/icon128.png (../mozicon128.png) - content/branding/identity-icons-brand.png (identity-icons-brand.png) - content/branding/identity-icons-brand@2x.png (identity-icons-brand@2x.png) - content/branding/aboutDialog.css (aboutDialog.css) -#ifdef MOZ_METRO - content/branding/metro-about.css (metro-about.css) - content/branding/metro-about-footer.png (metro-about-footer.png) - content/branding/metro-about-wordmark.png (metro-about-wordmark.png) - content/branding/metro_firstrun_logo.png (metro_firstrun_logo.png) - content/branding/metro_firstrun_logo@1.4x.png (metro_firstrun_logo@1.4x.png) - content/branding/metro_firstrun_logo@1.8x.png (metro_firstrun_logo@1.8x.png) -#endif diff --git a/helpers/DATA/firefox/trisquel/branding/content/metro-about-footer.png b/helpers/DATA/firefox/trisquel/branding/content/metro-about-footer.png deleted file mode 100644 index c81a520..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/metro-about-footer.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/metro-about-wordmark.png b/helpers/DATA/firefox/trisquel/branding/content/metro-about-wordmark.png deleted file mode 100644 index 58b1390..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/metro-about-wordmark.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/metro-about.css b/helpers/DATA/firefox/trisquel/branding/content/metro-about.css deleted file mode 100644 index ae59ca7..0000000 --- a/helpers/DATA/firefox/trisquel/branding/content/metro-about.css +++ /dev/null @@ -1,14 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -#about-flyoutpanel { - background-color: #002147; - color: white; -} - -#about-policy-label:hover, -#about-policy-label:active { - background: #0a111c; -} - diff --git a/helpers/DATA/firefox/trisquel/branding/content/metro_firstrun_logo.png b/helpers/DATA/firefox/trisquel/branding/content/metro_firstrun_logo.png deleted file mode 100644 index 8ad7f27..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/metro_firstrun_logo.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/metro_firstrun_logo@1.4x.png b/helpers/DATA/firefox/trisquel/branding/content/metro_firstrun_logo@1.4x.png deleted file mode 100644 index 8a247a8..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/metro_firstrun_logo@1.4x.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/metro_firstrun_logo@1.8x.png b/helpers/DATA/firefox/trisquel/branding/content/metro_firstrun_logo@1.8x.png deleted file mode 100644 index a716c58..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/content/metro_firstrun_logo@1.8x.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/content/moz.build b/helpers/DATA/firefox/trisquel/branding/content/moz.build deleted file mode 100644 index c97072b..0000000 --- a/helpers/DATA/firefox/trisquel/branding/content/moz.build +++ /dev/null @@ -1,7 +0,0 @@ -# -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*- -# vim: set filetype=python: -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -JAR_MANIFESTS += ['jar.mn'] \ No newline at end of file diff --git a/helpers/DATA/firefox/trisquel/branding/default16.png b/helpers/DATA/firefox/trisquel/branding/default16.png deleted file mode 100644 index d2728b4..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/default16.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/default32.png b/helpers/DATA/firefox/trisquel/branding/default32.png deleted file mode 100644 index b485806..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/default32.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/default48.png b/helpers/DATA/firefox/trisquel/branding/default48.png deleted file mode 100644 index 2f18a7d..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/default48.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/disk.icns b/helpers/DATA/firefox/trisquel/branding/disk.icns deleted file mode 100644 index 718f1a3..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/disk.icns and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/document-os2.ico b/helpers/DATA/firefox/trisquel/branding/document-os2.ico deleted file mode 100644 index 214e92c..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/document-os2.ico and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/document.icns b/helpers/DATA/firefox/trisquel/branding/document.icns deleted file mode 100644 index ff419f2..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/document.icns and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/document.ico b/helpers/DATA/firefox/trisquel/branding/document.ico deleted file mode 100644 index 3c8e283..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/document.ico and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/dsstore b/helpers/DATA/firefox/trisquel/branding/dsstore deleted file mode 100644 index 2d11482..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/dsstore and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/icecat-os2.ico b/helpers/DATA/firefox/trisquel/branding/icecat-os2.ico deleted file mode 100644 index 560d198..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/icecat-os2.ico and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/icecat.icns b/helpers/DATA/firefox/trisquel/branding/icecat.icns deleted file mode 100644 index 0c6941a..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/icecat.icns and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/icecat.ico b/helpers/DATA/firefox/trisquel/branding/icecat.ico deleted file mode 100644 index a6a7817..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/icecat.ico and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/locales/Makefile.in b/helpers/DATA/firefox/trisquel/branding/locales/Makefile.in deleted file mode 100644 index 82f614e..0000000 --- a/helpers/DATA/firefox/trisquel/branding/locales/Makefile.in +++ /dev/null @@ -1,5 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -DEFINES += -DAB_CD=$(AB_CD) diff --git a/helpers/DATA/firefox/trisquel/branding/locales/browserconfig.properties b/helpers/DATA/firefox/trisquel/branding/locales/browserconfig.properties deleted file mode 100644 index 72ab4be..0000000 --- a/helpers/DATA/firefox/trisquel/branding/locales/browserconfig.properties +++ /dev/null @@ -1,6 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -# Do NOT localize or otherwise change these values -browser.startup.homepage=about:icecat diff --git a/helpers/DATA/firefox/trisquel/branding/locales/en-US/brand.dtd b/helpers/DATA/firefox/trisquel/branding/locales/en-US/brand.dtd deleted file mode 100644 index 519de9b..0000000 --- a/helpers/DATA/firefox/trisquel/branding/locales/en-US/brand.dtd +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - diff --git a/helpers/DATA/firefox/trisquel/branding/locales/en-US/brand.properties b/helpers/DATA/firefox/trisquel/branding/locales/en-US/brand.properties deleted file mode 100644 index 3120429..0000000 --- a/helpers/DATA/firefox/trisquel/branding/locales/en-US/brand.properties +++ /dev/null @@ -1,15 +0,0 @@ -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -brandShortName=IceCat -brandFullName=IceCat -vendorShortName=GNU - -homePageSingleStartMain=IceCat Start, a fast home page with built-in search -homePageImport=Import your home page from %S - -homePageMigrationPageTitle=Home Page Selection -homePageMigrationDescription=Please select the home page you wish to use: - -syncBrandShortName=Sync diff --git a/helpers/DATA/firefox/trisquel/branding/locales/jar.mn b/helpers/DATA/firefox/trisquel/branding/locales/jar.mn deleted file mode 100644 index ff4e055..0000000 --- a/helpers/DATA/firefox/trisquel/branding/locales/jar.mn +++ /dev/null @@ -1,12 +0,0 @@ -#filter substitution -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - - -@AB_CD@.jar: -% locale branding @AB_CD@ %locale/branding/ -# Unofficial branding only exists in en-US - locale/branding/brand.dtd (en-US/brand.dtd) - locale/branding/brand.properties (en-US/brand.properties) - locale/branding/browserconfig.properties (browserconfig.properties) diff --git a/helpers/DATA/firefox/trisquel/branding/locales/moz.build b/helpers/DATA/firefox/trisquel/branding/locales/moz.build deleted file mode 100644 index 3a54c0c..0000000 --- a/helpers/DATA/firefox/trisquel/branding/locales/moz.build +++ /dev/null @@ -1,9 +0,0 @@ -# -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*- -# vim: set filetype=python: -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -DEFINES['MOZ_DISTRIBUTION_ID_UNQUOTED'] = CONFIG['MOZ_DISTRIBUTION_ID'] - -JAR_MANIFESTS += ['jar.mn'] \ No newline at end of file diff --git a/helpers/DATA/firefox/trisquel/branding/moz.build b/helpers/DATA/firefox/trisquel/branding/moz.build deleted file mode 100644 index 3e2f88f..0000000 --- a/helpers/DATA/firefox/trisquel/branding/moz.build +++ /dev/null @@ -1,10 +0,0 @@ -# -*- Mode: python; c-basic-offset: 4; indent-tabs-mode: nil; tab-width: 40 -*- -# vim: set filetype=python: -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. - -DIRS += ['content', 'locales'] - -DIST_SUBDIR = 'browser' -export('DIST_SUBDIR') diff --git a/helpers/DATA/firefox/trisquel/branding/mozicon128.png b/helpers/DATA/firefox/trisquel/branding/mozicon128.png deleted file mode 100644 index 6d922fd..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/mozicon128.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/newtab.ico b/helpers/DATA/firefox/trisquel/branding/newtab.ico deleted file mode 100644 index 6e3fee6..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/newtab.ico and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/newwindow.ico b/helpers/DATA/firefox/trisquel/branding/newwindow.ico deleted file mode 100644 index a300935..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/newwindow.ico and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/particles.bmp b/helpers/DATA/firefox/trisquel/branding/particles.bmp deleted file mode 100644 index ab74ce0..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/particles.bmp and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/pbmode.ico b/helpers/DATA/firefox/trisquel/branding/pbmode.ico deleted file mode 100644 index d217994..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/pbmode.ico and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/pencil-rtl.bmp b/helpers/DATA/firefox/trisquel/branding/pencil-rtl.bmp deleted file mode 100644 index e50d92d..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/pencil-rtl.bmp and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/pencil.bmp b/helpers/DATA/firefox/trisquel/branding/pencil.bmp deleted file mode 100644 index 252c10f..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/pencil.bmp and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/pref/icecat-branding.js b/helpers/DATA/firefox/trisquel/branding/pref/icecat-branding.js deleted file mode 100644 index 58a869e..0000000 --- a/helpers/DATA/firefox/trisquel/branding/pref/icecat-branding.js +++ /dev/null @@ -1,24 +0,0 @@ -pref("startup.homepage_override_url","http://www.gnu.org"); -pref("startup.homepage_welcome_url","http://www.gnu.org/software/gnuzilla/"); -// The time interval between checks for a new version (in seconds) -// nightly=8 hours, official=24 hours -pref("app.update.interval", 86400); -// The time interval between the downloading of mar file chunks in the -// background (in seconds) -pref("app.update.download.backgroundInterval", 60); -// URL user can browse to manually if for some reason all update installation -// attempts fail. -pref("app.update.url.manual", "http://www.gnu.org/software/gnuzilla/"); -// A default value for the "More information about this update" link -// supplied in the "An update is available" page of the update wizard. -pref("app.update.url.details", "http://www.gnu.org/software/gnuzilla/"); - -// Release notes and vendor URLs -pref("app.releaseNotesURL", "http://www.gnu.org/software/gnuzilla/"); -pref("app.vendorURL", "http://www.gnu.org/"); - -// Search codes belong only in builds with official branding -pref("browser.search.param.yahoo-fr", ""); -pref("browser.search.param.yahoo-fr-cjkt", ""); // now unused -pref("browser.search.param.yahoo-fr-ja", ""); -pref("browser.search.param.yahoo-f-CN", ""); diff --git a/helpers/DATA/firefox/trisquel/branding/wizHeader.bmp b/helpers/DATA/firefox/trisquel/branding/wizHeader.bmp deleted file mode 100644 index 87e5b0e..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/wizHeader.bmp and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/wizHeaderRTL.bmp b/helpers/DATA/firefox/trisquel/branding/wizHeaderRTL.bmp deleted file mode 100644 index c7f98e7..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/wizHeaderRTL.bmp and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/branding/wizWatermark.bmp b/helpers/DATA/firefox/trisquel/branding/wizWatermark.bmp deleted file mode 100644 index 971b8c0..0000000 Binary files a/helpers/DATA/firefox/trisquel/branding/wizWatermark.bmp and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/LICENSE b/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/LICENSE deleted file mode 100644 index 10d1ec6..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/LICENSE +++ /dev/null @@ -1,24 +0,0 @@ -Extension built by Ruben Rodriguez using pieces of torbutton as a template - -Copyright (c) 2014, Ruben Rodriguez -Copyright (c) 2013, The Tor Project, Inc. -Copyright (c) 2006 Scott Squires, Oleg Ivanov - -Permission is hereby granted, free of charge, to any person obtaining a -copy of this software and associated documentation files (the "Software"), -to deal in the Software without restriction, including without limitation -the rights to use, copy, modify, merge, publish, distribute, sublicense, -and/or sell copies of the Software, and to permit persons to whom the -Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included -in all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL -THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR -OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -OTHER DEALINGS IN THE SOFTWARE. - diff --git a/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome.manifest b/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome.manifest deleted file mode 100644 index d2eafb9..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome.manifest +++ /dev/null @@ -1,8 +0,0 @@ -content icecathome chrome/content/ - -locale icecathome af chrome/locale/es/ -locale icecathome ak chrome/locale/en/ - -component {a364a9c0-2960-11e4-8c21-0800200c9a66} components/aboutIceCat.js -contract @mozilla.org/network/protocol/about;1?what=icecat {a364a9c0-2960-11e4-8c21-0800200c9a66} - diff --git a/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome/content/aboutIceCat/aboutIceCat.xhtml b/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome/content/aboutIceCat/aboutIceCat.xhtml deleted file mode 100644 index ad7655b..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome/content/aboutIceCat/aboutIceCat.xhtml +++ /dev/null @@ -1,299 +0,0 @@ - - - - - - %htmlDTD; - - %globalDTD; - - %aboutHomeDTD; - - %browserDTD; -]> - - - - &abouthome.pageTitle; - - - - - - - - - - - - -

-
- - -
-
- - - -
-
- -
- -
- -
-
-
-

Enabled privacy features:

-

The GNU IceCat web browser protects your freedom and your privacy!

-
-
-
- -
- - - - - - diff --git a/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome/locale/en/aboutIceCat.dtd b/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome/locale/en/aboutIceCat.dtd deleted file mode 100644 index 55efd56..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome/locale/en/aboutIceCat.dtd +++ /dev/null @@ -1 +0,0 @@ - diff --git a/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome/locale/es/aboutIceCat.dtd b/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome/locale/es/aboutIceCat.dtd deleted file mode 100644 index 2412c09..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/chrome/locale/es/aboutIceCat.dtd +++ /dev/null @@ -1 +0,0 @@ - diff --git a/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/components/aboutIceCat.js b/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/components/aboutIceCat.js deleted file mode 100644 index 6b32cc1..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/components/aboutIceCat.js +++ /dev/null @@ -1,72 +0,0 @@ -/* - -Copyright (c) 2014, Ruben Rodriguez -Copyright (c) 2013, The Tor Project, Inc. -Copyright (c) 2006 Scott Squires, Oleg Ivanov - -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. - -*/ - -// Module specific constants -const kMODULE_NAME = "about:icecat"; -const kMODULE_CONTRACTID = "@mozilla.org/network/protocol/about;1?what=icecat"; -const kMODULE_CID = Components.ID("a364a9c0-2960-11e4-8c21-0800200c9a66"); - -const kAboutIceCatURL = "chrome://icecathome/content/aboutIceCat/aboutIceCat.xhtml"; - -const Cc = Components.classes; -const Ci = Components.interfaces; -const Cu = Components.utils; - -Cu.import("resource://gre/modules/XPCOMUtils.jsm"); - -function AboutIceCat() -{ -} - - -AboutIceCat.prototype = -{ - QueryInterface: XPCOMUtils.generateQI([Ci.nsIAboutModule]), - - // nsIClassInfo implementation: - classDescription: kMODULE_NAME, - classID: kMODULE_CID, - contractID: kMODULE_CONTRACTID, - - // nsIAboutModule implementation: - newChannel: function(aURI) - { - let ioSvc = Cc["@mozilla.org/network/io-service;1"] - .getService(Ci.nsIIOService); - let channel = ioSvc.newChannel(kAboutIceCatURL, null, null); - channel.originalURI = aURI; - - return channel; - }, - - getURIFlags: function(aURI) - { - return Ci.nsIAboutModule.ALLOW_SCRIPT; - } -}; - - -const NSGetFactory = XPCOMUtils.generateNSGetFactory([AboutIceCat]); diff --git a/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/defaults/preferences/preferences.js b/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/defaults/preferences/preferences.js deleted file mode 100644 index e69de29..0000000 diff --git a/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/install.rdf b/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/install.rdf deleted file mode 100644 index 0f8065a..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/abouticecat@gnu.org/install.rdf +++ /dev/null @@ -1,21 +0,0 @@ - - - - - IceCatHome - Ruben Rodriguez - abouticecat@gnu.org - 1.0 - https://127.0.0.1/ - - - - - {ec8030f7-c20a-464f-9b0e-13a3a9e97384} - 30.0 - 10000.0 - - - - diff --git a/helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/Changelog b/helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/Changelog deleted file mode 100644 index c5f270b..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/Changelog +++ /dev/null @@ -1,1426 +0,0 @@ -3.5.1 (2014-04-25) - * Revert https://github.com/EFForg/https-everywhere/pull/134 due to YouTube - breakage. - * Re-enable ability to see all rulesets in enable/disable dialog. - * Added more Debian coverage. - * Fixes to Doubleclick, Guardian, Heroku, Home Depot, HypeMachine, IMDB, - Justin.tv, Kikatek, Mozilla, MyFitnessPal, Pinterest, XKCD, Reuters, - Technet, Tumblr, Wordpress, Yandex, Youtube, Flickr. - * Fix Australis icon positioning: - https://github.com/EFForg/https-everywhere/pull/216 - -chrome-2014.4.25 - * Ruleset fixes (same as 3.5.1) - -chrome-2014.4.16 - * Make Chrome build script compatible with Chrome release scripts. - * Fix disappearing icon: https://github.com/EFForg/https-everywhere/pull/220 - * Fix XKCD images - -chrome-2014.4.14.1 - * Revert back to chrome-2014.1.3 because of bug in Chrome release script. - -chrome-2014.4.14 - * Add SV localization - * Add persistent user-generated rules, thanks to Vijay P.: - https://github.com/EFForg/https-everywhere/pull/60 - * Use onBeforeRedirect for redirect loop detection: - https://github.com/EFForg/https-everywhere/pull/199 - * Remove unneeded onBeforeSendHeaders listener: - https://github.com/EFForg/https-everywhere/pull/172 - * Fix host-only cookie bug: - https://github.com/EFForg/https-everywhere/pull/166 - * Split incognito mode: - https://github.com/EFForg/https-everywhere/pull/165 - * Cleanup pageAction icon code: - https://github.com/EFForg/https-everywhere/pull/173 - * Add and modify some rulesets (same as 3.5) - -3.5 (2014-04-14) - * Merge all non-ruleset changes from 4.0development.16 - * Merge all new/modified rulesets from 4.0development.16 that are - in the Alexa Top 1000 using utils/alexa-ruleset-checker.py. For a full list, - see utils/alexa-logs/07042014.log. - -4.0development.16 (2014-04-14) - * Restore code that loads custom rule files: - https://github.com/EFForg/https-everywhere/pull/156 - * Use loadContext interface to get windows associated with requests - * Reduce annoying logging messages - * Report cert warning pages to SSL Observatory - * Remove SSL Observatory observers when disabled - * Don't set LOAD_REPLACE flag: - https://github.com/EFForg/https-everywhere/pull/134 - * Add script to merge rulesets in Alexa Top 1M, thanks to Claudio MOretti: - https://github.com/EFForg/https-everywhere/pull/149 - * 8 new rules - * 59 modified rules - -4.0development.15 (2014-02-05) - * Replace the single XML ruleset library with an sqlite database of rulesets - that are loaded on demand - - reduces startup time by a factor of 10-20: - https://trac.torproject.org/projects/tor/ticket/10174 - - reduces RAM usage https://trac.torproject.org/projects/tor/ticket/4804 - - Is scalable: https://trac.torproject.org/projects/tor/ticket/6118 - Further analysis in this thread: - https://lists.eff.org/pipermail/https-everywhere/2014-January/001919.html - * Implement a cleanup case to recover from some Observatory UI code bugs that - would leave the Observatory off incorrectly. - https://trac.torproject.org/projects/tor/ticket/10728 - * Fix observatory - private browsing mode interaction - https://trac.torproject.org/projects/tor/ticket/10208 - * Ship 848 new rulesets - * Update cert whitelist - -3.5android.0 (2014-01-31) - * First Firefox for Android release! :D - * Major UI changes for mobile compatibility - * Android channel update URL set to - https://www.eff.org/files/https-everywhere-android-update-2048.rdf - * Updated rulesets: Freenode, Imgur - -3.4.5 (2014-01-03) - * Updated license - * Updated README.md - * Updated contributors list - * Fix a performance bug when re-enabling HTTPS-Everywhere from its menu - * Observatory cert whitelist update - * Updated rules: Atlassian, Brightcove, MIT, Pidgin, Microsoft, Whonix, - Skanetrafiken, Stack-Exchange, Stack-Exchange-mixedcontent - -chrome-2014.1.3 - * Various ruleset fixes - * Various performance improvements, thanks to Nick Semenkovich and Jacob - Hoffman-Andrews! - * Add LRU caching for rules - * Refactor out unused code - * Reload page when rule is disabled - * Upgrade URI.js - * Add fi translation - -3.4.4tbb (2013-12-06) - * Pseudorelease, just for Tor Browser Bundle usage - * Tiny ruleset tweaks (XKCD is back)! - * Create an about:config setting that overrules mixedcontent ruleset disablement - -3.4.3 (2013-12-03) - * Fixes: Cloudfront / Amazon MP3 player, Cornell/Arxiv, FlickR, - AmazonAWS/spiegel.tv - * Disable broken: Barns and Noble, Behance, Boards.ie, Elsevier, Kohls, - OpenDNS, Spin.de, Svenskakyrkan - * Deprecate the ContentPolicy API, fixing a crash bug - lurking since Firefox 20: - https://bugzilla.mozilla.org/show_bug.cgi?id=939180 - * Fix really silly Observatory UI bug that would leave the Observatory off - for non-Tor users after they turned it on - * Update Observatory blacklist - * Bump maxVersion from Firefox 25 to 28. - -4.0development.14 (2013-11-21) - * Deprecate the ContentPolicy API, fixing a crash bug - lurking since Firefox 20: - https://bugzilla.mozilla.org/show_bug.cgi?id=939180 - * Fix really silly Observatory UI bug that would leave the Observatory off - for non-Tor users after they turned it on - * Ship 438 new rulesets - * Update Observatory blacklist - -4.0development.13 (2013-10-04) - * HTTPS Everywhere builds are now deterministic! - * Numerous new and updated rules - -3.4.2 (2013-10-04) - * HTTPS Everywhere builds are now deterministic! - * Global memory leak bug fixes - * Updated rules: Craigslist, Apple.com, Microsoft, CloudFront, UKLocalGov, - Bing, Cengage - * New rules from dev: IPTorrents.com, TvTorrents - -4.0development.12 (2013-09-12) - * Fix clients1.google.com OSCP meltdown - https://trac.torproject.org/projects/tor/ticket/9713 - * Updated rules: ConnMan, Viddler.com, ISC, GNOME, Dozuki, Thingiverse, Box, - ComputerWorld, Makerbot, McClatchy Interactive.com, Mozilla, Ohio State - University, printrbot, Thingiverse, Tradedoubler, XiTi.com, Flameeyes, Open - Clipart Library, Musopen, CERN, FilZilla, Google Services, Linux Foundation, - Debian, Python.org, Ardour, Netmarble, Drexel University, Guifi.net, - net-security.org, University of California, WordPress blogs, Perl.org - * New rules: Akira.org, AntiPolygraph.org, Banu.com, break.com, Click and - Pledge.com, DataCoup.com, linux-sunxi.org, Lockbox.com, PSC.edu, University - of Greifswald, University of Rostock, WIMM.com, ZeusClicks.com, - gayorrents.net, Addison.com.hk, Auto Ad Manager.com, Blutmagie.de, - Brixwork.com, HDtracks.com, hostname.sk, iPXE.org, Linn Records.com, - Navigant Research.com, OpenLDAP.org, Quotes and Sayings.com, Solid-Run.com, - TU-Dresden.de, Tux.Org, Ultrasurf.us, Zamzar.com, chaox.net, digilinux.ru, - iNaturalist.org, IUCNredlist.org, jensge.org, Libre Graphics World.org, - NAB.org, PengPod.com, pythonhosted.org, randombit.net, factorable.net, - JoeyH.name, Acunetix.com, Alex Cabal.com, Altera.com, Commotionwireless.net, - CounterMail.com, dotplex.de, Dyne.org, finalrewind.net, Keelog.com, - Mailinator.com, My Shadow.com, OpenMailBox.org, PwdHash.com, Silent - Sender.com, Standard Ebooks.com, Tarasic.com.tw, Barracuda.com - -4.0development.11 (2013-08-30) - * Notify users who have been accidentally updated from stable to dev - https://trac.torproject.org/projects/tor/ticket/9600 - * Added and updated numerous rules, including Craigslist - * Fixes toolbar button size - https://trac.torproject.org/projects/tor/ticket/9511 - * Declare loop variables with var to avoid global memory leaks - * Updated localizations - -3.4.1 - * Fix typo resulting in variable leak in get_prefs(), thanks to Jérémy - Bobbio - -3.4 - * Do not upgrade stable users to the development branch! - * The previous release moved extension code from the development branch into - the stable branch, and changed many stable rules - -chrome-2013.8.17 - * Urgent bugfix release for - https://trac.torproject.org/projects/tor/ticket/9507 - - release from the stable / 3.0 branch, not master - - don't ship the development ruleset library, it's not ready for prime - time yet - - avoid performance hits from repeatedly re-testing rulesets - - other possible weirdness - -chrome-2013-8.16 - * Includes all fixes from 3.3, 3.3.1, and 4.0development.10 - * This will be the first Chromium release where the bulk of the rules that - are broken because of mixed content will be disabled by default - -4.0development.10 - * Numerous rules added, modified, and deleted - * Added utils/find_rules.py, python script by Osama Khalid to apply HTTPS - Everywhere rules to URLs - * Updated readme to include more dependencies - -3.3.2 - * We merged in a bunch of non-ruleset changes from 4.0development.9: - https://trac.torproject.org/projects/tor/ticket/9480 - (Notable changes from this merge include a rewriting of fetch-source.js, - improvements to the CSS such that the icon changes color when disabled - and shows the number of applied rules when active, fixing bugs in - HTTPSRules.js and ApplicableList.js that led to undefined functions, - and rewriting makexpi.sh to accept a --fast flag.) - * The tickets described below were fixed by the merge from 4.0development.9: - https://trac.torproject.org/projects/tor/ticket/8998 - https://trac.torproject.org/projects/tor/ticket/9374 - * Add a script find_rules.py by Osama Khalid to utils/. It applies HTTPS - Everywhere rules to URLs. - * Add merge-rulesets.py from master to utils/. - * Removed default parameters for a js function that caused breakage - in older versions of FF. - * Changed mixed content blocking in FF to be based on the user's active - content blocking preferences rather than if the FF version is >=23.0. - * [Zurcher_Katonalbank] Add rule - * [LegitScript] www now supports SSL - * [DebianOwnCA] Debian self-signed cert rules - * [Debian] Update rule for non-self-signed domains - * [UKLocalGov] Add havering.gov.uk - * [aeriagames] Use CDN with valid cert - * [spu.ac.th] Disable (https site not found) - * Added rules from mishari for Loxinfo, SPU, Silkspan, Settrade, - Powerbuy, opengarden.com, Naiin, MyHappyOffice, Mirakar, - MarketingOops, Makewebeasy, m2fjob, LandandHouse, Jaymart, - Etravelway, Craigslist, Blognone, TrueCorp, dealfish, 3bbwifi, - thepiratebay, and priceza. - * [Ubuntu] Add rule for ubuntuforums.org - * [EuroBillTracker.xml] Add EuroBillTracker rule - * [wikidot] Exclusion for iframes - * [StockCharts] Add reason for disabling - * [9gag] Disable rule for breaking AJAX. - * [MayFirstPeopleLink] Updated rule - * [Derpiboo.ru] Add rule - * [Fedora Project] Split start - * [Lurkmore.to] Add rule - * [2ch.so] Add rule - * [FSF] Added the status and u subdomains - * [Reddit] Exclude blog - * [Desk.com] Fix - * [Cheezburger] Fix - * Updated debian dependencies in readme - * [Adtech.de] Add exclusion - -3.3.1 - * [Wikimedia] removed mixedcontent - -4.0development.9 - * Includes all fixes from 3.3 - -3.3 - * This major release fixed the following mixed content blocker (MCB) - related bugs in time for Firefox 23: - https://trac.torproject.org/projects/tor/ticket/9196 - https://trac.torproject.org/projects/tor/ticket/8774 - https://trac.torproject.org/projects/tor/ticket/8776 - * In effect, this update disables rulesets that cause mixed content errors - by default, and adds platform="mixedcontent" to 950 new rules. This is - necessary to prevent a massive amount of websites from breaking by default - for our users when Firefox 23 comes out. - * [Internet Archive] Moved to stable - * [Linaro] Default off per webmaster request - * [Applicom] Default off per webmaster request - -chrome-2013.7.10 - * In Chrome version, fixed css, "What is this?" link in popup, and added - favicons to popup (thanks to Jay Weisskopf) - * Includes all fixes from 3.2.4 - -3.2.4 (2013-07-10) - * [Yandex] remove maps from exclusions - * [Amazon Web Services] Add exclusion - https://trac.torproject.org/projects/tor/ticket/8907 - * [Hotmail / Live] Add exclusion - https://trac.torproject.org/projects/tor/ticket/9026 - * [Mozilla] Point labs to mozillalabs.org - https://mail1.eff.org/pipermail/https-everywhere-rules/2013-July/001636.html - * [Yandex] Exclude ll - * [Brightcove] Add exclusion - https://mail1.eff.org/pipermail/https-everywhere-rules/2013-May/001587.html - * [NYTimes] Add exclusion, disabled - * [News Corporation] Exclude 2013 images - https://trac.torproject.org/projects/tor/ticket/9040 - * [imgbox] Fix typo - https://trac.torproject.org/projects/tor/ticket/8690 - -3.2.3 (2013-06-28) - * https://trac.torproject.org/projects/tor/query?group=status&milestone=HTTPS-E+3.2.3 - -chrome-2012.6.4 - * The "factors of 12" chromium beta - * Various ruleset fixes: - https://eff.org/r.5bSj - https://trac.torproject.org/projects/tor/ticket/8584 - https://trac.torproject.org/projects/tor/ticket/8571 - * Disable Myspace by default due to mixed content - -4.0development.8 (2013-06-04) - * Fix broken ruleset dialog in Firefox 22+ - https://trac.torproject.org/projects/tor/ticket/8997 - * The toolbar button chnages to indicate active rulesets: - https://trac.torproject.org/projects/tor/ticket/4886 - * Ship 31 new rulesets - * New translations: Japanese and Sinhala - * Updated translations: Hungarian, Lithuanian, Slovenian - * Ruleset fixes from 3.2.2: - https://eff.org/r.5bSj - * Observatory cert whitelist update - -3.2.2 (2013-05-22) - * Quick turn-around release to unbreak support.apple.com - * Fixes for a number of other ruleset bugs: - https://eff.org/r.5bSj - * Incremental observatory cert whitelist update - -3.2.1 (2013-05-17) - * Implement XHR outstanding request limits to work around TCP connection - exhaustion if the SSL Observatory server is slow or down: - https://trac.torproject.org/projects/tor/ticket/8670 - https://bugzilla.mozilla.org/show_bug.cgi?id=856748 - * Overdue update to the Observatory cert whitelist - * Other known ruleset fixes: EA, Yandex, Apple - https://trac.torproject.org/projects/tor/ticket/8584 - https://trac.torproject.org/projects/tor/ticket/8571 - -4.0development.7 (2013-05-17) - * Implement XHR outstanding request limits to work around TCP connection - exhaustion if the SSL Observatory server is slow or down: - https://trac.torproject.org/projects/tor/ticket/8670 - https://bugzilla.mozilla.org/show_bug.cgi?id=856748 - * Add a note hinting users how to toggle rulesets (thanks to Pavel Kazakov) - https://trac.torproject.org/projects/tor/ticket/4967 - * Ship all fixes from 3.2: - https://eff.org/r.b9Qc - * Other known ruleset fixes: EA, Yandex - https://trac.torproject.org/projects/tor/ticket/8571 - * Ship 1308 new rulesets! - * Numerous new and updated translations - -chrome-2012.4.30 - * The "May day somewhere" chromium beta - * Ship all ruleset bugfixes from the Firefox 3.2 release: - https://eff.org/r.b9Qc - * Flag/disable mixed content rulesets: Apple Support, BBC, Dell support, - FBI, Wordpress, Zend - https://eff.org/r.1bQt - * Disable VistaX64 - https://trac.torproject.org/projects/tor/ticket/8801 - -3.2 (2013-04-25) - * Related trac bugs for this release: - https://eff.org/r.b9Qc - * New: MoinMoin - * Fixes: Adobe, Bahn.de, Cloudfront, Dell, Droplr, FBI, Google Maps, - Joomla, Juno Download, Lenovo, New York Times, SEC, Soundcloud, - Tweakers.net, Univ Strasbourg, Vkontakte, Zend - * Disable broken: AirAsia, Netvibes, Newgrounds, Pirate Bay, Russia Today, SVT, - Wolfram Alpha - * Maybe fixed: Quantcast/Tumblr: - https://trac.torproject.org/projects/tor/ticket/8406 (maybe fixed) - * Sync languages and translations from the master branch. - * New languages: Finnish, Norwegian (Bokmål), Slovak, Bulgarian. - * All HTTPS Everywhere users will be now prompted about using the - SSL Observatory. - -chrome-2012.3.7 - * The "cookies uncrumbled" chromium beta - * Ship all ruleset bugfixes from Firefox 3.1.4 - * Stop securing HTTP (non-S) cookies in weird cases!!! - https://trac.torproject.org/projects/tor/ticket/7492 - -4.0development.6 (2013-03-07) - * Disabled 26 broken or problematic rulesets - * Ship all ruleset fixes from 3.1.4 - * Ship 232 new rulesets - * Numerous ruleset fixes - * Update cert whitelist - -3.1.4 (2013-03-07) - * The circles are stable releasee - * Fixes: - AmazonAWS/Atomsforpeace.info, Disqus, Eventbrite, ImageShack.us, MySQL, - NuGet, NYTimes, Ooyala, Opera, Scientific American, SourceForge, - University of Southampton, UserVoice, WebType, Zendesk - https://trac.torproject.org/projects/tor/ticket/8056 - https://trac.torproject.org/projects/tor/ticket/8349 - https://trac.torproject.org/projects/tor/ticket/7690 - https://trac.torproject.org/projects/tor/ticket/8025 - https://trac.torproject.org/projects/tor/ticket/8077 - https://trac.torproject.org/projects/tor/ticket/8199 - https://trac.torproject.org/projects/tor/ticket/8198 - * Disable broken: - American Public Media (for real this time), Asymmetric Publications, - Salsa Labs, Vimeo - https://trac.torproject.org/projects/tor/ticket/7650 - https://trac.torproject.org/projects/tor/ticket/8280 - https://trac.torproject.org/projects/tor/ticket/7569 - * Update cert whitelist - -chrome-2013.1.18 - * "Internet Freedom" chromium beta - * Import all ruleset fixes from Firefox 3.1.3 - -4.0development.5 (2013-1-18) - * Internet Freedom Day development release - * Fix the implementation of safeToSecureCookie - - Get https://trac.torproject.org/projects/tor/ticket/7491 right(er) - - Fix https://trac.torproject.org/projects/tor/ticket/7855 - * Fix a ruleset processing bug, which would prevent - from matching x.y.z.com - * Ship all ruleset fixes from 3.1.2 and 3.1.3 - - Except Etsy, where we're trying to fix rather than disable the ruleset - https://trac.torproject.org/projects/tor/ticket/7774 - * Ship 354 new rulesets - * Update cert whitelist - * Update translations: Korean, Polish, French - -3.1.3 (2013-1-18) - * Internet Freedom Day stable bugfix release - * Fixes: CloudFront/Spotify, AmazonAWS (Amazon MP3s and product images), Libav, - Google Maps, UserEcho - https://trac.torproject.org/projects/tor/ticket/7931 - https://trac.torproject.org/projects/tor/ticket/7888 - https://trac.torproject.org/projects/tor/ticket/7594 - https://trac.torproject.org/projects/tor/ticket/7539 - https://trac.torproject.org/projects/tor/ticket/7698 - * Disable broken: Coursera, EBay, Etsy, OpenOffice, Ping.fm, Pinterest :( - https://trac.torproject.org/projects/tor/ticket/7336 - https://trac.torproject.org/projects/tor/ticket/7825 - https://trac.torproject.org/projects/tor/ticket/7774 - https://trac.torproject.org/projects/tor/ticket/7695 - https://trac.torproject.org/projects/tor/ticket/7777 - https://trac.torproject.org/projects/tor/ticket/7865 - * Update cert whitelist - -3.1.2 (2013-1-2) - * Release 3.1.2, since 3.1.1 was accidentally mis-tagged - * Fixes for: AmazonAWS/Datawrapper, Cachefly, Cloudfront/C-SPAN, Hetzner.de - KeyDrive/Snapnames, QT, openDesktop, OpenTTD, WhiskeyMedia - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-December/001432.html - https://trac.torproject.org/projects/tor/ticket/7608 - https://trac.torproject.org/projects/tor/ticket/7567 - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-December/001432.html - https://trac.torproject.org/projects/tor/ticket/7560 - https://trac.torproject.org/projects/tor/ticket/7796 - * Disable broken: FlossManuals, Pastebin, Poste.it, Ustream, TED, AusGamers - https://trac.torproject.org/projects/tor/ticket/7731 - https://trac.torproject.org/projects/tor/ticket/7850 - https://trac.torproject.org/projects/tor/ticket/7840 - https://trac.torproject.org/projects/tor/ticket/7548 - * Increase Observatory deployment (65%->85%) - * Update cert whitelist - -chrome-2012.12.17 - * The "overdue bugfixes" chromium beta - * Ship all ruleset bugfixes from Firefox 3.1 and 3.0.4 - * Additional fixes for: AmazonAWS/Datawrapper, Cachefly, Cloudfront/C-SPAN, - Hetzner.de, KeyDrive/Snapnames, QT - * Additionally disable: Automattic - -4.0development.4 (2012-12-17) - * Fix nasty bug that prevented Firefox downloads from Mozilla's CDN - https://trac.torproject.org/projects/tor/ticket/7717 - * Fix download from qt-project.org - * Ship 72 new rulesets - * Include all rulset fixes from 3.1 - -3.1 (2012-12-12) - * Hacky solution to a very nasty bug in which directives - would cause cookies to be flagged as secure even if they were set from - HTTP origins! - https://trac.torproject.org/projects/tor/ticket/7491 - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-November/001397.html - * Fixes: Akamai, Biomed central, BYU, Cachefly / Topix, DuckDuckGo, Focus.de, - Fortum, Mashable, Mail.ru, MayFirst/People Link, MIT, Rackspace, - Salsa Labs, SurveyMonkey, Tumblr - * Disable: Adtech.de, AllthingsD American Public Media, Dafont, MediaFire, - Verizon, vk.com, Wired, Conde Nast - * Observatory-only translations into Hebrew and Croatian - * Offer the SSL Observatory popup to a larger cohort of users - -4.0development.3 (2012-12-3) - * Hacky solution to a very nasty bug in which directives - would cause cookies to be flagged as secure even if they were set from - HTTP origins! - https://trac.torproject.org/projects/tor/ticket/7491 - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-November/001397.html - * Ship 245 new rulesets - * Fixes include: Internet Archive, Rackspace - * Disable broken: American Public Media, Verizon, Nieuwsblad.be, MyOpenID - * (Plus fixes and rulesets disabled between 4.0dev2 and 3.0.4) - * Observatory-only translations: Croatian, Hebrew - -3.0.4 (2012-11-9) - * Fixes: - ACLU, Amazon, Barnes & Noble, CharityNavigator, Cloudfront/Turntable.fm, - Coursera, itella.fi, posti.fi, Uservoice - https://trac.torproject.org/projects/tor/ticket/7336 - https://trac.torproject.org/projects/tor/ticket/7273 - https://trac.torproject.org/projects/tor/ticket/7227 - * Disable broken: - Asterisk, Boston Globe (separated out from NYTimes.com), Extabit, Gawker, - Google Services (Followers widget), NPR, SF.se, SonyMusic, Statcounter, WebType - https://trac.torproject.org/projects/tor/ticket/7270 - https://trac.torproject.org/projects/tor/ticket/7243 - https://trac.torproject.org/projects/tor/ticket/7361 - https://trac.torproject.org/projects/tor/ticket/7120 - https://trac.torproject.org/projects/tor/ticket/7278 - https://trac.torproject.org/projects/tor/ticket/7363 - https://trac.torproject.org/projects/tor/ticket/7294 - * No longer cacert: lawblog.de - * Offer the SSL Observatory popup to a larger cohort of users - * Update translations: Spanish, Russian, Turkish, Swedish - -chrome-2012.10.31 - * The "ghosts and goblins" chromium alpha - * Work around a nasty bug that was affecting some high-volume Live Youtube streams - (but not other live YouTube streams) - https://trac.torproject.org/projects/tor/ticket/7127 - * Other Fixes: - AdaCore, Akamai/MTV3 Katsomo, Akamai/HP, Atlassian, Bahn.de, MySQL, NPR, PBS, - Phronoix Media/Openbenchmarking, SSRN, Spoki - https://trac.torproject.org/projects/tor/ticket/7219 - https://trac.torproject.org/projects/tor/ticket/7180 - https://trac.torproject.org/projects/tor/ticket/7135 - https://trac.torproject.org/projects/tor/ticket/7206 - https://trac.torproject.org/projects/tor/ticket/7198 - * Disable broken/buggy: - CBS/Last.fm, Citibank Australia, Bytename, HP, NIFTY, Microchip, MyOpenID, NttDocomo - https://trac.torproject.org/projects/tor/ticket/6587 - https://trac.torproject.org/projects/tor/ticket/7226 - https://trac.torproject.org/projects/tor/ticket/7111 - https://trac.torproject.org/projects/tor/ticket/7161 - https://trac.torproject.org/projects/tor/ticket/7114 - https://trac.torproject.org/projects/tor/ticket/7138 - https://trac.torproject.org/projects/tor/ticket/7107 - -3.0.3 (2012-10-29) - * Work around a nasty bug that was affecting some high-volume Live Youtube streams - (but not other live YouTube streams) - https://trac.torproject.org/projects/tor/ticket/7127 - * Other Fixes: - AdaCore, Akamai/MTV3 Katsomo, Akamai/HP, Atlassian, Bahn.de, DemocracyNow, MySQL, NuGet, - PBS, Phronoix Media/Openbenchmarking, SSRN, Spoki - https://trac.torproject.org/projects/tor/ticket/7219 - https://trac.torproject.org/projects/tor/ticket/7180 - https://trac.torproject.org/projects/tor/ticket/7135 - https://trac.torproject.org/projects/tor/ticket/7206 - https://trac.torproject.org/projects/tor/ticket/7198 - * Disable broken/buggy: - CBS/Last.fm, Citibank Australia, Bytename, HP, NIFTY, Microchip, MyOpenID, NttDocomo - https://trac.torproject.org/projects/tor/ticket/6587 - https://trac.torproject.org/projects/tor/ticket/7226 - https://trac.torproject.org/projects/tor/ticket/7111 - https://trac.torproject.org/projects/tor/ticket/7161 - https://trac.torproject.org/projects/tor/ticket/7114 - https://trac.torproject.org/projects/tor/ticket/7138 - https://trac.torproject.org/projects/tor/ticket/7107 - * Updated translations: - Greek, Russian, Latvian - * New translation: - Turkish - * Offer the SSL Observatory popup to a larger cohort of users - -4.0development.2 (2012-10-25) - * Ship 67 new rulesets - * Fix broken logouts from non-US Google accounts: - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-October/001347.html - * Other fixes: - Microsoft (Bing login button), ZeniMax, Ubuntuone, TrueCrypt, Springer, - Optical Society, IMDB, Facebook, EzineArticles, Broadband Reports, Apache, - Akamai (exclude Zynga content to prevent breakage of some Zynga games), - Costco, Atlassian, Akamai/MTV3 Katsomo - * Disable broken/buggy: - HP, Bytename, NIFTY, Microchip, NttDocomo - * Updated translations: - Greek, Russian, Latvian - * New translation: - Turkish - -chrome-2012.10.18 - * The "even more perfect" chromium alpha - * Fixes from the last two Firefox releases: - Microsoft (Bing login button), ZeniMax, Ubuntuone, TrueCrypt, Springer, - Optical Society, IMDB, Facebook, EzineArticles, Broadband Reports, Apache, - Akamai (exclude Zynga content to prevent breakage of some Zynga games), - Costco Akamai/SVTplay.se, Bahn.de, European Southern Observatory, IEEE, - Indeed, Java, Librivox, Pinterest, New York Times, Springer, Vimeo, - Shannon Health, O'Reilly Media - * Also fix: DemocracyNow, NuGet - * Disable: NIFTY - -3.0.2 (2012-10-16) - * Some fixes that should have shipped in 3.0.1, but actually didn't: - European Southern Observatory, Indeed, LibriVox - * New fixes: - Microsoft (Bing login button), ZeniMax, Ubuntuone, TrueCrypt, Springer - (fix / reenable), Optical Society, IMDB, Facebook, EzineArticles, - Broadband Reports, Apache, Akamai (exclude Zynga content to prevent - breakage of some Zynga games), Costco - -4.0development.1 (2012-10-11) - * Merge the 4.0 branch, which ships 884 new rulesets and expands - hundreds of others - -3.0.1 and 4.0development.1: - * Fixes: adition.com, Akamai/SVTplay.se, Bahn.de, European Southern Observatory, - IEEE, Indeed, Java, Librivox, Pinterest, New York Times, Springer, Vimeo, - Shannon Health, O'Reilly Media - https://trac.torproject.org/projects/tor/ticket/7080 - https://mail1.eff.org/pipermail/https-everywhere/2012-October/001583.html - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-October/001339.html - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-October/001343.html - * Disable broken: Springer - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-October/001340.html - * Updated translations: Basque, Hungarian, Traditional Chinese - -chrome-2012.10.9 - * The "prepare for liftoff" chromium alpha - * Add an experimental Spanish translation! - * Fixes: - Akamai/CNN, GO.com/ABC, AWS/Amazon Zeitgeist MP3 player, AWS/Spiegel.tv, - Technology Review, Cloudfront/Tunein, Akamai/Discovery Channel, Beyond - Security, OCaml, Gentoo, Nokia, Widgetbox.com, Squarespace, 1and1 - Internet, American Physical Society, Baker and Taylor, Barnes and Noble, - Cloudfront, Trustguard, IEEE, Mozilla, Nrelate, OpenDNS, RFC Editor, - Symantec, Valve, Zenimax-Media - * Disable buggy: Web.de, AJC.com, Feross, Bestofmedia, Grooveshark, Gearhog - -3.0 (2012-10-04) - * Since version 2.x: - * 1,455 new active rulesets - * UI improvements: - - right-click to view ruleset source in the config window - - translate some untranslated menus - - better icons in a few places (breaking/redirecting rules, - context button) - * Numerous improvements to the SSL Observatory internals, including cached - submissions on hostile networks, better Tor and Convergence integration, - and a new setting to control self-signed cert submission - * New translations: Basque, Czech, Danish, French, Greek, Hungarian, - Italian, Korean, Malaysian, Polish, Slovak, Turkish, - Traditional Chinese - * Relative to 3.0development.8: - * Only promote the Decentralized SSL Observatory to 5% of non-Tor users - * Update the SSL Observatory whitelist of common cert chains - * Fixes, mostly in the CDN/media playback department: - Akamai/CNN, GO.com/ABC, AWS/Amazon Zeitgeist MP3 player, - AWS/Spiegel.tv, Technology Review, Cloudfront/Tunein, - Akamai/Discovery Channel, Beyond Security, OCaml, Gentoo, - Nokia, Widgetbox.com, Squarespace - https://trac.torproject.org/projects/tor/ticket/4199 - https://trac.torproject.org/projects/tor/ticket/6871 - https://trac.torproject.org/projects/tor/ticket/6992 - https://trac.torproject.org/projects/tor/ticket/7000 - https://trac.torproject.org/projects/tor/ticket/7020 - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-October/001324.html - * Disable buggy: Web.de, AJC.com, Feross, Bestofmedia - * Remove a lot of off-by-default rulesets from the code, since they have - some costs in terms of startup speed and RAM usage - -3.0development.8 (2012-10-03) - * 3.0 stable release candidate 1 - * Fixes: AOL, 1and1 Internet, American Physical Society, Antispam.de, BBC, - Baker and Taylor, Barnes and Noble, BitTorrent, CacheFly, - CheezBurger, Cleverbridge, Cloudfront, Facebook, Trustguard, - IEEE, Link Plus Catalog, Microsoft, Mozilla, News Corp, Nrelate, - OpenDNS, PassThePopcorn, Pidgin, Piriform, RFC Editor, Symantec, - Telegraph, Transmission, Valve, Zenimax-Media, - kirjoitusalusta.fi, uTorrent - * Reenable: CodingTeam - * Disable broken: GrooveShark, Gearhog, Paper.li, Soton.ac.uk, SVT.se - * Various translation improvements - * Support a new platform="mixedcontent" attribute - * Switch to the actual HTTPS Everywhere logo for the context menu button - - -chrome-2012.9.21 - * Workaround for breakage in Amazon Look Inside the Book (via Cloudfront) - https://trac.torproject.org/projects/tor/ticket/6848 - * Replace jsURI with URI.js, fixing a number of bugs in the Chrome port - - https://trac.torproject.org/projects/tor/ticket/6197 - - Also breakage on other random pages like - http://venturebeat.com/2012/09/13/how-do-not-track-could-destroy-the-internet-as-you-know-it/ - * Fixes: AOL, Antispam.de, BBC, BitTorrent, Facebook, Gearhog, LinkPlus - Catalog, Microsoft, Mother Jones, Mozilla, Office.co.uk, OpenDNS, - PassThePopcorn, Piriform, WhatCD, uTorrent - * Disable broken: Paper.li, SVT.se, Soton.ac.uk - * Reenable: Referly - -chrome-2012.9.10 - * The "just add eleven" chromium alpha - * Time to test the updating mechanism from direct -> Chrome Web Store - installs - * Ruleset changes in addition to those in FF 3.0dev7: - * Fixes: News Corp, Cheezburger, CacheFly, Cleverbridge, Nrelate, - Pidgin, Telegraph - * Improvements: Global Marketing Strategies - - -3.0development.7 (2012-09-07) - * Add a cleanup routine for profiles affected by a 2.2 defaults bug: - https://mail1.eff.org/pipermail/https-everywhere/2012-August/001511.html - * Make Decentralized SSL Observatory-Tor interactions saner in the wake of - Torbutton transitioning to "always on" (we now detect a local Tor instance - on port 9050 and use it) - https://trac.torproject.org/projects/tor/ticket/6541 - * Fix some other bugs in the Observatory proxy-wrangling code - * Disable broken/buggy rulesets: Voxel, Mapquest, Imgur, Justin.tv, - F-Secure, Valve, SpringFiles, openDesktop, syllabushare, Playboy, FAZ - * Fixes / Improvements: Eloqua, OpenDNS, Mashable, News Corp, Sony, Yahoo!, - Examiner.com, FBI, Adtechus, Mozilla, Dreamhost, Lenovo / Thinkpad, Pirate - Party, Scribd - * New Czech translation - -3.0development.6 (2012-08-16) - * Prevent ruleset bugs from crashing the UI - https://trac.torproject.org/projects/tor/ticket/6280 - * Fix a lack-of-translation bug in the context menu - https://trac.torproject.org/projects/tor/ticket/6516 - (although coverage will probably be patchy for a while) - * Add hooks to use our new Firefox internal rewrite API, if the browser - has it (this should address - https://trac.torproject.org/projects/tor/ticket/5477 - https://trac.torproject.org/projects/tor/ticket/3190 - ) - * Fixes: OpenStreetMap, Okcupid, Yandex, Valve, Atlantic Media, AWS, - XDA developers, Tumblr, MetaPress, Mixpanel, VideoLAN, JBoss, - Yourhosting, Pypi, QT, Imgur, Scientific American, - Chronicle, ISOC, Wikimedia, Xmission, Tumblr, OpenDNS - Mobygames, Telegraph Media, Dailymotion, RFC-editor, US gov, - Discogs, Costco, Brightcove, PirateParty, BrownPaperTickets - * Improvements: Apple, MIT - * Disable buggy/broken: ZDNet, Globe and Mail, Malwarebytes, Plenty of Fish, - Raymond.CC, Blip.tv, Governo Portugês, adf.ly, - McAfee :( :( :( - * New translations: Italian, Turkish, Traditional Chinese, Korean - * Numerous updated translations - -chrome-2012.8.16 - * The "exponential bifurcation" alpha - * Change the update URI to the specific one blessed by the Chrome Web Store - (they tell us that, despite appearances, the request will actually be - https) - -chrome-2012.8.15 - - * The "Happiness in the Cloud" Alpha - * We still suffer from the horrible Appcache bug, so this is still an alpha: - https://trac.torproject.org/projects/tor/ticket/5585 - https://code.google.com/p/chromium/issues/detail?id=121325 - * Enslave ourselves to the Chrome Web Store, because Google has made it - very tricky to install .crx files in Chrome version 21 - https://code.google.com/p/chromium/issues/detail?id=133818 - https://code.google.com/p/chromium/issues/detail?id=128748 - * Do a better job of displaying the context menu, especially for error pages: - https://trac.torproject.org/projects/tor/ticket/6085 - (should be fixed for real this time) - * Fancier Chrome context menus by Jay Weisskopf - * Fixes: OpenStreetMap, Okcupid, Yandex, Valve, Atlantic Media, AWS, - XDA developers, Tumblr, MetaPress, Mixpanel, VideoLAN, JBoss, - Yourhosting, Pypi, QT, Imgur, Scientific American, - Chronicle, ISOC, Wikimedia, Xmission, Tumblr, OpenDNS - Mobygames, Telegraph Media, Dailymotion, RFC-editor, US gov, - Discogs, Costco, Brightcove, PirateParty, BrownPaperTickets, - * Improvements: Apple, MIT - * Disable buggy/broken: ZDNet, Globe and Mail, Malwarebytes, Plenty of Fish, - Raymond.CC, Blip.tv, Governo Portugês, adf.ly - McAfee :( :( :( - -3.0development.5 (2012-06-26) - * Fix the enable/disable button in Firefox 15 - https://trac.torproject.org/projects/tor/ticket/6212 - * Fixes: GetFirebug, Gentoo, Ebay, Yandex (extensive), Maxmind, Blogger, HP, - Jottit - * Disable broken: Project Syndicate, Alton Towers, Network for Good - https://trac.torproject.org/projects/tor/ticket/6222 - * The Decentralized SSL Observatory client now saves up some certificates if - the network blocks or MITMs attempts to submit them. - -chrome-2012.6.21 - * The Autonomous Greenland Beta Release - * Allow rulesets to be toggled when the page breaks completely - https://trac.torproject.org/projects/tor/ticket/6085 - * Fixes: Github, Gentoo, HP, Maxmind, Orange - * Disable broken: Alton Towers, Project Syndicate - * Only ship 1 new ruleset (we're in a freeze) - -3.0development.4 (2012-06-18) - * Fix compatibility bug with Firefox 15: - https://trac.torproject.org/projects/tor/ticket/5893 - * Ship 217 new rulesets (frozen; new rulesets now have to wait until 4.0 - development) - * Fixes: numerous, including: Boxee, CiteULike, MozillaMessaging, - Yandex, Demonoid, Pirate Party, Gentoo, NYTimes, Microsoft, - Wikipedia, Lenovo, MyWOT - https://trac.torproject.org/projects/tor/ticket/5912 - https://trac.torproject.org/projects/tor/ticket/6091 - https://trac.torproject.org/projects/tor/ticket/5703 - https://trac.torproject.org/projects/tor/ticket/5931 - https://trac.torproject.org/projects/tor/ticket/5958 - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-June/001189.html - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-June/001190.html - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-May/001186.html - https://mail1.eff.org/pipermail/https-everywhere/2012-May/001433.html - * Disable broken: MarketWatch, Disqus, Magento, Lavasoft, - Typepad/Say Media, Thomas Cook, Thomson Reuters clients, - Science Daily, BinRev, Ikea, Interpol - https://trac.torproject.org/projects/tor/ticket/5899 - https://trac.torproject.org/projects/tor/ticket/5496 - -chrome-2012.6.18 - * The Divisible By Six Chromium Beta Release - * Ship 444 new Rulesets - * Fixes: numerous, including: Boxee, omgubuntu, Microsoft - https://trac.torproject.org/projects/tor/ticket/5899 - https://trac.torproject.org/projects/tor/ticket/5703 - https://trac.torproject.org/projects/tor/ticket/5931 - https://trac.torproject.org/projects/tor/ticket/5958 - * Disable broken: Disqus, uTorrent, Thomas Cook, Thomson Reuters clients, - Science Daily, Say Media, BinRev, Ikea, Interpol - * Not fixed: - The horrible appcache / CSS bug: - https://trac.torproject.org/projects/tor/ticket/5585 - Occasional extension compatibility glitches: - https://trac.torproject.org/projects/tor/ticket/5731 - -3.0development.3 (2012-05-11) - * Ship 361 new rulesets - * Do a better job of disabling CACert rulesets by default on non-CAcert - platforms - * Fix for compatibility with some other Firefox extensions: - https://trac.torproject.org/projects/tor/ticket/5682 - * Fixes: Wordpress stylesheets, USENIX, Mozilla, Opera, Valve, and many - others - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-April/001105.html - https://trac.torproject.org/projects/tor/ticket/5831 - * Disable broken: Pandora, Miranda IM, Pastebin.ca - https://trac.torproject.org/projects/tor/ticket/5804 - https://trac.torproject.org/projects/tor/ticket/5776 - * Testing our new more automated release process - -chrome-2012.5.1 - * The May Day Chromium Beta Release - * Ship 886 new rulesets (thanks mostly to Negres!) - * Fix two downgrade attacks that might allow attackers to deny HTTPS - Everywhere protection for cookies on some domains. - https://trac.torproject.org/projects/tor/ticket/5676 - https://trac.torproject.org/projects/tor/ticket/2199 - * More efficient ruleset storage shrinks the .crx download by a factor of - about 4 (thanks fauxfaux) - https://trac.torproject.org/projects/tor/ticket/5275 - * Disable buggy rulesets: IBM, Scribd, Wunderground, ReadWriteWeb, - Pastebin.ca - https://trac.torproject.org/projects/tor/ticket/5344 - https://trac.torproject.org/projects/tor/ticket/5435 - https://trac.torproject.org/projects/tor/ticket/5630 - * Ruleset fixes: Debian, Kohls, Malwarebytes, Yandex, Wikipedia, Mises.org, - OpenDNS, Wizards of the Coast, Lenovo, Barnes and Noble, - Pastebin.ca - https://trac.torproject.org/projects/tor/ticket/5509 - https://trac.torproject.org/projects/tor/ticket/5491 - https://trac.torproject.org/projects/tor/ticket/5303 - * Numerous other improvements, fixes, and exciting new bugs :) - - -3.0development.2 (2012-04-26) - * License change: the tree now includes some code from Convergence, which - is GPL v3+. Other code remains licensable as GPLv2+ - * Ship 696 new rulesets (!!!), thanks to a lot of amazing work by Negres - * Fix a downgrade attack that might allow attackers to deny HTTPS - Everywhere protection for cookies on some domains. - https://trac.torproject.org/projects/tor/ticket/5676 - * Fix a weird wrong DOM-origin bug that occurred while redirects were in - progress (this might have security implications, although we are unsure - if it was exploitable). - https://trac.torproject.org/projects/tor/ticket/5477 - * Ruleset fixes: Debian, Kohls, Malwarebytes, Yandex, Wikipedia, Mises.org, - OpenDNS, Wizards of the Coast, Lenovo, Barnes and Noble - https://trac.torproject.org/projects/tor/ticket/5509 - https://trac.torproject.org/projects/tor/ticket/5491 - https://trac.torproject.org/projects/tor/ticket/5303 - * Stumble across more horrible security holes in the Verizon website: - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-February/001003.html - * Disable the Gentoo ruleset on non-CAcert platforms - * Disable buggy rulesets: IBM, Scribd, Wunderground, ReadWriteWeb :( :( :( - https://trac.torproject.org/projects/tor/ticket/5344 - https://trac.torproject.org/projects/tor/ticket/5435 - https://trac.torproject.org/projects/tor/ticket/5630 - * Better cohabitation between the Decentralized SSL Observatory and - Convergence - * Separate Observatory option to control self-signed cert submission - * Numerous other ruleset enhancements, fixes, and probably exciting new bugs - in Negres's ruleset changes - -3.0development.1 (2012-03-14) - * By default, use https://google.co.cctld instead of - encrypted.google.com - https://trac.torproject.org/projects/tor/ticket/5152 - * Add an optional ruleset to use https://www.google.com - instead of encrypted.google.com, too - * Add a new context menu in the rulesets list: - - toggle a ruleset - - reset it to the default - https://trac.torproject.org/projects/tor/ticket/3762 - - view the ruleset source - https://trac.torproject.org/projects/tor/ticket/5237 - * Show the Observatory popup to all users once, not just TorButton users - * Four new translations: Basque, French, Polish, Slovak - * Ship 125 new rulesets - -chrome-2012.3.14 - * Ship 109 new rulesets since the last Chromium release - * Add an optional ruleset to search on https://www.google.com - instead of encrypted.google.com - * Switch non-US google searches to country sites by default - * Better chrome context UI - -2.2.3 (2012-09-25) - * Workaround for breakage in Amazon Look Inside the Book (via Cloudfront) - https://trac.torproject.org/projects/tor/ticket/6848 - * Fix logout for AOL users - * Other fixes: PassThePopcorn, WhatCD, Antispam.de, RFCeditor, - Weatherspark / GoogleMaps - * Disable broken: SVT.se - -2.2.1 (2012-08-17) - * Fix a configuration-parsing bug in 2.2 that would - ignore default_off rules if this was a first install - https://mail1.eff.org/pipermail/https-everywhere/2012-August/001511.html - * Add a cleanup routine for profiles affected by that bug. - -2.2 (2012-08-15) - * Prevent ruleset bugs from crashing the UI - https://trac.torproject.org/projects/tor/ticket/6280 - * Fix the enable/disable button in Firefox 14 - https://trac.torproject.org/projects/tor/ticket/6212 - * Fix a nasty bug in the optional "Search www.google.com" ruleset: - https://gitweb.torproject.org/https-everywhere.git/commitdiff/50ca41a1e189ef8383781f803e51ec7a06688a3b - * Disable buggy/broken: ZDNet, Globe and Mail, Blip.tv, Governo Portugês, - Alton Towers, McAfee :( :( :( - * Fixes: Yandex, Wikipedia, PirateParty, JBoss, Gentoo - * Hopefully the last 2.x release before 3.0 stable - -2.1 (2012-06-18) - * Fix context menu breakage when URIs lack a host - * Fixes: CiteULike, MozillaMessaging, Yandex, Demonoid, Pirate Party, - Gentoo, NYTimes, Microsoft, Wikipedia, Lenovo - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-June/001189.html - https://trac.torproject.org/projects/tor/ticket/6091 - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-June/001190.html - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-May/001186.html - https://mail1.eff.org/pipermail/https-everywhere/2012-May/001433.html - * Disable broken: MarketWatch, Disqus, Magento, Lavasoft, Project Syndicate, - Typepad/Say Media - https://trac.torproject.org/projects/tor/ticket/5899 - https://trac.torproject.org/projects/tor/ticket/5496 - -2.0.5 (2012-05-16) - * Rebuild 2.0.4 without a bug in the release scripts that prevented all the - rulesets from being absent - -2.0.4 (2012-05-16) - * Fix for compatibility with some other Firefox extensions: - https://trac.torproject.org/projects/tor/ticket/5682 - * Fixes: Wordpress stylesheets, USENIX, Mozilla, Opera, Indymedia - https://trac.torproject.org/projects/tor/ticket/5905 - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-April/001105.html - * Disable broken: Pandora, Miranda IM, Pastebin.ca, PaidContent - https://trac.torproject.org/projects/tor/ticket/5804 - https://trac.torproject.org/projects/tor/ticket/5776 - - -2.0.3 (2012-04-26) - - * Fix a downgrade attack that might allow attackers to deny HTTPS - Everywhere protection for cookies on some domains. - https://trac.torproject.org/projects/tor/ticket/5676 - * Minor redirection mechanism fixes - * Fixes: WordPress, Yandex, OpenDNS, Via.me/AWS - * Improvements: Mozilla - * Disable broken: ReadWriteWeb - -2.0.2 (2012-04-19) - - * Fix a weird wrong DOM-origin bug that occurred while redirects were in - progress (this might have security implications, although we are unsure - if it was exploitable). - https://trac.torproject.org/projects/tor/ticket/5477 - * By default, use https://google.co.cctld instead of - encrypted.google.com - https://trac.torproject.org/projects/tor/ticket/5152 - * Add an optional ruleset to use https://www.google.com - instead of encrypted.google.com, too - * Ruleset fixes: Debian, Kohls, Malwarebytes, Yandex, Wikipedia, Mises.org, - OpenDNS, Wizards of the Coast, Lenovo, Barnes and Noble - https://trac.torproject.org/projects/tor/ticket/5509 - https://trac.torproject.org/projects/tor/ticket/5491 - https://trac.torproject.org/projects/tor/ticket/5303 - * Stumble across more horrible security holes in the Verizon website: - https://mail1.eff.org/pipermail/https-everywhere-rules/2012-February/001003.html - * Disable the Gentoo ruleset on non-CAcert platforms - * Disable buggy rulesets: IBM, Scribd, Wunderground :( :( :( - https://trac.torproject.org/projects/tor/ticket/5344 - https://trac.torproject.org/projects/tor/ticket/5435 - https://trac.torproject.org/projects/tor/ticket/5630 - -2.0.1 (2012-02-27) - * 2.0 is now Stable! - * Fix tiny settings window on some versions of Windows: - https://trac.torproject.org/projects/tor/ticket/5197 - * Fix drop down menu bug for the non-English versions of the UI - * Added Farsi and Arabic translations - * Disable Netflix, which was demonstrating a lot of breakage - * Improvements: Wikipedia - * Fixes: Google, Samba - * Ship 4 new rulesets since 2.0development.6 - (404 new rulesets since 1.2.2!) - * Check ruleset grammaticity with xmllint/RelaxNG - -chrome-2012.2.27 - * Split Google Translate out of the Google APIs rule, and turn it off by - default on Chrome only: - Fixes https://trac.torproject.org/projects/tor/ticket/5196 - * Ship 19 new rulesets since last Chromium release - -chrome-2012.2.9 - * make rulesets elements work in the Chrome version - https://trac.torproject.org/projects/tor/ticket/5042 - (also disable the LinkedIn ruleset) - * Support for Google Sorry - * 6 new rulesets - -2.0development.6 (2012-02-08) - * Fix a nasty UI crash bug on Windows - https://trac.torproject.org/projects/tor/ticket/5020 - * Ruleset fixes: Google Video, Yandex, LDS - https://trac.torproject.org/projects/tor/ticket/5026 - https://trac.torproject.org/projects/tor/ticket/5042 - * Disable problematic LinkedIn ruleset - * An experimental ruleset for the Google "Sorry" page - * Improved Nederlands translation - * Ship 6 new rulesets - -chrome-2012.02.06{,.01} - * First "Official" EFF alpha Chrome release - (Thanks to Mike Perry and Aaron Swartz for leading the porting effort!) - * Installable on Chrome|Chromium 18+ - * Two point versions, to test the autoupdating mechanism - -2.0development.5 (2012-02-02) - * Fix some data structure inefficiencies that should reduce RAM consumption - by 25-75MB (!) - https://trac.torproject.org/projects/tor/ticket/4804 - * Global enable / disable option - https://trac.torproject.org/projects/tor/ticket/4060 - * Google Cache is back! :) - * Ship 126 new rulesets - * Fixes: Wikipedia, Identi.ca, Verizon, CCC.de, UserScripts, Yandex, - Hidemyass, Mozilla, Pogo, Google, Google Images, Google Video, - The Pirate Bay, AK Vorrat, JBoss - * Improvements: EFF, Flickr, RedHat, Diaspora, PrivatePaste, KDE, - Portugese Govt - * Disable broken: NSF.gov, WHO.int, Economist - * New experimental Yahoo! ruleset (off by default) - * New translations: Spanish, Nederlands - -2.0development.4 (2011-11-15) - * The translations actually work - * Add new translations: Chinese, Russian - * Ship 37 new rulesets - * Exclude Userscript paths as an insecure workaround for the Greasemonkey - and Scriptish instances of this bug: - https://trac.torproject.org/projects/tor/ticket/3190 - * Fixes: Java.com, Yandex, Wordpress, Wikipedia, Bahn.de, UNSW, Apache, - DuckDuckGo, Google Images - * Improvements: Debian, Tumblr, Apple, Facebook, VeriSign, Google Services, - Flickr, Youtu.be - * Disable broken: Target, OpenUniversity, TV.com, Radio Shack, - Yahoo Mail :( :(, - Google Cache coverage in Google Services :( :( :( - -2.0development.3 (2011-10-19) - * Selectively reenable nsIContentPolicy::shouldLoad() - Fixes: https://trac.torproject.org/projects/tor/ticket/4194 - Fixes: https://trac.torproject.org/projects/tor/ticket/4149 - * Crazy experimental IOUtils hacks from NoScript - https://bugzilla.mozilla.org/show_bug.cgi?id=677643#c75 - (Appears to fix - https://mail1.eff.org/pipermail/https-everywhere/2011-October/001208.html, - which is probably a general redirection bug) - * Secure cookies set by JavaScript as well as those set by HTTP - Fixes: https://trac.torproject.org/projects/tor/ticket/3766 - * Perform initialisation synchronously, reducing races during startup - Fixes: https://trac.torproject.org/projects/tor/ticket/3533 - * Ship 9 new rulesets - * Disable: MikeWest - * Improvements: YouTube, Google Images - -2.0development.2 (2011-10-05) - * Enable YouTube by default - (also closes https://trac.torproject.org/projects/tor/ticket/4032) - * Merge nsIContentPolicy disablement from stable - (closes https://trac.torproject.org/projects/tor/ticket/3882) - * Context menu should work on error pages - (https://trac.torproject.org/projects/tor/ticket/3815) - * Fix the ASN setting button in the observatory prefs - (https://trac.torproject.org/projects/tor/ticket/4170) - * Make the Observatory much more efficient - * Ship 46 new rulesets - * Update for new Wikipedia HTTPS deployment - * Ruleset Fixes and Enhancements: Yandex, Identica, SBB, Polldaddy, XKCD, - Statcounter, Caltech, UCSD, FlickR, Android - * Disable broken: LastPass, Avast, EPEAT, Bloglines - * Improve the state of our translations-in progress - * Fancy new Python build scripts - -2.0development.1 (2011-09-15) - * Begin alpha testing for the Decentralized SSL Observatory! - (currently opt-in, with a popup prompt if you have Tor Button installed) - * Ship 164 new rulesets - * Enable Google Maps by default - * Pending translations: Arabic, Dutch, German, Portugese, Latvian, Russian, - Swedish - * Fixes: OpenDNS, WordPress, Flickr - * Expansions & Improvements: Google Services, Twitter, Gowalla, Apple, Bit.ly - AdBlock Plus, KLM, Adobe, UCSD, Heroku, Wikipedia - * Disable broken rulesets: Deviantart, Bandcamp, Securityfocus - * Improved build scripts - -1.2.2 (2012-01-09) - * Google Cache is back! - * Fixes: Wikipedia, Identi.ca, Verizon, CCC.de, UserScripts, - Yandex - * Improvements: EFF - * Disable broken: NSF.gov, WHO.int - -1.2.1 (2011-10-15) - * Google Cache is broken, remove it from GoogleServices :( :( :( - * Fix for the Google Image Search homepage - * Exclude help.duckduckgo.com: - https://trac.torproject.org/projects/tor/ticket/4399 - * Disable Yahoo! Mail: - https://trac.torproject.org/projects/tor/ticket/4441 - * Installable on Firefox 10 - -1.2 (2011-10-14) - * Fixes: WordPress, Statcounter, Java, Bahn.de, SICS.se - * Improvements: use fancy new HTTPS Wikipedia - * Disable broken: OpenUniversity, TV.com, Random.org, kb.CERT - -1.1 (2011-10-19) - * Further tweaks to internals, will hopefully fix a number of weird issues: - https://trac.torproject.org/projects/tor/ticket/4194 - https://trac.torproject.org/projects/tor/ticket/4149 - https://mail1.eff.org/pipermail/https-everywhere/2011-October/001208.html - * YouTube is enabled by default! - * Fixes: Yandex, Statcounter, Polldaddy, SBB.ch - * Improvements: Facebook+ - * Disable broken: Bloglines, EPEAT - -1.0.3 (2011-09-26) - * Mozilla is about to release Firefox 7, the stable branch needs to be - installable there! - * Disabling nsIContentPolicy callbacks should fix this crash bug: - https://trac.torproject.org/projects/tor/ticket/3882 - https://bugzilla.mozilla.org/show_bug.cgi?id=677643 - It /might/ cause us to fail to rewrite requests in obscure corner cases. - We haven't found any in testing, but vigilance will be required. - * Support for Google Maps - * Fixes: WordPress, Lenovo, OpenDNS, Avast, Ripe.net, TV.com, 38.de - * Disable broken: Seagate - -1.0.2 (2011-09-20) - * Major improvements to the Wikipedia ruleset - * Disable broken/buggy rulesets: DeviantArt, eHow, About.me, Bandcamp, - StudiVZ, Securityfocus, BankofAmerica :( :( :( - * Small fixes: OpenDNS, WordPress, links in the "About" page - * Declare incompatibility with Firefox 7 & 8 until Mozilla fixes this: - https://bugzilla.mozilla.org/show_bug.cgi?id=677643 - -1.0.1 (2011-08-10) - * Disable some rulesets with partial compatibility issues: Reddit, - StumbleUpon, Heroku - * Small Yandex fix - * Fix/improvement for Google Instant outside the US - -1.0.0 (2011-08-04) - * Release 1.0 into the stable branch! - * Improve toolbar UI for error pages somewhat (it still isn't perfect) - * Bugfixes: Microsoft, Dropbox, Netflix, MySQL - * Disable a couple of broken rules - -1.0.0development.5: (2011-07-13) - * Ship rulesets as a single "default.rulesets" file, shrinking the .xpi from - ~370 kB to ~120kB and speeding Firefox startup: - https://trac.torproject.org/projects/tor/ticket/3404 - * Fix an ephemeral bug where disabled-by-default rules would be briefly - enabled when first installed - * Wikipedia shows up in the toolbar/context menu - * Fixes to netflix & netzpolitik - * Toolbar/context menu can be opened with left or right click - -1.0.0development.4: (2011-07-06) - * Fix a bug with Google Translate - * Unbreak the Netflix blog - * Toolbar button now looks OK in Seamonkey - * Declare compatibility with the next round of Firefox alphas - -1.0.0development.3: (2011-07-04) - * Do not show a bizarre popup when people click the HTTPS toolbar button on - error pages - * Fix a GoogleServices bug that broke logout from non-US google accounts :( - -1.0.0development.2: (2011-07-01) - * Fix bugs that arose when trying to move the toolbar menu icon: - https://trac.torproject.org/projects/tor/ticket/3497 - * Handle usernames and passwords in URIs more explicitly - https://trac.torproject.org/projects/tor/ticket/2199 - * By default, move context menu from toolbar to addons bar - * Ship 22 new rulesets - * Add support for Google Plus, Accounts and AdWdords - * Improvements to Microsoft, Twitter and Gitorious - -1.0.0development.1: (2011-06-27) - * Add a context menu to let users toggle rulesets that are/might be - applicable to the current page (we can now stabilise the dev branch!) - * Ship 42 new rulesets - * Support for Google Image Search (except the very first landing page :/) - * Fixes: Netflix, Plone - * Improvements: Google APIs, Google Services, Mediawiki - * Disable broken rules: OKCupid, Surveymonkey - * Declare compatibility with recent Seamonkey releases - -0.9.9.development.6: - * Optimistically declare compatibility with Firefoxes up to v 7.* - * Ship 193 new rulesets - * Fixes & Improvements: Wikipedia, AmazonAWS, Google Images, Microsoft, - Mozilla, Netflix, Google User Content, Twitter, Gitorious, AdBlock Plus, - Youtube, he.net, Bitcoin - * Remove broken rules: Match.com - -0.9.9.development.5: - * Compatible with Firefox 4.0.1+ - * New ruleset management UI (thanks to katmagic and Stefan Tomanek) - * Ship 136 new rulesets - * Fixes: reCAPTCHA, Google Images, Gentoo, Gitorious - * Improvements: Bit.ly, Yahoo, Nokia - * Disable: WashingtonPost :(, Doubleclick, OpenSSL.org (!) - -0.9.9.development.4: - * Ship 117 new rulesets - * Fixes: MySQL, GroupOn, country-specific Google news sites, - * Improvements: mail.com, WordPress - * Leave WashingtonPost ruleset on in the hope that it gets fixed soon :/ - * Disable broken rules: HTC, I2P ... - -0.9.9.development.3: - - * In the settings dialogue, offer "Reset defaults" instead of "Enable all" - * Merge fixes from NoScript that avoid some torbutton bugs - * Ship 56 new rulesets - * Numerous tweaks + fixes, including NYTimes and AddThis - -0.9.9.development.2: - - * Prevent the preferences window from swallowing the screen on OS X / Windows - * Stop the StartCom rule from breaking StartCom OCSP/CRLs (which can't be HTTPS) - * Attempt to do the same for for CAcert - * Fixes to: Reddit, Drupal.org - * Disable some problematic rulesets: Cisco, Opera - * Enable: Reddit - * Ship another 62 rulesets - -0.9.9.development.1: - - * The efficient ruleset checking implementation should now hopefully be... - efficient - * Ship all the rulesets (!!!) - * Except the ones that cause cert warnings, which are there but off by default - * Build scripts attempt to validate rulesets before making a .xpi - -0.9.7: - * Support firefox 5 and 6 betas - * Numerous improvements and fixes to Google and GoogleServices support - * Fixes to AmazonAWS - * Secure j.mp via bit.ly - * Fix gentoo bugs - -0.9.6: - * Support firefox 4.0.1 - * Unbreak recaptcha - * Disable google.com/jsapi (which was breaking some embedded maps, though - that bug *might* have been fixed) - -0.9.5: - * WashingtonPost is broken and seems to be staying that way; disable it :( - * Replace "Enable All" with "Reset Defaults" - * Fixes & Improvements to WordPress + Mozilla - -0.9.4: - * Significant performance improvements - * Disable Cisco by default - * Fixes & improvements to: NYTimes, WashingtonPost, Cisco, WordPress - * Support Google Code - * Disable Google Custom Search Engines (they don't work) - * Support global installation for OS distributions (thanks dm0) - - -0.9.3: - * Significant performance improvements - * Disable Cisco by default - * Fixes & improvements to: NYTimes, WashingtonPost, Cisco, WordPress - * Support Google Code - * Disable Google Custom Search Engines (they don't work) - * Support global installation for OS distributions (thanks dm0) - -0.9.2: - * Fix a bug in our redirection loop detection that was causing touble with - some parts of NYTimes, Facebook, and other sites - (closes: https://trac.torproject.org/projects/tor/ticket/2217) - -0.9.1: - * Unbreak the "all x news articles" links in Google News - * Exclude nytimes.com/roomfordebate, since it's broken in https. - -0.9.0: - * This is our "Firesheep" release. It has numerous anti-firesheep - improvements! - * Split the stricter parts of the Facebook rule into a "Facebook+" rule. - It's what's required to protect Facebook from Firesheep and similar cookie - theft attacks, but it may break apps, because apps.facebook.com currently - has the wrong cert. - * Allow rulesets to specify that the secure flag should be set on some - cookies even if the site operator failed to do so - * Ship rules for: - - Amazon S3 (AWS) - - Github - - Bit.ly - - Dropbox - - Evernote - - Cisco - * Extensive improvements (including secure cookies) in the Twitter and - Facebook rules - * Support for full Live / Hotmail encryption - * Significant performance optimisation decreases CPU load - Fixes: - https://trac.torproject.org/projects/tor/ticket/1656 - https://trac.torproject.org/projects/tor/ticket/2194 - * Rearrange our Channel Replacement code! - Fixes https://trac.torproject.org/projects/tor/ticket/1684 - https://bugzilla.mozilla.org/show_bug.cgi?id=548102 - Thanks to Giorgio Maone and Boris Zbarsky! - * Add scrollbars if there are a lot of rules present in the Preferences - dialog (may still be somewhat buggy...) - * Optimise GoogleServices.xml and support Google code search - * Patch for future compatiability with Request Policy: - https://trac.torproject.org/projects/tor/ticket/1574 - * Support for the Firefox 4 API - * The Amazon rule was causing a lot of glitches; it is now off by default - * Control log verbosity with an about:config variable - * Numerous minor rule improvements - -0.2.2: - * Fix a glitch in the Content Policy path that may or may not have been - responsible for these bugs: - https://trac.torproject.org/projects/tor/ticket/1700 - https://trac.torproject.org/projects/tor/ticket/1672 - https://trac.torproject.org/projects/tor/ticket/1673 - The patch breaks toolbar search suggestions. And who knows what else? - * Don't send some country homepages to https://www.google.com/webhp?hl= ; - use https://encrypted.google.com instead - * Cleanup and refactor the URI replacement and rewriting code. Should - hopefully fix https://trac.torproject.org/projects/tor/ticket/1649 - * Add a Google APIs rule - * Remove some Extremely Nasty code that would delete malformed rulesets (!) - (it was pasted from Torbutton's cookie handling logic...) - * Add code.google.com to Google Services - * The client=firefox* workaround is no longer necessary once we're sending - non-US users to encrypted.google.com rather than www.google.com - * Better coverage for GMX, Google services, Twitter - * Scroogle homepage in HTTPS - * Add rules for - - Mail.com logins - - Microsoft (limited coverage) - * Fix a nasty Google/Wikipedia bug within 0.2.2.development.{1,2} - -0.2.1: - * Although google said https://www.google.com would continue to work, that - wasn't absolutely true. - * The new encyrpted.google.com seems to require queries to be #q=thing - rather than search?q=thing, at least some of the time. So let's do that. - -0.2.0: - * Work around the fact that Google does not allow client=firefox* HTTPS - searches from outside the US, by rewriting those URIs - * Add rules for: - - Amazon - - GMX - - Live.com (Hotmail logins) - - Meebo - - the Netherlands Government - - Wordpress.com - - Zoho - * Remove the assumption that non-US searches would always start with an hl= - language parameter - * Handle searches to the google.com/firefox script better - * Remove accidental duplicates of a couple of rules! - * Bump maxVersion into the future so we're compatible with Firefox alphas - * Fix more legacy eff.org bugs - -0.1.2: - * Apparently, we are not actually compatible with Firefox 2.0.0.x, so don't - install with it! - * Further generalisation of Wikimedia rules - * Fix bugs in the handling of obscure parts of eff.org and torproject.org - * A bug in a user rules file should produce an error, rather than causing all - rules to fail to load - -0.1.1: - * Generalise the Wikipedia rules to other Wikimedia services - * In preferences window, add a link to instructions for writing one's own - rules diff --git a/helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome.manifest b/helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome.manifest deleted file mode 100644 index 4869afe..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome.manifest +++ /dev/null @@ -1,53 +0,0 @@ -content https-everywhere chrome/content/ -override chrome://https-everywhere/content/rulesets.sqlite defaults/rulesets.sqlite - -locale https-everywhere en chrome/locale/en/ -locale https-everywhere lt chrome/locale/lt/ -locale https-everywhere lv chrome/locale/lv/ -locale https-everywhere pt chrome/locale/pt/ -locale https-everywhere sv chrome/locale/sv/ -locale https-everywhere de chrome/locale/de/ -locale https-everywhere ru chrome/locale/ru/ -locale https-everywhere zh-CN chrome/locale/zh-CN/ -locale https-everywhere zh-TW chrome/locale/zh-TW/ -locale https-everywhere es chrome/locale/es/ -locale https-everywhere nl chrome/locale/nl/ -locale https-everywhere ar chrome/locale/ar/ -locale https-everywhere fa chrome/locale/fa/ -locale https-everywhere eu chrome/locale/eu/ -locale https-everywhere fr chrome/locale/fr/ -locale https-everywhere pl chrome/locale/pl/ -locale https-everywhere sk chrome/locale/sk/ -locale https-everywhere ms chrome/locale/ms/ -locale https-everywhere da chrome/locale/da/ -locale https-everywhere el chrome/locale/el/ -locale https-everywhere hu chrome/locale/hu/ -locale https-everywhere it chrome/locale/it/ -locale https-everywhere tr chrome/locale/tr/ -locale https-everywhere ko chrome/locale/ko/ -locale https-everywhere cs chrome/locale/cs/ -locale https-everywhere hr chrome/locale/hr/ -locale https-everywhere he chrome/locale/he/ -locale https-everywhere fi chrome/locale/fi/ -locale https-everywhere nb chrome/locale/nb/ -locale https-everywhere sl chrome/locale/sl/ -locale https-everywhere bg chrome/locale/bg/ -locale https-everywhere ja chrome/locale/ja/ -locale https-everywhere si chrome/locale/si/ - -skin https-everywhere classic/1.0 chrome/skin/ - -component {32c165b4-fe5e-4964-9250-603c410631b4} components/https-everywhere.js -contract @eff.org/https-everywhere;1 {32c165b4-fe5e-4964-9250-603c410631b4} - -category profile-after-change HTTPSEverywhere @eff.org/https-everywhere;1 -category content-policy HTTPSEverywhere @eff.org/https-everywhere;1 - -overlay chrome://browser/content/browser.xul chrome://https-everywhere/content/toolbar_button.xul -overlay chrome://navigator/content/navigator.xul chrome://https-everywhere/content/toolbar_button.xul - -style chrome://global/content/customizeToolbar.xul chrome://https-everywhere/skin/https-everywhere.css -component {0f9ab521-986d-4ad8-9c1f-6934e195c15c} components/ssl-observatory.js -contract @eff.org/ssl-observatory;1 {0f9ab521-986d-4ad8-9c1f-6934e195c15c} - -category profile-after-change SSLObservatory @eff.org/ssl-observatory;1 diff --git a/helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/about.xul b/helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/about.xul deleted file mode 100644 index cf57e9d..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/https-everywhere@eff.org/chrome/content/about.xul +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
- -
- -
- -
- - - - - - - - - - - - - -
JavaScript contents hash-codeFound at URLReasonDelete script from whitelist
-
-
-
- -
-
- -
-
-
- - -
-
- -
-
-

- Copyright (C) 2011, 2012, 2013, 2014 Loic J. Duros
-

-
- - - - diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/js/form-row.js b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/js/form-row.js deleted file mode 100644 index 13390eb..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/js/form-row.js +++ /dev/null @@ -1,110 +0,0 @@ -/** - * GNU LibreJS - A browser add-on to block nonfree nontrivial JavaScript. - * * - * Copyright (C) 2011, 2012, 2014 Loic J. Duros - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - */ - -var GenerateForm = { - $trContainer: null, // will jQuery element for rules table tboby - - le: 0, - - init: function () { - var that = this; - $(document).ready(function (e) { - that.$trContainer = $("#whitelist").children('tbody'); - - // listen for when data is ready to populate form. - document.documentElement.addEventListener( - "populate-form", - function (event) { - //console.log("populate-form event triggered in form-row.js"); - that.populateForm(event.detail.data); - - }, false); - that.$trContainer.on("click", ".delete", function (event) { - that.deleteRow($(this)); - }); - $('deleteall').click(function (e) { - that.deleteAll(); - }); - }); - }, - - deleteAll: function () { - event.initCustomEvent("librejs-settings-change", true, true, {event: 'rules-form-delete-all', value: ''}); - }, - - deleteRow: function ($button) { - var hash = $button.parents('tr').children('.hash').text(); - //console.log("hash is", hash); - this.le--; - this.changeTitle(); - $button.parents('tr').remove(); - var event = document.createEvent("CustomEvent"); - event.initCustomEvent("librejs-settings-change", true, true, {event: 'rules-form-delete', value: hash}); - document.documentElement.dispatchEvent(event); - }, - - createRow: function (key, url, reason) { - - var $tr = $("");//.addClass('sortable'); - var $td = $('').addClass('hash').text(key); - var $delete, $button; - $tr.append($td); - $td = $('').append($('').attr({"href": url, - "target": "_blank"}).text(url)); - $tr.append($td); - $td = $('').text(reason); - $tr.append($td); - - //$tr.append($('').append("drag")); - $delete = $(""); - $button = $("',e.fn.editableform.errorGroupClass=null,e.fn.editableform.errorBlockClass="editable-error"})(window.jQuery),function(e){e.fn.editableutils={inherit:function(e,t){var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e,e.superclass=t.prototype},setCursorPosition:function(e,t){if(e.setSelectionRange)e.setSelectionRange(t,t);else if(e.createTextRange){var n=e.createTextRange();n.collapse(!0),n.moveEnd("character",t),n.moveStart("character",t),n.select()}},tryParseJson:function(e,t){if(typeof e=="string"&&e.length&&e.match(/^[\{\[].*[\}\]]$/))if(t)try{e=(new Function("return "+e))()}catch(n){}finally{return e}else e=(new Function("return "+e))();return e},sliceObj:function(t,n,r){var i,s,o={};if(!e.isArray(n)||!n.length)return o;for(var u=0;u").text(t).html()}}}(window.jQuery),function(e){var t=function(e,t){this.init(e,t)};t.prototype={containerName:null,innerCss:null,init:function(n,r){this.$element=e(n),this.options=e.extend({},e.fn.editableContainer.defaults,e.fn.editableutils.getConfigData(this.$element),r),this.splitOptions(),this.initContainer(),this.$element.on("destroyed",e.proxy(function(){this.destroy()},this)),e(document).data("editable-handlers-attached")||(e(document).on("keyup.editable",function(t){t.which===27&&e(".editable-open").editableContainer("hide")}),e(document).on("click.editable",function(n){var r=e(n.target);if(r.is(".editable-container")||r.parents(".editable-container").length||r.parents(".ui-datepicker-header").length)return;t.prototype.closeOthers(n.target)}),e(document).data("editable-handlers-attached",!0))},splitOptions:function(){this.containerOptions={},this.formOptions={};var t=e.fn[this.containerName].defaults;for(var n in this.options)n in t?this.containerOptions[n]=this.options[n]:this.formOptions[n]=this.options[n]},initContainer:function(){this.call(this.containerOptions)},initForm:function(){return this.formOptions.scope=this.$element[0],this.$form=e("
").editableform(this.formOptions).on({save:e.proxy(this.save,this),cancel:e.proxy(function(){this.hide("cancel")},this),nochange:e.proxy(function(){this.hide("nochange")},this),show:e.proxy(this.setPosition,this),rendering:e.proxy(this.setPosition,this),rendered:e.proxy(function(){this.$element.triggerHandler("shown")},this)}),this.$form},tip:function(){return this.container().$tip},container:function(){return this.$element.data(this.containerName)},call:function(){this.$element[this.containerName].apply(this.$element,arguments)},show:function(e){this.$element.addClass("editable-open"),e!==!1&&this.closeOthers(this.$element[0]),this.innerShow()},innerShow:function(){this.call("show"),this.tip().addClass("editable-container"),this.initForm(),this.tip().find(this.innerCss).empty().append(this.$form),this.$form.editableform("render")},hide:function(e){if(!this.tip()||!this.tip().is(":visible")||!this.$element.hasClass("editable-open"))return;this.$element.removeClass("editable-open"),this.innerHide(),this.$element.triggerHandler("hidden",e)},innerHide:function(){this.call("hide")},toggle:function(e){this.tip&&this.tip().is(":visible")?this.hide():this.show(e)},setPosition:function(){},save:function(e,t){this.hide("save"),this.$element.triggerHandler("save",t)},option:function(e,t){this.options[e]=t,e in this.containerOptions?(this.containerOptions[e]=t,this.setContainerOption(e,t)):(this.formOptions[e]=t,this.$form&&this.$form.editableform("option",e,t))},setContainerOption:function(e,t){this.call("option",e,t)},destroy:function(){this.call("destroy")},closeOthers:function(t){e(".editable-open").each(function(n,r){if(r===t||e(r).find(t).length)return;var i=e(r),s=i.data("editableContainer");if(!s)return;s.options.onblur==="cancel"?i.data("editableContainer").hide("onblur"):s.options.onblur==="submit"&&i.data("editableContainer").tip().find("form").submit()})},activate:function(){this.tip&&this.tip().is(":visible")&&this.$form&&this.$form.data("editableform").input.activate()}},e.fn.editableContainer=function(n){var r=arguments;return this.each(function(){var i=e(this),s="editableContainer",o=i.data(s),u=typeof n=="object"&&n;o||i.data(s,o=new t(this,u)),typeof n=="string"&&o[n].apply(o,Array.prototype.slice.call(r,1))})},e.fn.editableContainer.Constructor=t,e.fn.editableContainer.defaults={value:null,placement:"top",autohide:!0,onblur:"cancel"},jQuery.event.special.destroyed={remove:function(e){e.handler&&e.handler()}}}(window.jQuery),function(e){var t=function(t,n){this.$element=e(t),this.options=e.extend({},e.fn.editable.defaults,e.fn.editableutils.getConfigData(this.$element),n),this.init()};t.prototype={constructor:t,init:function(){var t,n=!1,r,i;if(!e.fn.editableContainer){e.error("You must define $.fn.editableContainer via including corresponding file (e.g. editable-popover.js)");return}this.options.name=this.options.name||this.$element.attr("id");if(typeof e.fn.editabletypes[this.options.type]!="function"){e.error("Unknown type: "+this.options.type);return}t=e.fn.editabletypes[this.options.type],this.typeOptions=e.fn.editableutils.sliceObj(this.options,e.fn.editableutils.objectKeys(t.defaults)),this.input=new t(this.typeOptions),this.options.value===undefined||this.options.value===null?(this.value=this.input.html2value(e.trim(this.$element.html())),n=!0):(this.options.value=e.fn.editableutils.tryParseJson(this.options.value,!0),typeof this.options.value=="string"?this.value=this.input.str2value(this.options.value):this.value=this.options.value),this.$element.addClass("editable"),this.options.toggle!=="manual"?(this.$element.addClass("editable-click"),this.$element.on(this.options.toggle+".editable",e.proxy(function(e){e.preventDefault();if(this.options.toggle==="mouseenter")this.show();else{var t=this.options.toggle!=="click";this.toggle(t)}},this))):this.$element.attr("tabindex",-1),r=!n&&this.value!==null&&this.value!==undefined,r&=this.options.autotext==="always"||this.options.autotext==="auto"&&!this.$element.text().length,e.when(r?this.render():!0).then(e.proxy(function(){this.options.disabled?this.disable():this.enable(),this.$element.triggerHandler("init",this)},this))},render:function(){if(this.options.display===!1)return;return this.input.options.hasOwnProperty("source")?this.input.value2html(this.value,this.$element[0],this.options.display):typeof this.options.display=="function"?this.options.display.call(this.$element[0],this.value):this.input.value2html(this.value,this.$element[0])},enable:function(){this.options.disabled=!1,this.$element.removeClass("editable-disabled"),this.handleEmpty(),this.options.toggle!=="manual"&&this.$element.attr("tabindex")==="-1"&&this.$element.removeAttr("tabindex")},disable:function(){this.options.disabled=!0,this.hide(),this.$element.addClass("editable-disabled"),this.handleEmpty(),this.$element.attr("tabindex",-1)},toggleDisabled:function(){this.options.disabled?this.enable():this.disable()},option:function(t,n){if(t&&typeof t=="object"){e.each(t,e.proxy(function(t,n){this.option(e.trim(t),n)},this));return}this.options[t]=n;if(t==="disabled"){n?this.disable():this.enable();return}t==="value"&&this.setValue(n),this.container&&this.container.option(t,n)},handleEmpty:function(){if(this.options.display===!1)return;var t="editable-empty";this.options.disabled?this.$element.hasClass(t)&&(this.$element.empty(),this.$element.removeClass(t)):e.trim(this.$element.text())===""?this.$element.addClass(t).text(this.options.emptytext):this.$element.removeClass(t)},show:function(t){if(this.options.disabled)return;if(!this.container){var n=e.extend({},this.options,{value:this.value});this.$element.editableContainer(n),this.$element.on("save.internal",e.proxy(this.save,this)),this.container=this.$element.data("editableContainer")}else if(this.container.tip().is(":visible"))return;this.container.show(t)},hide:function(){this.container&&this.container.hide()},toggle:function(e){this.container&&this.container.tip().is(":visible")?this.hide():this.show(e)},save:function(e,t){typeof this.options.url!="function"&&this.options.display!==!1&&t.response===undefined&&this.input.value2str(this.value)!==this.input.value2str(t.newValue)?this.$element.addClass("editable-unsaved"):this.$element.removeClass("editable-unsaved"),this.setValue(t.newValue)},validate:function(){if(typeof this.options.validate=="function")return this.options.validate.call(this,this.value)},setValue:function(t,n){n?this.value=this.input.str2value(t):this.value=t,this.container&&this.container.option("value",this.value),e.when(this.render()).then(e.proxy(function(){this.handleEmpty()},this))},activate:function(){this.container&&this.container.activate()}},e.fn.editable=function(n){var r={},i=arguments,s="editable";switch(n){case"validate":return this.each(function(){var t=e(this),n=t.data(s),i;n&&(i=n.validate())&&(r[n.options.name]=i)}),r;case"getValue":return this.each(function(){var t=e(this),n=t.data(s);n&&n.value!==undefined&&n.value!==null&&(r[n.options.name]=n.input.value2submit(n.value))}),r;case"submit":var o=arguments[1]||{},u=this,a=this.editable("validate"),f;return e.isEmptyObject(a)?(f=this.editable("getValue"),o.data&&e.extend(f,o.data),e.ajax(e.extend({url:o.url,data:f,type:"POST"},o.ajaxOptions)).success(function(e){typeof o.success=="function"&&o.success.call(u,e,o)}).error(function(){typeof o.error=="function"&&o.error.apply(u,arguments)})):typeof o.error=="function"&&o.error.call(u,a),this}return this.each(function(){var r=e(this),o=r.data(s),u=typeof n=="object"&&n;o||r.data(s,o=new t(this,u)),typeof n=="string"&&o[n].apply(o,Array.prototype.slice.call(i,1))})},e.fn.editable.defaults={type:"text",disabled:!1,toggle:"click",emptytext:"Empty",autotext:"auto",value:null,display:null}}(window.jQuery),function(e){e.fn.editabletypes={};var t=function(){};t.prototype={init:function(t,n,r){this.type=t,this.options=e.extend({},r,n),this.$input=null,this.$clear=null,this.error=null},render:function(){this.$input=e(this.options.tpl),this.options.inputclass&&this.$input.addClass(this.options.inputclass),this.options.placeholder&&this.$input.attr("placeholder",this.options.placeholder)},value2html:function(t,n){e(n).text(t)},html2value:function(t){return e("
").html(t).text()},value2str:function(e){return e},str2value:function(e){return e},value2submit:function(e){return e},value2input:function(e){this.$input.val(e)},input2value:function(){return this.$input.val()},activate:function(){this.$input.is(":visible")&&this.$input.focus()},clear:function(){this.$input.val(null)},escape:function(t){return e("
").text(t).html()},autosubmit:function(){}},t.defaults={tpl:"",inputclass:"input-medium",name:null},e.extend(e.fn.editabletypes,{abstractinput:t})}(window.jQuery),function(e){var t=function(e){};e.fn.editableutils.inherit(t,e.fn.editabletypes.abstractinput),e.extend(t.prototype,{render:function(){t.superclass.render.call(this);var n=e.Deferred();return this.error=null,this.sourceData=null,this.prependData=null,this.onSourceReady(function(){this.renderList(),n.resolve()},function(){this.error=this.options.sourceError,n.resolve()}),n.promise()},html2value:function(e){return null},value2html:function(t,n,r){var i=e.Deferred();return this.onSourceReady(function(){typeof r=="function"?r.call(n,t,this.sourceData):this.value2htmlFinal(t,n),i.resolve()},function(){i.resolve()}),i.promise()},onSourceReady:function(t,n){if(e.isArray(this.sourceData)){t.call(this);return}try{this.options.source=e.fn.editableutils.tryParseJson(this.options.source,!1)}catch(r){n.call(this);return}if(typeof this.options.source=="string"){if(this.options.sourceCache){var i=this.options.source+(this.options.name?"-"+this.options.name:""),s;e(document).data(i)||e(document).data(i,{}),s=e(document).data(i);if(s.loading===!1&&s.sourceData){this.sourceData=s.sourceData,t.call(this);return}if(s.loading===!0){s.callbacks.push(e.proxy(function(){this.sourceData=s.sourceData,t.call(this)},this)),s.err_callbacks.push(e.proxy(n,this));return}s.loading=!0,s.callbacks=[],s.err_callbacks=[]}e.ajax({url:this.options.source,type:"get",cache:!1,data:this.options.name?{name:this.options.name}:{},dataType:"json",success:e.proxy(function(r){s&&(s.loading=!1),this.sourceData=this.makeArray(r),e.isArray(this.sourceData)?(this.doPrepend(),t.call(this),s&&(s.sourceData=this.sourceData,e.each(s.callbacks,function(){this.call()}))):(n.call(this),s&&e.each(s.err_callbacks,function(){this.call()}))},this),error:e.proxy(function(){n.call(this),s&&(s.loading=!1,e.each(s.err_callbacks,function(){this.call()}))},this)})}else this.sourceData=this.makeArray(this.options.source),e.isArray(this.sourceData)?(this.doPrepend(),t.call(this)):n.call(this)},doPrepend:function(){if(this.options.prepend===null||this.options.prepend===undefined)return;e.isArray(this.prependData)||(this.options.prepend=e.fn.editableutils.tryParseJson(this.options.prepend,!0),typeof this.options.prepend=="string"&&(this.options.prepend={"":this.options.prepend}),this.prependData=this.makeArray(this.options.prepend)),e.isArray(this.prependData)&&e.isArray(this.sourceData)&&(this.sourceData=this.prependData.concat(this.sourceData))},renderList:function(){},value2htmlFinal:function(e,t){},makeArray:function(t){var n,r,i=[],s;if(!t||typeof t=="string")return null;if(e.isArray(t)){s=function(e,t){r={value:e,text:t};if(n++>=2)return!1};for(var o=0;o1&&t[o].hasOwnProperty("value")&&t[o].hasOwnProperty("text")&&i.push(t[o])):i.push({value:t[o],text:t[o]})}else e.each(t,function(e,t){i.push({value:e,text:t})});return i},itemByVal:function(t){if(e.isArray(this.sourceData))for(var n=0;n',placeholder:null}),e.fn.editabletypes.text=t}(window.jQuery),function(e){var t=function(e){this.init("textarea",e,t.defaults)};e.fn.editableutils.inherit(t,e.fn.editabletypes.abstractinput),e.extend(t.prototype,{render:function(){t.superclass.render.call(this),this.$input.keydown(function(t){t.ctrlKey&&t.which===13&&e(this).closest("form").submit()})},value2html:function(t,n){var r="",i;if(t){i=t.split("\n");for(var s=0;s").text(i[s]).html();r=i.join("
")}e(n).html(r)},html2value:function(t){if(!t)return"";var n=t.split(//i);for(var r=0;r").html(n[r]).text();return n.join("\n")},activate:function(){this.$input.is(":visible")&&(e.fn.editableutils.setCursorPosition(this.$input.get(0),this.$input.val().length),this.$input.focus())}}),t.defaults=e.extend({},e.fn.editabletypes.abstractinput.defaults,{tpl:"",inputclass:"input-large",placeholder:null}),e.fn.editabletypes.textarea=t}(window.jQuery),function(e){var t=function(e){this.init("select",e,t.defaults)};e.fn.editableutils.inherit(t,e.fn.editabletypes.list),e.extend(t.prototype,{renderList:function(){if(!e.isArray(this.sourceData))return;for(var t=0;t",{value:this.sourceData[t].value}).text(this.sourceData[t].text));this.$input.on("keydown.editable",function(t){t.which===13&&e(this).closest("form").submit()})},value2htmlFinal:function(e,n){var r="",i=this.itemByVal(e);i&&(r=i.text),t.superclass.constructor.superclass.value2html(r,n)},autosubmit:function(){this.$input.off("keydown.editable").on("change.editable",function(){e(this).closest("form").submit()})}}),t.defaults=e.extend({},e.fn.editabletypes.list.defaults,{tpl:""}),e.fn.editabletypes.select=t}(window.jQuery),function(e){var t=function(e){this.init("checklist",e,t.defaults)};e.fn.editableutils.inherit(t,e.fn.editabletypes.list),e.extend(t.prototype,{renderList:function(){var t,n;if(!e.isArray(this.sourceData))return;for(var r=0;r").append(e("",{type:"checkbox",value:this.sourceData[r].value,name:this.options.name})).append(e("").text(" "+this.sourceData[r].text)),e("
").append(t).appendTo(this.$input)},value2str:function(t){return e.isArray(t)?t.sort().join(e.trim(this.options.separator)):""},str2value:function(t){var n,r=null;return typeof t=="string"&&t.length?(n=new RegExp("\\s*"+e.trim(this.options.separator)+"\\s*"),r=t.split(n)):e.isArray(t)&&(r=t),r},value2input:function(t){var n=this.$input.find('input[type="checkbox"]');n.removeAttr("checked"),e.isArray(t)&&t.length&&n.each(function(n,r){var i=e(r);e.each(t,function(e,t){i.val()==t&&i.attr("checked","checked")})})},input2value:function(){var t=[];return this.$input.find("input:checked").each(function(n,r){t.push(e(r).val())}),t},value2htmlFinal:function(t,n){var r=[],i=e.grep(this.sourceData,function(n){return e.grep(t,function(e){return e==n.value}).length});i.length?(e.each(i,function(t,n){r.push(e.fn.editableutils.escape(n.text))}),e(n).html(r.join("
"))):e(n).empty()},activate:function(){this.$input.find('input[type="checkbox"]').first().focus()},autosubmit:function(){this.$input.find('input[type="checkbox"]').on("keydown",function(t){t.which===13&&e(this).closest("form").submit()})}}),t.defaults=e.extend({},e.fn.editabletypes.list.defaults,{tpl:"
",inputclass:"editable-checklist",separator:","}),e.fn.editabletypes.checklist=t}(window.jQuery),function(e){var t=function(e){this.init("password",e,t.defaults)};e.fn.editableutils.inherit(t,e.fn.editabletypes.text),e.extend(t.prototype,{value2html:function(t,n){t?e(n).text("[hidden]"):e(n).empty()},html2value:function(e){return null}}),t.defaults=e.extend({},e.fn.editabletypes.text.defaults,{tpl:''}),e.fn.editabletypes.password=t}(window.jQuery),function(e){var t=function(e){this.init("email",e,t.defaults)};e.fn.editableutils.inherit(t,e.fn.editabletypes.text),t.defaults=e.extend({},e.fn.editabletypes.text.defaults,{tpl:''}),e.fn.editabletypes.email=t}(window.jQuery),function(e){var t=function(e){this.init("url",e,t.defaults)};e.fn.editableutils.inherit(t,e.fn.editabletypes.text),t.defaults=e.extend({},e.fn.editabletypes.text.defaults,{tpl:''}),e.fn.editabletypes.url=t}(window.jQuery),function(e){var t=function(e){this.init("tel",e,t.defaults)};e.fn.editableutils.inherit(t,e.fn.editabletypes.text),t.defaults=e.extend({},e.fn.editabletypes.text.defaults,{tpl:''}),e.fn.editabletypes.tel=t}(window.jQuery),function(e){var t=function(e){this.init("number",e,t.defaults)};e.fn.editableutils.inherit(t,e.fn.editabletypes.text),e.extend(t.prototype,{render:function(){t.superclass.render.call(this),this.options.min!==null&&this.$input.attr("min",this.options.min),this.options.max!==null&&this.$input.attr("max",this.options.max),this.options.step!==null&&this.$input.attr("step",this.options.step)}}),t.defaults=e.extend({},e.fn.editabletypes.text.defaults,{tpl:'',inputclass:"input-mini",min:null,max:null,step:null}),e.fn.editabletypes.number=t}(window.jQuery),function(e){var t=function(e){this.init("range",e,t.defaults)};e.fn.editableutils.inherit(t,e.fn.editabletypes.number),e.extend(t.prototype,{render:function(){this.$input=e(this.options.tpl);var t=this.$input.filter("input");this.options.inputclass&&t.addClass(this.options.inputclass),this.options.min!==null&&t.attr("min",this.options.min),this.options.max!==null&&t.attr("max",this.options.max),this.options.step!==null&&t.attr("step",this.options.step),t.on("input",function(){e(this).siblings("output").text(e(this).val())})},activate:function(){this.$input.filter("input").focus()}}),t.defaults=e.extend({},e.fn.editabletypes.number.defaults,{tpl:'',inputclass:"input-medium"}),e.fn.editabletypes.range=t}(window.jQuery),function(e){e.extend(e.fn.editableform.Constructor.prototype,{initTemplate:function(){this.$form=e(e.fn.editableform.template),this.$form.find(".editable-error-block").addClass("help-block")}}),e.fn.editableform.buttons='',e.fn.editableform.errorGroupClass="error",e.fn.editableform.errorBlockClass=null}(window.jQuery),function(e){e.extend(e.fn.editableContainer.Constructor.prototype,{containerName:"editableform",innerCss:null,initContainer:function(){this.options.anim||(this.options.anim=0)},splitOptions:function(){this.containerOptions={},this.formOptions=this.options},tip:function(){return this.$form},innerShow:function(){this.$element.hide(),this.$form&&this.$form.remove(),this.initForm(),this.tip().addClass("editable-container").addClass("editable-inline"),this.$form.insertAfter(this.$element),this.$form.show(this.options.anim),this.$form.editableform("render")},innerHide:function(){this.$form.hide(this.options.anim,e.proxy(function(){this.$element.show()},this))},destroy:function(){this.tip().remove()}}),e.fn.editableContainer.defaults=e.extend({},e.fn.editableContainer.defaults,{anim:"fast"})}(window.jQuery),function(e){var t=function(n){this.init("date",n,t.defaults);var r=e.fn.editableutils.sliceObj(this.options,["format"]);this.options.datepicker=e.extend({},t.defaults.datepicker,r,n.datepicker),this.options.viewformat||(this.options.viewformat=this.options.datepicker.format),this.options.datepicker.language=this.options.datepicker.language||"en",this.dpg=e.fn.datepicker.DPGlobal,this.parsedFormat=this.dpg.parseFormat(this.options.datepicker.format),this.parsedViewFormat=this.dpg.parseFormat(this.options.viewformat)};e.fn.editableutils.inherit(t,e.fn.editabletypes.abstractinput),e.extend(t.prototype,{render:function(){t.superclass.render.call(this),this.$input.datepicker(this.options.datepicker),this.options.clear&&(this.$clear=e('').html(this.options.clear).click(e.proxy(function(e){e.preventDefault(),e.stopPropagation(),this.clear()},this)))},value2html:function(e,n){var r=e?this.dpg.formatDate(e,this.parsedViewFormat,this.options.datepicker.language):"";t.superclass.value2html(r,n)},html2value:function(e){return e?this.dpg.parseDate(e,this.parsedViewFormat,this.options.datepicker.language):null},value2str:function(e){return e?this.dpg.formatDate(e,this.parsedFormat,this.options.datepicker.language):""},str2value:function(e){return e?this.dpg.parseDate(e,this.parsedFormat,this.options.datepicker.language):null},value2submit:function(e){return this.value2str(e)},value2input:function(e){this.$input.datepicker("update",e)},input2value:function(){return this.$input.data("datepicker").date},activate:function(){},clear:function(){this.$input.data("datepicker").date=null,this.$input.find(".active").removeClass("active")},autosubmit:function(){this.$input.on("changeDate",function(t){var n=e(this).closest("form");setTimeout(function(){n.submit()},200)})}}),t.defaults=e.extend({},e.fn.editabletypes.abstractinput.defaults,{tpl:"
",inputclass:"editable-date well",format:"yyyy-mm-dd",viewformat:null,datepicker:{weekStart:0,startView:0,autoclose:!1},clear:"× clear"}),e.fn.editabletypes.date=t}(window.jQuery),!function(e){function t(){return new Date(Date.UTC.apply(Date,arguments))}function n(){var e=new Date;return t(e.getUTCFullYear(),e.getUTCMonth(),e.getUTCDate())}var r=function(t,n){var r=this;this.element=e(t),this.language=n.language||this.element.data("date-language")||"en",this.language=this.language in i?this.language:"en",this.format=s.parseFormat(n.format||this.element.data("date-format")||"mm/dd/yyyy"),this.isInline=!1,this.isInput=this.element.is("input"),this.component=this.element.is(".date")?this.element.find(".add-on"):!1,this.hasInput=this.component&&this.element.find("input").length,this.component&&this.component.length===0&&(this.component=!1),this.isInput?this.element.on({focus:e.proxy(this.show,this),keyup:e.proxy(this.update,this),keydown:e.proxy(this.keydown,this)}):this.component&&this.hasInput?(this.element.find("input").on({focus:e.proxy(this.show,this),keyup:e.proxy(this.update,this),keydown:e.proxy(this.keydown,this)}),this.component.on("click",e.proxy(this.show,this))):this.element.is("div")?this.isInline=!0:this.element.on("click",e.proxy(this.show,this)),this.picker=e(s.template).appendTo(this.isInline?this.element:"body").on({click:e.proxy(this.click,this),mousedown:e.proxy(this.mousedown,this)}),this.isInline?this.picker.addClass("datepicker-inline"):this.picker.addClass("dropdown-menu"),e(document).on("mousedown",function(t){e(t.target).closest(".datepicker").length==0&&r.hide()}),this.autoclose=!1,"autoclose"in n?this.autoclose=n.autoclose:"dateAutoclose"in this.element.data()&&(this.autoclose=this.element.data("date-autoclose")),this.keyboardNavigation=!0,"keyboardNavigation"in n?this.keyboardNavigation=n.keyboardNavigation:"dateKeyboardNavigation"in this.element.data()&&(this.keyboardNavigation=this.element.data("date-keyboard-navigation"));switch(n.startView||this.element.data("date-start-view")){case 2:case"decade":this.viewMode=this.startViewMode=2;break;case 1:case"year":this.viewMode=this.startViewMode=1;break;case 0:case"month":default:this.viewMode=this.startViewMode=0}this.todayBtn=n.todayBtn||this.element.data("date-today-btn")||!1,this.todayHighlight=n.todayHighlight||this.element.data("date-today-highlight")||!1,this.weekStart=(n.weekStart||this.element.data("date-weekstart")||i[this.language].weekStart||0)%7,this.weekEnd=(this.weekStart+6)%7,this.startDate=-Infinity,this.endDate=Infinity,this.setStartDate(n.startDate||this.element.data("date-startdate")),this.setEndDate(n.endDate||this.element.data("date-enddate")),this.fillDow(),this.fillMonths(),this.update(),this.showMode(),this.isInline&&this.show()};r.prototype={constructor:r,show:function(t){this.picker.show(),this.height=this.component?this.component.outerHeight():this.element.outerHeight(),this.update(),this.place(),e(window).on("resize",e.proxy(this.place,this)),t&&(t.stopPropagation(),t.preventDefault()),this.element.trigger({type:"show",date:this.date})},hide:function(t){if(this.isInline)return;this.picker.hide(),e(window).off("resize",this.place),this.viewMode=this.startViewMode,this.showMode(),this.isInput||e(document).off("mousedown",this.hide),t&&t.currentTarget.value&&this.setValue(),this.element.trigger({type:"hide",date:this.date})},getDate:function(){var e=this.getUTCDate();return new Date(e.getTime()+e.getTimezoneOffset()*6e4)},getUTCDate:function(){return this.date},setDate:function(e){this.setUTCDate(new Date(e.getTime()-e.getTimezoneOffset()*6e4))},setUTCDate:function(e){this.date=e,this.setValue()},setValue:function(){var e=this.getFormattedDate();this.isInput?this.element.prop("value",e):(this.component&&this.element.find("input").prop("value",e),this.element.data("date",e))},getFormattedDate:function(e){return e==undefined&&(e=this.format),s.formatDate(this.date,e,this.language)},setStartDate:function(e){this.startDate=e||-Infinity,this.startDate!==-Infinity&&(this.startDate=s.parseDate(this.startDate,this.format,this.language)),this.update(),this.updateNavArrows()},setEndDate:function(e){this.endDate=e||Infinity,this.endDate!==Infinity&&(this.endDate=s.parseDate(this.endDate,this.format,this.language)),this.update(),this.updateNavArrows()},place:function(){if(this.isInline)return;var t=parseInt(this.element.parents().filter(function(){return e(this).css("z-index")!="auto"}).first().css("z-index"))+10,n=this.component?this.component.offset():this.element.offset();this.picker.css({top:n.top+this.height,left:n.left,zIndex:t})},update:function(){var e,t=!1;arguments&&arguments.length&&(typeof arguments[0]=="string"||arguments[0]instanceof Date)?(e=arguments[0],t=!0):e=this.isInput?this.element.prop("value"):this.element.data("date")||this.element.find("input").prop("value"),this.date=s.parseDate(e,this.format,this.language),t&&this.setValue(),this.datethis.endDate?this.viewDate=new Date(this.endDate):this.viewDate=new Date(this.date),this.fill()},fillDow:function(){var e=this.weekStart,t="";while(e'+i[this.language].daysMin[e++%7]+"";t+="",this.picker.find(".datepicker-days thead").append(t)},fillMonths:function(){var e="",t=0;while(t<12)e+=''+i[this.language].monthsShort[t++]+"";this.picker.find(".datepicker-months td").html(e)},fill:function(){var e=new Date(this.viewDate),n=e.getUTCFullYear(),r=e.getUTCMonth(),o=this.startDate!==-Infinity?this.startDate.getUTCFullYear():-Infinity,u=this.startDate!==-Infinity?this.startDate.getUTCMonth():-Infinity,a=this.endDate!==Infinity?this.endDate.getUTCFullYear():Infinity,f=this.endDate!==Infinity?this.endDate.getUTCMonth():Infinity,l=this.date&&this.date.valueOf(),c=new Date;this.picker.find(".datepicker-days thead th:eq(1)").text(i[this.language].months[r]+" "+n),this.picker.find("tfoot th.today").text(i[this.language].today).toggle(this.todayBtn!==!1),this.updateNavArrows(),this.fillMonths();var h=t(n,r-1,28,0,0,0,0),p=s.getDaysInMonth(h.getUTCFullYear(),h.getUTCMonth());h.setUTCDate(p),h.setUTCDate(p-(h.getUTCDay()-this.weekStart+7)%7);var d=new Date(h);d.setUTCDate(d.getUTCDate()+42),d=d.valueOf();var v=[],m;while(h.valueOf()"),m="";if(h.getUTCFullYear()n||h.getUTCFullYear()==n&&h.getUTCMonth()>r)m+=" new";this.todayHighlight&&h.getUTCFullYear()==c.getFullYear()&&h.getUTCMonth()==c.getMonth()&&h.getUTCDate()==c.getDate()&&(m+=" today"),l&&h.valueOf()==l&&(m+=" active");if(h.valueOf()this.endDate)m+=" disabled";v.push(''+h.getUTCDate()+""),h.getUTCDay()==this.weekEnd&&v.push(""),h.setUTCDate(h.getUTCDate()+1)}this.picker.find(".datepicker-days tbody").empty().append(v.join(""));var g=this.date&&this.date.getUTCFullYear(),y=this.picker.find(".datepicker-months").find("th:eq(1)").text(n).end().find("span").removeClass("active");g&&g==n&&y.eq(this.date.getUTCMonth()).addClass("active"),(na)&&y.addClass("disabled"),n==o&&y.slice(0,u).addClass("disabled"),n==a&&y.slice(f+1).addClass("disabled"),v="",n=parseInt(n/10,10)*10;var b=this.picker.find(".datepicker-years").find("th:eq(1)").text(n+"-"+(n+9)).end().find("td");n-=1;for(var w=-1;w<11;w++)v+='a?" disabled":"")+'">'+n+"",n+=1;b.html(v)},updateNavArrows:function(){var e=new Date(this.viewDate),t=e.getUTCFullYear(),n=e.getUTCMonth();switch(this.viewMode){case 0:this.startDate!==-Infinity&&t<=this.startDate.getUTCFullYear()&&n<=this.startDate.getUTCMonth()?this.picker.find(".prev").css({visibility:"hidden"}):this.picker.find(".prev").css({visibility:"visible"}),this.endDate!==Infinity&&t>=this.endDate.getUTCFullYear()&&n>=this.endDate.getUTCMonth()?this.picker.find(".next").css({visibility:"hidden"}):this.picker.find(".next").css({visibility:"visible"});break;case 1:case 2:this.startDate!==-Infinity&&t<=this.startDate.getUTCFullYear()?this.picker.find(".prev").css({visibility:"hidden"}):this.picker.find(".prev").css({visibility:"visible"}),this.endDate!==Infinity&&t>=this.endDate.getUTCFullYear()?this.picker.find(".next").css({visibility:"hidden"}):this.picker.find(".next").css({visibility:"visible"})}},click:function(n){n.stopPropagation(),n.preventDefault();var r=e(n.target).closest("span, td, th");if(r.length==1)switch(r[0].nodeName.toLowerCase()){case"th":switch(r[0].className){case"switch":this.showMode(1);break;case"prev":case"next":var i=s.modes[this.viewMode].navStep*(r[0].className=="prev"?-1:1);switch(this.viewMode){case 0:this.viewDate=this.moveMonth(this.viewDate,i);break;case 1:case 2:this.viewDate=this.moveYear(this.viewDate,i)}this.fill();break;case"today":var o=new Date;o=t(o.getFullYear(),o.getMonth(),o.getDate(),0,0,0),this.showMode(-2);var u=this.todayBtn=="linked"?null:"view";this._setDate(o,u)}break;case"span":if(!r.is(".disabled")){this.viewDate.setUTCDate(1);if(r.is(".month")){var a=r.parent().find("span").index(r);this.viewDate.setUTCMonth(a),this.element.trigger({type:"changeMonth",date:this.viewDate})}else{var f=parseInt(r.text(),10)||0;this.viewDate.setUTCFullYear(f),this.element.trigger({type:"changeYear",date:this.viewDate})}this.showMode(-1),this.fill()}break;case"td":if(r.is(".day")&&!r.is(".disabled")){var l=parseInt(r.text(),10)||1,f=this.viewDate.getUTCFullYear(),a=this.viewDate.getUTCMonth();r.is(".old")?a==0?(a=11,f-=1):a-=1:r.is(".new")&&(a==11?(a=0,f+=1):a+=1),this._setDate(t(f,a,l,0,0,0,0))}}},_setDate:function(e,t){if(!t||t=="date")this.date=e;if(!t||t=="view")this.viewDate=e;this.fill(),this.setValue(),this.element.trigger({type:"changeDate",date:this.date});var n;this.isInput?n=this.element:this.component&&(n=this.element.find("input")),n&&(n.change(),this.autoclose&&this.hide())},moveMonth:function(e,t){if(!t)return e;var n=new Date(e.valueOf()),r=n.getUTCDate(),i=n.getUTCMonth(),s=Math.abs(t),o,u;t=t>0?1:-1;if(s==1){u=t==-1?function(){return n.getUTCMonth()==i}:function(){return n.getUTCMonth()!=o},o=i+t,n.setUTCMonth(o);if(o<0||o>11)o=(o+12)%12}else{for(var a=0;a=this.startDate&&e<=this.endDate},keydown:function(e){if(this.picker.is(":not(:visible)")){e.keyCode==27&&this.show();return}var t=!1,n,r,i,s,o;switch(e.keyCode){case 27:this.hide(),e.preventDefault();break;case 37:case 39:if(!this.keyboardNavigation)break;n=e.keyCode==37?-1:1,e.ctrlKey?(s=this.moveYear(this.date,n),o=this.moveYear(this.viewDate,n)):e.shiftKey?(s=this.moveMonth(this.date,n),o=this.moveMonth(this.viewDate,n)):(s=new Date(this.date),s.setUTCDate(this.date.getUTCDate()+n),o=new Date(this.viewDate),o.setUTCDate(this.viewDate.getUTCDate()+n)),this.dateWithinRange(s)&&(this.date=s,this.viewDate=o,this.setValue(),this.update(),e.preventDefault(),t=!0);break;case 38:case 40:if(!this.keyboardNavigation)break;n=e.keyCode==38?-1:1,e.ctrlKey?(s=this.moveYear(this.date,n),o=this.moveYear(this.viewDate,n)):e.shiftKey?(s=this.moveMonth(this.date,n),o=this.moveMonth(this.viewDate,n)):(s=new Date(this.date),s.setUTCDate(this.date.getUTCDate()+n*7),o=new Date(this.viewDate),o.setUTCDate(this.viewDate.getUTCDate()+n*7)),this.dateWithinRange(s)&&(this.date=s,this.viewDate=o,this.setValue(),this.update(),e.preventDefault(),t=!0);break;case 13:this.hide(),e.preventDefault();break;case 9:this.hide()}if(t){this.element.trigger({type:"changeDate",date:this.date});var u;this.isInput?u=this.element:this.component&&(u=this.element.find("input")),u&&u.change()}},showMode:function(e){e&&(this.viewMode=Math.max(0,Math.min(2,this.viewMode+e))),this.picker.find(">div").hide().filter(".datepicker-"+s.modes[this.viewMode].clsName).css("display","block"),this.updateNavArrows()}},e.fn.datepicker=function(t){var n=Array.apply(null,arguments);return n.shift(),this.each(function(){var i=e(this),s=i.data("datepicker"),o=typeof t=="object"&&t;s||i.data("datepicker",s=new r(this,e.extend({},e.fn.datepicker.defaults,o))),typeof t=="string"&&typeof s[t]=="function"&&s[t].apply(s,n)})},e.fn.datepicker.defaults={},e.fn.datepicker.Constructor=r;var i=e.fn.datepicker.dates={en:{days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],daysShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat","Sun"],daysMin:["Su","Mo","Tu","We","Th","Fr","Sa","Su"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],monthsShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],today:"Today"}},s={modes:[{clsName:"days",navFnc:"Month",navStep:1},{clsName:"months",navFnc:"FullYear",navStep:1},{clsName:"years",navFnc:"FullYear",navStep:10}],isLeapYear:function(e){return e%4===0&&e%100!==0||e%400===0},getDaysInMonth:function(e,t){return[31,s.isLeapYear(e)?29:28,31,30,31,30,31,31,30,31,30,31][t]},validParts:/dd?|mm?|MM?|yy(?:yy)?/g,nonpunctuation:/[^ -\/:-@\[-`{-~\t\n\r]+/g,parseFormat:function(e){var t=e.replace(this.validParts,"\0").split("\0"),n=e.match(this.validParts);if(!t||!t.length||!n||n.length==0)throw new Error("Invalid date format.");return{separators:t,parts:n}},parseDate:function(n,s,o){if(n instanceof Date)return n;if(/^[-+]\d+[dmwy]([\s,]+[-+]\d+[dmwy])*$/.test(n)){var u=/([-+]\d+)([dmwy])/,a=n.match(/([-+]\d+)([dmwy])/g),f,l;n=new Date;for(var c=0;c',contTemplate:'',footTemplate:''};s.template='
'+s.headTemplate+""+s.footTemplate+"
"+"
"+'
'+''+s.headTemplate+s.contTemplate+s.footTemplate+"
"+"
"+'
'+''+s.headTemplate+s.contTemplate+s.footTemplate+"
"+"
"+"
",e.fn.datepicker.DPGlobal=s}(window.jQuery); \ No newline at end of file diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/no-theme/jquery-ui.min.css b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/no-theme/jquery-ui.min.css deleted file mode 100644 index 4649e5d..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/no-theme/jquery-ui.min.css +++ /dev/null @@ -1,7 +0,0 @@ -/*! jQuery UI - v1.11.1 - 2014-08-23 -* 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=Trebuchet%20MS%2CTahoma%2CVerdana%2CArial%2Csans-serif&fwDefault=bold&fsDefault=1.1em&cornerRadius=4px&bgColorHeader=f6a828&bgTextureHeader=gloss_wave&bgImgOpacityHeader=35&borderColorHeader=e78f08&fcHeader=ffffff&iconColorHeader=ffffff&bgColorContent=eeeeee&bgTextureContent=highlight_soft&bgImgOpacityContent=100&borderColorContent=dddddd&fcContent=333333&iconColorContent=222222&bgColorDefault=f6f6f6&bgTextureDefault=glass&bgImgOpacityDefault=100&borderColorDefault=cccccc&fcDefault=1c94c4&iconColorDefault=ef8c08&bgColorHover=fdf5ce&bgTextureHover=glass&bgImgOpacityHover=100&borderColorHover=fbcb09&fcHover=c77405&iconColorHover=ef8c08&bgColorActive=ffffff&bgTextureActive=glass&bgImgOpacityActive=65&borderColorActive=fbd850&fcActive=eb8f00&iconColorActive=ef8c08&bgColorHighlight=ffe45c&bgTextureHighlight=highlight_soft&bgImgOpacityHighlight=75&borderColorHighlight=fed22f&fcHighlight=363636&iconColorHighlight=228ef1&bgColorError=b81900&bgTextureError=diagonals_thick&bgImgOpacityError=18&borderColorError=cd0a0a&fcError=ffffff&iconColorError=ffd27a&bgColorOverlay=666666&bgTextureOverlay=diagonals_thick&bgImgOpacityOverlay=20&opacityOverlay=50&bgColorShadow=000000&bgTextureShadow=flat&bgImgOpacityShadow=10&opacityShadow=20&thicknessShadow=5px&offsetTopShadow=-5px&offsetLeftShadow=-5px&cornerRadiusShadow=5px -* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ - -.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}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.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;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}.ui-button,.ui-button:link,.ui-button:visited,.ui-button:hover,.ui-button:active{text-decoration:none}.ui-button-icon-only{width:2.2em}button.ui-button-icon-only{width:2.4em}.ui-button-icons-only{width:3.4em}button.ui-button-icons-only{width:3.7em}.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}input.ui-button{padding:.4em 1em}.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}.ui-buttonset{margin-right:7px}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em}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}.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}.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;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}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.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);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;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}.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}.ui-spinner a.ui-spinner-button{border-top:none;border-bottom:none;border-right:none}.ui-spinner .ui-icon{position:absolute;margin-top:-8px;top:50%;left:0}.ui-spinner-up{top:0}.ui-spinner-down{bottom:0}.ui-spinner .ui-icon-triangle-1-s{background-position:-65px -16px}.ui-tabs{position:relative;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}.ui-widget{font-family:Trebuchet MS,Tahoma,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:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #ddd;background:#eee url("images/ui-bg_highlight-soft_100_eeeeee_1x100.png") 50% top repeat-x;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #e78f08;background:#f6a828 url("images/ui-bg_gloss-wave_35_f6a828_500x100.png") 50% 50% repeat-x;color:#fff;font-weight:bold}.ui-widget-header a{color:#fff}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #ccc;background:#f6f6f6 url("images/ui-bg_glass_100_f6f6f6_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#1c94c4}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#1c94c4;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 #fbcb09;background:#fdf5ce url("images/ui-bg_glass_100_fdf5ce_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#c77405}.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:#c77405;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #fbd850;background:#fff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#eb8f00}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#eb8f00;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fed22f;background:#ffe45c url("images/ui-bg_highlight-soft_75_ffe45c_1x100.png") 50% top 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:#b81900 url("images/ui-bg_diagonals-thick_18_b81900_40x40.png") 50% 50% repeat;color:#fff}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#fff}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#fff}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.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_ffffff_256x240.png")}.ui-state-default .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-active .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-highlight .ui-icon{background-image:url("images/ui-icons_228ef1_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_ffd27a_256x240.png")}.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{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{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}.ui-widget-overlay{background:#666 url("images/ui-bg_diagonals-thick_20_666666_40x40.png") 50% 50% repeat;opacity:.5;filter:Alpha(Opacity=50)}.ui-widget-shadow{margin:-5px 0 0 -5px;padding:5px;background:#000 url("images/ui-bg_flat_10_000000_40x100.png") 50% 50% repeat-x;opacity:.2;filter:Alpha(Opacity=20);border-radius:5px} \ No newline at end of file diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/no-theme/jquery-ui.structure.min.css b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/no-theme/jquery-ui.structure.min.css deleted file mode 100644 index 52b2349..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/no-theme/jquery-ui.structure.min.css +++ /dev/null @@ -1,5 +0,0 @@ -/*! jQuery UI - v1.11.1 - 2014-08-19 -* http://jqueryui.com -* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ - -.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}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important}.ui-icon{display:block;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.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;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}.ui-button,.ui-button:link,.ui-button:visited,.ui-button:hover,.ui-button:active{text-decoration:none}.ui-button-icon-only{width:2.2em}button.ui-button-icon-only{width:2.4em}.ui-button-icons-only{width:3.4em}button.ui-button-icons-only{width:3.7em}.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}input.ui-button{padding:.4em 1em}.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}.ui-buttonset{margin-right:7px}.ui-buttonset .ui-button{margin-left:0;margin-right:-.3em}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}.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}.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;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}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.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);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;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}.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}.ui-spinner a.ui-spinner-button{border-top:none;border-bottom:none;border-right:none}.ui-spinner .ui-icon{position:absolute;margin-top:-8px;top:50%;left:0}.ui-spinner-up{top:0}.ui-spinner-down{bottom:0}.ui-spinner .ui-icon-triangle-1-s{background-position:-65px -16px}.ui-tabs{position:relative;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} \ No newline at end of file diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png deleted file mode 100644 index 2639bee..0000000 Binary files a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_diagonals-thick_18_b81900_40x40.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png deleted file mode 100644 index f2d760e..0000000 Binary files a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_diagonals-thick_20_666666_40x40.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png deleted file mode 100644 index ad01bf6..0000000 Binary files a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_flat_10_000000_40x100.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png deleted file mode 100644 index dad987a..0000000 Binary files a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_glass_100_f6f6f6_1x400.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png deleted file mode 100644 index 0875e4f..0000000 Binary files a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_glass_100_fdf5ce_1x400.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png deleted file mode 100644 index 0af0537..0000000 Binary files a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_glass_65_ffffff_1x400.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png deleted file mode 100644 index e6e5130..0000000 Binary files a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_gloss-wave_35_f6a828_500x100.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png deleted file mode 100644 index be87342..0000000 Binary files a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_highlight-soft_100_eeeeee_1x100.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png deleted file mode 100644 index fe75af5..0000000 Binary files a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-bg_highlight-soft_75_ffe45c_1x100.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_222222_256x240.png b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_222222_256x240.png deleted file mode 100644 index 5977ef2..0000000 Binary files a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_222222_256x240.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_228ef1_256x240.png b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_228ef1_256x240.png deleted file mode 100644 index 8df056f..0000000 Binary files a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_228ef1_256x240.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_ef8c08_256x240.png b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_ef8c08_256x240.png deleted file mode 100644 index 9d3db37..0000000 Binary files a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_ef8c08_256x240.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_ffd27a_256x240.png b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_ffd27a_256x240.png deleted file mode 100644 index 392fd6e..0000000 Binary files a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_ffd27a_256x240.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_ffffff_256x240.png b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_ffffff_256x240.png deleted file mode 100644 index a45283b..0000000 Binary files a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/images/ui-icons_ffffff_256x240.png and /dev/null differ diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/jquery-ui.theme.min.css b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/jquery-ui.theme.min.css deleted file mode 100644 index 6bdc4ef..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/css/ui-lightness/jquery-ui.theme.min.css +++ /dev/null @@ -1,5 +0,0 @@ -/*! jQuery UI - v1.11.1 - 2014-08-23 -* http://jqueryui.com -* Copyright 2014 jQuery Foundation and other contributors; Licensed MIT */ - -.ui-widget{font-family:Trebuchet MS,Tahoma,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:Trebuchet MS,Tahoma,Verdana,Arial,sans-serif;font-size:1em}.ui-widget-content{border:1px solid #ddd;background:#eee url("images/ui-bg_highlight-soft_100_eeeeee_1x100.png") 50% top repeat-x;color:#333}.ui-widget-content a{color:#333}.ui-widget-header{border:1px solid #e78f08;background:#f6a828 url("images/ui-bg_gloss-wave_35_f6a828_500x100.png") 50% 50% repeat-x;color:#fff;font-weight:bold}.ui-widget-header a{color:#fff}.ui-state-default,.ui-widget-content .ui-state-default,.ui-widget-header .ui-state-default{border:1px solid #ccc;background:#f6f6f6 url("images/ui-bg_glass_100_f6f6f6_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#1c94c4}.ui-state-default a,.ui-state-default a:link,.ui-state-default a:visited{color:#1c94c4;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 #fbcb09;background:#fdf5ce url("images/ui-bg_glass_100_fdf5ce_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#c77405}.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:#c77405;text-decoration:none}.ui-state-active,.ui-widget-content .ui-state-active,.ui-widget-header .ui-state-active{border:1px solid #fbd850;background:#fff url("images/ui-bg_glass_65_ffffff_1x400.png") 50% 50% repeat-x;font-weight:bold;color:#eb8f00}.ui-state-active a,.ui-state-active a:link,.ui-state-active a:visited{color:#eb8f00;text-decoration:none}.ui-state-highlight,.ui-widget-content .ui-state-highlight,.ui-widget-header .ui-state-highlight{border:1px solid #fed22f;background:#ffe45c url("images/ui-bg_highlight-soft_75_ffe45c_1x100.png") 50% top 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:#b81900 url("images/ui-bg_diagonals-thick_18_b81900_40x40.png") 50% 50% repeat;color:#fff}.ui-state-error a,.ui-widget-content .ui-state-error a,.ui-widget-header .ui-state-error a{color:#fff}.ui-state-error-text,.ui-widget-content .ui-state-error-text,.ui-widget-header .ui-state-error-text{color:#fff}.ui-priority-primary,.ui-widget-content .ui-priority-primary,.ui-widget-header .ui-priority-primary{font-weight:bold}.ui-priority-secondary,.ui-widget-content .ui-priority-secondary,.ui-widget-header .ui-priority-secondary{opacity:.7;filter:Alpha(Opacity=70);font-weight:normal}.ui-state-disabled,.ui-widget-content .ui-state-disabled,.ui-widget-header .ui-state-disabled{opacity:.35;filter:Alpha(Opacity=35);background-image:none}.ui-state-disabled .ui-icon{filter:Alpha(Opacity=35)}.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_ffffff_256x240.png")}.ui-state-default .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-hover .ui-icon,.ui-state-focus .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-active .ui-icon{background-image:url("images/ui-icons_ef8c08_256x240.png")}.ui-state-highlight .ui-icon{background-image:url("images/ui-icons_228ef1_256x240.png")}.ui-state-error .ui-icon,.ui-state-error-text .ui-icon{background-image:url("images/ui-icons_ffd27a_256x240.png")}.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{background-position:-80px -160px}.ui-icon-stop{background-position:-96px -160px}.ui-icon-eject{background-position:-112px -160px}.ui-icon-volume-off{background-position:-128px -160px}.ui-icon-volume-on{background-position:-144px -160px}.ui-icon-power{background-position:0 -176px}.ui-icon-signal-diag{background-position:-16px -176px}.ui-icon-signal{background-position:-32px -176px}.ui-icon-battery-0{background-position:-48px -176px}.ui-icon-battery-1{background-position:-64px -176px}.ui-icon-battery-2{background-position:-80px -176px}.ui-icon-battery-3{background-position:-96px -176px}.ui-icon-circle-plus{background-position:0 -192px}.ui-icon-circle-minus{background-position:-16px -192px}.ui-icon-circle-close{background-position:-32px -192px}.ui-icon-circle-triangle-e{background-position:-48px -192px}.ui-icon-circle-triangle-s{background-position:-64px -192px}.ui-icon-circle-triangle-w{background-position:-80px -192px}.ui-icon-circle-triangle-n{background-position:-96px -192px}.ui-icon-circle-arrow-e{background-position:-112px -192px}.ui-icon-circle-arrow-s{background-position:-128px -192px}.ui-icon-circle-arrow-w{background-position:-144px -192px}.ui-icon-circle-arrow-n{background-position:-160px -192px}.ui-icon-circle-zoomin{background-position:-176px -192px}.ui-icon-circle-zoomout{background-position:-192px -192px}.ui-icon-circle-check{background-position:-208px -192px}.ui-icon-circlesmall-plus{background-position:0 -208px}.ui-icon-circlesmall-minus{background-position:-16px -208px}.ui-icon-circlesmall-close{background-position:-32px -208px}.ui-icon-squaresmall-plus{background-position:-48px -208px}.ui-icon-squaresmall-minus{background-position:-64px -208px}.ui-icon-squaresmall-close{background-position:-80px -208px}.ui-icon-grip-dotted-vertical{background-position:0 -224px}.ui-icon-grip-dotted-horizontal{background-position:-16px -224px}.ui-icon-grip-solid-vertical{background-position:-32px -224px}.ui-icon-grip-solid-horizontal{background-position:-48px -224px}.ui-icon-gripsmall-diagonal-se{background-position:-64px -224px}.ui-icon-grip-diagonal-se{background-position:-80px -224px}.ui-corner-all,.ui-corner-top,.ui-corner-left,.ui-corner-tl{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}.ui-widget-overlay{background:#666 url("images/ui-bg_diagonals-thick_20_666666_40x40.png") 50% 50% repeat;opacity:.5;filter:Alpha(Opacity=50)}.ui-widget-shadow{margin:-5px 0 0 -5px;padding:5px;background:#000 url("images/ui-bg_flat_10_000000_40x100.png") 50% 50% repeat-x;opacity:.2;filter:Alpha(Opacity=20);border-radius:5px} \ No newline at end of file diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/js/jquery-ui.min.js b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/js/jquery-ui.min.js deleted file mode 100644 index 71b02d1..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery-ui/js/jquery-ui.min.js +++ /dev/null @@ -1,13 +0,0 @@ -/*! jQuery UI - v1.11.1 - 2014-08-19 -* 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 2014 jQuery Foundation and other contributors; Licensed MIT */ - -(function(e){"function"==typeof define&&define.amd?define(["jquery"],e):e(jQuery)})(function(e){function t(t,s){var n,a,o,r=t.nodeName.toLowerCase();return"area"===r?(n=t.parentNode,a=n.name,t.href&&a&&"map"===n.nodeName.toLowerCase()?(o=e("img[usemap='#"+a+"']")[0],!!o&&i(o)):!1):(/input|select|textarea|button|object/.test(r)?!t.disabled:"a"===r?t.href||s:s)&&i(t)}function i(t){return e.expr.filters.visible(t)&&!e(t).parents().addBack().filter(function(){return"hidden"===e.css(this,"visibility")}).length}function s(e){for(var t,i;e.length&&e[0]!==document;){if(t=e.css("position"),("absolute"===t||"relative"===t||"fixed"===t)&&(i=parseInt(e.css("zIndex"),10),!isNaN(i)&&0!==i))return i;e=e.parent()}return 0}function n(){this._curInst=null,this._keyEvent=!1,this._disabledInputs=[],this._datepickerShowing=!1,this._inDialog=!1,this._mainDivId="ui-datepicker-div",this._inlineClass="ui-datepicker-inline",this._appendClass="ui-datepicker-append",this._triggerClass="ui-datepicker-trigger",this._dialogClass="ui-datepicker-dialog",this._disableClass="ui-datepicker-disabled",this._unselectableClass="ui-datepicker-unselectable",this._currentClass="ui-datepicker-current-day",this._dayOverClass="ui-datepicker-days-cell-over",this.regional=[],this.regional[""]={closeText:"Done",prevText:"Prev",nextText:"Next",currentText:"Today",monthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],monthNamesShort:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayNamesShort:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dayNamesMin:["Su","Mo","Tu","We","Th","Fr","Sa"],weekHeader:"Wk",dateFormat:"mm/dd/yy",firstDay:0,isRTL:!1,showMonthAfterYear:!1,yearSuffix:""},this._defaults={showOn:"focus",showAnim:"fadeIn",showOptions:{},defaultDate:null,appendText:"",buttonText:"...",buttonImage:"",buttonImageOnly:!1,hideIfNoPrevNext:!1,navigationAsDateFormat:!1,gotoCurrent:!1,changeMonth:!1,changeYear:!1,yearRange:"c-10:c+10",showOtherMonths:!1,selectOtherMonths:!1,showWeek:!1,calculateWeek:this.iso8601Week,shortYearCutoff:"+10",minDate:null,maxDate:null,duration:"fast",beforeShowDay:null,beforeShow:null,onSelect:null,onChangeMonthYear:null,onClose:null,numberOfMonths:1,showCurrentAtPos:0,stepMonths:1,stepBigMonths:12,altField:"",altFormat:"",constrainInput:!0,showButtonPanel:!1,autoSize:!1,disabled:!1},e.extend(this._defaults,this.regional[""]),this.regional.en=e.extend(!0,{},this.regional[""]),this.regional["en-US"]=e.extend(!0,{},this.regional.en),this.dpDiv=a(e("
"))}function a(t){var i="button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";return t.delegate(i,"mouseout",function(){e(this).removeClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&e(this).removeClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&e(this).removeClass("ui-datepicker-next-hover")}).delegate(i,"mouseover",o)}function o(){e.datepicker._isDisabledDatepicker(v.inline?v.dpDiv.parent()[0]:v.input[0])||(e(this).parents(".ui-datepicker-calendar").find("a").removeClass("ui-state-hover"),e(this).addClass("ui-state-hover"),-1!==this.className.indexOf("ui-datepicker-prev")&&e(this).addClass("ui-datepicker-prev-hover"),-1!==this.className.indexOf("ui-datepicker-next")&&e(this).addClass("ui-datepicker-next-hover"))}function r(t,i){e.extend(t,i);for(var s in i)null==i[s]&&(t[s]=i[s]);return t}function h(e){return function(){var t=this.element.val();e.apply(this,arguments),this._refresh(),t!==this.element.val()&&this._trigger("change")}}e.ui=e.ui||{},e.extend(e.ui,{version:"1.11.1",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}}),e.fn.extend({scrollParent:function(t){var i=this.css("position"),s="absolute"===i,n=t?/(auto|scroll|hidden)/:/(auto|scroll)/,a=this.parents().filter(function(){var t=e(this);return s&&"static"===t.css("position")?!1:n.test(t.css("overflow")+t.css("overflow-y")+t.css("overflow-x"))}).eq(0);return"fixed"!==i&&a.length?a:e(this[0].ownerDocument||document)},uniqueId:function(){var e=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++e)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&e(this).removeAttr("id")})}}),e.extend(e.expr[":"],{data:e.expr.createPseudo?e.expr.createPseudo(function(t){return function(i){return!!e.data(i,t)}}):function(t,i,s){return!!e.data(t,s[3])},focusable:function(i){return t(i,!isNaN(e.attr(i,"tabindex")))},tabbable:function(i){var s=e.attr(i,"tabindex"),n=isNaN(s);return(n||s>=0)&&t(i,!n)}}),e("").outerWidth(1).jquery||e.each(["Width","Height"],function(t,i){function s(t,i,s,a){return e.each(n,function(){i-=parseFloat(e.css(t,"padding"+this))||0,s&&(i-=parseFloat(e.css(t,"border"+this+"Width"))||0),a&&(i-=parseFloat(e.css(t,"margin"+this))||0)}),i}var n="Width"===i?["Left","Right"]:["Top","Bottom"],a=i.toLowerCase(),o={innerWidth:e.fn.innerWidth,innerHeight:e.fn.innerHeight,outerWidth:e.fn.outerWidth,outerHeight:e.fn.outerHeight};e.fn["inner"+i]=function(t){return void 0===t?o["inner"+i].call(this):this.each(function(){e(this).css(a,s(this,t)+"px")})},e.fn["outer"+i]=function(t,n){return"number"!=typeof t?o["outer"+i].call(this,t):this.each(function(){e(this).css(a,s(this,t,!0,n)+"px")})}}),e.fn.addBack||(e.fn.addBack=function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}),e("").data("a-b","a").removeData("a-b").data("a-b")&&(e.fn.removeData=function(t){return function(i){return arguments.length?t.call(this,e.camelCase(i)):t.call(this)}}(e.fn.removeData)),e.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase()),e.fn.extend({focus:function(t){return function(i,s){return"number"==typeof i?this.each(function(){var t=this;setTimeout(function(){e(t).focus(),s&&s.call(t)},i)}):t.apply(this,arguments)}}(e.fn.focus),disableSelection:function(){var e="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.bind(e+".ui-disableSelection",function(e){e.preventDefault()})}}(),enableSelection:function(){return this.unbind(".ui-disableSelection")},zIndex:function(t){if(void 0!==t)return this.css("zIndex",t);if(this.length)for(var i,s,n=e(this[0]);n.length&&n[0]!==document;){if(i=n.css("position"),("absolute"===i||"relative"===i||"fixed"===i)&&(s=parseInt(n.css("zIndex"),10),!isNaN(s)&&0!==s))return s;n=n.parent()}return 0}}),e.ui.plugin={add:function(t,i,s){var n,a=e.ui[t].prototype;for(n in s)a.plugins[n]=a.plugins[n]||[],a.plugins[n].push([i,s[n]])},call:function(e,t,i,s){var n,a=e.plugins[t];if(a&&(s||e.element[0].parentNode&&11!==e.element[0].parentNode.nodeType))for(n=0;a.length>n;n++)e.options[a[n][0]]&&a[n][1].apply(e.element,i)}};var l=0,u=Array.prototype.slice;e.cleanData=function(t){return function(i){var s,n,a;for(a=0;null!=(n=i[a]);a++)try{s=e._data(n,"events"),s&&s.remove&&e(n).triggerHandler("remove")}catch(o){}t(i)}}(e.cleanData),e.widget=function(t,i,s){var n,a,o,r,h={},l=t.split(".")[0];return t=t.split(".")[1],n=l+"-"+t,s||(s=i,i=e.Widget),e.expr[":"][n.toLowerCase()]=function(t){return!!e.data(t,n)},e[l]=e[l]||{},a=e[l][t],o=e[l][t]=function(e,t){return this._createWidget?(arguments.length&&this._createWidget(e,t),void 0):new o(e,t)},e.extend(o,a,{version:s.version,_proto:e.extend({},s),_childConstructors:[]}),r=new i,r.options=e.widget.extend({},r.options),e.each(s,function(t,s){return e.isFunction(s)?(h[t]=function(){var e=function(){return i.prototype[t].apply(this,arguments)},n=function(e){return i.prototype[t].apply(this,e)};return function(){var t,i=this._super,a=this._superApply;return this._super=e,this._superApply=n,t=s.apply(this,arguments),this._super=i,this._superApply=a,t}}(),void 0):(h[t]=s,void 0)}),o.prototype=e.widget.extend(r,{widgetEventPrefix:a?r.widgetEventPrefix||t:t},h,{constructor:o,namespace:l,widgetName:t,widgetFullName:n}),a?(e.each(a._childConstructors,function(t,i){var s=i.prototype;e.widget(s.namespace+"."+s.widgetName,o,i._proto)}),delete a._childConstructors):i._childConstructors.push(o),e.widget.bridge(t,o),o},e.widget.extend=function(t){for(var i,s,n=u.call(arguments,1),a=0,o=n.length;o>a;a++)for(i in n[a])s=n[a][i],n[a].hasOwnProperty(i)&&void 0!==s&&(t[i]=e.isPlainObject(s)?e.isPlainObject(t[i])?e.widget.extend({},t[i],s):e.widget.extend({},s):s);return t},e.widget.bridge=function(t,i){var s=i.prototype.widgetFullName||t;e.fn[t]=function(n){var a="string"==typeof n,o=u.call(arguments,1),r=this;return n=!a&&o.length?e.widget.extend.apply(null,[n].concat(o)):n,a?this.each(function(){var i,a=e.data(this,s);return"instance"===n?(r=a,!1):a?e.isFunction(a[n])&&"_"!==n.charAt(0)?(i=a[n].apply(a,o),i!==a&&void 0!==i?(r=i&&i.jquery?r.pushStack(i.get()):i,!1):void 0):e.error("no such method '"+n+"' for "+t+" widget instance"):e.error("cannot call methods on "+t+" prior to initialization; "+"attempted to call method '"+n+"'")}):this.each(function(){var t=e.data(this,s);t?(t.option(n||{}),t._init&&t._init()):e.data(this,s,new i(n,this))}),r}},e.Widget=function(){},e.Widget._childConstructors=[],e.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"
",options:{disabled:!1,create:null},_createWidget:function(t,i){i=e(i||this.defaultElement||this)[0],this.element=e(i),this.uuid=l++,this.eventNamespace="."+this.widgetName+this.uuid,this.options=e.widget.extend({},this.options,this._getCreateOptions(),t),this.bindings=e(),this.hoverable=e(),this.focusable=e(),i!==this&&(e.data(i,this.widgetFullName,this),this._on(!0,this.element,{remove:function(e){e.target===i&&this.destroy()}}),this.document=e(i.style?i.ownerDocument:i.document||i),this.window=e(this.document[0].defaultView||this.document[0].parentWindow)),this._create(),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:e.noop,_getCreateEventData:e.noop,_create:e.noop,_init:e.noop,destroy:function(){this._destroy(),this.element.unbind(this.eventNamespace).removeData(this.widgetFullName).removeData(e.camelCase(this.widgetFullName)),this.widget().unbind(this.eventNamespace).removeAttr("aria-disabled").removeClass(this.widgetFullName+"-disabled "+"ui-state-disabled"),this.bindings.unbind(this.eventNamespace),this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus")},_destroy:e.noop,widget:function(){return this.element},option:function(t,i){var s,n,a,o=t;if(0===arguments.length)return e.widget.extend({},this.options);if("string"==typeof t)if(o={},s=t.split("."),t=s.shift(),s.length){for(n=o[t]=e.widget.extend({},this.options[t]),a=0;s.length-1>a;a++)n[s[a]]=n[s[a]]||{},n=n[s[a]];if(t=s.pop(),1===arguments.length)return void 0===n[t]?null:n[t];n[t]=i}else{if(1===arguments.length)return void 0===this.options[t]?null:this.options[t];o[t]=i}return this._setOptions(o),this},_setOptions:function(e){var t;for(t in e)this._setOption(t,e[t]);return this},_setOption:function(e,t){return this.options[e]=t,"disabled"===e&&(this.widget().toggleClass(this.widgetFullName+"-disabled",!!t),t&&(this.hoverable.removeClass("ui-state-hover"),this.focusable.removeClass("ui-state-focus"))),this},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_on:function(t,i,s){var n,a=this;"boolean"!=typeof t&&(s=i,i=t,t=!1),s?(i=n=e(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),e.each(s,function(s,o){function r(){return t||a.options.disabled!==!0&&!e(this).hasClass("ui-state-disabled")?("string"==typeof o?a[o]:o).apply(a,arguments):void 0}"string"!=typeof o&&(r.guid=o.guid=o.guid||r.guid||e.guid++);var h=s.match(/^([\w:-]*)\s*(.*)$/),l=h[1]+a.eventNamespace,u=h[2];u?n.delegate(u,l,r):i.bind(l,r)})},_off:function(e,t){t=(t||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.unbind(t).undelegate(t)},_delay:function(e,t){function i(){return("string"==typeof e?s[e]:e).apply(s,arguments)}var s=this;return setTimeout(i,t||0)},_hoverable:function(t){this.hoverable=this.hoverable.add(t),this._on(t,{mouseenter:function(t){e(t.currentTarget).addClass("ui-state-hover")},mouseleave:function(t){e(t.currentTarget).removeClass("ui-state-hover")}})},_focusable:function(t){this.focusable=this.focusable.add(t),this._on(t,{focusin:function(t){e(t.currentTarget).addClass("ui-state-focus")},focusout:function(t){e(t.currentTarget).removeClass("ui-state-focus")}})},_trigger:function(t,i,s){var n,a,o=this.options[t];if(s=s||{},i=e.Event(i),i.type=(t===this.widgetEventPrefix?t:this.widgetEventPrefix+t).toLowerCase(),i.target=this.element[0],a=i.originalEvent)for(n in a)n in i||(i[n]=a[n]);return this.element.trigger(i,s),!(e.isFunction(o)&&o.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},e.each({show:"fadeIn",hide:"fadeOut"},function(t,i){e.Widget.prototype["_"+t]=function(s,n,a){"string"==typeof n&&(n={effect:n});var o,r=n?n===!0||"number"==typeof n?i:n.effect||i:t;n=n||{},"number"==typeof n&&(n={duration:n}),o=!e.isEmptyObject(n),n.complete=a,n.delay&&s.delay(n.delay),o&&e.effects&&e.effects.effect[r]?s[t](n):r!==t&&s[r]?s[r](n.duration,n.easing,a):s.queue(function(i){e(this)[t](),a&&a.call(s[0]),i()})}}),e.widget;var d=!1;e(document).mouseup(function(){d=!1}),e.widget("ui.mouse",{version:"1.11.1",options:{cancel:"input,textarea,button,select,option",distance:1,delay:0},_mouseInit:function(){var t=this;this.element.bind("mousedown."+this.widgetName,function(e){return t._mouseDown(e)}).bind("click."+this.widgetName,function(i){return!0===e.data(i.target,t.widgetName+".preventClickEvent")?(e.removeData(i.target,t.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.unbind("."+this.widgetName),this._mouseMoveDelegate&&this.document.unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(t){if(!d){this._mouseStarted&&this._mouseUp(t),this._mouseDownEvent=t;var i=this,s=1===t.which,n="string"==typeof this.options.cancel&&t.target.nodeName?e(t.target).closest(this.options.cancel).length:!1;return s&&!n&&this._mouseCapture(t)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(t)!==!1,!this._mouseStarted)?(t.preventDefault(),!0):(!0===e.data(t.target,this.widgetName+".preventClickEvent")&&e.removeData(t.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(e){return i._mouseMove(e)},this._mouseUpDelegate=function(e){return i._mouseUp(e)},this.document.bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate),t.preventDefault(),d=!0,!0)):!0}},_mouseMove:function(t){return e.ui.ie&&(!document.documentMode||9>document.documentMode)&&!t.button?this._mouseUp(t):t.which?this._mouseStarted?(this._mouseDrag(t),t.preventDefault()):(this._mouseDistanceMet(t)&&this._mouseDelayMet(t)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,t)!==!1,this._mouseStarted?this._mouseDrag(t):this._mouseUp(t)),!this._mouseStarted):this._mouseUp(t)},_mouseUp:function(t){return this.document.unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,t.target===this._mouseDownEvent.target&&e.data(t.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(t)),d=!1,!1},_mouseDistanceMet:function(e){return Math.max(Math.abs(this._mouseDownEvent.pageX-e.pageX),Math.abs(this._mouseDownEvent.pageY-e.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),function(){function t(e,t,i){return[parseFloat(e[0])*(p.test(e[0])?t/100:1),parseFloat(e[1])*(p.test(e[1])?i/100:1)]}function i(t,i){return parseInt(e.css(t,i),10)||0}function s(t){var i=t[0];return 9===i.nodeType?{width:t.width(),height:t.height(),offset:{top:0,left:0}}:e.isWindow(i)?{width:t.width(),height:t.height(),offset:{top:t.scrollTop(),left:t.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:t.outerWidth(),height:t.outerHeight(),offset:t.offset()}}e.ui=e.ui||{};var n,a,o=Math.max,r=Math.abs,h=Math.round,l=/left|center|right/,u=/top|center|bottom/,d=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,p=/%$/,f=e.fn.position;e.position={scrollbarWidth:function(){if(void 0!==n)return n;var t,i,s=e("
"),a=s.children()[0];return e("body").append(s),t=a.offsetWidth,s.css("overflow","scroll"),i=a.offsetWidth,t===i&&(i=s[0].clientWidth),s.remove(),n=t-i},getScrollInfo:function(t){var i=t.isWindow||t.isDocument?"":t.element.css("overflow-x"),s=t.isWindow||t.isDocument?"":t.element.css("overflow-y"),n="scroll"===i||"auto"===i&&t.widthi?"left":t>0?"right":"center",vertical:0>a?"top":s>0?"bottom":"middle"};d>m&&m>r(t+i)&&(h.horizontal="center"),c>g&&g>r(s+a)&&(h.vertical="middle"),h.important=o(r(t),r(i))>o(r(s),r(a))?"horizontal":"vertical",n.using.call(this,e,h)}),u.offset(e.extend(N,{using:l}))})},e.ui.position={fit:{left:function(e,t){var i,s=t.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=e.left-t.collisionPosition.marginLeft,h=n-r,l=r+t.collisionWidth-a-n;t.collisionWidth>a?h>0&&0>=l?(i=e.left+h+t.collisionWidth-a-n,e.left+=h-i):e.left=l>0&&0>=h?n:h>l?n+a-t.collisionWidth:n:h>0?e.left+=h:l>0?e.left-=l:e.left=o(e.left-r,e.left)},top:function(e,t){var i,s=t.within,n=s.isWindow?s.scrollTop:s.offset.top,a=t.within.height,r=e.top-t.collisionPosition.marginTop,h=n-r,l=r+t.collisionHeight-a-n;t.collisionHeight>a?h>0&&0>=l?(i=e.top+h+t.collisionHeight-a-n,e.top+=h-i):e.top=l>0&&0>=h?n:h>l?n+a-t.collisionHeight:n:h>0?e.top+=h:l>0?e.top-=l:e.top=o(e.top-r,e.top)}},flip:{left:function(e,t){var i,s,n=t.within,a=n.offset.left+n.scrollLeft,o=n.width,h=n.isWindow?n.scrollLeft:n.offset.left,l=e.left-t.collisionPosition.marginLeft,u=l-h,d=l+t.collisionWidth-o-h,c="left"===t.my[0]?-t.elemWidth:"right"===t.my[0]?t.elemWidth:0,p="left"===t.at[0]?t.targetWidth:"right"===t.at[0]?-t.targetWidth:0,f=-2*t.offset[0];0>u?(i=e.left+c+p+f+t.collisionWidth-o-a,(0>i||r(u)>i)&&(e.left+=c+p+f)):d>0&&(s=e.left-t.collisionPosition.marginLeft+c+p+f-h,(s>0||d>r(s))&&(e.left+=c+p+f))},top:function(e,t){var i,s,n=t.within,a=n.offset.top+n.scrollTop,o=n.height,h=n.isWindow?n.scrollTop:n.offset.top,l=e.top-t.collisionPosition.marginTop,u=l-h,d=l+t.collisionHeight-o-h,c="top"===t.my[1],p=c?-t.elemHeight:"bottom"===t.my[1]?t.elemHeight:0,f="top"===t.at[1]?t.targetHeight:"bottom"===t.at[1]?-t.targetHeight:0,m=-2*t.offset[1];0>u?(s=e.top+p+f+m+t.collisionHeight-o-a,e.top+p+f+m>u&&(0>s||r(u)>s)&&(e.top+=p+f+m)):d>0&&(i=e.top-t.collisionPosition.marginTop+p+f+m-h,e.top+p+f+m>d&&(i>0||d>r(i))&&(e.top+=p+f+m))}},flipfit:{left:function(){e.ui.position.flip.left.apply(this,arguments),e.ui.position.fit.left.apply(this,arguments)},top:function(){e.ui.position.flip.top.apply(this,arguments),e.ui.position.fit.top.apply(this,arguments)}}},function(){var t,i,s,n,o,r=document.getElementsByTagName("body")[0],h=document.createElement("div");t=document.createElement(r?"div":"body"),s={visibility:"hidden",width:0,height:0,border:0,margin:0,background:"none"},r&&e.extend(s,{position:"absolute",left:"-1000px",top:"-1000px"});for(o in s)t.style[o]=s[o];t.appendChild(h),i=r||document.documentElement,i.insertBefore(t,i.firstChild),h.style.cssText="position: absolute; left: 10.7432222px;",n=e(h).offset().left,a=n>10&&11>n,t.innerHTML="",i.removeChild(t)}()}(),e.ui.position,e.widget("ui.draggable",e.ui.mouse,{version:"1.11.1",widgetEventPrefix:"drag",options:{addClasses:!0,appendTo:"parent",axis:!1,connectToSortable:!1,containment:!1,cursor:"auto",cursorAt:!1,grid:!1,handle:!1,helper:"original",iframeFix:!1,opacity:!1,refreshPositions:!1,revert:!1,revertDuration:500,scope:"default",scroll:!0,scrollSensitivity:20,scrollSpeed:20,snap:!1,snapMode:"both",snapTolerance:20,stack:!1,zIndex:!1,drag:null,start:null,stop:null},_create:function(){"original"!==this.options.helper||/^(?:r|a|f)/.test(this.element.css("position"))||(this.element[0].style.position="relative"),this.options.addClasses&&this.element.addClass("ui-draggable"),this.options.disabled&&this.element.addClass("ui-draggable-disabled"),this._setHandleClassName(),this._mouseInit()},_setOption:function(e,t){this._super(e,t),"handle"===e&&(this._removeHandleClassName(),this._setHandleClassName())},_destroy:function(){return(this.helper||this.element).is(".ui-draggable-dragging")?(this.destroyOnClear=!0,void 0):(this.element.removeClass("ui-draggable ui-draggable-dragging ui-draggable-disabled"),this._removeHandleClassName(),this._mouseDestroy(),void 0)},_mouseCapture:function(t){var i=this.document[0],s=this.options;try{i.activeElement&&"body"!==i.activeElement.nodeName.toLowerCase()&&e(i.activeElement).blur()}catch(n){}return this.helper||s.disabled||e(t.target).closest(".ui-resizable-handle").length>0?!1:(this.handle=this._getHandle(t),this.handle?(e(s.iframeFix===!0?"iframe":s.iframeFix).each(function(){e("
").css({width:this.offsetWidth+"px",height:this.offsetHeight+"px",position:"absolute",opacity:"0.001",zIndex:1e3}).css(e(this).offset()).appendTo("body")}),!0):!1)},_mouseStart:function(t){var i=this.options;return this.helper=this._createHelper(t),this.helper.addClass("ui-draggable-dragging"),this._cacheHelperProportions(),e.ui.ddmanager&&(e.ui.ddmanager.current=this),this._cacheMargins(),this.cssPosition=this.helper.css("position"),this.scrollParent=this.helper.scrollParent(!0),this.offsetParent=this.helper.offsetParent(),this.offsetParentCssPosition=this.offsetParent.css("position"),this.offset=this.positionAbs=this.element.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},this.offset.scroll=!1,e.extend(this.offset,{click:{left:t.pageX-this.offset.left,top:t.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.originalPosition=this.position=this._generatePosition(t,!1),this.originalPageX=t.pageX,this.originalPageY=t.pageY,i.cursorAt&&this._adjustOffsetFromHelper(i.cursorAt),this._setContainment(),this._trigger("start",t)===!1?(this._clear(),!1):(this._cacheHelperProportions(),e.ui.ddmanager&&!i.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this._mouseDrag(t,!0),e.ui.ddmanager&&e.ui.ddmanager.dragStart(this,t),!0)},_mouseDrag:function(t,i){if("fixed"===this.offsetParentCssPosition&&(this.offset.parent=this._getParentOffset()),this.position=this._generatePosition(t,!0),this.positionAbs=this._convertPositionTo("absolute"),!i){var s=this._uiHash();if(this._trigger("drag",t,s)===!1)return this._mouseUp({}),!1;this.position=s.position}return this.helper[0].style.left=this.position.left+"px",this.helper[0].style.top=this.position.top+"px",e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),!1},_mouseStop:function(t){var i=this,s=!1;return e.ui.ddmanager&&!this.options.dropBehaviour&&(s=e.ui.ddmanager.drop(this,t)),this.dropped&&(s=this.dropped,this.dropped=!1),"invalid"===this.options.revert&&!s||"valid"===this.options.revert&&s||this.options.revert===!0||e.isFunction(this.options.revert)&&this.options.revert.call(this.element,s)?e(this.helper).animate(this.originalPosition,parseInt(this.options.revertDuration,10),function(){i._trigger("stop",t)!==!1&&i._clear()}):this._trigger("stop",t)!==!1&&this._clear(),!1},_mouseUp:function(t){return e("div.ui-draggable-iframeFix").each(function(){this.parentNode.removeChild(this)}),e.ui.ddmanager&&e.ui.ddmanager.dragStop(this,t),this.element.focus(),e.ui.mouse.prototype._mouseUp.call(this,t)},cancel:function(){return this.helper.is(".ui-draggable-dragging")?this._mouseUp({}):this._clear(),this},_getHandle:function(t){return this.options.handle?!!e(t.target).closest(this.element.find(this.options.handle)).length:!0},_setHandleClassName:function(){this.handleElement=this.options.handle?this.element.find(this.options.handle):this.element,this.handleElement.addClass("ui-draggable-handle")},_removeHandleClassName:function(){this.handleElement.removeClass("ui-draggable-handle")},_createHelper:function(t){var i=this.options,s=e.isFunction(i.helper)?e(i.helper.apply(this.element[0],[t])):"clone"===i.helper?this.element.clone().removeAttr("id"):this.element;return s.parents("body").length||s.appendTo("parent"===i.appendTo?this.element[0].parentNode:i.appendTo),s[0]===this.element[0]||/(fixed|absolute)/.test(s.css("position"))||s.css("position","absolute"),s},_adjustOffsetFromHelper:function(t){"string"==typeof t&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_isRootNode:function(e){return/(html|body)/i.test(e.tagName)||e===this.document[0]},_getParentOffset:function(){var t=this.offsetParent.offset(),i=this.document[0];return"absolute"===this.cssPosition&&this.scrollParent[0]!==i&&e.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop()),this._isRootNode(this.offsetParent[0])&&(t={top:0,left:0}),{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"!==this.cssPosition)return{top:0,left:0};var e=this.element.position(),t=this._isRootNode(this.scrollParent[0]);return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+(t?0:this.scrollParent.scrollTop()),left:e.left-(parseInt(this.helper.css("left"),10)||0)+(t?0:this.scrollParent.scrollLeft())}},_cacheMargins:function(){this.margins={left:parseInt(this.element.css("marginLeft"),10)||0,top:parseInt(this.element.css("marginTop"),10)||0,right:parseInt(this.element.css("marginRight"),10)||0,bottom:parseInt(this.element.css("marginBottom"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var t,i,s,n=this.options,a=this.document[0];return this.relativeContainer=null,n.containment?"window"===n.containment?(this.containment=[e(window).scrollLeft()-this.offset.relative.left-this.offset.parent.left,e(window).scrollTop()-this.offset.relative.top-this.offset.parent.top,e(window).scrollLeft()+e(window).width()-this.helperProportions.width-this.margins.left,e(window).scrollTop()+(e(window).height()||a.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],void 0):"document"===n.containment?(this.containment=[0,0,e(a).width()-this.helperProportions.width-this.margins.left,(e(a).height()||a.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top],void 0):n.containment.constructor===Array?(this.containment=n.containment,void 0):("parent"===n.containment&&(n.containment=this.helper[0].parentNode),i=e(n.containment),s=i[0],s&&(t="hidden"!==i.css("overflow"),this.containment=[(parseInt(i.css("borderLeftWidth"),10)||0)+(parseInt(i.css("paddingLeft"),10)||0),(parseInt(i.css("borderTopWidth"),10)||0)+(parseInt(i.css("paddingTop"),10)||0),(t?Math.max(s.scrollWidth,s.offsetWidth):s.offsetWidth)-(parseInt(i.css("borderRightWidth"),10)||0)-(parseInt(i.css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left-this.margins.right,(t?Math.max(s.scrollHeight,s.offsetHeight):s.offsetHeight)-(parseInt(i.css("borderBottomWidth"),10)||0)-(parseInt(i.css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top-this.margins.bottom],this.relativeContainer=i),void 0):(this.containment=null,void 0)},_convertPositionTo:function(e,t){t||(t=this.position);var i="absolute"===e?1:-1,s=this._isRootNode(this.scrollParent[0]);return{top:t.top+this.offset.relative.top*i+this.offset.parent.top*i-("fixed"===this.cssPosition?-this.offset.scroll.top:s?0:this.offset.scroll.top)*i,left:t.left+this.offset.relative.left*i+this.offset.parent.left*i-("fixed"===this.cssPosition?-this.offset.scroll.left:s?0:this.offset.scroll.left)*i}},_generatePosition:function(e,t){var i,s,n,a,o=this.options,r=this._isRootNode(this.scrollParent[0]),h=e.pageX,l=e.pageY;return r&&this.offset.scroll||(this.offset.scroll={top:this.scrollParent.scrollTop(),left:this.scrollParent.scrollLeft()}),t&&(this.containment&&(this.relativeContainer?(s=this.relativeContainer.offset(),i=[this.containment[0]+s.left,this.containment[1]+s.top,this.containment[2]+s.left,this.containment[3]+s.top]):i=this.containment,e.pageX-this.offset.click.lefti[2]&&(h=i[2]+this.offset.click.left),e.pageY-this.offset.click.top>i[3]&&(l=i[3]+this.offset.click.top)),o.grid&&(n=o.grid[1]?this.originalPageY+Math.round((l-this.originalPageY)/o.grid[1])*o.grid[1]:this.originalPageY,l=i?n-this.offset.click.top>=i[1]||n-this.offset.click.top>i[3]?n:n-this.offset.click.top>=i[1]?n-o.grid[1]:n+o.grid[1]:n,a=o.grid[0]?this.originalPageX+Math.round((h-this.originalPageX)/o.grid[0])*o.grid[0]:this.originalPageX,h=i?a-this.offset.click.left>=i[0]||a-this.offset.click.left>i[2]?a:a-this.offset.click.left>=i[0]?a-o.grid[0]:a+o.grid[0]:a),"y"===o.axis&&(h=this.originalPageX),"x"===o.axis&&(l=this.originalPageY)),{top:l-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.offset.scroll.top:r?0:this.offset.scroll.top),left:h-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.offset.scroll.left:r?0:this.offset.scroll.left)} -},_clear:function(){this.helper.removeClass("ui-draggable-dragging"),this.helper[0]===this.element[0]||this.cancelHelperRemoval||this.helper.remove(),this.helper=null,this.cancelHelperRemoval=!1,this.destroyOnClear&&this.destroy()},_trigger:function(t,i,s){return s=s||this._uiHash(),e.ui.plugin.call(this,t,[i,s,this],!0),"drag"===t&&(this.positionAbs=this._convertPositionTo("absolute")),e.Widget.prototype._trigger.call(this,t,i,s)},plugins:{},_uiHash:function(){return{helper:this.helper,position:this.position,originalPosition:this.originalPosition,offset:this.positionAbs}}}),e.ui.plugin.add("draggable","connectToSortable",{start:function(t,i,s){var n=s.options,a=e.extend({},i,{item:s.element});s.sortables=[],e(n.connectToSortable).each(function(){var i=e(this).sortable("instance");i&&!i.options.disabled&&(s.sortables.push({instance:i,shouldRevert:i.options.revert}),i.refreshPositions(),i._trigger("activate",t,a))})},stop:function(t,i,s){var n=e.extend({},i,{item:s.element});e.each(s.sortables,function(){this.instance.isOver?(this.instance.isOver=0,s.cancelHelperRemoval=!0,this.instance.cancelHelperRemoval=!1,this.shouldRevert&&(this.instance.options.revert=this.shouldRevert),this.instance._mouseStop(t),this.instance.options.helper=this.instance.options._helper,"original"===s.options.helper&&this.instance.currentItem.css({top:"auto",left:"auto"})):(this.instance.cancelHelperRemoval=!1,this.instance._trigger("deactivate",t,n))})},drag:function(t,i,s){var n=this;e.each(s.sortables,function(){var a=!1,o=this;this.instance.positionAbs=s.positionAbs,this.instance.helperProportions=s.helperProportions,this.instance.offset.click=s.offset.click,this.instance._intersectsWith(this.instance.containerCache)&&(a=!0,e.each(s.sortables,function(){return this.instance.positionAbs=s.positionAbs,this.instance.helperProportions=s.helperProportions,this.instance.offset.click=s.offset.click,this!==o&&this.instance._intersectsWith(this.instance.containerCache)&&e.contains(o.instance.element[0],this.instance.element[0])&&(a=!1),a})),a?(this.instance.isOver||(this.instance.isOver=1,this.instance.currentItem=e(n).clone().removeAttr("id").appendTo(this.instance.element).data("ui-sortable-item",!0),this.instance.options._helper=this.instance.options.helper,this.instance.options.helper=function(){return i.helper[0]},t.target=this.instance.currentItem[0],this.instance._mouseCapture(t,!0),this.instance._mouseStart(t,!0,!0),this.instance.offset.click.top=s.offset.click.top,this.instance.offset.click.left=s.offset.click.left,this.instance.offset.parent.left-=s.offset.parent.left-this.instance.offset.parent.left,this.instance.offset.parent.top-=s.offset.parent.top-this.instance.offset.parent.top,s._trigger("toSortable",t),s.dropped=this.instance.element,s.currentItem=s.element,this.instance.fromOutside=s),this.instance.currentItem&&this.instance._mouseDrag(t)):this.instance.isOver&&(this.instance.isOver=0,this.instance.cancelHelperRemoval=!0,this.instance.options.revert=!1,this.instance._trigger("out",t,this.instance._uiHash(this.instance)),this.instance._mouseStop(t,!0),this.instance.options.helper=this.instance.options._helper,this.instance.currentItem.remove(),this.instance.placeholder&&this.instance.placeholder.remove(),s._trigger("fromSortable",t),s.dropped=!1)})}}),e.ui.plugin.add("draggable","cursor",{start:function(t,i,s){var n=e("body"),a=s.options;n.css("cursor")&&(a._cursor=n.css("cursor")),n.css("cursor",a.cursor)},stop:function(t,i,s){var n=s.options;n._cursor&&e("body").css("cursor",n._cursor)}}),e.ui.plugin.add("draggable","opacity",{start:function(t,i,s){var n=e(i.helper),a=s.options;n.css("opacity")&&(a._opacity=n.css("opacity")),n.css("opacity",a.opacity)},stop:function(t,i,s){var n=s.options;n._opacity&&e(i.helper).css("opacity",n._opacity)}}),e.ui.plugin.add("draggable","scroll",{start:function(e,t,i){i.scrollParentNotHidden||(i.scrollParentNotHidden=i.helper.scrollParent(!1)),i.scrollParentNotHidden[0]!==i.document[0]&&"HTML"!==i.scrollParentNotHidden[0].tagName&&(i.overflowOffset=i.scrollParentNotHidden.offset())},drag:function(t,i,s){var n=s.options,a=!1,o=s.scrollParentNotHidden[0],r=s.document[0];o!==r&&"HTML"!==o.tagName?(n.axis&&"x"===n.axis||(s.overflowOffset.top+o.offsetHeight-t.pageY=0;c--)h=s.snapElements[c].left,l=h+s.snapElements[c].width,u=s.snapElements[c].top,d=u+s.snapElements[c].height,h-m>v||g>l+m||u-m>b||y>d+m||!e.contains(s.snapElements[c].item.ownerDocument,s.snapElements[c].item)?(s.snapElements[c].snapping&&s.options.snap.release&&s.options.snap.release.call(s.element,t,e.extend(s._uiHash(),{snapItem:s.snapElements[c].item})),s.snapElements[c].snapping=!1):("inner"!==f.snapMode&&(n=m>=Math.abs(u-b),a=m>=Math.abs(d-y),o=m>=Math.abs(h-v),r=m>=Math.abs(l-g),n&&(i.position.top=s._convertPositionTo("relative",{top:u-s.helperProportions.height,left:0}).top-s.margins.top),a&&(i.position.top=s._convertPositionTo("relative",{top:d,left:0}).top-s.margins.top),o&&(i.position.left=s._convertPositionTo("relative",{top:0,left:h-s.helperProportions.width}).left-s.margins.left),r&&(i.position.left=s._convertPositionTo("relative",{top:0,left:l}).left-s.margins.left)),p=n||a||o||r,"outer"!==f.snapMode&&(n=m>=Math.abs(u-y),a=m>=Math.abs(d-b),o=m>=Math.abs(h-g),r=m>=Math.abs(l-v),n&&(i.position.top=s._convertPositionTo("relative",{top:u,left:0}).top-s.margins.top),a&&(i.position.top=s._convertPositionTo("relative",{top:d-s.helperProportions.height,left:0}).top-s.margins.top),o&&(i.position.left=s._convertPositionTo("relative",{top:0,left:h}).left-s.margins.left),r&&(i.position.left=s._convertPositionTo("relative",{top:0,left:l-s.helperProportions.width}).left-s.margins.left)),!s.snapElements[c].snapping&&(n||a||o||r||p)&&s.options.snap.snap&&s.options.snap.snap.call(s.element,t,e.extend(s._uiHash(),{snapItem:s.snapElements[c].item})),s.snapElements[c].snapping=n||a||o||r||p)}}),e.ui.plugin.add("draggable","stack",{start:function(t,i,s){var n,a=s.options,o=e.makeArray(e(a.stack)).sort(function(t,i){return(parseInt(e(t).css("zIndex"),10)||0)-(parseInt(e(i).css("zIndex"),10)||0)});o.length&&(n=parseInt(e(o[0]).css("zIndex"),10)||0,e(o).each(function(t){e(this).css("zIndex",n+t)}),this.css("zIndex",n+o.length))}}),e.ui.plugin.add("draggable","zIndex",{start:function(t,i,s){var n=e(i.helper),a=s.options;n.css("zIndex")&&(a._zIndex=n.css("zIndex")),n.css("zIndex",a.zIndex)},stop:function(t,i,s){var n=s.options;n._zIndex&&e(i.helper).css("zIndex",n._zIndex)}}),e.ui.draggable,e.widget("ui.droppable",{version:"1.11.1",widgetEventPrefix:"drop",options:{accept:"*",activeClass:!1,addClasses:!0,greedy:!1,hoverClass:!1,scope:"default",tolerance:"intersect",activate:null,deactivate:null,drop:null,out:null,over:null},_create:function(){var t,i=this.options,s=i.accept;this.isover=!1,this.isout=!0,this.accept=e.isFunction(s)?s:function(e){return e.is(s)},this.proportions=function(){return arguments.length?(t=arguments[0],void 0):t?t:t={width:this.element[0].offsetWidth,height:this.element[0].offsetHeight}},this._addToManager(i.scope),i.addClasses&&this.element.addClass("ui-droppable")},_addToManager:function(t){e.ui.ddmanager.droppables[t]=e.ui.ddmanager.droppables[t]||[],e.ui.ddmanager.droppables[t].push(this)},_splice:function(e){for(var t=0;e.length>t;t++)e[t]===this&&e.splice(t,1)},_destroy:function(){var t=e.ui.ddmanager.droppables[this.options.scope];this._splice(t),this.element.removeClass("ui-droppable ui-droppable-disabled")},_setOption:function(t,i){if("accept"===t)this.accept=e.isFunction(i)?i:function(e){return e.is(i)};else if("scope"===t){var s=e.ui.ddmanager.droppables[this.options.scope];this._splice(s),this._addToManager(i)}this._super(t,i)},_activate:function(t){var i=e.ui.ddmanager.current;this.options.activeClass&&this.element.addClass(this.options.activeClass),i&&this._trigger("activate",t,this.ui(i))},_deactivate:function(t){var i=e.ui.ddmanager.current;this.options.activeClass&&this.element.removeClass(this.options.activeClass),i&&this._trigger("deactivate",t,this.ui(i))},_over:function(t){var i=e.ui.ddmanager.current;i&&(i.currentItem||i.element)[0]!==this.element[0]&&this.accept.call(this.element[0],i.currentItem||i.element)&&(this.options.hoverClass&&this.element.addClass(this.options.hoverClass),this._trigger("over",t,this.ui(i)))},_out:function(t){var i=e.ui.ddmanager.current;i&&(i.currentItem||i.element)[0]!==this.element[0]&&this.accept.call(this.element[0],i.currentItem||i.element)&&(this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("out",t,this.ui(i)))},_drop:function(t,i){var s=i||e.ui.ddmanager.current,n=!1;return s&&(s.currentItem||s.element)[0]!==this.element[0]?(this.element.find(":data(ui-droppable)").not(".ui-draggable-dragging").each(function(){var i=e(this).droppable("instance");return i.options.greedy&&!i.options.disabled&&i.options.scope===s.options.scope&&i.accept.call(i.element[0],s.currentItem||s.element)&&e.ui.intersect(s,e.extend(i,{offset:i.element.offset()}),i.options.tolerance,t)?(n=!0,!1):void 0}),n?!1:this.accept.call(this.element[0],s.currentItem||s.element)?(this.options.activeClass&&this.element.removeClass(this.options.activeClass),this.options.hoverClass&&this.element.removeClass(this.options.hoverClass),this._trigger("drop",t,this.ui(s)),this.element):!1):!1},ui:function(e){return{draggable:e.currentItem||e.element,helper:e.helper,position:e.position,offset:e.positionAbs}}}),e.ui.intersect=function(){function e(e,t,i){return e>=t&&t+i>e}return function(t,i,s,n){if(!i.offset)return!1;var a=(t.positionAbs||t.position.absolute).left,o=(t.positionAbs||t.position.absolute).top,r=a+t.helperProportions.width,h=o+t.helperProportions.height,l=i.offset.left,u=i.offset.top,d=l+i.proportions().width,c=u+i.proportions().height;switch(s){case"fit":return a>=l&&d>=r&&o>=u&&c>=h;case"intersect":return a+t.helperProportions.width/2>l&&d>r-t.helperProportions.width/2&&o+t.helperProportions.height/2>u&&c>h-t.helperProportions.height/2;case"pointer":return e(n.pageY,u,i.proportions().height)&&e(n.pageX,l,i.proportions().width);case"touch":return(o>=u&&c>=o||h>=u&&c>=h||u>o&&h>c)&&(a>=l&&d>=a||r>=l&&d>=r||l>a&&r>d);default:return!1}}}(),e.ui.ddmanager={current:null,droppables:{"default":[]},prepareOffsets:function(t,i){var s,n,a=e.ui.ddmanager.droppables[t.options.scope]||[],o=i?i.type:null,r=(t.currentItem||t.element).find(":data(ui-droppable)").addBack();e:for(s=0;a.length>s;s++)if(!(a[s].options.disabled||t&&!a[s].accept.call(a[s].element[0],t.currentItem||t.element))){for(n=0;r.length>n;n++)if(r[n]===a[s].element[0]){a[s].proportions().height=0;continue e}a[s].visible="none"!==a[s].element.css("display"),a[s].visible&&("mousedown"===o&&a[s]._activate.call(a[s],i),a[s].offset=a[s].element.offset(),a[s].proportions({width:a[s].element[0].offsetWidth,height:a[s].element[0].offsetHeight}))}},drop:function(t,i){var s=!1;return e.each((e.ui.ddmanager.droppables[t.options.scope]||[]).slice(),function(){this.options&&(!this.options.disabled&&this.visible&&e.ui.intersect(t,this,this.options.tolerance,i)&&(s=this._drop.call(this,i)||s),!this.options.disabled&&this.visible&&this.accept.call(this.element[0],t.currentItem||t.element)&&(this.isout=!0,this.isover=!1,this._deactivate.call(this,i)))}),s},dragStart:function(t,i){t.element.parentsUntil("body").bind("scroll.droppable",function(){t.options.refreshPositions||e.ui.ddmanager.prepareOffsets(t,i)})},drag:function(t,i){t.options.refreshPositions&&e.ui.ddmanager.prepareOffsets(t,i),e.each(e.ui.ddmanager.droppables[t.options.scope]||[],function(){if(!this.options.disabled&&!this.greedyChild&&this.visible){var s,n,a,o=e.ui.intersect(t,this,this.options.tolerance,i),r=!o&&this.isover?"isout":o&&!this.isover?"isover":null;r&&(this.options.greedy&&(n=this.options.scope,a=this.element.parents(":data(ui-droppable)").filter(function(){return e(this).droppable("instance").options.scope===n}),a.length&&(s=e(a[0]).droppable("instance"),s.greedyChild="isover"===r)),s&&"isover"===r&&(s.isover=!1,s.isout=!0,s._out.call(s,i)),this[r]=!0,this["isout"===r?"isover":"isout"]=!1,this["isover"===r?"_over":"_out"].call(this,i),s&&"isout"===r&&(s.isout=!1,s.isover=!0,s._over.call(s,i)))}})},dragStop:function(t,i){t.element.parentsUntil("body").unbind("scroll.droppable"),t.options.refreshPositions||e.ui.ddmanager.prepareOffsets(t,i)}},e.ui.droppable,e.widget("ui.resizable",e.ui.mouse,{version:"1.11.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(e){return parseInt(e,10)||0},_isNumber:function(e){return!isNaN(parseInt(e,10))},_hasScroll:function(t,i){if("hidden"===e(t).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",n=!1;return t[s]>0?!0:(t[s]=1,n=t[s]>0,t[s]=0,n)},_create:function(){var t,i,s,n,a,o=this,r=this.options;if(this.element.addClass("ui-resizable"),e.extend(this,{_aspectRatio:!!r.aspectRatio,aspectRatio:r.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:r.helper||r.ghost||r.animate?r.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)&&(this.element.wrap(e("
").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")}),this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0}),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css({margin:this.originalElement.css("margin")}),this._proportionallyResize()),this.handles=r.handles||(e(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),t=this.handles.split(","),this.handles={},i=0;t.length>i;i++)s=e.trim(t[i]),a="ui-resizable-"+s,n=e("
"),n.css({zIndex:r.zIndex}),"se"===s&&n.addClass("ui-icon ui-icon-gripsmall-diagonal-se"),this.handles[s]=".ui-resizable-"+s,this.element.append(n);this._renderAxis=function(t){var i,s,n,a;t=t||this.element;for(i in this.handles)this.handles[i].constructor===String&&(this.handles[i]=this.element.children(this.handles[i]).first().show()),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)&&(s=e(this.handles[i],this.element),a=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),t.css(n,a),this._proportionallyResize()),e(this.handles[i]).length},this._renderAxis(this.element),this._handles=e(".ui-resizable-handle",this.element).disableSelection(),this._handles.mouseover(function(){o.resizing||(this.className&&(n=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),o.axis=n&&n[1]?n[1]:"se")}),r.autoHide&&(this._handles.hide(),e(this.element).addClass("ui-resizable-autohide").mouseenter(function(){r.disabled||(e(this).removeClass("ui-resizable-autohide"),o._handles.show())}).mouseleave(function(){r.disabled||o.resizing||(e(this).addClass("ui-resizable-autohide"),o._handles.hide())})),this._mouseInit()},_destroy:function(){this._mouseDestroy();var t,i=function(t){e(t).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").removeData("ui-resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),t=this.element,this.originalElement.css({position:t.css("position"),width:t.outerWidth(),height:t.outerHeight(),top:t.css("top"),left:t.css("left")}).insertAfter(t),t.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_mouseCapture:function(t){var i,s,n=!1;for(i in this.handles)s=e(this.handles[i])[0],(s===t.target||e.contains(s,t.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(t){var i,s,n,a=this.options,o=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),a.containment&&(i+=e(a.containment).scrollLeft()||0,s+=e(a.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:o.width(),height:o.height()},this.originalSize=this._helper?{width:o.outerWidth(),height:o.outerHeight()}:{width:o.width(),height:o.height()},this.sizeDiff={width:o.outerWidth()-o.width(),height:o.outerHeight()-o.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:t.pageX,top:t.pageY},this.aspectRatio="number"==typeof a.aspectRatio?a.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=e(".ui-resizable-"+this.axis).css("cursor"),e("body").css("cursor","auto"===n?this.axis+"-resize":n),o.addClass("ui-resizable-resizing"),this._propagate("start",t),!0},_mouseDrag:function(t){var i,s,n=this.originalMousePosition,a=this.axis,o=t.pageX-n.left||0,r=t.pageY-n.top||0,h=this._change[a];return this._updatePrevProperties(),h?(i=h.apply(this,[t,o,r]),this._updateVirtualBoundaries(t.shiftKey),(this._aspectRatio||t.shiftKey)&&(i=this._updateRatio(i,t)),i=this._respectSize(i,t),this._updateCache(i),this._propagate("resize",t),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),e.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",t,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(t){this.resizing=!1;var i,s,n,a,o,r,h,l=this.options,u=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&this._hasScroll(i[0],"left")?0:u.sizeDiff.height,a=s?0:u.sizeDiff.width,o={width:u.helper.width()-a,height:u.helper.height()-n},r=parseInt(u.element.css("left"),10)+(u.position.left-u.originalPosition.left)||null,h=parseInt(u.element.css("top"),10)+(u.position.top-u.originalPosition.top)||null,l.animate||this.element.css(e.extend(o,{top:h,left:r})),u.helper.height(u.size.height),u.helper.width(u.size.width),this._helper&&!l.animate&&this._proportionallyResize()),e("body").css("cursor","auto"),this.element.removeClass("ui-resizable-resizing"),this._propagate("stop",t),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var e={};return this.position.top!==this.prevPosition.top&&(e.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(e.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(e.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(e.height=this.size.height+"px"),this.helper.css(e),e},_updateVirtualBoundaries:function(e){var t,i,s,n,a,o=this.options;a={minWidth:this._isNumber(o.minWidth)?o.minWidth:0,maxWidth:this._isNumber(o.maxWidth)?o.maxWidth:1/0,minHeight:this._isNumber(o.minHeight)?o.minHeight:0,maxHeight:this._isNumber(o.maxHeight)?o.maxHeight:1/0},(this._aspectRatio||e)&&(t=a.minHeight*this.aspectRatio,s=a.minWidth/this.aspectRatio,i=a.maxHeight*this.aspectRatio,n=a.maxWidth/this.aspectRatio,t>a.minWidth&&(a.minWidth=t),s>a.minHeight&&(a.minHeight=s),a.maxWidth>i&&(a.maxWidth=i),a.maxHeight>n&&(a.maxHeight=n)),this._vBoundaries=a},_updateCache:function(e){this.offset=this.helper.offset(),this._isNumber(e.left)&&(this.position.left=e.left),this._isNumber(e.top)&&(this.position.top=e.top),this._isNumber(e.height)&&(this.size.height=e.height),this._isNumber(e.width)&&(this.size.width=e.width)},_updateRatio:function(e){var t=this.position,i=this.size,s=this.axis;return this._isNumber(e.height)?e.width=e.height*this.aspectRatio:this._isNumber(e.width)&&(e.height=e.width/this.aspectRatio),"sw"===s&&(e.left=t.left+(i.width-e.width),e.top=null),"nw"===s&&(e.top=t.top+(i.height-e.height),e.left=t.left+(i.width-e.width)),e},_respectSize:function(e){var t=this._vBoundaries,i=this.axis,s=this._isNumber(e.width)&&t.maxWidth&&t.maxWidthe.width,o=this._isNumber(e.height)&&t.minHeight&&t.minHeight>e.height,r=this.originalPosition.left+this.originalSize.width,h=this.position.top+this.size.height,l=/sw|nw|w/.test(i),u=/nw|ne|n/.test(i);return a&&(e.width=t.minWidth),o&&(e.height=t.minHeight),s&&(e.width=t.maxWidth),n&&(e.height=t.maxHeight),a&&l&&(e.left=r-t.minWidth),s&&l&&(e.left=r-t.maxWidth),o&&u&&(e.top=h-t.minHeight),n&&u&&(e.top=h-t.maxHeight),e.width||e.height||e.left||!e.top?e.width||e.height||e.top||!e.left||(e.left=null):e.top=null,e},_getPaddingPlusBorderDimensions:function(e){for(var t=0,i=[],s=[e.css("borderTopWidth"),e.css("borderRightWidth"),e.css("borderBottomWidth"),e.css("borderLeftWidth")],n=[e.css("paddingTop"),e.css("paddingRight"),e.css("paddingBottom"),e.css("paddingLeft")];4>t;t++)i[t]=parseInt(s[t],10)||0,i[t]+=parseInt(n[t],10)||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var e,t=0,i=this.helper||this.element;this._proportionallyResizeElements.length>t;t++)e=this._proportionallyResizeElements[t],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(e)),e.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var t=this.element,i=this.options;this.elementOffset=t.offset(),this._helper?(this.helper=this.helper||e("
"),this.helper.addClass(this._helper).css({width:this.element.outerWidth()-1,height:this.element.outerHeight()-1,position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(e,t){return{width:this.originalSize.width+t}},w:function(e,t){var i=this.originalSize,s=this.originalPosition;return{left:s.left+t,width:i.width-t}},n:function(e,t,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(e,t,i){return{height:this.originalSize.height+i}},se:function(t,i,s){return e.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[t,i,s]))},sw:function(t,i,s){return e.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[t,i,s]))},ne:function(t,i,s){return e.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[t,i,s]))},nw:function(t,i,s){return e.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[t,i,s]))}},_propagate:function(t,i){e.ui.plugin.call(this,t,[i,this.ui()]),"resize"!==t&&this._trigger(t,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),e.ui.plugin.add("resizable","animate",{stop:function(t){var i=e(this).resizable("instance"),s=i.options,n=i._proportionallyResizeElements,a=n.length&&/textarea/i.test(n[0].nodeName),o=a&&i._hasScroll(n[0],"left")?0:i.sizeDiff.height,r=a?0:i.sizeDiff.width,h={width:i.size.width-r,height:i.size.height-o},l=parseInt(i.element.css("left"),10)+(i.position.left-i.originalPosition.left)||null,u=parseInt(i.element.css("top"),10)+(i.position.top-i.originalPosition.top)||null;i.element.animate(e.extend(h,u&&l?{top:u,left:l}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseInt(i.element.css("width"),10),height:parseInt(i.element.css("height"),10),top:parseInt(i.element.css("top"),10),left:parseInt(i.element.css("left"),10)};n&&n.length&&e(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",t)}})}}),e.ui.plugin.add("resizable","containment",{start:function(){var t,i,s,n,a,o,r,h=e(this).resizable("instance"),l=h.options,u=h.element,d=l.containment,c=d instanceof e?d.get(0):/parent/.test(d)?u.parent().get(0):d;c&&(h.containerElement=e(c),/document/.test(d)||d===document?(h.containerOffset={left:0,top:0},h.containerPosition={left:0,top:0},h.parentData={element:e(document),left:0,top:0,width:e(document).width(),height:e(document).height()||document.body.parentNode.scrollHeight}):(t=e(c),i=[],e(["Top","Right","Left","Bottom"]).each(function(e,s){i[e]=h._num(t.css("padding"+s))}),h.containerOffset=t.offset(),h.containerPosition=t.position(),h.containerSize={height:t.innerHeight()-i[3],width:t.innerWidth()-i[1]},s=h.containerOffset,n=h.containerSize.height,a=h.containerSize.width,o=h._hasScroll(c,"left")?c.scrollWidth:a,r=h._hasScroll(c)?c.scrollHeight:n,h.parentData={element:c,left:s.left,top:s.top,width:o,height:r}))},resize:function(t){var i,s,n,a,o=e(this).resizable("instance"),r=o.options,h=o.containerOffset,l=o.position,u=o._aspectRatio||t.shiftKey,d={top:0,left:0},c=o.containerElement,p=!0;c[0]!==document&&/static/.test(c.css("position"))&&(d=h),l.left<(o._helper?h.left:0)&&(o.size.width=o.size.width+(o._helper?o.position.left-h.left:o.position.left-d.left),u&&(o.size.height=o.size.width/o.aspectRatio,p=!1),o.position.left=r.helper?h.left:0),l.top<(o._helper?h.top:0)&&(o.size.height=o.size.height+(o._helper?o.position.top-h.top:o.position.top),u&&(o.size.width=o.size.height*o.aspectRatio,p=!1),o.position.top=o._helper?h.top:0),n=o.containerElement.get(0)===o.element.parent().get(0),a=/relative|absolute/.test(o.containerElement.css("position")),n&&a?(o.offset.left=o.parentData.left+o.position.left,o.offset.top=o.parentData.top+o.position.top):(o.offset.left=o.element.offset().left,o.offset.top=o.element.offset().top),i=Math.abs(o.sizeDiff.width+(o._helper?o.offset.left-d.left:o.offset.left-h.left)),s=Math.abs(o.sizeDiff.height+(o._helper?o.offset.top-d.top:o.offset.top-h.top)),i+o.size.width>=o.parentData.width&&(o.size.width=o.parentData.width-i,u&&(o.size.height=o.size.width/o.aspectRatio,p=!1)),s+o.size.height>=o.parentData.height&&(o.size.height=o.parentData.height-s,u&&(o.size.width=o.size.height*o.aspectRatio,p=!1)),p||(o.position.left=o.prevPosition.left,o.position.top=o.prevPosition.top,o.size.width=o.prevSize.width,o.size.height=o.prevSize.height)},stop:function(){var t=e(this).resizable("instance"),i=t.options,s=t.containerOffset,n=t.containerPosition,a=t.containerElement,o=e(t.helper),r=o.offset(),h=o.outerWidth()-t.sizeDiff.width,l=o.outerHeight()-t.sizeDiff.height;t._helper&&!i.animate&&/relative/.test(a.css("position"))&&e(this).css({left:r.left-n.left-s.left,width:h,height:l}),t._helper&&!i.animate&&/static/.test(a.css("position"))&&e(this).css({left:r.left-n.left-s.left,width:h,height:l})}}),e.ui.plugin.add("resizable","alsoResize",{start:function(){var t=e(this).resizable("instance"),i=t.options,s=function(t){e(t).each(function(){var t=e(this);t.data("ui-resizable-alsoresize",{width:parseInt(t.width(),10),height:parseInt(t.height(),10),left:parseInt(t.css("left"),10),top:parseInt(t.css("top"),10)})})};"object"!=typeof i.alsoResize||i.alsoResize.parentNode?s(i.alsoResize):i.alsoResize.length?(i.alsoResize=i.alsoResize[0],s(i.alsoResize)):e.each(i.alsoResize,function(e){s(e)})},resize:function(t,i){var s=e(this).resizable("instance"),n=s.options,a=s.originalSize,o=s.originalPosition,r={height:s.size.height-a.height||0,width:s.size.width-a.width||0,top:s.position.top-o.top||0,left:s.position.left-o.left||0},h=function(t,s){e(t).each(function(){var t=e(this),n=e(this).data("ui-resizable-alsoresize"),a={},o=s&&s.length?s:t.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];e.each(o,function(e,t){var i=(n[t]||0)+(r[t]||0);i&&i>=0&&(a[t]=i||null)}),t.css(a)})};"object"!=typeof n.alsoResize||n.alsoResize.nodeType?h(n.alsoResize):e.each(n.alsoResize,function(e,t){h(e,t)})},stop:function(){e(this).removeData("resizable-alsoresize")}}),e.ui.plugin.add("resizable","ghost",{start:function(){var t=e(this).resizable("instance"),i=t.options,s=t.size;t.ghost=t.originalElement.clone(),t.ghost.css({opacity:.25,display:"block",position:"relative",height:s.height,width:s.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass("string"==typeof i.ghost?i.ghost:""),t.ghost.appendTo(t.helper)},resize:function(){var t=e(this).resizable("instance");t.ghost&&t.ghost.css({position:"relative",height:t.size.height,width:t.size.width})},stop:function(){var t=e(this).resizable("instance");t.ghost&&t.helper&&t.helper.get(0).removeChild(t.ghost.get(0))}}),e.ui.plugin.add("resizable","grid",{resize:function(){var t,i=e(this).resizable("instance"),s=i.options,n=i.size,a=i.originalSize,o=i.originalPosition,r=i.axis,h="number"==typeof s.grid?[s.grid,s.grid]:s.grid,l=h[0]||1,u=h[1]||1,d=Math.round((n.width-a.width)/l)*l,c=Math.round((n.height-a.height)/u)*u,p=a.width+d,f=a.height+c,m=s.maxWidth&&p>s.maxWidth,g=s.maxHeight&&f>s.maxHeight,v=s.minWidth&&s.minWidth>p,y=s.minHeight&&s.minHeight>f;s.grid=h,v&&(p+=l),y&&(f+=u),m&&(p-=l),g&&(f-=u),/^(se|s|e)$/.test(r)?(i.size.width=p,i.size.height=f):/^(ne)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.top=o.top-c):/^(sw)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.left=o.left-d):((0>=f-u||0>=p-l)&&(t=i._getPaddingPlusBorderDimensions(this)),f-u>0?(i.size.height=f,i.position.top=o.top-c):(f=u-t.height,i.size.height=f,i.position.top=o.top+a.height-f),p-l>0?(i.size.width=p,i.position.left=o.left-d):(p=u-t.height,i.size.width=p,i.position.left=o.left+a.width-p))}}),e.ui.resizable,e.widget("ui.selectable",e.ui.mouse,{version:"1.11.1",options:{appendTo:"body",autoRefresh:!0,distance:0,filter:"*",tolerance:"touch",selected:null,selecting:null,start:null,stop:null,unselected:null,unselecting:null},_create:function(){var t,i=this; -this.element.addClass("ui-selectable"),this.dragged=!1,this.refresh=function(){t=e(i.options.filter,i.element[0]),t.addClass("ui-selectee"),t.each(function(){var t=e(this),i=t.offset();e.data(this,"selectable-item",{element:this,$element:t,left:i.left,top:i.top,right:i.left+t.outerWidth(),bottom:i.top+t.outerHeight(),startselected:!1,selected:t.hasClass("ui-selected"),selecting:t.hasClass("ui-selecting"),unselecting:t.hasClass("ui-unselecting")})})},this.refresh(),this.selectees=t.addClass("ui-selectee"),this._mouseInit(),this.helper=e("
")},_destroy:function(){this.selectees.removeClass("ui-selectee").removeData("selectable-item"),this.element.removeClass("ui-selectable ui-selectable-disabled"),this._mouseDestroy()},_mouseStart:function(t){var i=this,s=this.options;this.opos=[t.pageX,t.pageY],this.options.disabled||(this.selectees=e(s.filter,this.element[0]),this._trigger("start",t),e(s.appendTo).append(this.helper),this.helper.css({left:t.pageX,top:t.pageY,width:0,height:0}),s.autoRefresh&&this.refresh(),this.selectees.filter(".ui-selected").each(function(){var s=e.data(this,"selectable-item");s.startselected=!0,t.metaKey||t.ctrlKey||(s.$element.removeClass("ui-selected"),s.selected=!1,s.$element.addClass("ui-unselecting"),s.unselecting=!0,i._trigger("unselecting",t,{unselecting:s.element}))}),e(t.target).parents().addBack().each(function(){var s,n=e.data(this,"selectable-item");return n?(s=!t.metaKey&&!t.ctrlKey||!n.$element.hasClass("ui-selected"),n.$element.removeClass(s?"ui-unselecting":"ui-selected").addClass(s?"ui-selecting":"ui-unselecting"),n.unselecting=!s,n.selecting=s,n.selected=s,s?i._trigger("selecting",t,{selecting:n.element}):i._trigger("unselecting",t,{unselecting:n.element}),!1):void 0}))},_mouseDrag:function(t){if(this.dragged=!0,!this.options.disabled){var i,s=this,n=this.options,a=this.opos[0],o=this.opos[1],r=t.pageX,h=t.pageY;return a>r&&(i=r,r=a,a=i),o>h&&(i=h,h=o,o=i),this.helper.css({left:a,top:o,width:r-a,height:h-o}),this.selectees.each(function(){var i=e.data(this,"selectable-item"),l=!1;i&&i.element!==s.element[0]&&("touch"===n.tolerance?l=!(i.left>r||a>i.right||i.top>h||o>i.bottom):"fit"===n.tolerance&&(l=i.left>a&&r>i.right&&i.top>o&&h>i.bottom),l?(i.selected&&(i.$element.removeClass("ui-selected"),i.selected=!1),i.unselecting&&(i.$element.removeClass("ui-unselecting"),i.unselecting=!1),i.selecting||(i.$element.addClass("ui-selecting"),i.selecting=!0,s._trigger("selecting",t,{selecting:i.element}))):(i.selecting&&((t.metaKey||t.ctrlKey)&&i.startselected?(i.$element.removeClass("ui-selecting"),i.selecting=!1,i.$element.addClass("ui-selected"),i.selected=!0):(i.$element.removeClass("ui-selecting"),i.selecting=!1,i.startselected&&(i.$element.addClass("ui-unselecting"),i.unselecting=!0),s._trigger("unselecting",t,{unselecting:i.element}))),i.selected&&(t.metaKey||t.ctrlKey||i.startselected||(i.$element.removeClass("ui-selected"),i.selected=!1,i.$element.addClass("ui-unselecting"),i.unselecting=!0,s._trigger("unselecting",t,{unselecting:i.element})))))}),!1}},_mouseStop:function(t){var i=this;return this.dragged=!1,e(".ui-unselecting",this.element[0]).each(function(){var s=e.data(this,"selectable-item");s.$element.removeClass("ui-unselecting"),s.unselecting=!1,s.startselected=!1,i._trigger("unselected",t,{unselected:s.element})}),e(".ui-selecting",this.element[0]).each(function(){var s=e.data(this,"selectable-item");s.$element.removeClass("ui-selecting").addClass("ui-selected"),s.selecting=!1,s.selected=!0,s.startselected=!0,i._trigger("selected",t,{selected:s.element})}),this._trigger("stop",t),this.helper.remove(),!1}}),e.widget("ui.sortable",e.ui.mouse,{version:"1.11.1",widgetEventPrefix:"sort",ready:!1,options:{appendTo:"parent",axis:!1,connectWith:!1,containment:!1,cursor:"auto",cursorAt:!1,dropOnEmpty:!0,forcePlaceholderSize:!1,forceHelperSize:!1,grid:!1,handle:!1,helper:"original",items:"> *",opacity:!1,placeholder:!1,revert:!1,scroll:!0,scrollSensitivity:20,scrollSpeed:20,scope:"default",tolerance:"intersect",zIndex:1e3,activate:null,beforeStop:null,change:null,deactivate:null,out:null,over:null,receive:null,remove:null,sort:null,start:null,stop:null,update:null},_isOverAxis:function(e,t,i){return e>=t&&t+i>e},_isFloating:function(e){return/left|right/.test(e.css("float"))||/inline|table-cell/.test(e.css("display"))},_create:function(){var e=this.options;this.containerCache={},this.element.addClass("ui-sortable"),this.refresh(),this.floating=this.items.length?"x"===e.axis||this._isFloating(this.items[0].item):!1,this.offset=this.element.offset(),this._mouseInit(),this._setHandleClassName(),this.ready=!0},_setOption:function(e,t){this._super(e,t),"handle"===e&&this._setHandleClassName()},_setHandleClassName:function(){this.element.find(".ui-sortable-handle").removeClass("ui-sortable-handle"),e.each(this.items,function(){(this.instance.options.handle?this.item.find(this.instance.options.handle):this.item).addClass("ui-sortable-handle")})},_destroy:function(){this.element.removeClass("ui-sortable ui-sortable-disabled").find(".ui-sortable-handle").removeClass("ui-sortable-handle"),this._mouseDestroy();for(var e=this.items.length-1;e>=0;e--)this.items[e].item.removeData(this.widgetName+"-item");return this},_mouseCapture:function(t,i){var s=null,n=!1,a=this;return this.reverting?!1:this.options.disabled||"static"===this.options.type?!1:(this._refreshItems(t),e(t.target).parents().each(function(){return e.data(this,a.widgetName+"-item")===a?(s=e(this),!1):void 0}),e.data(t.target,a.widgetName+"-item")===a&&(s=e(t.target)),s?!this.options.handle||i||(e(this.options.handle,s).find("*").addBack().each(function(){this===t.target&&(n=!0)}),n)?(this.currentItem=s,this._removeCurrentsFromItems(),!0):!1:!1)},_mouseStart:function(t,i,s){var n,a,o=this.options;if(this.currentContainer=this,this.refreshPositions(),this.helper=this._createHelper(t),this._cacheHelperProportions(),this._cacheMargins(),this.scrollParent=this.helper.scrollParent(),this.offset=this.currentItem.offset(),this.offset={top:this.offset.top-this.margins.top,left:this.offset.left-this.margins.left},e.extend(this.offset,{click:{left:t.pageX-this.offset.left,top:t.pageY-this.offset.top},parent:this._getParentOffset(),relative:this._getRelativeOffset()}),this.helper.css("position","absolute"),this.cssPosition=this.helper.css("position"),this.originalPosition=this._generatePosition(t),this.originalPageX=t.pageX,this.originalPageY=t.pageY,o.cursorAt&&this._adjustOffsetFromHelper(o.cursorAt),this.domPosition={prev:this.currentItem.prev()[0],parent:this.currentItem.parent()[0]},this.helper[0]!==this.currentItem[0]&&this.currentItem.hide(),this._createPlaceholder(),o.containment&&this._setContainment(),o.cursor&&"auto"!==o.cursor&&(a=this.document.find("body"),this.storedCursor=a.css("cursor"),a.css("cursor",o.cursor),this.storedStylesheet=e("").appendTo(a)),o.opacity&&(this.helper.css("opacity")&&(this._storedOpacity=this.helper.css("opacity")),this.helper.css("opacity",o.opacity)),o.zIndex&&(this.helper.css("zIndex")&&(this._storedZIndex=this.helper.css("zIndex")),this.helper.css("zIndex",o.zIndex)),this.scrollParent[0]!==document&&"HTML"!==this.scrollParent[0].tagName&&(this.overflowOffset=this.scrollParent.offset()),this._trigger("start",t,this._uiHash()),this._preserveHelperProportions||this._cacheHelperProportions(),!s)for(n=this.containers.length-1;n>=0;n--)this.containers[n]._trigger("activate",t,this._uiHash(this));return e.ui.ddmanager&&(e.ui.ddmanager.current=this),e.ui.ddmanager&&!o.dropBehaviour&&e.ui.ddmanager.prepareOffsets(this,t),this.dragging=!0,this.helper.addClass("ui-sortable-helper"),this._mouseDrag(t),!0},_mouseDrag:function(t){var i,s,n,a,o=this.options,r=!1;for(this.position=this._generatePosition(t),this.positionAbs=this._convertPositionTo("absolute"),this.lastPositionAbs||(this.lastPositionAbs=this.positionAbs),this.options.scroll&&(this.scrollParent[0]!==document&&"HTML"!==this.scrollParent[0].tagName?(this.overflowOffset.top+this.scrollParent[0].offsetHeight-t.pageY=0;i--)if(s=this.items[i],n=s.item[0],a=this._intersectsWithPointer(s),a&&s.instance===this.currentContainer&&n!==this.currentItem[0]&&this.placeholder[1===a?"next":"prev"]()[0]!==n&&!e.contains(this.placeholder[0],n)&&("semi-dynamic"===this.options.type?!e.contains(this.element[0],n):!0)){if(this.direction=1===a?"down":"up","pointer"!==this.options.tolerance&&!this._intersectsWithSides(s))break;this._rearrange(t,s),this._trigger("change",t,this._uiHash());break}return this._contactContainers(t),e.ui.ddmanager&&e.ui.ddmanager.drag(this,t),this._trigger("sort",t,this._uiHash()),this.lastPositionAbs=this.positionAbs,!1},_mouseStop:function(t,i){if(t){if(e.ui.ddmanager&&!this.options.dropBehaviour&&e.ui.ddmanager.drop(this,t),this.options.revert){var s=this,n=this.placeholder.offset(),a=this.options.axis,o={};a&&"x"!==a||(o.left=n.left-this.offset.parent.left-this.margins.left+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollLeft)),a&&"y"!==a||(o.top=n.top-this.offset.parent.top-this.margins.top+(this.offsetParent[0]===document.body?0:this.offsetParent[0].scrollTop)),this.reverting=!0,e(this.helper).animate(o,parseInt(this.options.revert,10)||500,function(){s._clear(t)})}else this._clear(t,i);return!1}},cancel:function(){if(this.dragging){this._mouseUp({target:null}),"original"===this.options.helper?this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper"):this.currentItem.show();for(var t=this.containers.length-1;t>=0;t--)this.containers[t]._trigger("deactivate",null,this._uiHash(this)),this.containers[t].containerCache.over&&(this.containers[t]._trigger("out",null,this._uiHash(this)),this.containers[t].containerCache.over=0)}return this.placeholder&&(this.placeholder[0].parentNode&&this.placeholder[0].parentNode.removeChild(this.placeholder[0]),"original"!==this.options.helper&&this.helper&&this.helper[0].parentNode&&this.helper.remove(),e.extend(this,{helper:null,dragging:!1,reverting:!1,_noFinalSort:null}),this.domPosition.prev?e(this.domPosition.prev).after(this.currentItem):e(this.domPosition.parent).prepend(this.currentItem)),this},serialize:function(t){var i=this._getItemsAsjQuery(t&&t.connected),s=[];return t=t||{},e(i).each(function(){var i=(e(t.item||this).attr(t.attribute||"id")||"").match(t.expression||/(.+)[\-=_](.+)/);i&&s.push((t.key||i[1]+"[]")+"="+(t.key&&t.expression?i[1]:i[2]))}),!s.length&&t.key&&s.push(t.key+"="),s.join("&")},toArray:function(t){var i=this._getItemsAsjQuery(t&&t.connected),s=[];return t=t||{},i.each(function(){s.push(e(t.item||this).attr(t.attribute||"id")||"")}),s},_intersectsWith:function(e){var t=this.positionAbs.left,i=t+this.helperProportions.width,s=this.positionAbs.top,n=s+this.helperProportions.height,a=e.left,o=a+e.width,r=e.top,h=r+e.height,l=this.offset.click.top,u=this.offset.click.left,d="x"===this.options.axis||s+l>r&&h>s+l,c="y"===this.options.axis||t+u>a&&o>t+u,p=d&&c;return"pointer"===this.options.tolerance||this.options.forcePointerForContainers||"pointer"!==this.options.tolerance&&this.helperProportions[this.floating?"width":"height"]>e[this.floating?"width":"height"]?p:t+this.helperProportions.width/2>a&&o>i-this.helperProportions.width/2&&s+this.helperProportions.height/2>r&&h>n-this.helperProportions.height/2},_intersectsWithPointer:function(e){var t="x"===this.options.axis||this._isOverAxis(this.positionAbs.top+this.offset.click.top,e.top,e.height),i="y"===this.options.axis||this._isOverAxis(this.positionAbs.left+this.offset.click.left,e.left,e.width),s=t&&i,n=this._getDragVerticalDirection(),a=this._getDragHorizontalDirection();return s?this.floating?a&&"right"===a||"down"===n?2:1:n&&("down"===n?2:1):!1},_intersectsWithSides:function(e){var t=this._isOverAxis(this.positionAbs.top+this.offset.click.top,e.top+e.height/2,e.height),i=this._isOverAxis(this.positionAbs.left+this.offset.click.left,e.left+e.width/2,e.width),s=this._getDragVerticalDirection(),n=this._getDragHorizontalDirection();return this.floating&&n?"right"===n&&i||"left"===n&&!i:s&&("down"===s&&t||"up"===s&&!t)},_getDragVerticalDirection:function(){var e=this.positionAbs.top-this.lastPositionAbs.top;return 0!==e&&(e>0?"down":"up")},_getDragHorizontalDirection:function(){var e=this.positionAbs.left-this.lastPositionAbs.left;return 0!==e&&(e>0?"right":"left")},refresh:function(e){return this._refreshItems(e),this._setHandleClassName(),this.refreshPositions(),this},_connectWith:function(){var e=this.options;return e.connectWith.constructor===String?[e.connectWith]:e.connectWith},_getItemsAsjQuery:function(t){function i(){r.push(this)}var s,n,a,o,r=[],h=[],l=this._connectWith();if(l&&t)for(s=l.length-1;s>=0;s--)for(a=e(l[s]),n=a.length-1;n>=0;n--)o=e.data(a[n],this.widgetFullName),o&&o!==this&&!o.options.disabled&&h.push([e.isFunction(o.options.items)?o.options.items.call(o.element):e(o.options.items,o.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),o]);for(h.push([e.isFunction(this.options.items)?this.options.items.call(this.element,null,{options:this.options,item:this.currentItem}):e(this.options.items,this.element).not(".ui-sortable-helper").not(".ui-sortable-placeholder"),this]),s=h.length-1;s>=0;s--)h[s][0].each(i);return e(r)},_removeCurrentsFromItems:function(){var t=this.currentItem.find(":data("+this.widgetName+"-item)");this.items=e.grep(this.items,function(e){for(var i=0;t.length>i;i++)if(t[i]===e.item[0])return!1;return!0})},_refreshItems:function(t){this.items=[],this.containers=[this];var i,s,n,a,o,r,h,l,u=this.items,d=[[e.isFunction(this.options.items)?this.options.items.call(this.element[0],t,{item:this.currentItem}):e(this.options.items,this.element),this]],c=this._connectWith();if(c&&this.ready)for(i=c.length-1;i>=0;i--)for(n=e(c[i]),s=n.length-1;s>=0;s--)a=e.data(n[s],this.widgetFullName),a&&a!==this&&!a.options.disabled&&(d.push([e.isFunction(a.options.items)?a.options.items.call(a.element[0],t,{item:this.currentItem}):e(a.options.items,a.element),a]),this.containers.push(a));for(i=d.length-1;i>=0;i--)for(o=d[i][1],r=d[i][0],s=0,l=r.length;l>s;s++)h=e(r[s]),h.data(this.widgetName+"-item",o),u.push({item:h,instance:o,width:0,height:0,left:0,top:0})},refreshPositions:function(t){this.offsetParent&&this.helper&&(this.offset.parent=this._getParentOffset());var i,s,n,a;for(i=this.items.length-1;i>=0;i--)s=this.items[i],s.instance!==this.currentContainer&&this.currentContainer&&s.item[0]!==this.currentItem[0]||(n=this.options.toleranceElement?e(this.options.toleranceElement,s.item):s.item,t||(s.width=n.outerWidth(),s.height=n.outerHeight()),a=n.offset(),s.left=a.left,s.top=a.top);if(this.options.custom&&this.options.custom.refreshContainers)this.options.custom.refreshContainers.call(this);else for(i=this.containers.length-1;i>=0;i--)a=this.containers[i].element.offset(),this.containers[i].containerCache.left=a.left,this.containers[i].containerCache.top=a.top,this.containers[i].containerCache.width=this.containers[i].element.outerWidth(),this.containers[i].containerCache.height=this.containers[i].element.outerHeight();return this},_createPlaceholder:function(t){t=t||this;var i,s=t.options;s.placeholder&&s.placeholder.constructor!==String||(i=s.placeholder,s.placeholder={element:function(){var s=t.currentItem[0].nodeName.toLowerCase(),n=e("<"+s+">",t.document[0]).addClass(i||t.currentItem[0].className+" ui-sortable-placeholder").removeClass("ui-sortable-helper");return"tr"===s?t.currentItem.children().each(function(){e(" ",t.document[0]).attr("colspan",e(this).attr("colspan")||1).appendTo(n)}):"img"===s&&n.attr("src",t.currentItem.attr("src")),i||n.css("visibility","hidden"),n},update:function(e,n){(!i||s.forcePlaceholderSize)&&(n.height()||n.height(t.currentItem.innerHeight()-parseInt(t.currentItem.css("paddingTop")||0,10)-parseInt(t.currentItem.css("paddingBottom")||0,10)),n.width()||n.width(t.currentItem.innerWidth()-parseInt(t.currentItem.css("paddingLeft")||0,10)-parseInt(t.currentItem.css("paddingRight")||0,10)))}}),t.placeholder=e(s.placeholder.element.call(t.element,t.currentItem)),t.currentItem.after(t.placeholder),s.placeholder.update(t,t.placeholder)},_contactContainers:function(t){var i,s,n,a,o,r,h,l,u,d,c=null,p=null;for(i=this.containers.length-1;i>=0;i--)if(!e.contains(this.currentItem[0],this.containers[i].element[0]))if(this._intersectsWith(this.containers[i].containerCache)){if(c&&e.contains(this.containers[i].element[0],c.element[0]))continue;c=this.containers[i],p=i}else this.containers[i].containerCache.over&&(this.containers[i]._trigger("out",t,this._uiHash(this)),this.containers[i].containerCache.over=0);if(c)if(1===this.containers.length)this.containers[p].containerCache.over||(this.containers[p]._trigger("over",t,this._uiHash(this)),this.containers[p].containerCache.over=1);else{for(n=1e4,a=null,u=c.floating||this._isFloating(this.currentItem),o=u?"left":"top",r=u?"width":"height",d=u?"clientX":"clientY",s=this.items.length-1;s>=0;s--)e.contains(this.containers[p].element[0],this.items[s].item[0])&&this.items[s].item[0]!==this.currentItem[0]&&(h=this.items[s].item.offset()[o],l=!1,t[d]-h>this.items[s][r]/2&&(l=!0),n>Math.abs(t[d]-h)&&(n=Math.abs(t[d]-h),a=this.items[s],this.direction=l?"up":"down"));if(!a&&!this.options.dropOnEmpty)return;if(this.currentContainer===this.containers[p])return;a?this._rearrange(t,a,null,!0):this._rearrange(t,null,this.containers[p].element,!0),this._trigger("change",t,this._uiHash()),this.containers[p]._trigger("change",t,this._uiHash(this)),this.currentContainer=this.containers[p],this.options.placeholder.update(this.currentContainer,this.placeholder),this.containers[p]._trigger("over",t,this._uiHash(this)),this.containers[p].containerCache.over=1}},_createHelper:function(t){var i=this.options,s=e.isFunction(i.helper)?e(i.helper.apply(this.element[0],[t,this.currentItem])):"clone"===i.helper?this.currentItem.clone():this.currentItem;return s.parents("body").length||e("parent"!==i.appendTo?i.appendTo:this.currentItem[0].parentNode)[0].appendChild(s[0]),s[0]===this.currentItem[0]&&(this._storedCSS={width:this.currentItem[0].style.width,height:this.currentItem[0].style.height,position:this.currentItem.css("position"),top:this.currentItem.css("top"),left:this.currentItem.css("left")}),(!s[0].style.width||i.forceHelperSize)&&s.width(this.currentItem.width()),(!s[0].style.height||i.forceHelperSize)&&s.height(this.currentItem.height()),s},_adjustOffsetFromHelper:function(t){"string"==typeof t&&(t=t.split(" ")),e.isArray(t)&&(t={left:+t[0],top:+t[1]||0}),"left"in t&&(this.offset.click.left=t.left+this.margins.left),"right"in t&&(this.offset.click.left=this.helperProportions.width-t.right+this.margins.left),"top"in t&&(this.offset.click.top=t.top+this.margins.top),"bottom"in t&&(this.offset.click.top=this.helperProportions.height-t.bottom+this.margins.top)},_getParentOffset:function(){this.offsetParent=this.helper.offsetParent();var t=this.offsetParent.offset();return"absolute"===this.cssPosition&&this.scrollParent[0]!==document&&e.contains(this.scrollParent[0],this.offsetParent[0])&&(t.left+=this.scrollParent.scrollLeft(),t.top+=this.scrollParent.scrollTop()),(this.offsetParent[0]===document.body||this.offsetParent[0].tagName&&"html"===this.offsetParent[0].tagName.toLowerCase()&&e.ui.ie)&&(t={top:0,left:0}),{top:t.top+(parseInt(this.offsetParent.css("borderTopWidth"),10)||0),left:t.left+(parseInt(this.offsetParent.css("borderLeftWidth"),10)||0)}},_getRelativeOffset:function(){if("relative"===this.cssPosition){var e=this.currentItem.position();return{top:e.top-(parseInt(this.helper.css("top"),10)||0)+this.scrollParent.scrollTop(),left:e.left-(parseInt(this.helper.css("left"),10)||0)+this.scrollParent.scrollLeft()}}return{top:0,left:0}},_cacheMargins:function(){this.margins={left:parseInt(this.currentItem.css("marginLeft"),10)||0,top:parseInt(this.currentItem.css("marginTop"),10)||0}},_cacheHelperProportions:function(){this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()}},_setContainment:function(){var t,i,s,n=this.options;"parent"===n.containment&&(n.containment=this.helper[0].parentNode),("document"===n.containment||"window"===n.containment)&&(this.containment=[0-this.offset.relative.left-this.offset.parent.left,0-this.offset.relative.top-this.offset.parent.top,e("document"===n.containment?document:window).width()-this.helperProportions.width-this.margins.left,(e("document"===n.containment?document:window).height()||document.body.parentNode.scrollHeight)-this.helperProportions.height-this.margins.top]),/^(document|window|parent)$/.test(n.containment)||(t=e(n.containment)[0],i=e(n.containment).offset(),s="hidden"!==e(t).css("overflow"),this.containment=[i.left+(parseInt(e(t).css("borderLeftWidth"),10)||0)+(parseInt(e(t).css("paddingLeft"),10)||0)-this.margins.left,i.top+(parseInt(e(t).css("borderTopWidth"),10)||0)+(parseInt(e(t).css("paddingTop"),10)||0)-this.margins.top,i.left+(s?Math.max(t.scrollWidth,t.offsetWidth):t.offsetWidth)-(parseInt(e(t).css("borderLeftWidth"),10)||0)-(parseInt(e(t).css("paddingRight"),10)||0)-this.helperProportions.width-this.margins.left,i.top+(s?Math.max(t.scrollHeight,t.offsetHeight):t.offsetHeight)-(parseInt(e(t).css("borderTopWidth"),10)||0)-(parseInt(e(t).css("paddingBottom"),10)||0)-this.helperProportions.height-this.margins.top])},_convertPositionTo:function(t,i){i||(i=this.position);var s="absolute"===t?1:-1,n="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,a=/(html|body)/i.test(n[0].tagName);return{top:i.top+this.offset.relative.top*s+this.offset.parent.top*s-("fixed"===this.cssPosition?-this.scrollParent.scrollTop():a?0:n.scrollTop())*s,left:i.left+this.offset.relative.left*s+this.offset.parent.left*s-("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():a?0:n.scrollLeft())*s}},_generatePosition:function(t){var i,s,n=this.options,a=t.pageX,o=t.pageY,r="absolute"!==this.cssPosition||this.scrollParent[0]!==document&&e.contains(this.scrollParent[0],this.offsetParent[0])?this.scrollParent:this.offsetParent,h=/(html|body)/i.test(r[0].tagName);return"relative"!==this.cssPosition||this.scrollParent[0]!==document&&this.scrollParent[0]!==this.offsetParent[0]||(this.offset.relative=this._getRelativeOffset()),this.originalPosition&&(this.containment&&(t.pageX-this.offset.click.leftthis.containment[2]&&(a=this.containment[2]+this.offset.click.left),t.pageY-this.offset.click.top>this.containment[3]&&(o=this.containment[3]+this.offset.click.top)),n.grid&&(i=this.originalPageY+Math.round((o-this.originalPageY)/n.grid[1])*n.grid[1],o=this.containment?i-this.offset.click.top>=this.containment[1]&&i-this.offset.click.top<=this.containment[3]?i:i-this.offset.click.top>=this.containment[1]?i-n.grid[1]:i+n.grid[1]:i,s=this.originalPageX+Math.round((a-this.originalPageX)/n.grid[0])*n.grid[0],a=this.containment?s-this.offset.click.left>=this.containment[0]&&s-this.offset.click.left<=this.containment[2]?s:s-this.offset.click.left>=this.containment[0]?s-n.grid[0]:s+n.grid[0]:s)),{top:o-this.offset.click.top-this.offset.relative.top-this.offset.parent.top+("fixed"===this.cssPosition?-this.scrollParent.scrollTop():h?0:r.scrollTop()),left:a-this.offset.click.left-this.offset.relative.left-this.offset.parent.left+("fixed"===this.cssPosition?-this.scrollParent.scrollLeft():h?0:r.scrollLeft())}},_rearrange:function(e,t,i,s){i?i[0].appendChild(this.placeholder[0]):t.item[0].parentNode.insertBefore(this.placeholder[0],"down"===this.direction?t.item[0]:t.item[0].nextSibling),this.counter=this.counter?++this.counter:1;var n=this.counter;this._delay(function(){n===this.counter&&this.refreshPositions(!s)})},_clear:function(e,t){function i(e,t,i){return function(s){i._trigger(e,s,t._uiHash(t))}}this.reverting=!1;var s,n=[];if(!this._noFinalSort&&this.currentItem.parent().length&&this.placeholder.before(this.currentItem),this._noFinalSort=null,this.helper[0]===this.currentItem[0]){for(s in this._storedCSS)("auto"===this._storedCSS[s]||"static"===this._storedCSS[s])&&(this._storedCSS[s]="");this.currentItem.css(this._storedCSS).removeClass("ui-sortable-helper")}else this.currentItem.show();for(this.fromOutside&&!t&&n.push(function(e){this._trigger("receive",e,this._uiHash(this.fromOutside))}),!this.fromOutside&&this.domPosition.prev===this.currentItem.prev().not(".ui-sortable-helper")[0]&&this.domPosition.parent===this.currentItem.parent()[0]||t||n.push(function(e){this._trigger("update",e,this._uiHash())}),this!==this.currentContainer&&(t||(n.push(function(e){this._trigger("remove",e,this._uiHash())}),n.push(function(e){return function(t){e._trigger("receive",t,this._uiHash(this))}}.call(this,this.currentContainer)),n.push(function(e){return function(t){e._trigger("update",t,this._uiHash(this))}}.call(this,this.currentContainer)))),s=this.containers.length-1;s>=0;s--)t||n.push(i("deactivate",this,this.containers[s])),this.containers[s].containerCache.over&&(n.push(i("out",this,this.containers[s])),this.containers[s].containerCache.over=0);if(this.storedCursor&&(this.document.find("body").css("cursor",this.storedCursor),this.storedStylesheet.remove()),this._storedOpacity&&this.helper.css("opacity",this._storedOpacity),this._storedZIndex&&this.helper.css("zIndex","auto"===this._storedZIndex?"":this._storedZIndex),this.dragging=!1,this.cancelHelperRemoval){if(!t){for(this._trigger("beforeStop",e,this._uiHash()),s=0;n.length>s;s++)n[s].call(this,e);this._trigger("stop",e,this._uiHash())}return this.fromOutside=!1,!1}if(t||this._trigger("beforeStop",e,this._uiHash()),this.placeholder[0].parentNode.removeChild(this.placeholder[0]),this.helper[0]!==this.currentItem[0]&&this.helper.remove(),this.helper=null,!t){for(s=0;n.length>s;s++)n[s].call(this,e);this._trigger("stop",e,this._uiHash())}return this.fromOutside=!1,!0},_trigger:function(){e.Widget.prototype._trigger.apply(this,arguments)===!1&&this.cancel()},_uiHash:function(t){var i=t||this;return{helper:i.helper,placeholder:i.placeholder||e([]),position:i.position,originalPosition:i.originalPosition,offset:i.positionAbs,item:i.currentItem,sender:t?t.element:null}}}),e.widget("ui.accordion",{version:"1.11.1",options:{active:0,animate:{},collapsible:!1,event:"click",header:"> li > :first-child,> :not(li):even",heightStyle:"auto",icons:{activeHeader:"ui-icon-triangle-1-s",header:"ui-icon-triangle-1-e"},activate:null,beforeActivate:null},hideProps:{borderTopWidth:"hide",borderBottomWidth:"hide",paddingTop:"hide",paddingBottom:"hide",height:"hide"},showProps:{borderTopWidth:"show",borderBottomWidth:"show",paddingTop:"show",paddingBottom:"show",height:"show"},_create:function(){var t=this.options;this.prevShow=this.prevHide=e(),this.element.addClass("ui-accordion ui-widget ui-helper-reset").attr("role","tablist"),t.collapsible||t.active!==!1&&null!=t.active||(t.active=0),this._processPanels(),0>t.active&&(t.active+=this.headers.length),this._refresh()},_getCreateEventData:function(){return{header:this.active,panel:this.active.length?this.active.next():e()}},_createIcons:function(){var t=this.options.icons;t&&(e("").addClass("ui-accordion-header-icon ui-icon "+t.header).prependTo(this.headers),this.active.children(".ui-accordion-header-icon").removeClass(t.header).addClass(t.activeHeader),this.headers.addClass("ui-accordion-icons"))},_destroyIcons:function(){this.headers.removeClass("ui-accordion-icons").children(".ui-accordion-header-icon").remove()},_destroy:function(){var e;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role"),this.headers.removeClass("ui-accordion-header ui-accordion-header-active ui-state-default ui-corner-all ui-state-active ui-state-disabled ui-corner-top").removeAttr("role").removeAttr("aria-expanded").removeAttr("aria-selected").removeAttr("aria-controls").removeAttr("tabIndex").removeUniqueId(),this._destroyIcons(),e=this.headers.next().removeClass("ui-helper-reset ui-widget-content ui-corner-bottom ui-accordion-content ui-accordion-content-active ui-state-disabled").css("display","").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeUniqueId(),"content"!==this.options.heightStyle&&e.css("height","")},_setOption:function(e,t){return"active"===e?(this._activate(t),void 0):("event"===e&&(this.options.event&&this._off(this.headers,this.options.event),this._setupEvents(t)),this._super(e,t),"collapsible"!==e||t||this.options.active!==!1||this._activate(0),"icons"===e&&(this._destroyIcons(),t&&this._createIcons()),"disabled"===e&&(this.element.toggleClass("ui-state-disabled",!!t).attr("aria-disabled",t),this.headers.add(this.headers.next()).toggleClass("ui-state-disabled",!!t)),void 0)},_keydown:function(t){if(!t.altKey&&!t.ctrlKey){var i=e.ui.keyCode,s=this.headers.length,n=this.headers.index(t.target),a=!1;switch(t.keyCode){case i.RIGHT:case i.DOWN:a=this.headers[(n+1)%s];break;case i.LEFT:case i.UP:a=this.headers[(n-1+s)%s];break;case i.SPACE:case i.ENTER:this._eventHandler(t);break;case i.HOME:a=this.headers[0];break;case i.END:a=this.headers[s-1]}a&&(e(t.target).attr("tabIndex",-1),e(a).attr("tabIndex",0),a.focus(),t.preventDefault())}},_panelKeyDown:function(t){t.keyCode===e.ui.keyCode.UP&&t.ctrlKey&&e(t.currentTarget).prev().focus()},refresh:function(){var t=this.options;this._processPanels(),t.active===!1&&t.collapsible===!0||!this.headers.length?(t.active=!1,this.active=e()):t.active===!1?this._activate(0):this.active.length&&!e.contains(this.element[0],this.active[0])?this.headers.length===this.headers.find(".ui-state-disabled").length?(t.active=!1,this.active=e()):this._activate(Math.max(0,t.active-1)):t.active=this.headers.index(this.active),this._destroyIcons(),this._refresh()},_processPanels:function(){this.headers=this.element.find(this.options.header).addClass("ui-accordion-header ui-state-default ui-corner-all"),this.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content ui-corner-bottom").filter(":not(.ui-accordion-content-active)").hide()},_refresh:function(){var t,i=this.options,s=i.heightStyle,n=this.element.parent();this.active=this._findActive(i.active).addClass("ui-accordion-header-active ui-state-active ui-corner-top").removeClass("ui-corner-all"),this.active.next().addClass("ui-accordion-content-active").show(),this.headers.attr("role","tab").each(function(){var t=e(this),i=t.uniqueId().attr("id"),s=t.next(),n=s.uniqueId().attr("id"); -t.attr("aria-controls",n),s.attr("aria-labelledby",i)}).next().attr("role","tabpanel"),this.headers.not(this.active).attr({"aria-selected":"false","aria-expanded":"false",tabIndex:-1}).next().attr({"aria-hidden":"true"}).hide(),this.active.length?this.active.attr({"aria-selected":"true","aria-expanded":"true",tabIndex:0}).next().attr({"aria-hidden":"false"}):this.headers.eq(0).attr("tabIndex",0),this._createIcons(),this._setupEvents(i.event),"fill"===s?(t=n.height(),this.element.siblings(":visible").each(function(){var i=e(this),s=i.css("position");"absolute"!==s&&"fixed"!==s&&(t-=i.outerHeight(!0))}),this.headers.each(function(){t-=e(this).outerHeight(!0)}),this.headers.next().each(function(){e(this).height(Math.max(0,t-e(this).innerHeight()+e(this).height()))}).css("overflow","auto")):"auto"===s&&(t=0,this.headers.next().each(function(){t=Math.max(t,e(this).css("height","").height())}).height(t))},_activate:function(t){var i=this._findActive(t)[0];i!==this.active[0]&&(i=i||this.active[0],this._eventHandler({target:i,currentTarget:i,preventDefault:e.noop}))},_findActive:function(t){return"number"==typeof t?this.headers.eq(t):e()},_setupEvents:function(t){var i={keydown:"_keydown"};t&&e.each(t.split(" "),function(e,t){i[t]="_eventHandler"}),this._off(this.headers.add(this.headers.next())),this._on(this.headers,i),this._on(this.headers.next(),{keydown:"_panelKeyDown"}),this._hoverable(this.headers),this._focusable(this.headers)},_eventHandler:function(t){var i=this.options,s=this.active,n=e(t.currentTarget),a=n[0]===s[0],o=a&&i.collapsible,r=o?e():n.next(),h=s.next(),l={oldHeader:s,oldPanel:h,newHeader:o?e():n,newPanel:r};t.preventDefault(),a&&!i.collapsible||this._trigger("beforeActivate",t,l)===!1||(i.active=o?!1:this.headers.index(n),this.active=a?e():n,this._toggle(l),s.removeClass("ui-accordion-header-active ui-state-active"),i.icons&&s.children(".ui-accordion-header-icon").removeClass(i.icons.activeHeader).addClass(i.icons.header),a||(n.removeClass("ui-corner-all").addClass("ui-accordion-header-active ui-state-active ui-corner-top"),i.icons&&n.children(".ui-accordion-header-icon").removeClass(i.icons.header).addClass(i.icons.activeHeader),n.next().addClass("ui-accordion-content-active")))},_toggle:function(t){var i=t.newPanel,s=this.prevShow.length?this.prevShow:t.oldPanel;this.prevShow.add(this.prevHide).stop(!0,!0),this.prevShow=i,this.prevHide=s,this.options.animate?this._animate(i,s,t):(s.hide(),i.show(),this._toggleComplete(t)),s.attr({"aria-hidden":"true"}),s.prev().attr("aria-selected","false"),i.length&&s.length?s.prev().attr({tabIndex:-1,"aria-expanded":"false"}):i.length&&this.headers.filter(function(){return 0===e(this).attr("tabIndex")}).attr("tabIndex",-1),i.attr("aria-hidden","false").prev().attr({"aria-selected":"true",tabIndex:0,"aria-expanded":"true"})},_animate:function(e,t,i){var s,n,a,o=this,r=0,h=e.length&&(!t.length||e.index()",delay:300,options:{icons:{submenu:"ui-icon-carat-1-e"},items:"> *",menus:"ul",position:{my:"left-1 top",at:"right top"},role:"menu",blur:null,focus:null,select:null},_create:function(){this.activeMenu=this.element,this.mouseHandled=!1,this.element.uniqueId().addClass("ui-menu ui-widget ui-widget-content").toggleClass("ui-menu-icons",!!this.element.find(".ui-icon").length).attr({role:this.options.role,tabIndex:0}),this.options.disabled&&this.element.addClass("ui-state-disabled").attr("aria-disabled","true"),this._on({"mousedown .ui-menu-item":function(e){e.preventDefault()},"click .ui-menu-item":function(t){var i=e(t.target);!this.mouseHandled&&i.not(".ui-state-disabled").length&&(this.select(t),t.isPropagationStopped()||(this.mouseHandled=!0),i.has(".ui-menu").length?this.expand(t):!this.element.is(":focus")&&e(this.document[0].activeElement).closest(".ui-menu").length&&(this.element.trigger("focus",[!0]),this.active&&1===this.active.parents(".ui-menu").length&&clearTimeout(this.timer)))},"mouseenter .ui-menu-item":function(t){var i=e(t.currentTarget);i.siblings(".ui-state-active").removeClass("ui-state-active"),this.focus(t,i)},mouseleave:"collapseAll","mouseleave .ui-menu":"collapseAll",focus:function(e,t){var i=this.active||this.element.find(this.options.items).eq(0);t||this.focus(e,i)},blur:function(t){this._delay(function(){e.contains(this.element[0],this.document[0].activeElement)||this.collapseAll(t)})},keydown:"_keydown"}),this.refresh(),this._on(this.document,{click:function(e){this._closeOnDocumentClick(e)&&this.collapseAll(e),this.mouseHandled=!1}})},_destroy:function(){this.element.removeAttr("aria-activedescendant").find(".ui-menu").addBack().removeClass("ui-menu ui-widget ui-widget-content ui-menu-icons ui-front").removeAttr("role").removeAttr("tabIndex").removeAttr("aria-labelledby").removeAttr("aria-expanded").removeAttr("aria-hidden").removeAttr("aria-disabled").removeUniqueId().show(),this.element.find(".ui-menu-item").removeClass("ui-menu-item").removeAttr("role").removeAttr("aria-disabled").removeUniqueId().removeClass("ui-state-hover").removeAttr("tabIndex").removeAttr("role").removeAttr("aria-haspopup").children().each(function(){var t=e(this);t.data("ui-menu-submenu-carat")&&t.remove()}),this.element.find(".ui-menu-divider").removeClass("ui-menu-divider ui-widget-content")},_keydown:function(t){function i(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}var s,n,a,o,r,h=!0;switch(t.keyCode){case e.ui.keyCode.PAGE_UP:this.previousPage(t);break;case e.ui.keyCode.PAGE_DOWN:this.nextPage(t);break;case e.ui.keyCode.HOME:this._move("first","first",t);break;case e.ui.keyCode.END:this._move("last","last",t);break;case e.ui.keyCode.UP:this.previous(t);break;case e.ui.keyCode.DOWN:this.next(t);break;case e.ui.keyCode.LEFT:this.collapse(t);break;case e.ui.keyCode.RIGHT:this.active&&!this.active.is(".ui-state-disabled")&&this.expand(t);break;case e.ui.keyCode.ENTER:case e.ui.keyCode.SPACE:this._activate(t);break;case e.ui.keyCode.ESCAPE:this.collapse(t);break;default:h=!1,n=this.previousFilter||"",a=String.fromCharCode(t.keyCode),o=!1,clearTimeout(this.filterTimer),a===n?o=!0:a=n+a,r=RegExp("^"+i(a),"i"),s=this.activeMenu.find(this.options.items).filter(function(){return r.test(e(this).text())}),s=o&&-1!==s.index(this.active.next())?this.active.nextAll(".ui-menu-item"):s,s.length||(a=String.fromCharCode(t.keyCode),r=RegExp("^"+i(a),"i"),s=this.activeMenu.find(this.options.items).filter(function(){return r.test(e(this).text())})),s.length?(this.focus(t,s),s.length>1?(this.previousFilter=a,this.filterTimer=this._delay(function(){delete this.previousFilter},1e3)):delete this.previousFilter):delete this.previousFilter}h&&t.preventDefault()},_activate:function(e){this.active.is(".ui-state-disabled")||(this.active.is("[aria-haspopup='true']")?this.expand(e):this.select(e))},refresh:function(){var t,i,s=this,n=this.options.icons.submenu,a=this.element.find(this.options.menus);this.element.toggleClass("ui-menu-icons",!!this.element.find(".ui-icon").length),a.filter(":not(.ui-menu)").addClass("ui-menu ui-widget ui-widget-content ui-front").hide().attr({role:this.options.role,"aria-hidden":"true","aria-expanded":"false"}).each(function(){var t=e(this),i=t.parent(),s=e("").addClass("ui-menu-icon ui-icon "+n).data("ui-menu-submenu-carat",!0);i.attr("aria-haspopup","true").prepend(s),t.attr("aria-labelledby",i.attr("id"))}),t=a.add(this.element),i=t.find(this.options.items),i.not(".ui-menu-item").each(function(){var t=e(this);s._isDivider(t)&&t.addClass("ui-widget-content ui-menu-divider")}),i.not(".ui-menu-item, .ui-menu-divider").addClass("ui-menu-item").uniqueId().attr({tabIndex:-1,role:this._itemRole()}),i.filter(".ui-state-disabled").attr("aria-disabled","true"),this.active&&!e.contains(this.element[0],this.active[0])&&this.blur()},_itemRole:function(){return{menu:"menuitem",listbox:"option"}[this.options.role]},_setOption:function(e,t){"icons"===e&&this.element.find(".ui-menu-icon").removeClass(this.options.icons.submenu).addClass(t.submenu),"disabled"===e&&this.element.toggleClass("ui-state-disabled",!!t).attr("aria-disabled",t),this._super(e,t)},focus:function(e,t){var i,s;this.blur(e,e&&"focus"===e.type),this._scrollIntoView(t),this.active=t.first(),s=this.active.addClass("ui-state-focus").removeClass("ui-state-active"),this.options.role&&this.element.attr("aria-activedescendant",s.attr("id")),this.active.parent().closest(".ui-menu-item").addClass("ui-state-active"),e&&"keydown"===e.type?this._close():this.timer=this._delay(function(){this._close()},this.delay),i=t.children(".ui-menu"),i.length&&e&&/^mouse/.test(e.type)&&this._startOpening(i),this.activeMenu=t.parent(),this._trigger("focus",e,{item:t})},_scrollIntoView:function(t){var i,s,n,a,o,r;this._hasScroll()&&(i=parseFloat(e.css(this.activeMenu[0],"borderTopWidth"))||0,s=parseFloat(e.css(this.activeMenu[0],"paddingTop"))||0,n=t.offset().top-this.activeMenu.offset().top-i-s,a=this.activeMenu.scrollTop(),o=this.activeMenu.height(),r=t.outerHeight(),0>n?this.activeMenu.scrollTop(a+n):n+r>o&&this.activeMenu.scrollTop(a+n-o+r))},blur:function(e,t){t||clearTimeout(this.timer),this.active&&(this.active.removeClass("ui-state-focus"),this.active=null,this._trigger("blur",e,{item:this.active}))},_startOpening:function(e){clearTimeout(this.timer),"true"===e.attr("aria-hidden")&&(this.timer=this._delay(function(){this._close(),this._open(e)},this.delay))},_open:function(t){var i=e.extend({of:this.active},this.options.position);clearTimeout(this.timer),this.element.find(".ui-menu").not(t.parents(".ui-menu")).hide().attr("aria-hidden","true"),t.show().removeAttr("aria-hidden").attr("aria-expanded","true").position(i)},collapseAll:function(t,i){clearTimeout(this.timer),this.timer=this._delay(function(){var s=i?this.element:e(t&&t.target).closest(this.element.find(".ui-menu"));s.length||(s=this.element),this._close(s),this.blur(t),this.activeMenu=s},this.delay)},_close:function(e){e||(e=this.active?this.active.parent():this.element),e.find(".ui-menu").hide().attr("aria-hidden","true").attr("aria-expanded","false").end().find(".ui-state-active").not(".ui-state-focus").removeClass("ui-state-active")},_closeOnDocumentClick:function(t){return!e(t.target).closest(".ui-menu").length},_isDivider:function(e){return!/[^\-\u2014\u2013\s]/.test(e.text())},collapse:function(e){var t=this.active&&this.active.parent().closest(".ui-menu-item",this.element);t&&t.length&&(this._close(),this.focus(e,t))},expand:function(e){var t=this.active&&this.active.children(".ui-menu ").find(this.options.items).first();t&&t.length&&(this._open(t.parent()),this._delay(function(){this.focus(e,t)}))},next:function(e){this._move("next","first",e)},previous:function(e){this._move("prev","last",e)},isFirstItem:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},isLastItem:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},_move:function(e,t,i){var s;this.active&&(s="first"===e||"last"===e?this.active["first"===e?"prevAll":"nextAll"](".ui-menu-item").eq(-1):this.active[e+"All"](".ui-menu-item").eq(0)),s&&s.length&&this.active||(s=this.activeMenu.find(this.options.items)[t]()),this.focus(i,s)},nextPage:function(t){var i,s,n;return this.active?(this.isLastItem()||(this._hasScroll()?(s=this.active.offset().top,n=this.element.height(),this.active.nextAll(".ui-menu-item").each(function(){return i=e(this),0>i.offset().top-s-n}),this.focus(t,i)):this.focus(t,this.activeMenu.find(this.options.items)[this.active?"last":"first"]())),void 0):(this.next(t),void 0)},previousPage:function(t){var i,s,n;return this.active?(this.isFirstItem()||(this._hasScroll()?(s=this.active.offset().top,n=this.element.height(),this.active.prevAll(".ui-menu-item").each(function(){return i=e(this),i.offset().top-s+n>0}),this.focus(t,i)):this.focus(t,this.activeMenu.find(this.options.items).first())),void 0):(this.next(t),void 0)},_hasScroll:function(){return this.element.outerHeight()",options:{appendTo:null,autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null,change:null,close:null,focus:null,open:null,response:null,search:null,select:null},requestIndex:0,pending:0,_create:function(){var t,i,s,n=this.element[0].nodeName.toLowerCase(),a="textarea"===n,o="input"===n;this.isMultiLine=a?!0:o?!1:this.element.prop("isContentEditable"),this.valueMethod=this.element[a||o?"val":"text"],this.isNewMenu=!0,this.element.addClass("ui-autocomplete-input").attr("autocomplete","off"),this._on(this.element,{keydown:function(n){if(this.element.prop("readOnly"))return t=!0,s=!0,i=!0,void 0;t=!1,s=!1,i=!1;var a=e.ui.keyCode;switch(n.keyCode){case a.PAGE_UP:t=!0,this._move("previousPage",n);break;case a.PAGE_DOWN:t=!0,this._move("nextPage",n);break;case a.UP:t=!0,this._keyEvent("previous",n);break;case a.DOWN:t=!0,this._keyEvent("next",n);break;case a.ENTER:this.menu.active&&(t=!0,n.preventDefault(),this.menu.select(n));break;case a.TAB:this.menu.active&&this.menu.select(n);break;case a.ESCAPE:this.menu.element.is(":visible")&&(this.isMultiLine||this._value(this.term),this.close(n),n.preventDefault());break;default:i=!0,this._searchTimeout(n)}},keypress:function(s){if(t)return t=!1,(!this.isMultiLine||this.menu.element.is(":visible"))&&s.preventDefault(),void 0;if(!i){var n=e.ui.keyCode;switch(s.keyCode){case n.PAGE_UP:this._move("previousPage",s);break;case n.PAGE_DOWN:this._move("nextPage",s);break;case n.UP:this._keyEvent("previous",s);break;case n.DOWN:this._keyEvent("next",s)}}},input:function(e){return s?(s=!1,e.preventDefault(),void 0):(this._searchTimeout(e),void 0)},focus:function(){this.selectedItem=null,this.previous=this._value()},blur:function(e){return this.cancelBlur?(delete this.cancelBlur,void 0):(clearTimeout(this.searching),this.close(e),this._change(e),void 0)}}),this._initSource(),this.menu=e("
    ").addClass("ui-autocomplete ui-front").appendTo(this._appendTo()).menu({role:null}).hide().menu("instance"),this._on(this.menu.element,{mousedown:function(t){t.preventDefault(),this.cancelBlur=!0,this._delay(function(){delete this.cancelBlur});var i=this.menu.element[0];e(t.target).closest(".ui-menu-item").length||this._delay(function(){var t=this;this.document.one("mousedown",function(s){s.target===t.element[0]||s.target===i||e.contains(i,s.target)||t.close()})})},menufocus:function(t,i){var s,n;return this.isNewMenu&&(this.isNewMenu=!1,t.originalEvent&&/^mouse/.test(t.originalEvent.type))?(this.menu.blur(),this.document.one("mousemove",function(){e(t.target).trigger(t.originalEvent)}),void 0):(n=i.item.data("ui-autocomplete-item"),!1!==this._trigger("focus",t,{item:n})&&t.originalEvent&&/^key/.test(t.originalEvent.type)&&this._value(n.value),s=i.item.attr("aria-label")||n.value,s&&e.trim(s).length&&(this.liveRegion.children().hide(),e("
    ").text(s).appendTo(this.liveRegion)),void 0)},menuselect:function(e,t){var i=t.item.data("ui-autocomplete-item"),s=this.previous;this.element[0]!==this.document[0].activeElement&&(this.element.focus(),this.previous=s,this._delay(function(){this.previous=s,this.selectedItem=i})),!1!==this._trigger("select",e,{item:i})&&this._value(i.value),this.term=this._value(),this.close(e),this.selectedItem=i}}),this.liveRegion=e("",{role:"status","aria-live":"assertive","aria-relevant":"additions"}).addClass("ui-helper-hidden-accessible").appendTo(this.document[0].body),this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_destroy:function(){clearTimeout(this.searching),this.element.removeClass("ui-autocomplete-input").removeAttr("autocomplete"),this.menu.element.remove(),this.liveRegion.remove()},_setOption:function(e,t){this._super(e,t),"source"===e&&this._initSource(),"appendTo"===e&&this.menu.element.appendTo(this._appendTo()),"disabled"===e&&t&&this.xhr&&this.xhr.abort()},_appendTo:function(){var t=this.options.appendTo;return t&&(t=t.jquery||t.nodeType?e(t):this.document.find(t).eq(0)),t&&t[0]||(t=this.element.closest(".ui-front")),t.length||(t=this.document[0].body),t},_initSource:function(){var t,i,s=this;e.isArray(this.options.source)?(t=this.options.source,this.source=function(i,s){s(e.ui.autocomplete.filter(t,i.term))}):"string"==typeof this.options.source?(i=this.options.source,this.source=function(t,n){s.xhr&&s.xhr.abort(),s.xhr=e.ajax({url:i,data:t,dataType:"json",success:function(e){n(e)},error:function(){n([])}})}):this.source=this.options.source},_searchTimeout:function(e){clearTimeout(this.searching),this.searching=this._delay(function(){var t=this.term===this._value(),i=this.menu.element.is(":visible"),s=e.altKey||e.ctrlKey||e.metaKey||e.shiftKey;(!t||t&&!i&&!s)&&(this.selectedItem=null,this.search(null,e))},this.options.delay)},search:function(e,t){return e=null!=e?e:this._value(),this.term=this._value(),e.length").text(i.label).appendTo(t)},_move:function(e,t){return this.menu.element.is(":visible")?this.menu.isFirstItem()&&/^previous/.test(e)||this.menu.isLastItem()&&/^next/.test(e)?(this.isMultiLine||this._value(this.term),this.menu.blur(),void 0):(this.menu[e](t),void 0):(this.search(null,t),void 0)},widget:function(){return this.menu.element},_value:function(){return this.valueMethod.apply(this.element,arguments)},_keyEvent:function(e,t){(!this.isMultiLine||this.menu.element.is(":visible"))&&(this._move(e,t),t.preventDefault())}}),e.extend(e.ui.autocomplete,{escapeRegex:function(e){return e.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")},filter:function(t,i){var s=RegExp(e.ui.autocomplete.escapeRegex(i),"i");return e.grep(t,function(e){return s.test(e.label||e.value||e)})}}),e.widget("ui.autocomplete",e.ui.autocomplete,{options:{messages:{noResults:"No search results.",results:function(e){return e+(e>1?" results are":" result is")+" available, use up and down arrow keys to navigate."}}},__response:function(t){var i;this._superApply(arguments),this.options.disabled||this.cancelSearch||(i=t&&t.length?this.options.messages.results(t.length):this.options.messages.noResults,this.liveRegion.children().hide(),e("
    ").text(i).appendTo(this.liveRegion))}}),e.ui.autocomplete;var c,p="ui-button ui-widget ui-state-default ui-corner-all",f="ui-button-icons-only ui-button-icon-only ui-button-text-icons ui-button-text-icon-primary ui-button-text-icon-secondary ui-button-text-only",m=function(){var t=e(this);setTimeout(function(){t.find(":ui-button").button("refresh")},1)},g=function(t){var i=t.name,s=t.form,n=e([]);return i&&(i=i.replace(/'/g,"\\'"),n=s?e(s).find("[name='"+i+"'][type=radio]"):e("[name='"+i+"'][type=radio]",t.ownerDocument).filter(function(){return!this.form})),n};e.widget("ui.button",{version:"1.11.1",defaultElement:"").addClass(this._triggerClass).html(a?e("").attr({src:a,alt:n,title:n}):n)),t[r?"before":"after"](i.trigger),i.trigger.click(function(){return e.datepicker._datepickerShowing&&e.datepicker._lastInput===t[0]?e.datepicker._hideDatepicker():e.datepicker._datepickerShowing&&e.datepicker._lastInput!==t[0]?(e.datepicker._hideDatepicker(),e.datepicker._showDatepicker(t[0])):e.datepicker._showDatepicker(t[0]),!1}))},_autoSize:function(e){if(this._get(e,"autoSize")&&!e.inline){var t,i,s,n,a=new Date(2009,11,20),o=this._get(e,"dateFormat");o.match(/[DM]/)&&(t=function(e){for(i=0,s=0,n=0;e.length>n;n++)e[n].length>i&&(i=e[n].length,s=n);return s},a.setMonth(t(this._get(e,o.match(/MM/)?"monthNames":"monthNamesShort"))),a.setDate(t(this._get(e,o.match(/DD/)?"dayNames":"dayNamesShort"))+20-a.getDay())),e.input.attr("size",this._formatDate(e,a).length)}},_inlineDatepicker:function(t,i){var s=e(t);s.hasClass(this.markerClassName)||(s.addClass(this.markerClassName).append(i.dpDiv),e.data(t,"datepicker",i),this._setDate(i,this._getDefaultDate(i),!0),this._updateDatepicker(i),this._updateAlternate(i),i.settings.disabled&&this._disableDatepicker(t),i.dpDiv.css("display","block"))},_dialogDatepicker:function(t,i,s,n,a){var o,h,l,u,d,c=this._dialogInst;return c||(this.uuid+=1,o="dp"+this.uuid,this._dialogInput=e(""),this._dialogInput.keydown(this._doKeyDown),e("body").append(this._dialogInput),c=this._dialogInst=this._newInst(this._dialogInput,!1),c.settings={},e.data(this._dialogInput[0],"datepicker",c)),r(c.settings,n||{}),i=i&&i.constructor===Date?this._formatDate(c,i):i,this._dialogInput.val(i),this._pos=a?a.length?a:[a.pageX,a.pageY]:null,this._pos||(h=document.documentElement.clientWidth,l=document.documentElement.clientHeight,u=document.documentElement.scrollLeft||document.body.scrollLeft,d=document.documentElement.scrollTop||document.body.scrollTop,this._pos=[h/2-100+u,l/2-150+d]),this._dialogInput.css("left",this._pos[0]+20+"px").css("top",this._pos[1]+"px"),c.settings.onSelect=s,this._inDialog=!0,this.dpDiv.addClass(this._dialogClass),this._showDatepicker(this._dialogInput[0]),e.blockUI&&e.blockUI(this.dpDiv),e.data(this._dialogInput[0],"datepicker",c),this},_destroyDatepicker:function(t){var i,s=e(t),n=e.data(t,"datepicker");s.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),e.removeData(t,"datepicker"),"input"===i?(n.append.remove(),n.trigger.remove(),s.removeClass(this.markerClassName).unbind("focus",this._showDatepicker).unbind("keydown",this._doKeyDown).unbind("keypress",this._doKeyPress).unbind("keyup",this._doKeyUp)):("div"===i||"span"===i)&&s.removeClass(this.markerClassName).empty()) -},_enableDatepicker:function(t){var i,s,n=e(t),a=e.data(t,"datepicker");n.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),"input"===i?(t.disabled=!1,a.trigger.filter("button").each(function(){this.disabled=!1}).end().filter("img").css({opacity:"1.0",cursor:""})):("div"===i||"span"===i)&&(s=n.children("."+this._inlineClass),s.children().removeClass("ui-state-disabled"),s.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!1)),this._disabledInputs=e.map(this._disabledInputs,function(e){return e===t?null:e}))},_disableDatepicker:function(t){var i,s,n=e(t),a=e.data(t,"datepicker");n.hasClass(this.markerClassName)&&(i=t.nodeName.toLowerCase(),"input"===i?(t.disabled=!0,a.trigger.filter("button").each(function(){this.disabled=!0}).end().filter("img").css({opacity:"0.5",cursor:"default"})):("div"===i||"span"===i)&&(s=n.children("."+this._inlineClass),s.children().addClass("ui-state-disabled"),s.find("select.ui-datepicker-month, select.ui-datepicker-year").prop("disabled",!0)),this._disabledInputs=e.map(this._disabledInputs,function(e){return e===t?null:e}),this._disabledInputs[this._disabledInputs.length]=t)},_isDisabledDatepicker:function(e){if(!e)return!1;for(var t=0;this._disabledInputs.length>t;t++)if(this._disabledInputs[t]===e)return!0;return!1},_getInst:function(t){try{return e.data(t,"datepicker")}catch(i){throw"Missing instance data for this datepicker"}},_optionDatepicker:function(t,i,s){var n,a,o,h,l=this._getInst(t);return 2===arguments.length&&"string"==typeof i?"defaults"===i?e.extend({},e.datepicker._defaults):l?"all"===i?e.extend({},l.settings):this._get(l,i):null:(n=i||{},"string"==typeof i&&(n={},n[i]=s),l&&(this._curInst===l&&this._hideDatepicker(),a=this._getDateDatepicker(t,!0),o=this._getMinMaxDate(l,"min"),h=this._getMinMaxDate(l,"max"),r(l.settings,n),null!==o&&void 0!==n.dateFormat&&void 0===n.minDate&&(l.settings.minDate=this._formatDate(l,o)),null!==h&&void 0!==n.dateFormat&&void 0===n.maxDate&&(l.settings.maxDate=this._formatDate(l,h)),"disabled"in n&&(n.disabled?this._disableDatepicker(t):this._enableDatepicker(t)),this._attachments(e(t),l),this._autoSize(l),this._setDate(l,a),this._updateAlternate(l),this._updateDatepicker(l)),void 0)},_changeDatepicker:function(e,t,i){this._optionDatepicker(e,t,i)},_refreshDatepicker:function(e){var t=this._getInst(e);t&&this._updateDatepicker(t)},_setDateDatepicker:function(e,t){var i=this._getInst(e);i&&(this._setDate(i,t),this._updateDatepicker(i),this._updateAlternate(i))},_getDateDatepicker:function(e,t){var i=this._getInst(e);return i&&!i.inline&&this._setDateFromField(i,t),i?this._getDate(i):null},_doKeyDown:function(t){var i,s,n,a=e.datepicker._getInst(t.target),o=!0,r=a.dpDiv.is(".ui-datepicker-rtl");if(a._keyEvent=!0,e.datepicker._datepickerShowing)switch(t.keyCode){case 9:e.datepicker._hideDatepicker(),o=!1;break;case 13:return n=e("td."+e.datepicker._dayOverClass+":not(."+e.datepicker._currentClass+")",a.dpDiv),n[0]&&e.datepicker._selectDay(t.target,a.selectedMonth,a.selectedYear,n[0]),i=e.datepicker._get(a,"onSelect"),i?(s=e.datepicker._formatDate(a),i.apply(a.input?a.input[0]:null,[s,a])):e.datepicker._hideDatepicker(),!1;case 27:e.datepicker._hideDatepicker();break;case 33:e.datepicker._adjustDate(t.target,t.ctrlKey?-e.datepicker._get(a,"stepBigMonths"):-e.datepicker._get(a,"stepMonths"),"M");break;case 34:e.datepicker._adjustDate(t.target,t.ctrlKey?+e.datepicker._get(a,"stepBigMonths"):+e.datepicker._get(a,"stepMonths"),"M");break;case 35:(t.ctrlKey||t.metaKey)&&e.datepicker._clearDate(t.target),o=t.ctrlKey||t.metaKey;break;case 36:(t.ctrlKey||t.metaKey)&&e.datepicker._gotoToday(t.target),o=t.ctrlKey||t.metaKey;break;case 37:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,r?1:-1,"D"),o=t.ctrlKey||t.metaKey,t.originalEvent.altKey&&e.datepicker._adjustDate(t.target,t.ctrlKey?-e.datepicker._get(a,"stepBigMonths"):-e.datepicker._get(a,"stepMonths"),"M");break;case 38:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,-7,"D"),o=t.ctrlKey||t.metaKey;break;case 39:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,r?-1:1,"D"),o=t.ctrlKey||t.metaKey,t.originalEvent.altKey&&e.datepicker._adjustDate(t.target,t.ctrlKey?+e.datepicker._get(a,"stepBigMonths"):+e.datepicker._get(a,"stepMonths"),"M");break;case 40:(t.ctrlKey||t.metaKey)&&e.datepicker._adjustDate(t.target,7,"D"),o=t.ctrlKey||t.metaKey;break;default:o=!1}else 36===t.keyCode&&t.ctrlKey?e.datepicker._showDatepicker(this):o=!1;o&&(t.preventDefault(),t.stopPropagation())},_doKeyPress:function(t){var i,s,n=e.datepicker._getInst(t.target);return e.datepicker._get(n,"constrainInput")?(i=e.datepicker._possibleChars(e.datepicker._get(n,"dateFormat")),s=String.fromCharCode(null==t.charCode?t.keyCode:t.charCode),t.ctrlKey||t.metaKey||" ">s||!i||i.indexOf(s)>-1):void 0},_doKeyUp:function(t){var i,s=e.datepicker._getInst(t.target);if(s.input.val()!==s.lastVal)try{i=e.datepicker.parseDate(e.datepicker._get(s,"dateFormat"),s.input?s.input.val():null,e.datepicker._getFormatConfig(s)),i&&(e.datepicker._setDateFromField(s),e.datepicker._updateAlternate(s),e.datepicker._updateDatepicker(s))}catch(n){}return!0},_showDatepicker:function(t){if(t=t.target||t,"input"!==t.nodeName.toLowerCase()&&(t=e("input",t.parentNode)[0]),!e.datepicker._isDisabledDatepicker(t)&&e.datepicker._lastInput!==t){var i,n,a,o,h,l,u;i=e.datepicker._getInst(t),e.datepicker._curInst&&e.datepicker._curInst!==i&&(e.datepicker._curInst.dpDiv.stop(!0,!0),i&&e.datepicker._datepickerShowing&&e.datepicker._hideDatepicker(e.datepicker._curInst.input[0])),n=e.datepicker._get(i,"beforeShow"),a=n?n.apply(t,[t,i]):{},a!==!1&&(r(i.settings,a),i.lastVal=null,e.datepicker._lastInput=t,e.datepicker._setDateFromField(i),e.datepicker._inDialog&&(t.value=""),e.datepicker._pos||(e.datepicker._pos=e.datepicker._findPos(t),e.datepicker._pos[1]+=t.offsetHeight),o=!1,e(t).parents().each(function(){return o|="fixed"===e(this).css("position"),!o}),h={left:e.datepicker._pos[0],top:e.datepicker._pos[1]},e.datepicker._pos=null,i.dpDiv.empty(),i.dpDiv.css({position:"absolute",display:"block",top:"-1000px"}),e.datepicker._updateDatepicker(i),h=e.datepicker._checkOffset(i,h,o),i.dpDiv.css({position:e.datepicker._inDialog&&e.blockUI?"static":o?"fixed":"absolute",display:"none",left:h.left+"px",top:h.top+"px"}),i.inline||(l=e.datepicker._get(i,"showAnim"),u=e.datepicker._get(i,"duration"),i.dpDiv.css("z-index",s(e(t))+1),e.datepicker._datepickerShowing=!0,e.effects&&e.effects.effect[l]?i.dpDiv.show(l,e.datepicker._get(i,"showOptions"),u):i.dpDiv[l||"show"](l?u:null),e.datepicker._shouldFocusInput(i)&&i.input.focus(),e.datepicker._curInst=i))}},_updateDatepicker:function(t){this.maxRows=4,v=t,t.dpDiv.empty().append(this._generateHTML(t)),this._attachHandlers(t);var i,s=this._getNumberOfMonths(t),n=s[1],a=17,r=t.dpDiv.find("."+this._dayOverClass+" a");r.length>0&&o.apply(r.get(0)),t.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width(""),n>1&&t.dpDiv.addClass("ui-datepicker-multi-"+n).css("width",a*n+"em"),t.dpDiv[(1!==s[0]||1!==s[1]?"add":"remove")+"Class"]("ui-datepicker-multi"),t.dpDiv[(this._get(t,"isRTL")?"add":"remove")+"Class"]("ui-datepicker-rtl"),t===e.datepicker._curInst&&e.datepicker._datepickerShowing&&e.datepicker._shouldFocusInput(t)&&t.input.focus(),t.yearshtml&&(i=t.yearshtml,setTimeout(function(){i===t.yearshtml&&t.yearshtml&&t.dpDiv.find("select.ui-datepicker-year:first").replaceWith(t.yearshtml),i=t.yearshtml=null},0))},_shouldFocusInput:function(e){return e.input&&e.input.is(":visible")&&!e.input.is(":disabled")&&!e.input.is(":focus")},_checkOffset:function(t,i,s){var n=t.dpDiv.outerWidth(),a=t.dpDiv.outerHeight(),o=t.input?t.input.outerWidth():0,r=t.input?t.input.outerHeight():0,h=document.documentElement.clientWidth+(s?0:e(document).scrollLeft()),l=document.documentElement.clientHeight+(s?0:e(document).scrollTop());return i.left-=this._get(t,"isRTL")?n-o:0,i.left-=s&&i.left===t.input.offset().left?e(document).scrollLeft():0,i.top-=s&&i.top===t.input.offset().top+r?e(document).scrollTop():0,i.left-=Math.min(i.left,i.left+n>h&&h>n?Math.abs(i.left+n-h):0),i.top-=Math.min(i.top,i.top+a>l&&l>a?Math.abs(a+r):0),i},_findPos:function(t){for(var i,s=this._getInst(t),n=this._get(s,"isRTL");t&&("hidden"===t.type||1!==t.nodeType||e.expr.filters.hidden(t));)t=t[n?"previousSibling":"nextSibling"];return i=e(t).offset(),[i.left,i.top]},_hideDatepicker:function(t){var i,s,n,a,o=this._curInst;!o||t&&o!==e.data(t,"datepicker")||this._datepickerShowing&&(i=this._get(o,"showAnim"),s=this._get(o,"duration"),n=function(){e.datepicker._tidyDialog(o)},e.effects&&(e.effects.effect[i]||e.effects[i])?o.dpDiv.hide(i,e.datepicker._get(o,"showOptions"),s,n):o.dpDiv["slideDown"===i?"slideUp":"fadeIn"===i?"fadeOut":"hide"](i?s:null,n),i||n(),this._datepickerShowing=!1,a=this._get(o,"onClose"),a&&a.apply(o.input?o.input[0]:null,[o.input?o.input.val():"",o]),this._lastInput=null,this._inDialog&&(this._dialogInput.css({position:"absolute",left:"0",top:"-100px"}),e.blockUI&&(e.unblockUI(),e("body").append(this.dpDiv))),this._inDialog=!1)},_tidyDialog:function(e){e.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar")},_checkExternalClick:function(t){if(e.datepicker._curInst){var i=e(t.target),s=e.datepicker._getInst(i[0]);(i[0].id!==e.datepicker._mainDivId&&0===i.parents("#"+e.datepicker._mainDivId).length&&!i.hasClass(e.datepicker.markerClassName)&&!i.closest("."+e.datepicker._triggerClass).length&&e.datepicker._datepickerShowing&&(!e.datepicker._inDialog||!e.blockUI)||i.hasClass(e.datepicker.markerClassName)&&e.datepicker._curInst!==s)&&e.datepicker._hideDatepicker()}},_adjustDate:function(t,i,s){var n=e(t),a=this._getInst(n[0]);this._isDisabledDatepicker(n[0])||(this._adjustInstDate(a,i+("M"===s?this._get(a,"showCurrentAtPos"):0),s),this._updateDatepicker(a))},_gotoToday:function(t){var i,s=e(t),n=this._getInst(s[0]);this._get(n,"gotoCurrent")&&n.currentDay?(n.selectedDay=n.currentDay,n.drawMonth=n.selectedMonth=n.currentMonth,n.drawYear=n.selectedYear=n.currentYear):(i=new Date,n.selectedDay=i.getDate(),n.drawMonth=n.selectedMonth=i.getMonth(),n.drawYear=n.selectedYear=i.getFullYear()),this._notifyChange(n),this._adjustDate(s)},_selectMonthYear:function(t,i,s){var n=e(t),a=this._getInst(n[0]);a["selected"+("M"===s?"Month":"Year")]=a["draw"+("M"===s?"Month":"Year")]=parseInt(i.options[i.selectedIndex].value,10),this._notifyChange(a),this._adjustDate(n)},_selectDay:function(t,i,s,n){var a,o=e(t);e(n).hasClass(this._unselectableClass)||this._isDisabledDatepicker(o[0])||(a=this._getInst(o[0]),a.selectedDay=a.currentDay=e("a",n).html(),a.selectedMonth=a.currentMonth=i,a.selectedYear=a.currentYear=s,this._selectDate(t,this._formatDate(a,a.currentDay,a.currentMonth,a.currentYear)))},_clearDate:function(t){var i=e(t);this._selectDate(i,"")},_selectDate:function(t,i){var s,n=e(t),a=this._getInst(n[0]);i=null!=i?i:this._formatDate(a),a.input&&a.input.val(i),this._updateAlternate(a),s=this._get(a,"onSelect"),s?s.apply(a.input?a.input[0]:null,[i,a]):a.input&&a.input.trigger("change"),a.inline?this._updateDatepicker(a):(this._hideDatepicker(),this._lastInput=a.input[0],"object"!=typeof a.input[0]&&a.input.focus(),this._lastInput=null)},_updateAlternate:function(t){var i,s,n,a=this._get(t,"altField");a&&(i=this._get(t,"altFormat")||this._get(t,"dateFormat"),s=this._getDate(t),n=this.formatDate(i,s,this._getFormatConfig(t)),e(a).each(function(){e(this).val(n)}))},noWeekends:function(e){var t=e.getDay();return[t>0&&6>t,""]},iso8601Week:function(e){var t,i=new Date(e.getTime());return i.setDate(i.getDate()+4-(i.getDay()||7)),t=i.getTime(),i.setMonth(0),i.setDate(1),Math.floor(Math.round((t-i)/864e5)/7)+1},parseDate:function(t,i,s){if(null==t||null==i)throw"Invalid arguments";if(i="object"==typeof i?""+i:i+"",""===i)return null;var n,a,o,r,h=0,l=(s?s.shortYearCutoff:null)||this._defaults.shortYearCutoff,u="string"!=typeof l?l:(new Date).getFullYear()%100+parseInt(l,10),d=(s?s.dayNamesShort:null)||this._defaults.dayNamesShort,c=(s?s.dayNames:null)||this._defaults.dayNames,p=(s?s.monthNamesShort:null)||this._defaults.monthNamesShort,f=(s?s.monthNames:null)||this._defaults.monthNames,m=-1,g=-1,v=-1,y=-1,b=!1,_=function(e){var i=t.length>n+1&&t.charAt(n+1)===e;return i&&n++,i},x=function(e){var t=_(e),s="@"===e?14:"!"===e?20:"y"===e&&t?4:"o"===e?3:2,n="y"===e?s:1,a=RegExp("^\\d{"+n+","+s+"}"),o=i.substring(h).match(a);if(!o)throw"Missing number at position "+h;return h+=o[0].length,parseInt(o[0],10)},w=function(t,s,n){var a=-1,o=e.map(_(t)?n:s,function(e,t){return[[t,e]]}).sort(function(e,t){return-(e[1].length-t[1].length)});if(e.each(o,function(e,t){var s=t[1];return i.substr(h,s.length).toLowerCase()===s.toLowerCase()?(a=t[0],h+=s.length,!1):void 0}),-1!==a)return a+1;throw"Unknown name at position "+h},k=function(){if(i.charAt(h)!==t.charAt(n))throw"Unexpected literal at position "+h;h++};for(n=0;t.length>n;n++)if(b)"'"!==t.charAt(n)||_("'")?k():b=!1;else switch(t.charAt(n)){case"d":v=x("d");break;case"D":w("D",d,c);break;case"o":y=x("o");break;case"m":g=x("m");break;case"M":g=w("M",p,f);break;case"y":m=x("y");break;case"@":r=new Date(x("@")),m=r.getFullYear(),g=r.getMonth()+1,v=r.getDate();break;case"!":r=new Date((x("!")-this._ticksTo1970)/1e4),m=r.getFullYear(),g=r.getMonth()+1,v=r.getDate();break;case"'":_("'")?k():b=!0;break;default:k()}if(i.length>h&&(o=i.substr(h),!/^\s+/.test(o)))throw"Extra/unparsed characters found in date: "+o;if(-1===m?m=(new Date).getFullYear():100>m&&(m+=(new Date).getFullYear()-(new Date).getFullYear()%100+(u>=m?0:-100)),y>-1)for(g=1,v=y;;){if(a=this._getDaysInMonth(m,g-1),a>=v)break;g++,v-=a}if(r=this._daylightSavingAdjust(new Date(m,g-1,v)),r.getFullYear()!==m||r.getMonth()+1!==g||r.getDate()!==v)throw"Invalid date";return r},ATOM:"yy-mm-dd",COOKIE:"D, dd M yy",ISO_8601:"yy-mm-dd",RFC_822:"D, d M y",RFC_850:"DD, dd-M-y",RFC_1036:"D, d M y",RFC_1123:"D, d M yy",RFC_2822:"D, d M yy",RSS:"D, d M y",TICKS:"!",TIMESTAMP:"@",W3C:"yy-mm-dd",_ticksTo1970:1e7*60*60*24*(718685+Math.floor(492.5)-Math.floor(19.7)+Math.floor(4.925)),formatDate:function(e,t,i){if(!t)return"";var s,n=(i?i.dayNamesShort:null)||this._defaults.dayNamesShort,a=(i?i.dayNames:null)||this._defaults.dayNames,o=(i?i.monthNamesShort:null)||this._defaults.monthNamesShort,r=(i?i.monthNames:null)||this._defaults.monthNames,h=function(t){var i=e.length>s+1&&e.charAt(s+1)===t;return i&&s++,i},l=function(e,t,i){var s=""+t;if(h(e))for(;i>s.length;)s="0"+s;return s},u=function(e,t,i,s){return h(e)?s[t]:i[t]},d="",c=!1;if(t)for(s=0;e.length>s;s++)if(c)"'"!==e.charAt(s)||h("'")?d+=e.charAt(s):c=!1;else switch(e.charAt(s)){case"d":d+=l("d",t.getDate(),2);break;case"D":d+=u("D",t.getDay(),n,a);break;case"o":d+=l("o",Math.round((new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime()-new Date(t.getFullYear(),0,0).getTime())/864e5),3);break;case"m":d+=l("m",t.getMonth()+1,2);break;case"M":d+=u("M",t.getMonth(),o,r);break;case"y":d+=h("y")?t.getFullYear():(10>t.getYear()%100?"0":"")+t.getYear()%100;break;case"@":d+=t.getTime();break;case"!":d+=1e4*t.getTime()+this._ticksTo1970;break;case"'":h("'")?d+="'":c=!0;break;default:d+=e.charAt(s)}return d},_possibleChars:function(e){var t,i="",s=!1,n=function(i){var s=e.length>t+1&&e.charAt(t+1)===i;return s&&t++,s};for(t=0;e.length>t;t++)if(s)"'"!==e.charAt(t)||n("'")?i+=e.charAt(t):s=!1;else switch(e.charAt(t)){case"d":case"m":case"y":case"@":i+="0123456789";break;case"D":case"M":return null;case"'":n("'")?i+="'":s=!0;break;default:i+=e.charAt(t)}return i},_get:function(e,t){return void 0!==e.settings[t]?e.settings[t]:this._defaults[t]},_setDateFromField:function(e,t){if(e.input.val()!==e.lastVal){var i=this._get(e,"dateFormat"),s=e.lastVal=e.input?e.input.val():null,n=this._getDefaultDate(e),a=n,o=this._getFormatConfig(e);try{a=this.parseDate(i,s,o)||n}catch(r){s=t?"":s}e.selectedDay=a.getDate(),e.drawMonth=e.selectedMonth=a.getMonth(),e.drawYear=e.selectedYear=a.getFullYear(),e.currentDay=s?a.getDate():0,e.currentMonth=s?a.getMonth():0,e.currentYear=s?a.getFullYear():0,this._adjustInstDate(e)}},_getDefaultDate:function(e){return this._restrictMinMax(e,this._determineDate(e,this._get(e,"defaultDate"),new Date))},_determineDate:function(t,i,s){var n=function(e){var t=new Date;return t.setDate(t.getDate()+e),t},a=function(i){try{return e.datepicker.parseDate(e.datepicker._get(t,"dateFormat"),i,e.datepicker._getFormatConfig(t))}catch(s){}for(var n=(i.toLowerCase().match(/^c/)?e.datepicker._getDate(t):null)||new Date,a=n.getFullYear(),o=n.getMonth(),r=n.getDate(),h=/([+\-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,l=h.exec(i);l;){switch(l[2]||"d"){case"d":case"D":r+=parseInt(l[1],10);break;case"w":case"W":r+=7*parseInt(l[1],10);break;case"m":case"M":o+=parseInt(l[1],10),r=Math.min(r,e.datepicker._getDaysInMonth(a,o));break;case"y":case"Y":a+=parseInt(l[1],10),r=Math.min(r,e.datepicker._getDaysInMonth(a,o))}l=h.exec(i)}return new Date(a,o,r)},o=null==i||""===i?s:"string"==typeof i?a(i):"number"==typeof i?isNaN(i)?s:n(i):new Date(i.getTime());return o=o&&"Invalid Date"==""+o?s:o,o&&(o.setHours(0),o.setMinutes(0),o.setSeconds(0),o.setMilliseconds(0)),this._daylightSavingAdjust(o)},_daylightSavingAdjust:function(e){return e?(e.setHours(e.getHours()>12?e.getHours()+2:0),e):null},_setDate:function(e,t,i){var s=!t,n=e.selectedMonth,a=e.selectedYear,o=this._restrictMinMax(e,this._determineDate(e,t,new Date));e.selectedDay=e.currentDay=o.getDate(),e.drawMonth=e.selectedMonth=e.currentMonth=o.getMonth(),e.drawYear=e.selectedYear=e.currentYear=o.getFullYear(),n===e.selectedMonth&&a===e.selectedYear||i||this._notifyChange(e),this._adjustInstDate(e),e.input&&e.input.val(s?"":this._formatDate(e))},_getDate:function(e){var t=!e.currentYear||e.input&&""===e.input.val()?null:this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return t},_attachHandlers:function(t){var i=this._get(t,"stepMonths"),s="#"+t.id.replace(/\\\\/g,"\\");t.dpDiv.find("[data-handler]").map(function(){var t={prev:function(){e.datepicker._adjustDate(s,-i,"M")},next:function(){e.datepicker._adjustDate(s,+i,"M")},hide:function(){e.datepicker._hideDatepicker()},today:function(){e.datepicker._gotoToday(s)},selectDay:function(){return e.datepicker._selectDay(s,+this.getAttribute("data-month"),+this.getAttribute("data-year"),this),!1},selectMonth:function(){return e.datepicker._selectMonthYear(s,this,"M"),!1},selectYear:function(){return e.datepicker._selectMonthYear(s,this,"Y"),!1}};e(this).bind(this.getAttribute("data-event"),t[this.getAttribute("data-handler")])})},_generateHTML:function(e){var t,i,s,n,a,o,r,h,l,u,d,c,p,f,m,g,v,y,b,_,x,w,k,T,D,S,N,M,C,A,P,I,H,z,F,E,W,L,O,j=new Date,R=this._daylightSavingAdjust(new Date(j.getFullYear(),j.getMonth(),j.getDate())),Y=this._get(e,"isRTL"),J=this._get(e,"showButtonPanel"),B=this._get(e,"hideIfNoPrevNext"),K=this._get(e,"navigationAsDateFormat"),V=this._getNumberOfMonths(e),U=this._get(e,"showCurrentAtPos"),q=this._get(e,"stepMonths"),G=1!==V[0]||1!==V[1],X=this._daylightSavingAdjust(e.currentDay?new Date(e.currentYear,e.currentMonth,e.currentDay):new Date(9999,9,9)),Q=this._getMinMaxDate(e,"min"),$=this._getMinMaxDate(e,"max"),Z=e.drawMonth-U,et=e.drawYear;if(0>Z&&(Z+=12,et--),$)for(t=this._daylightSavingAdjust(new Date($.getFullYear(),$.getMonth()-V[0]*V[1]+1,$.getDate())),t=Q&&Q>t?Q:t;this._daylightSavingAdjust(new Date(et,Z,1))>t;)Z--,0>Z&&(Z=11,et--);for(e.drawMonth=Z,e.drawYear=et,i=this._get(e,"prevText"),i=K?this.formatDate(i,this._daylightSavingAdjust(new Date(et,Z-q,1)),this._getFormatConfig(e)):i,s=this._canAdjustMonth(e,-1,et,Z)?""+i+"":B?"":""+i+"",n=this._get(e,"nextText"),n=K?this.formatDate(n,this._daylightSavingAdjust(new Date(et,Z+q,1)),this._getFormatConfig(e)):n,a=this._canAdjustMonth(e,1,et,Z)?""+n+"":B?"":""+n+"",o=this._get(e,"currentText"),r=this._get(e,"gotoCurrent")&&e.currentDay?X:R,o=K?this.formatDate(o,r,this._getFormatConfig(e)):o,h=e.inline?"":"",l=J?"
    "+(Y?h:"")+(this._isInRange(e,r)?"":"")+(Y?"":h)+"
    ":"",u=parseInt(this._get(e,"firstDay"),10),u=isNaN(u)?0:u,d=this._get(e,"showWeek"),c=this._get(e,"dayNames"),p=this._get(e,"dayNamesMin"),f=this._get(e,"monthNames"),m=this._get(e,"monthNamesShort"),g=this._get(e,"beforeShowDay"),v=this._get(e,"showOtherMonths"),y=this._get(e,"selectOtherMonths"),b=this._getDefaultDate(e),_="",w=0;V[0]>w;w++){for(k="",this.maxRows=4,T=0;V[1]>T;T++){if(D=this._daylightSavingAdjust(new Date(et,Z,e.selectedDay)),S=" ui-corner-all",N="",G){if(N+="
    "}for(N+="
    "+(/all|left/.test(S)&&0===w?Y?a:s:"")+(/all|right/.test(S)&&0===w?Y?s:a:"")+this._generateMonthYearHeader(e,Z,et,Q,$,w>0||T>0,f,m)+"
    "+"",M=d?"":"",x=0;7>x;x++)C=(x+u)%7,M+="";for(N+=M+"",A=this._getDaysInMonth(et,Z),et===e.selectedYear&&Z===e.selectedMonth&&(e.selectedDay=Math.min(e.selectedDay,A)),P=(this._getFirstDayOfMonth(et,Z)-u+7)%7,I=Math.ceil((P+A)/7),H=G?this.maxRows>I?this.maxRows:I:I,this.maxRows=H,z=this._daylightSavingAdjust(new Date(et,Z,1-P)),F=0;H>F;F++){for(N+="",E=d?"":"",x=0;7>x;x++)W=g?g.apply(e.input?e.input[0]:null,[z]):[!0,""],L=z.getMonth()!==Z,O=L&&!y||!W[0]||Q&&Q>z||$&&z>$,E+="",z.setDate(z.getDate()+1),z=this._daylightSavingAdjust(z);N+=E+""}Z++,Z>11&&(Z=0,et++),N+="
    "+this._get(e,"weekHeader")+"=5?" class='ui-datepicker-week-end'":"")+">"+""+p[C]+"
    "+this._get(e,"calculateWeek")(z)+""+(L&&!v?" ":O?""+z.getDate()+"":""+z.getDate()+"")+"
    "+(G?"
    "+(V[0]>0&&T===V[1]-1?"
    ":""):""),k+=N}_+=k}return _+=l,e._keyEvent=!1,_},_generateMonthYearHeader:function(e,t,i,s,n,a,o,r){var h,l,u,d,c,p,f,m,g=this._get(e,"changeMonth"),v=this._get(e,"changeYear"),y=this._get(e,"showMonthAfterYear"),b="
    ",_="";if(a||!g)_+=""+o[t]+"";else{for(h=s&&s.getFullYear()===i,l=n&&n.getFullYear()===i,_+=""}if(y||(b+=_+(!a&&g&&v?"":" ")),!e.yearshtml)if(e.yearshtml="",a||!v)b+=""+i+"";else{for(d=this._get(e,"yearRange").split(":"),c=(new Date).getFullYear(),p=function(e){var t=e.match(/c[+\-].*/)?i+parseInt(e.substring(1),10):e.match(/[+\-].*/)?c+parseInt(e,10):parseInt(e,10);return isNaN(t)?c:t},f=p(d[0]),m=Math.max(f,p(d[1]||"")),f=s?Math.max(f,s.getFullYear()):f,m=n?Math.min(m,n.getFullYear()):m,e.yearshtml+="",b+=e.yearshtml,e.yearshtml=null}return b+=this._get(e,"yearSuffix"),y&&(b+=(!a&&g&&v?"":" ")+_),b+="
    "},_adjustInstDate:function(e,t,i){var s=e.drawYear+("Y"===i?t:0),n=e.drawMonth+("M"===i?t:0),a=Math.min(e.selectedDay,this._getDaysInMonth(s,n))+("D"===i?t:0),o=this._restrictMinMax(e,this._daylightSavingAdjust(new Date(s,n,a)));e.selectedDay=o.getDate(),e.drawMonth=e.selectedMonth=o.getMonth(),e.drawYear=e.selectedYear=o.getFullYear(),("M"===i||"Y"===i)&&this._notifyChange(e)},_restrictMinMax:function(e,t){var i=this._getMinMaxDate(e,"min"),s=this._getMinMaxDate(e,"max"),n=i&&i>t?i:t;return s&&n>s?s:n},_notifyChange:function(e){var t=this._get(e,"onChangeMonthYear");t&&t.apply(e.input?e.input[0]:null,[e.selectedYear,e.selectedMonth+1,e])},_getNumberOfMonths:function(e){var t=this._get(e,"numberOfMonths");return null==t?[1,1]:"number"==typeof t?[1,t]:t},_getMinMaxDate:function(e,t){return this._determineDate(e,this._get(e,t+"Date"),null)},_getDaysInMonth:function(e,t){return 32-this._daylightSavingAdjust(new Date(e,t,32)).getDate()},_getFirstDayOfMonth:function(e,t){return new Date(e,t,1).getDay()},_canAdjustMonth:function(e,t,i,s){var n=this._getNumberOfMonths(e),a=this._daylightSavingAdjust(new Date(i,s+(0>t?t:n[0]*n[1]),1));return 0>t&&a.setDate(this._getDaysInMonth(a.getFullYear(),a.getMonth())),this._isInRange(e,a)},_isInRange:function(e,t){var i,s,n=this._getMinMaxDate(e,"min"),a=this._getMinMaxDate(e,"max"),o=null,r=null,h=this._get(e,"yearRange");return h&&(i=h.split(":"),s=(new Date).getFullYear(),o=parseInt(i[0],10),r=parseInt(i[1],10),i[0].match(/[+\-].*/)&&(o+=s),i[1].match(/[+\-].*/)&&(r+=s)),(!n||t.getTime()>=n.getTime())&&(!a||t.getTime()<=a.getTime())&&(!o||t.getFullYear()>=o)&&(!r||r>=t.getFullYear())},_getFormatConfig:function(e){var t=this._get(e,"shortYearCutoff");return t="string"!=typeof t?t:(new Date).getFullYear()%100+parseInt(t,10),{shortYearCutoff:t,dayNamesShort:this._get(e,"dayNamesShort"),dayNames:this._get(e,"dayNames"),monthNamesShort:this._get(e,"monthNamesShort"),monthNames:this._get(e,"monthNames")}},_formatDate:function(e,t,i,s){t||(e.currentDay=e.selectedDay,e.currentMonth=e.selectedMonth,e.currentYear=e.selectedYear);var n=t?"object"==typeof t?t:this._daylightSavingAdjust(new Date(s,i,t)):this._daylightSavingAdjust(new Date(e.currentYear,e.currentMonth,e.currentDay));return this.formatDate(this._get(e,"dateFormat"),n,this._getFormatConfig(e))}}),e.fn.datepicker=function(t){if(!this.length)return this;e.datepicker.initialized||(e(document).mousedown(e.datepicker._checkExternalClick),e.datepicker.initialized=!0),0===e("#"+e.datepicker._mainDivId).length&&e("body").append(e.datepicker.dpDiv);var i=Array.prototype.slice.call(arguments,1);return"string"!=typeof t||"isDisabled"!==t&&"getDate"!==t&&"widget"!==t?"option"===t&&2===arguments.length&&"string"==typeof arguments[1]?e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this[0]].concat(i)):this.each(function(){"string"==typeof t?e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this].concat(i)):e.datepicker._attachDatepicker(this,t)}):e.datepicker["_"+t+"Datepicker"].apply(e.datepicker,[this[0]].concat(i))},e.datepicker=new n,e.datepicker.initialized=!1,e.datepicker.uuid=(new Date).getTime(),e.datepicker.version="1.11.1",e.datepicker,e.widget("ui.dialog",{version:"1.11.1",options:{appendTo:"body",autoOpen:!0,buttons:[],closeOnEscape:!0,closeText:"Close",dialogClass:"",draggable:!0,hide:null,height:"auto",maxHeight:null,maxWidth:null,minHeight:150,minWidth:150,modal:!1,position:{my:"center",at:"center",of:window,collision:"fit",using:function(t){var i=e(this).css(t).offset().top;0>i&&e(this).css("top",t.top-i)}},resizable:!0,show:null,title:null,width:300,beforeClose:null,close:null,drag:null,dragStart:null,dragStop:null,focus:null,open:null,resize:null,resizeStart:null,resizeStop:null},sizeRelatedOptions:{buttons:!0,height:!0,maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0,width:!0},resizableRelatedOptions:{maxHeight:!0,maxWidth:!0,minHeight:!0,minWidth:!0},_create:function(){this.originalCss={display:this.element[0].style.display,width:this.element[0].style.width,minHeight:this.element[0].style.minHeight,maxHeight:this.element[0].style.maxHeight,height:this.element[0].style.height},this.originalPosition={parent:this.element.parent(),index:this.element.parent().children().index(this.element)},this.originalTitle=this.element.attr("title"),this.options.title=this.options.title||this.originalTitle,this._createWrapper(),this.element.show().removeAttr("title").addClass("ui-dialog-content ui-widget-content").appendTo(this.uiDialog),this._createTitlebar(),this._createButtonPane(),this.options.draggable&&e.fn.draggable&&this._makeDraggable(),this.options.resizable&&e.fn.resizable&&this._makeResizable(),this._isOpen=!1,this._trackFocus()},_init:function(){this.options.autoOpen&&this.open()},_appendTo:function(){var t=this.options.appendTo;return t&&(t.jquery||t.nodeType)?e(t):this.document.find(t||"body").eq(0)},_destroy:function(){var e,t=this.originalPosition;this._destroyOverlay(),this.element.removeUniqueId().removeClass("ui-dialog-content ui-widget-content").css(this.originalCss).detach(),this.uiDialog.stop(!0,!0).remove(),this.originalTitle&&this.element.attr("title",this.originalTitle),e=t.parent.children().eq(t.index),e.length&&e[0]!==this.element[0]?e.before(this.element):t.parent.append(this.element)},widget:function(){return this.uiDialog},disable:e.noop,enable:e.noop,close:function(t){var i,s=this;if(this._isOpen&&this._trigger("beforeClose",t)!==!1){if(this._isOpen=!1,this._focusedElement=null,this._destroyOverlay(),this._untrackInstance(),!this.opener.filter(":focusable").focus().length)try{i=this.document[0].activeElement,i&&"body"!==i.nodeName.toLowerCase()&&e(i).blur()}catch(n){}this._hide(this.uiDialog,this.options.hide,function(){s._trigger("close",t)})}},isOpen:function(){return this._isOpen},moveToTop:function(){this._moveToTop()},_moveToTop:function(t,i){var s=!1,n=this.uiDialog.siblings(".ui-front:visible").map(function(){return+e(this).css("z-index")}).get(),a=Math.max.apply(null,n);return a>=+this.uiDialog.css("z-index")&&(this.uiDialog.css("z-index",a+1),s=!0),s&&!i&&this._trigger("focus",t),s},open:function(){var t=this;return this._isOpen?(this._moveToTop()&&this._focusTabbable(),void 0):(this._isOpen=!0,this.opener=e(this.document[0].activeElement),this._size(),this._position(),this._createOverlay(),this._moveToTop(null,!0),this.overlay&&this.overlay.css("z-index",this.uiDialog.css("z-index")-1),this._show(this.uiDialog,this.options.show,function(){t._focusTabbable(),t._trigger("focus")}),this._makeFocusTarget(),this._trigger("open"),void 0)},_focusTabbable:function(){var e=this._focusedElement; -e||(e=this.element.find("[autofocus]")),e.length||(e=this.element.find(":tabbable")),e.length||(e=this.uiDialogButtonPane.find(":tabbable")),e.length||(e=this.uiDialogTitlebarClose.filter(":tabbable")),e.length||(e=this.uiDialog),e.eq(0).focus()},_keepFocus:function(t){function i(){var t=this.document[0].activeElement,i=this.uiDialog[0]===t||e.contains(this.uiDialog[0],t);i||this._focusTabbable()}t.preventDefault(),i.call(this),this._delay(i)},_createWrapper:function(){this.uiDialog=e("
    ").addClass("ui-dialog ui-widget ui-widget-content ui-corner-all ui-front "+this.options.dialogClass).hide().attr({tabIndex:-1,role:"dialog"}).appendTo(this._appendTo()),this._on(this.uiDialog,{keydown:function(t){if(this.options.closeOnEscape&&!t.isDefaultPrevented()&&t.keyCode&&t.keyCode===e.ui.keyCode.ESCAPE)return t.preventDefault(),this.close(t),void 0;if(t.keyCode===e.ui.keyCode.TAB&&!t.isDefaultPrevented()){var i=this.uiDialog.find(":tabbable"),s=i.filter(":first"),n=i.filter(":last");t.target!==n[0]&&t.target!==this.uiDialog[0]||t.shiftKey?t.target!==s[0]&&t.target!==this.uiDialog[0]||!t.shiftKey||(this._delay(function(){n.focus()}),t.preventDefault()):(this._delay(function(){s.focus()}),t.preventDefault())}},mousedown:function(e){this._moveToTop(e)&&this._focusTabbable()}}),this.element.find("[aria-describedby]").length||this.uiDialog.attr({"aria-describedby":this.element.uniqueId().attr("id")})},_createTitlebar:function(){var t;this.uiDialogTitlebar=e("
    ").addClass("ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix").prependTo(this.uiDialog),this._on(this.uiDialogTitlebar,{mousedown:function(t){e(t.target).closest(".ui-dialog-titlebar-close")||this.uiDialog.focus()}}),this.uiDialogTitlebarClose=e("").button({label:this.options.closeText,icons:{primary:"ui-icon-closethick"},text:!1}).addClass("ui-dialog-titlebar-close").appendTo(this.uiDialogTitlebar),this._on(this.uiDialogTitlebarClose,{click:function(e){e.preventDefault(),this.close(e)}}),t=e("").uniqueId().addClass("ui-dialog-title").prependTo(this.uiDialogTitlebar),this._title(t),this.uiDialog.attr({"aria-labelledby":t.attr("id")})},_title:function(e){this.options.title||e.html(" "),e.text(this.options.title)},_createButtonPane:function(){this.uiDialogButtonPane=e("
    ").addClass("ui-dialog-buttonpane ui-widget-content ui-helper-clearfix"),this.uiButtonSet=e("
    ").addClass("ui-dialog-buttonset").appendTo(this.uiDialogButtonPane),this._createButtons()},_createButtons:function(){var t=this,i=this.options.buttons;return this.uiDialogButtonPane.remove(),this.uiButtonSet.empty(),e.isEmptyObject(i)||e.isArray(i)&&!i.length?(this.uiDialog.removeClass("ui-dialog-buttons"),void 0):(e.each(i,function(i,s){var n,a;s=e.isFunction(s)?{click:s,text:i}:s,s=e.extend({type:"button"},s),n=s.click,s.click=function(){n.apply(t.element[0],arguments)},a={icons:s.icons,text:s.showText},delete s.icons,delete s.showText,e("",s).button(a).appendTo(t.uiButtonSet)}),this.uiDialog.addClass("ui-dialog-buttons"),this.uiDialogButtonPane.appendTo(this.uiDialog),void 0)},_makeDraggable:function(){function t(e){return{position:e.position,offset:e.offset}}var i=this,s=this.options;this.uiDialog.draggable({cancel:".ui-dialog-content, .ui-dialog-titlebar-close",handle:".ui-dialog-titlebar",containment:"document",start:function(s,n){e(this).addClass("ui-dialog-dragging"),i._blockFrames(),i._trigger("dragStart",s,t(n))},drag:function(e,s){i._trigger("drag",e,t(s))},stop:function(n,a){var o=a.offset.left-i.document.scrollLeft(),r=a.offset.top-i.document.scrollTop();s.position={my:"left top",at:"left"+(o>=0?"+":"")+o+" "+"top"+(r>=0?"+":"")+r,of:i.window},e(this).removeClass("ui-dialog-dragging"),i._unblockFrames(),i._trigger("dragStop",n,t(a))}})},_makeResizable:function(){function t(e){return{originalPosition:e.originalPosition,originalSize:e.originalSize,position:e.position,size:e.size}}var i=this,s=this.options,n=s.resizable,a=this.uiDialog.css("position"),o="string"==typeof n?n:"n,e,s,w,se,sw,ne,nw";this.uiDialog.resizable({cancel:".ui-dialog-content",containment:"document",alsoResize:this.element,maxWidth:s.maxWidth,maxHeight:s.maxHeight,minWidth:s.minWidth,minHeight:this._minHeight(),handles:o,start:function(s,n){e(this).addClass("ui-dialog-resizing"),i._blockFrames(),i._trigger("resizeStart",s,t(n))},resize:function(e,s){i._trigger("resize",e,t(s))},stop:function(n,a){var o=i.uiDialog.offset(),r=o.left-i.document.scrollLeft(),h=o.top-i.document.scrollTop();s.height=i.uiDialog.height(),s.width=i.uiDialog.width(),s.position={my:"left top",at:"left"+(r>=0?"+":"")+r+" "+"top"+(h>=0?"+":"")+h,of:i.window},e(this).removeClass("ui-dialog-resizing"),i._unblockFrames(),i._trigger("resizeStop",n,t(a))}}).css("position",a)},_trackFocus:function(){this._on(this.widget(),{focusin:function(t){this._makeFocusTarget(),this._focusedElement=e(t.target)}})},_makeFocusTarget:function(){this._untrackInstance(),this._trackingInstances().unshift(this)},_untrackInstance:function(){var t=this._trackingInstances(),i=e.inArray(this,t);-1!==i&&t.splice(i,1)},_trackingInstances:function(){var e=this.document.data("ui-dialog-instances");return e||(e=[],this.document.data("ui-dialog-instances",e)),e},_minHeight:function(){var e=this.options;return"auto"===e.height?e.minHeight:Math.min(e.minHeight,e.height)},_position:function(){var e=this.uiDialog.is(":visible");e||this.uiDialog.show(),this.uiDialog.position(this.options.position),e||this.uiDialog.hide()},_setOptions:function(t){var i=this,s=!1,n={};e.each(t,function(e,t){i._setOption(e,t),e in i.sizeRelatedOptions&&(s=!0),e in i.resizableRelatedOptions&&(n[e]=t)}),s&&(this._size(),this._position()),this.uiDialog.is(":data(ui-resizable)")&&this.uiDialog.resizable("option",n)},_setOption:function(e,t){var i,s,n=this.uiDialog;"dialogClass"===e&&n.removeClass(this.options.dialogClass).addClass(t),"disabled"!==e&&(this._super(e,t),"appendTo"===e&&this.uiDialog.appendTo(this._appendTo()),"buttons"===e&&this._createButtons(),"closeText"===e&&this.uiDialogTitlebarClose.button({label:""+t}),"draggable"===e&&(i=n.is(":data(ui-draggable)"),i&&!t&&n.draggable("destroy"),!i&&t&&this._makeDraggable()),"position"===e&&this._position(),"resizable"===e&&(s=n.is(":data(ui-resizable)"),s&&!t&&n.resizable("destroy"),s&&"string"==typeof t&&n.resizable("option","handles",t),s||t===!1||this._makeResizable()),"title"===e&&this._title(this.uiDialogTitlebar.find(".ui-dialog-title")))},_size:function(){var e,t,i,s=this.options;this.element.show().css({width:"auto",minHeight:0,maxHeight:"none",height:0}),s.minWidth>s.width&&(s.width=s.minWidth),e=this.uiDialog.css({height:"auto",width:s.width}).outerHeight(),t=Math.max(0,s.minHeight-e),i="number"==typeof s.maxHeight?Math.max(0,s.maxHeight-e):"none","auto"===s.height?this.element.css({minHeight:t,maxHeight:i,height:"auto"}):this.element.height(Math.max(0,s.height-e)),this.uiDialog.is(":data(ui-resizable)")&&this.uiDialog.resizable("option","minHeight",this._minHeight())},_blockFrames:function(){this.iframeBlocks=this.document.find("iframe").map(function(){var t=e(this);return e("
    ").css({position:"absolute",width:t.outerWidth(),height:t.outerHeight()}).appendTo(t.parent()).offset(t.offset())[0]})},_unblockFrames:function(){this.iframeBlocks&&(this.iframeBlocks.remove(),delete this.iframeBlocks)},_allowInteraction:function(t){return e(t.target).closest(".ui-dialog").length?!0:!!e(t.target).closest(".ui-datepicker").length},_createOverlay:function(){if(this.options.modal){var t=!0;this._delay(function(){t=!1}),this.document.data("ui-dialog-overlays")||this._on(this.document,{focusin:function(e){t||this._allowInteraction(e)||(e.preventDefault(),this._trackingInstances()[0]._focusTabbable())}}),this.overlay=e("
    ").addClass("ui-widget-overlay ui-front").appendTo(this._appendTo()),this._on(this.overlay,{mousedown:"_keepFocus"}),this.document.data("ui-dialog-overlays",(this.document.data("ui-dialog-overlays")||0)+1)}},_destroyOverlay:function(){if(this.options.modal&&this.overlay){var e=this.document.data("ui-dialog-overlays")-1;e?this.document.data("ui-dialog-overlays",e):this.document.unbind("focusin").removeData("ui-dialog-overlays"),this.overlay.remove(),this.overlay=null}}}),e.widget("ui.progressbar",{version:"1.11.1",options:{max:100,value:0,change:null,complete:null},min:0,_create:function(){this.oldValue=this.options.value=this._constrainedValue(),this.element.addClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").attr({role:"progressbar","aria-valuemin":this.min}),this.valueDiv=e("
    ").appendTo(this.element),this._refreshValue()},_destroy:function(){this.element.removeClass("ui-progressbar ui-widget ui-widget-content ui-corner-all").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow"),this.valueDiv.remove()},value:function(e){return void 0===e?this.options.value:(this.options.value=this._constrainedValue(e),this._refreshValue(),void 0)},_constrainedValue:function(e){return void 0===e&&(e=this.options.value),this.indeterminate=e===!1,"number"!=typeof e&&(e=0),this.indeterminate?!1:Math.min(this.options.max,Math.max(this.min,e))},_setOptions:function(e){var t=e.value;delete e.value,this._super(e),this.options.value=this._constrainedValue(t),this._refreshValue()},_setOption:function(e,t){"max"===e&&(t=Math.max(this.min,t)),"disabled"===e&&this.element.toggleClass("ui-state-disabled",!!t).attr("aria-disabled",t),this._super(e,t)},_percentage:function(){return this.indeterminate?100:100*(this.options.value-this.min)/(this.options.max-this.min)},_refreshValue:function(){var t=this.options.value,i=this._percentage();this.valueDiv.toggle(this.indeterminate||t>this.min).toggleClass("ui-corner-right",t===this.options.max).width(i.toFixed(0)+"%"),this.element.toggleClass("ui-progressbar-indeterminate",this.indeterminate),this.indeterminate?(this.element.removeAttr("aria-valuenow"),this.overlayDiv||(this.overlayDiv=e("
    ").appendTo(this.valueDiv))):(this.element.attr({"aria-valuemax":this.options.max,"aria-valuenow":t}),this.overlayDiv&&(this.overlayDiv.remove(),this.overlayDiv=null)),this.oldValue!==t&&(this.oldValue=t,this._trigger("change")),t===this.options.max&&this._trigger("complete")}}),e.widget("ui.selectmenu",{version:"1.11.1",defaultElement:"",widgetEventPrefix:"spin",options:{culture:null,icons:{down:"ui-icon-triangle-1-s",up:"ui-icon-triangle-1-n"},incremental:!0,max:null,min:null,numberFormat:null,page:10,step:1,change:null,spin:null,start:null,stop:null},_create:function(){this._setOption("max",this.options.max),this._setOption("min",this.options.min),this._setOption("step",this.options.step),""!==this.value()&&this._value(this.element.val(),!0),this._draw(),this._on(this._events),this._refresh(),this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_getCreateOptions:function(){var t={},i=this.element;return e.each(["min","max","step"],function(e,s){var n=i.attr(s);void 0!==n&&n.length&&(t[s]=n)}),t},_events:{keydown:function(e){this._start(e)&&this._keydown(e)&&e.preventDefault()},keyup:"_stop",focus:function(){this.previous=this.element.val()},blur:function(e){return this.cancelBlur?(delete this.cancelBlur,void 0):(this._stop(),this._refresh(),this.previous!==this.element.val()&&this._trigger("change",e),void 0)},mousewheel:function(e,t){if(t){if(!this.spinning&&!this._start(e))return!1;this._spin((t>0?1:-1)*this.options.step,e),clearTimeout(this.mousewheelTimer),this.mousewheelTimer=this._delay(function(){this.spinning&&this._stop(e)},100),e.preventDefault()}},"mousedown .ui-spinner-button":function(t){function i(){var e=this.element[0]===this.document[0].activeElement;e||(this.element.focus(),this.previous=s,this._delay(function(){this.previous=s}))}var s;s=this.element[0]===this.document[0].activeElement?this.previous:this.element.val(),t.preventDefault(),i.call(this),this.cancelBlur=!0,this._delay(function(){delete this.cancelBlur,i.call(this)}),this._start(t)!==!1&&this._repeat(null,e(t.currentTarget).hasClass("ui-spinner-up")?1:-1,t)},"mouseup .ui-spinner-button":"_stop","mouseenter .ui-spinner-button":function(t){return e(t.currentTarget).hasClass("ui-state-active")?this._start(t)===!1?!1:(this._repeat(null,e(t.currentTarget).hasClass("ui-spinner-up")?1:-1,t),void 0):void 0},"mouseleave .ui-spinner-button":"_stop"},_draw:function(){var e=this.uiSpinner=this.element.addClass("ui-spinner-input").attr("autocomplete","off").wrap(this._uiSpinnerHtml()).parent().append(this._buttonHtml());this.element.attr("role","spinbutton"),this.buttons=e.find(".ui-spinner-button").attr("tabIndex",-1).button().removeClass("ui-corner-all"),this.buttons.height()>Math.ceil(.5*e.height())&&e.height()>0&&e.height(e.height()),this.options.disabled&&this.disable()},_keydown:function(t){var i=this.options,s=e.ui.keyCode;switch(t.keyCode){case s.UP:return this._repeat(null,1,t),!0;case s.DOWN:return this._repeat(null,-1,t),!0;case s.PAGE_UP:return this._repeat(null,i.page,t),!0;case s.PAGE_DOWN:return this._repeat(null,-i.page,t),!0}return!1},_uiSpinnerHtml:function(){return""},_buttonHtml:function(){return""+""+""+""+""},_start:function(e){return this.spinning||this._trigger("start",e)!==!1?(this.counter||(this.counter=1),this.spinning=!0,!0):!1},_repeat:function(e,t,i){e=e||500,clearTimeout(this.timer),this.timer=this._delay(function(){this._repeat(40,t,i)},e),this._spin(t*this.options.step,i)},_spin:function(e,t){var i=this.value()||0;this.counter||(this.counter=1),i=this._adjustValue(i+e*this._increment(this.counter)),this.spinning&&this._trigger("spin",t,{value:i})===!1||(this._value(i),this.counter++)},_increment:function(t){var i=this.options.incremental; -return i?e.isFunction(i)?i(t):Math.floor(t*t*t/5e4-t*t/500+17*t/200+1):1},_precision:function(){var e=this._precisionOf(this.options.step);return null!==this.options.min&&(e=Math.max(e,this._precisionOf(this.options.min))),e},_precisionOf:function(e){var t=""+e,i=t.indexOf(".");return-1===i?0:t.length-i-1},_adjustValue:function(e){var t,i,s=this.options;return t=null!==s.min?s.min:0,i=e-t,i=Math.round(i/s.step)*s.step,e=t+i,e=parseFloat(e.toFixed(this._precision())),null!==s.max&&e>s.max?s.max:null!==s.min&&s.min>e?s.min:e},_stop:function(e){this.spinning&&(clearTimeout(this.timer),clearTimeout(this.mousewheelTimer),this.counter=0,this.spinning=!1,this._trigger("stop",e))},_setOption:function(e,t){if("culture"===e||"numberFormat"===e){var i=this._parse(this.element.val());return this.options[e]=t,this.element.val(this._format(i)),void 0}("max"===e||"min"===e||"step"===e)&&"string"==typeof t&&(t=this._parse(t)),"icons"===e&&(this.buttons.first().find(".ui-icon").removeClass(this.options.icons.up).addClass(t.up),this.buttons.last().find(".ui-icon").removeClass(this.options.icons.down).addClass(t.down)),this._super(e,t),"disabled"===e&&(this.widget().toggleClass("ui-state-disabled",!!t),this.element.prop("disabled",!!t),this.buttons.button(t?"disable":"enable"))},_setOptions:h(function(e){this._super(e)}),_parse:function(e){return"string"==typeof e&&""!==e&&(e=window.Globalize&&this.options.numberFormat?Globalize.parseFloat(e,10,this.options.culture):+e),""===e||isNaN(e)?null:e},_format:function(e){return""===e?"":window.Globalize&&this.options.numberFormat?Globalize.format(e,this.options.numberFormat,this.options.culture):e},_refresh:function(){this.element.attr({"aria-valuemin":this.options.min,"aria-valuemax":this.options.max,"aria-valuenow":this._parse(this.element.val())})},isValid:function(){var e=this.value();return null===e?!1:e===this._adjustValue(e)},_value:function(e,t){var i;""!==e&&(i=this._parse(e),null!==i&&(t||(i=this._adjustValue(i)),e=this._format(i))),this.element.val(e),this._refresh()},_destroy:function(){this.element.removeClass("ui-spinner-input").prop("disabled",!1).removeAttr("autocomplete").removeAttr("role").removeAttr("aria-valuemin").removeAttr("aria-valuemax").removeAttr("aria-valuenow"),this.uiSpinner.replaceWith(this.element)},stepUp:h(function(e){this._stepUp(e)}),_stepUp:function(e){this._start()&&(this._spin((e||1)*this.options.step),this._stop())},stepDown:h(function(e){this._stepDown(e)}),_stepDown:function(e){this._start()&&(this._spin((e||1)*-this.options.step),this._stop())},pageUp:h(function(e){this._stepUp((e||1)*this.options.page)}),pageDown:h(function(e){this._stepDown((e||1)*this.options.page)}),value:function(e){return arguments.length?(h(this._value).call(this,e),void 0):this._parse(this.element.val())},widget:function(){return this.uiSpinner}}),e.widget("ui.tabs",{version:"1.11.1",delay:300,options:{active:null,collapsible:!1,event:"click",heightStyle:"content",hide:null,show:null,activate:null,beforeActivate:null,beforeLoad:null,load:null},_isLocal:function(){var e=/#.*$/;return function(t){var i,s;t=t.cloneNode(!1),i=t.href.replace(e,""),s=location.href.replace(e,"");try{i=decodeURIComponent(i)}catch(n){}try{s=decodeURIComponent(s)}catch(n){}return t.hash.length>1&&i===s}}(),_create:function(){var t=this,i=this.options;this.running=!1,this.element.addClass("ui-tabs ui-widget ui-widget-content ui-corner-all").toggleClass("ui-tabs-collapsible",i.collapsible),this._processTabs(),i.active=this._initialActive(),e.isArray(i.disabled)&&(i.disabled=e.unique(i.disabled.concat(e.map(this.tabs.filter(".ui-state-disabled"),function(e){return t.tabs.index(e)}))).sort()),this.active=this.options.active!==!1&&this.anchors.length?this._findActive(i.active):e(),this._refresh(),this.active.length&&this.load(i.active)},_initialActive:function(){var t=this.options.active,i=this.options.collapsible,s=location.hash.substring(1);return null===t&&(s&&this.tabs.each(function(i,n){return e(n).attr("aria-controls")===s?(t=i,!1):void 0}),null===t&&(t=this.tabs.index(this.tabs.filter(".ui-tabs-active"))),(null===t||-1===t)&&(t=this.tabs.length?0:!1)),t!==!1&&(t=this.tabs.index(this.tabs.eq(t)),-1===t&&(t=i?!1:0)),!i&&t===!1&&this.anchors.length&&(t=0),t},_getCreateEventData:function(){return{tab:this.active,panel:this.active.length?this._getPanelForTab(this.active):e()}},_tabKeydown:function(t){var i=e(this.document[0].activeElement).closest("li"),s=this.tabs.index(i),n=!0;if(!this._handlePageNav(t)){switch(t.keyCode){case e.ui.keyCode.RIGHT:case e.ui.keyCode.DOWN:s++;break;case e.ui.keyCode.UP:case e.ui.keyCode.LEFT:n=!1,s--;break;case e.ui.keyCode.END:s=this.anchors.length-1;break;case e.ui.keyCode.HOME:s=0;break;case e.ui.keyCode.SPACE:return t.preventDefault(),clearTimeout(this.activating),this._activate(s),void 0;case e.ui.keyCode.ENTER:return t.preventDefault(),clearTimeout(this.activating),this._activate(s===this.options.active?!1:s),void 0;default:return}t.preventDefault(),clearTimeout(this.activating),s=this._focusNextTab(s,n),t.ctrlKey||(i.attr("aria-selected","false"),this.tabs.eq(s).attr("aria-selected","true"),this.activating=this._delay(function(){this.option("active",s)},this.delay))}},_panelKeydown:function(t){this._handlePageNav(t)||t.ctrlKey&&t.keyCode===e.ui.keyCode.UP&&(t.preventDefault(),this.active.focus())},_handlePageNav:function(t){return t.altKey&&t.keyCode===e.ui.keyCode.PAGE_UP?(this._activate(this._focusNextTab(this.options.active-1,!1)),!0):t.altKey&&t.keyCode===e.ui.keyCode.PAGE_DOWN?(this._activate(this._focusNextTab(this.options.active+1,!0)),!0):void 0},_findNextTab:function(t,i){function s(){return t>n&&(t=0),0>t&&(t=n),t}for(var n=this.tabs.length-1;-1!==e.inArray(s(),this.options.disabled);)t=i?t+1:t-1;return t},_focusNextTab:function(e,t){return e=this._findNextTab(e,t),this.tabs.eq(e).focus(),e},_setOption:function(e,t){return"active"===e?(this._activate(t),void 0):"disabled"===e?(this._setupDisabled(t),void 0):(this._super(e,t),"collapsible"===e&&(this.element.toggleClass("ui-tabs-collapsible",t),t||this.options.active!==!1||this._activate(0)),"event"===e&&this._setupEvents(t),"heightStyle"===e&&this._setupHeightStyle(t),void 0)},_sanitizeSelector:function(e){return e?e.replace(/[!"$%&'()*+,.\/:;<=>?@\[\]\^`{|}~]/g,"\\$&"):""},refresh:function(){var t=this.options,i=this.tablist.children(":has(a[href])");t.disabled=e.map(i.filter(".ui-state-disabled"),function(e){return i.index(e)}),this._processTabs(),t.active!==!1&&this.anchors.length?this.active.length&&!e.contains(this.tablist[0],this.active[0])?this.tabs.length===t.disabled.length?(t.active=!1,this.active=e()):this._activate(this._findNextTab(Math.max(0,t.active-1),!1)):t.active=this.tabs.index(this.active):(t.active=!1,this.active=e()),this._refresh()},_refresh:function(){this._setupDisabled(this.options.disabled),this._setupEvents(this.options.event),this._setupHeightStyle(this.options.heightStyle),this.tabs.not(this.active).attr({"aria-selected":"false","aria-expanded":"false",tabIndex:-1}),this.panels.not(this._getPanelForTab(this.active)).hide().attr({"aria-hidden":"true"}),this.active.length?(this.active.addClass("ui-tabs-active ui-state-active").attr({"aria-selected":"true","aria-expanded":"true",tabIndex:0}),this._getPanelForTab(this.active).show().attr({"aria-hidden":"false"})):this.tabs.eq(0).attr("tabIndex",0)},_processTabs:function(){var t=this;this.tablist=this._getList().addClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all").attr("role","tablist").delegate("> li","mousedown"+this.eventNamespace,function(t){e(this).is(".ui-state-disabled")&&t.preventDefault()}).delegate(".ui-tabs-anchor","focus"+this.eventNamespace,function(){e(this).closest("li").is(".ui-state-disabled")&&this.blur()}),this.tabs=this.tablist.find("> li:has(a[href])").addClass("ui-state-default ui-corner-top").attr({role:"tab",tabIndex:-1}),this.anchors=this.tabs.map(function(){return e("a",this)[0]}).addClass("ui-tabs-anchor").attr({role:"presentation",tabIndex:-1}),this.panels=e(),this.anchors.each(function(i,s){var n,a,o,r=e(s).uniqueId().attr("id"),h=e(s).closest("li"),l=h.attr("aria-controls");t._isLocal(s)?(n=s.hash,o=n.substring(1),a=t.element.find(t._sanitizeSelector(n))):(o=h.attr("aria-controls")||e({}).uniqueId()[0].id,n="#"+o,a=t.element.find(n),a.length||(a=t._createPanel(o),a.insertAfter(t.panels[i-1]||t.tablist)),a.attr("aria-live","polite")),a.length&&(t.panels=t.panels.add(a)),l&&h.data("ui-tabs-aria-controls",l),h.attr({"aria-controls":o,"aria-labelledby":r}),a.attr("aria-labelledby",r)}),this.panels.addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").attr("role","tabpanel")},_getList:function(){return this.tablist||this.element.find("ol,ul").eq(0)},_createPanel:function(t){return e("
    ").attr("id",t).addClass("ui-tabs-panel ui-widget-content ui-corner-bottom").data("ui-tabs-destroy",!0)},_setupDisabled:function(t){e.isArray(t)&&(t.length?t.length===this.anchors.length&&(t=!0):t=!1);for(var i,s=0;i=this.tabs[s];s++)t===!0||-1!==e.inArray(s,t)?e(i).addClass("ui-state-disabled").attr("aria-disabled","true"):e(i).removeClass("ui-state-disabled").removeAttr("aria-disabled");this.options.disabled=t},_setupEvents:function(t){var i={};t&&e.each(t.split(" "),function(e,t){i[t]="_eventHandler"}),this._off(this.anchors.add(this.tabs).add(this.panels)),this._on(!0,this.anchors,{click:function(e){e.preventDefault()}}),this._on(this.anchors,i),this._on(this.tabs,{keydown:"_tabKeydown"}),this._on(this.panels,{keydown:"_panelKeydown"}),this._focusable(this.tabs),this._hoverable(this.tabs)},_setupHeightStyle:function(t){var i,s=this.element.parent();"fill"===t?(i=s.height(),i-=this.element.outerHeight()-this.element.height(),this.element.siblings(":visible").each(function(){var t=e(this),s=t.css("position");"absolute"!==s&&"fixed"!==s&&(i-=t.outerHeight(!0))}),this.element.children().not(this.panels).each(function(){i-=e(this).outerHeight(!0)}),this.panels.each(function(){e(this).height(Math.max(0,i-e(this).innerHeight()+e(this).height()))}).css("overflow","auto")):"auto"===t&&(i=0,this.panels.each(function(){i=Math.max(i,e(this).height("").height())}).height(i))},_eventHandler:function(t){var i=this.options,s=this.active,n=e(t.currentTarget),a=n.closest("li"),o=a[0]===s[0],r=o&&i.collapsible,h=r?e():this._getPanelForTab(a),l=s.length?this._getPanelForTab(s):e(),u={oldTab:s,oldPanel:l,newTab:r?e():a,newPanel:h};t.preventDefault(),a.hasClass("ui-state-disabled")||a.hasClass("ui-tabs-loading")||this.running||o&&!i.collapsible||this._trigger("beforeActivate",t,u)===!1||(i.active=r?!1:this.tabs.index(a),this.active=o?e():a,this.xhr&&this.xhr.abort(),l.length||h.length||e.error("jQuery UI Tabs: Mismatching fragment identifier."),h.length&&this.load(this.tabs.index(a),t),this._toggle(t,u))},_toggle:function(t,i){function s(){a.running=!1,a._trigger("activate",t,i)}function n(){i.newTab.closest("li").addClass("ui-tabs-active ui-state-active"),o.length&&a.options.show?a._show(o,a.options.show,s):(o.show(),s())}var a=this,o=i.newPanel,r=i.oldPanel;this.running=!0,r.length&&this.options.hide?this._hide(r,this.options.hide,function(){i.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active"),n()}):(i.oldTab.closest("li").removeClass("ui-tabs-active ui-state-active"),r.hide(),n()),r.attr("aria-hidden","true"),i.oldTab.attr({"aria-selected":"false","aria-expanded":"false"}),o.length&&r.length?i.oldTab.attr("tabIndex",-1):o.length&&this.tabs.filter(function(){return 0===e(this).attr("tabIndex")}).attr("tabIndex",-1),o.attr("aria-hidden","false"),i.newTab.attr({"aria-selected":"true","aria-expanded":"true",tabIndex:0})},_activate:function(t){var i,s=this._findActive(t);s[0]!==this.active[0]&&(s.length||(s=this.active),i=s.find(".ui-tabs-anchor")[0],this._eventHandler({target:i,currentTarget:i,preventDefault:e.noop}))},_findActive:function(t){return t===!1?e():this.tabs.eq(t)},_getIndex:function(e){return"string"==typeof e&&(e=this.anchors.index(this.anchors.filter("[href$='"+e+"']"))),e},_destroy:function(){this.xhr&&this.xhr.abort(),this.element.removeClass("ui-tabs ui-widget ui-widget-content ui-corner-all ui-tabs-collapsible"),this.tablist.removeClass("ui-tabs-nav ui-helper-reset ui-helper-clearfix ui-widget-header ui-corner-all").removeAttr("role"),this.anchors.removeClass("ui-tabs-anchor").removeAttr("role").removeAttr("tabIndex").removeUniqueId(),this.tablist.unbind(this.eventNamespace),this.tabs.add(this.panels).each(function(){e.data(this,"ui-tabs-destroy")?e(this).remove():e(this).removeClass("ui-state-default ui-state-active ui-state-disabled ui-corner-top ui-corner-bottom ui-widget-content ui-tabs-active ui-tabs-panel").removeAttr("tabIndex").removeAttr("aria-live").removeAttr("aria-busy").removeAttr("aria-selected").removeAttr("aria-labelledby").removeAttr("aria-hidden").removeAttr("aria-expanded").removeAttr("role")}),this.tabs.each(function(){var t=e(this),i=t.data("ui-tabs-aria-controls");i?t.attr("aria-controls",i).removeData("ui-tabs-aria-controls"):t.removeAttr("aria-controls")}),this.panels.show(),"content"!==this.options.heightStyle&&this.panels.css("height","")},enable:function(t){var i=this.options.disabled;i!==!1&&(void 0===t?i=!1:(t=this._getIndex(t),i=e.isArray(i)?e.map(i,function(e){return e!==t?e:null}):e.map(this.tabs,function(e,i){return i!==t?i:null})),this._setupDisabled(i))},disable:function(t){var i=this.options.disabled;if(i!==!0){if(void 0===t)i=!0;else{if(t=this._getIndex(t),-1!==e.inArray(t,i))return;i=e.isArray(i)?e.merge([t],i).sort():[t]}this._setupDisabled(i)}},load:function(t,i){t=this._getIndex(t);var s=this,n=this.tabs.eq(t),a=n.find(".ui-tabs-anchor"),o=this._getPanelForTab(n),r={tab:n,panel:o};this._isLocal(a[0])||(this.xhr=e.ajax(this._ajaxSettings(a,i,r)),this.xhr&&"canceled"!==this.xhr.statusText&&(n.addClass("ui-tabs-loading"),o.attr("aria-busy","true"),this.xhr.success(function(e){setTimeout(function(){o.html(e),s._trigger("load",i,r)},1)}).complete(function(e,t){setTimeout(function(){"abort"===t&&s.panels.stop(!1,!0),n.removeClass("ui-tabs-loading"),o.removeAttr("aria-busy"),e===s.xhr&&delete s.xhr},1)})))},_ajaxSettings:function(t,i,s){var n=this;return{url:t.attr("href"),beforeSend:function(t,a){return n._trigger("beforeLoad",i,e.extend({jqXHR:t,ajaxSettings:a},s))}}},_getPanelForTab:function(t){var i=e(t).attr("aria-controls");return this.element.find(this._sanitizeSelector("#"+i))}}),e.widget("ui.tooltip",{version:"1.11.1",options:{content:function(){var t=e(this).attr("title")||"";return e("").text(t).html()},hide:!0,items:"[title]:not([disabled])",position:{my:"left top+15",at:"left bottom",collision:"flipfit flip"},show:!0,tooltipClass:null,track:!1,close:null,open:null},_addDescribedBy:function(t,i){var s=(t.attr("aria-describedby")||"").split(/\s+/);s.push(i),t.data("ui-tooltip-id",i).attr("aria-describedby",e.trim(s.join(" ")))},_removeDescribedBy:function(t){var i=t.data("ui-tooltip-id"),s=(t.attr("aria-describedby")||"").split(/\s+/),n=e.inArray(i,s);-1!==n&&s.splice(n,1),t.removeData("ui-tooltip-id"),s=e.trim(s.join(" ")),s?t.attr("aria-describedby",s):t.removeAttr("aria-describedby")},_create:function(){this._on({mouseover:"open",focusin:"open"}),this.tooltips={},this.parents={},this.options.disabled&&this._disable(),this.liveRegion=e("
    ").attr({role:"log","aria-live":"assertive","aria-relevant":"additions"}).addClass("ui-helper-hidden-accessible").appendTo(this.document[0].body)},_setOption:function(t,i){var s=this;return"disabled"===t?(this[i?"_disable":"_enable"](),this.options[t]=i,void 0):(this._super(t,i),"content"===t&&e.each(this.tooltips,function(e,t){s._updateContent(t)}),void 0)},_disable:function(){var t=this;e.each(this.tooltips,function(i,s){var n=e.Event("blur");n.target=n.currentTarget=s[0],t.close(n,!0)}),this.element.find(this.options.items).addBack().each(function(){var t=e(this);t.is("[title]")&&t.data("ui-tooltip-title",t.attr("title")).removeAttr("title")})},_enable:function(){this.element.find(this.options.items).addBack().each(function(){var t=e(this);t.data("ui-tooltip-title")&&t.attr("title",t.data("ui-tooltip-title"))})},open:function(t){var i=this,s=e(t?t.target:this.element).closest(this.options.items);s.length&&!s.data("ui-tooltip-id")&&(s.attr("title")&&s.data("ui-tooltip-title",s.attr("title")),s.data("ui-tooltip-open",!0),t&&"mouseover"===t.type&&s.parents().each(function(){var t,s=e(this);s.data("ui-tooltip-open")&&(t=e.Event("blur"),t.target=t.currentTarget=this,i.close(t,!0)),s.attr("title")&&(s.uniqueId(),i.parents[this.id]={element:this,title:s.attr("title")},s.attr("title",""))}),this._updateContent(s,t))},_updateContent:function(e,t){var i,s=this.options.content,n=this,a=t?t.type:null;return"string"==typeof s?this._open(t,e,s):(i=s.call(e[0],function(i){e.data("ui-tooltip-open")&&n._delay(function(){t&&(t.type=a),this._open(t,e,i)})}),i&&this._open(t,e,i),void 0)},_open:function(t,i,s){function n(e){l.of=e,a.is(":hidden")||a.position(l)}var a,o,r,h,l=e.extend({},this.options.position);if(s){if(a=this._find(i),a.length)return a.find(".ui-tooltip-content").html(s),void 0;i.is("[title]")&&(t&&"mouseover"===t.type?i.attr("title",""):i.removeAttr("title")),a=this._tooltip(i),this._addDescribedBy(i,a.attr("id")),a.find(".ui-tooltip-content").html(s),this.liveRegion.children().hide(),s.clone?(h=s.clone(),h.removeAttr("id").find("[id]").removeAttr("id")):h=s,e("
    ").html(h).appendTo(this.liveRegion),this.options.track&&t&&/^mouse/.test(t.type)?(this._on(this.document,{mousemove:n}),n(t)):a.position(e.extend({of:i},this.options.position)),this.hiding=!1,this.closing=!1,a.hide(),this._show(a,this.options.show),this.options.show&&this.options.show.delay&&(r=this.delayedShow=setInterval(function(){a.is(":visible")&&(n(l.of),clearInterval(r))},e.fx.interval)),this._trigger("open",t,{tooltip:a}),o={keyup:function(t){if(t.keyCode===e.ui.keyCode.ESCAPE){var s=e.Event(t);s.currentTarget=i[0],this.close(s,!0)}}},i[0]!==this.element[0]&&(o.remove=function(){this._removeTooltip(a)}),t&&"mouseover"!==t.type||(o.mouseleave="close"),t&&"focusin"!==t.type||(o.focusout="close"),this._on(!0,i,o)}},close:function(t){var i=this,s=e(t?t.currentTarget:this.element),n=this._find(s);this.closing||(clearInterval(this.delayedShow),s.data("ui-tooltip-title")&&!s.attr("title")&&s.attr("title",s.data("ui-tooltip-title")),this._removeDescribedBy(s),this.hiding=!0,n.stop(!0),this._hide(n,this.options.hide,function(){i._removeTooltip(e(this)),this.hiding=!1,this.closing=!1}),s.removeData("ui-tooltip-open"),this._off(s,"mouseleave focusout keyup"),s[0]!==this.element[0]&&this._off(s,"remove"),this._off(this.document,"mousemove"),t&&"mouseleave"===t.type&&e.each(this.parents,function(t,s){e(s.element).attr("title",s.title),delete i.parents[t]}),this.closing=!0,this._trigger("close",t,{tooltip:n}),this.hiding||(this.closing=!1))},_tooltip:function(t){var i=e("
    ").attr("role","tooltip").addClass("ui-tooltip ui-widget ui-corner-all ui-widget-content "+(this.options.tooltipClass||"")),s=i.uniqueId().attr("id");return e("
    ").addClass("ui-tooltip-content").appendTo(i),i.appendTo(this.document[0].body),this.tooltips[s]=t,i},_find:function(t){var i=t.data("ui-tooltip-id");return i?e("#"+i):e()},_removeTooltip:function(e){e.remove(),delete this.tooltips[e.attr("id")]},_destroy:function(){var t=this;e.each(this.tooltips,function(i,s){var n=e.Event("blur");n.target=n.currentTarget=s[0],t.close(n,!0),e("#"+i).remove(),s.data("ui-tooltip-title")&&(s.attr("title")||s.attr("title",s.data("ui-tooltip-title")),s.removeData("ui-tooltip-title"))}),this.liveRegion.remove()}});var y="ui-effects-",b=e;e.effects={effect:{}},function(e,t){function i(e,t,i){var s=d[t.type]||{};return null==e?i||!t.def?null:t.def:(e=s.floor?~~e:parseFloat(e),isNaN(e)?t.def:s.mod?(e+s.mod)%s.mod:0>e?0:e>s.max?s.max:e)}function s(i){var s=l(),n=s._rgba=[];return i=i.toLowerCase(),f(h,function(e,a){var o,r=a.re.exec(i),h=r&&a.parse(r),l=a.space||"rgba";return h?(o=s[l](h),s[u[l].cache]=o[u[l].cache],n=s._rgba=o._rgba,!1):t}),n.length?("0,0,0,0"===n.join()&&e.extend(n,a.transparent),s):a[i]}function n(e,t,i){return i=(i+1)%1,1>6*i?e+6*(t-e)*i:1>2*i?t:2>3*i?e+6*(t-e)*(2/3-i):e}var a,o="backgroundColor borderBottomColor borderLeftColor borderRightColor borderTopColor color columnRuleColor outlineColor textDecorationColor textEmphasisColor",r=/^([\-+])=\s*(\d+\.?\d*)/,h=[{re:/rgba?\(\s*(\d{1,3})\s*,\s*(\d{1,3})\s*,\s*(\d{1,3})\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,parse:function(e){return[e[1],e[2],e[3],e[4]]}},{re:/rgba?\(\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,parse:function(e){return[2.55*e[1],2.55*e[2],2.55*e[3],e[4]]}},{re:/#([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})/,parse:function(e){return[parseInt(e[1],16),parseInt(e[2],16),parseInt(e[3],16)]}},{re:/#([a-f0-9])([a-f0-9])([a-f0-9])/,parse:function(e){return[parseInt(e[1]+e[1],16),parseInt(e[2]+e[2],16),parseInt(e[3]+e[3],16)]}},{re:/hsla?\(\s*(\d+(?:\.\d+)?)\s*,\s*(\d+(?:\.\d+)?)\%\s*,\s*(\d+(?:\.\d+)?)\%\s*(?:,\s*(\d?(?:\.\d+)?)\s*)?\)/,space:"hsla",parse:function(e){return[e[1],e[2]/100,e[3]/100,e[4]]}}],l=e.Color=function(t,i,s,n){return new e.Color.fn.parse(t,i,s,n)},u={rgba:{props:{red:{idx:0,type:"byte"},green:{idx:1,type:"byte"},blue:{idx:2,type:"byte"}}},hsla:{props:{hue:{idx:0,type:"degrees"},saturation:{idx:1,type:"percent"},lightness:{idx:2,type:"percent"}}}},d={"byte":{floor:!0,max:255},percent:{max:1},degrees:{mod:360,floor:!0}},c=l.support={},p=e("

    ")[0],f=e.each;p.style.cssText="background-color:rgba(1,1,1,.5)",c.rgba=p.style.backgroundColor.indexOf("rgba")>-1,f(u,function(e,t){t.cache="_"+e,t.props.alpha={idx:3,type:"percent",def:1}}),l.fn=e.extend(l.prototype,{parse:function(n,o,r,h){if(n===t)return this._rgba=[null,null,null,null],this;(n.jquery||n.nodeType)&&(n=e(n).css(o),o=t);var d=this,c=e.type(n),p=this._rgba=[];return o!==t&&(n=[n,o,r,h],c="array"),"string"===c?this.parse(s(n)||a._default):"array"===c?(f(u.rgba.props,function(e,t){p[t.idx]=i(n[t.idx],t)}),this):"object"===c?(n instanceof l?f(u,function(e,t){n[t.cache]&&(d[t.cache]=n[t.cache].slice())}):f(u,function(t,s){var a=s.cache;f(s.props,function(e,t){if(!d[a]&&s.to){if("alpha"===e||null==n[e])return;d[a]=s.to(d._rgba)}d[a][t.idx]=i(n[e],t,!0)}),d[a]&&0>e.inArray(null,d[a].slice(0,3))&&(d[a][3]=1,s.from&&(d._rgba=s.from(d[a])))}),this):t},is:function(e){var i=l(e),s=!0,n=this;return f(u,function(e,a){var o,r=i[a.cache];return r&&(o=n[a.cache]||a.to&&a.to(n._rgba)||[],f(a.props,function(e,i){return null!=r[i.idx]?s=r[i.idx]===o[i.idx]:t})),s}),s},_space:function(){var e=[],t=this;return f(u,function(i,s){t[s.cache]&&e.push(i)}),e.pop()},transition:function(e,t){var s=l(e),n=s._space(),a=u[n],o=0===this.alpha()?l("transparent"):this,r=o[a.cache]||a.to(o._rgba),h=r.slice();return s=s[a.cache],f(a.props,function(e,n){var a=n.idx,o=r[a],l=s[a],u=d[n.type]||{};null!==l&&(null===o?h[a]=l:(u.mod&&(l-o>u.mod/2?o+=u.mod:o-l>u.mod/2&&(o-=u.mod)),h[a]=i((l-o)*t+o,n)))}),this[n](h)},blend:function(t){if(1===this._rgba[3])return this;var i=this._rgba.slice(),s=i.pop(),n=l(t)._rgba;return l(e.map(i,function(e,t){return(1-s)*n[t]+s*e}))},toRgbaString:function(){var t="rgba(",i=e.map(this._rgba,function(e,t){return null==e?t>2?1:0:e});return 1===i[3]&&(i.pop(),t="rgb("),t+i.join()+")"},toHslaString:function(){var t="hsla(",i=e.map(this.hsla(),function(e,t){return null==e&&(e=t>2?1:0),t&&3>t&&(e=Math.round(100*e)+"%"),e});return 1===i[3]&&(i.pop(),t="hsl("),t+i.join()+")"},toHexString:function(t){var i=this._rgba.slice(),s=i.pop();return t&&i.push(~~(255*s)),"#"+e.map(i,function(e){return e=(e||0).toString(16),1===e.length?"0"+e:e}).join("")},toString:function(){return 0===this._rgba[3]?"transparent":this.toRgbaString()}}),l.fn.parse.prototype=l.fn,u.hsla.to=function(e){if(null==e[0]||null==e[1]||null==e[2])return[null,null,null,e[3]];var t,i,s=e[0]/255,n=e[1]/255,a=e[2]/255,o=e[3],r=Math.max(s,n,a),h=Math.min(s,n,a),l=r-h,u=r+h,d=.5*u;return t=h===r?0:s===r?60*(n-a)/l+360:n===r?60*(a-s)/l+120:60*(s-n)/l+240,i=0===l?0:.5>=d?l/u:l/(2-u),[Math.round(t)%360,i,d,null==o?1:o]},u.hsla.from=function(e){if(null==e[0]||null==e[1]||null==e[2])return[null,null,null,e[3]];var t=e[0]/360,i=e[1],s=e[2],a=e[3],o=.5>=s?s*(1+i):s+i-s*i,r=2*s-o;return[Math.round(255*n(r,o,t+1/3)),Math.round(255*n(r,o,t)),Math.round(255*n(r,o,t-1/3)),a]},f(u,function(s,n){var a=n.props,o=n.cache,h=n.to,u=n.from;l.fn[s]=function(s){if(h&&!this[o]&&(this[o]=h(this._rgba)),s===t)return this[o].slice();var n,r=e.type(s),d="array"===r||"object"===r?s:arguments,c=this[o].slice();return f(a,function(e,t){var s=d["object"===r?e:t.idx];null==s&&(s=c[t.idx]),c[t.idx]=i(s,t)}),u?(n=l(u(c)),n[o]=c,n):l(c)},f(a,function(t,i){l.fn[t]||(l.fn[t]=function(n){var a,o=e.type(n),h="alpha"===t?this._hsla?"hsla":"rgba":s,l=this[h](),u=l[i.idx];return"undefined"===o?u:("function"===o&&(n=n.call(this,u),o=e.type(n)),null==n&&i.empty?this:("string"===o&&(a=r.exec(n),a&&(n=u+parseFloat(a[2])*("+"===a[1]?1:-1))),l[i.idx]=n,this[h](l)))})})}),l.hook=function(t){var i=t.split(" ");f(i,function(t,i){e.cssHooks[i]={set:function(t,n){var a,o,r="";if("transparent"!==n&&("string"!==e.type(n)||(a=s(n)))){if(n=l(a||n),!c.rgba&&1!==n._rgba[3]){for(o="backgroundColor"===i?t.parentNode:t;(""===r||"transparent"===r)&&o&&o.style;)try{r=e.css(o,"backgroundColor"),o=o.parentNode}catch(h){}n=n.blend(r&&"transparent"!==r?r:"_default")}n=n.toRgbaString()}try{t.style[i]=n}catch(h){}}},e.fx.step[i]=function(t){t.colorInit||(t.start=l(t.elem,i),t.end=l(t.end),t.colorInit=!0),e.cssHooks[i].set(t.elem,t.start.transition(t.end,t.pos))}})},l.hook(o),e.cssHooks.borderColor={expand:function(e){var t={};return f(["Top","Right","Bottom","Left"],function(i,s){t["border"+s+"Color"]=e}),t}},a=e.Color.names={aqua:"#00ffff",black:"#000000",blue:"#0000ff",fuchsia:"#ff00ff",gray:"#808080",green:"#008000",lime:"#00ff00",maroon:"#800000",navy:"#000080",olive:"#808000",purple:"#800080",red:"#ff0000",silver:"#c0c0c0",teal:"#008080",white:"#ffffff",yellow:"#ffff00",transparent:[null,null,null,0],_default:"#ffffff"}}(b),function(){function t(t){var i,s,n=t.ownerDocument.defaultView?t.ownerDocument.defaultView.getComputedStyle(t,null):t.currentStyle,a={};if(n&&n.length&&n[0]&&n[n[0]])for(s=n.length;s--;)i=n[s],"string"==typeof n[i]&&(a[e.camelCase(i)]=n[i]);else for(i in n)"string"==typeof n[i]&&(a[i]=n[i]);return a}function i(t,i){var s,a,o={};for(s in i)a=i[s],t[s]!==a&&(n[s]||(e.fx.step[s]||!isNaN(parseFloat(a)))&&(o[s]=a));return o}var s=["add","remove","toggle"],n={border:1,borderBottom:1,borderColor:1,borderLeft:1,borderRight:1,borderTop:1,borderWidth:1,margin:1,padding:1};e.each(["borderLeftStyle","borderRightStyle","borderBottomStyle","borderTopStyle"],function(t,i){e.fx.step[i]=function(e){("none"!==e.end&&!e.setAttr||1===e.pos&&!e.setAttr)&&(b.style(e.elem,i,e.end),e.setAttr=!0)}}),e.fn.addBack||(e.fn.addBack=function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}),e.effects.animateClass=function(n,a,o,r){var h=e.speed(a,o,r);return this.queue(function(){var a,o=e(this),r=o.attr("class")||"",l=h.children?o.find("*").addBack():o;l=l.map(function(){var i=e(this);return{el:i,start:t(this)}}),a=function(){e.each(s,function(e,t){n[t]&&o[t+"Class"](n[t])})},a(),l=l.map(function(){return this.end=t(this.el[0]),this.diff=i(this.start,this.end),this}),o.attr("class",r),l=l.map(function(){var t=this,i=e.Deferred(),s=e.extend({},h,{queue:!1,complete:function(){i.resolve(t)}});return this.el.animate(this.diff,s),i.promise()}),e.when.apply(e,l.get()).done(function(){a(),e.each(arguments,function(){var t=this.el;e.each(this.diff,function(e){t.css(e,"")})}),h.complete.call(o[0])})})},e.fn.extend({addClass:function(t){return function(i,s,n,a){return s?e.effects.animateClass.call(this,{add:i},s,n,a):t.apply(this,arguments)}}(e.fn.addClass),removeClass:function(t){return function(i,s,n,a){return arguments.length>1?e.effects.animateClass.call(this,{remove:i},s,n,a):t.apply(this,arguments)}}(e.fn.removeClass),toggleClass:function(t){return function(i,s,n,a,o){return"boolean"==typeof s||void 0===s?n?e.effects.animateClass.call(this,s?{add:i}:{remove:i},n,a,o):t.apply(this,arguments):e.effects.animateClass.call(this,{toggle:i},s,n,a)}}(e.fn.toggleClass),switchClass:function(t,i,s,n,a){return e.effects.animateClass.call(this,{add:i,remove:t},s,n,a)}})}(),function(){function t(t,i,s,n){return e.isPlainObject(t)&&(i=t,t=t.effect),t={effect:t},null==i&&(i={}),e.isFunction(i)&&(n=i,s=null,i={}),("number"==typeof i||e.fx.speeds[i])&&(n=s,s=i,i={}),e.isFunction(s)&&(n=s,s=null),i&&e.extend(t,i),s=s||i.duration,t.duration=e.fx.off?0:"number"==typeof s?s:s in e.fx.speeds?e.fx.speeds[s]:e.fx.speeds._default,t.complete=n||i.complete,t}function i(t){return!t||"number"==typeof t||e.fx.speeds[t]?!0:"string"!=typeof t||e.effects.effect[t]?e.isFunction(t)?!0:"object"!=typeof t||t.effect?!1:!0:!0}e.extend(e.effects,{version:"1.11.1",save:function(e,t){for(var i=0;t.length>i;i++)null!==t[i]&&e.data(y+t[i],e[0].style[t[i]])},restore:function(e,t){var i,s;for(s=0;t.length>s;s++)null!==t[s]&&(i=e.data(y+t[s]),void 0===i&&(i=""),e.css(t[s],i))},setMode:function(e,t){return"toggle"===t&&(t=e.is(":hidden")?"show":"hide"),t},getBaseline:function(e,t){var i,s;switch(e[0]){case"top":i=0;break;case"middle":i=.5;break;case"bottom":i=1;break;default:i=e[0]/t.height}switch(e[1]){case"left":s=0;break;case"center":s=.5;break;case"right":s=1;break;default:s=e[1]/t.width}return{x:s,y:i}},createWrapper:function(t){if(t.parent().is(".ui-effects-wrapper"))return t.parent();var i={width:t.outerWidth(!0),height:t.outerHeight(!0),"float":t.css("float")},s=e("

    ").addClass("ui-effects-wrapper").css({fontSize:"100%",background:"transparent",border:"none",margin:0,padding:0}),n={width:t.width(),height:t.height()},a=document.activeElement;try{a.id}catch(o){a=document.body}return t.wrap(s),(t[0]===a||e.contains(t[0],a))&&e(a).focus(),s=t.parent(),"static"===t.css("position")?(s.css({position:"relative"}),t.css({position:"relative"})):(e.extend(i,{position:t.css("position"),zIndex:t.css("z-index")}),e.each(["top","left","bottom","right"],function(e,s){i[s]=t.css(s),isNaN(parseInt(i[s],10))&&(i[s]="auto")}),t.css({position:"relative",top:0,left:0,right:"auto",bottom:"auto"})),t.css(n),s.css(i).show()},removeWrapper:function(t){var i=document.activeElement;return t.parent().is(".ui-effects-wrapper")&&(t.parent().replaceWith(t),(t[0]===i||e.contains(t[0],i))&&e(i).focus()),t},setTransition:function(t,i,s,n){return n=n||{},e.each(i,function(e,i){var a=t.cssUnit(i);a[0]>0&&(n[i]=a[0]*s+a[1])}),n}}),e.fn.extend({effect:function(){function i(t){function i(){e.isFunction(a)&&a.call(n[0]),e.isFunction(t)&&t()}var n=e(this),a=s.complete,r=s.mode;(n.is(":hidden")?"hide"===r:"show"===r)?(n[r](),i()):o.call(n[0],s,i)}var s=t.apply(this,arguments),n=s.mode,a=s.queue,o=e.effects.effect[s.effect];return e.fx.off||!o?n?this[n](s.duration,s.complete):this.each(function(){s.complete&&s.complete.call(this)}):a===!1?this.each(i):this.queue(a||"fx",i)},show:function(e){return function(s){if(i(s))return e.apply(this,arguments);var n=t.apply(this,arguments);return n.mode="show",this.effect.call(this,n)}}(e.fn.show),hide:function(e){return function(s){if(i(s))return e.apply(this,arguments);var n=t.apply(this,arguments);return n.mode="hide",this.effect.call(this,n)}}(e.fn.hide),toggle:function(e){return function(s){if(i(s)||"boolean"==typeof s)return e.apply(this,arguments);var n=t.apply(this,arguments);return n.mode="toggle",this.effect.call(this,n)}}(e.fn.toggle),cssUnit:function(t){var i=this.css(t),s=[];return e.each(["em","px","%","pt"],function(e,t){i.indexOf(t)>0&&(s=[parseFloat(i),t])}),s}})}(),function(){var t={};e.each(["Quad","Cubic","Quart","Quint","Expo"],function(e,i){t[i]=function(t){return Math.pow(t,e+2)}}),e.extend(t,{Sine:function(e){return 1-Math.cos(e*Math.PI/2)},Circ:function(e){return 1-Math.sqrt(1-e*e) -},Elastic:function(e){return 0===e||1===e?e:-Math.pow(2,8*(e-1))*Math.sin((80*(e-1)-7.5)*Math.PI/15)},Back:function(e){return e*e*(3*e-2)},Bounce:function(e){for(var t,i=4;((t=Math.pow(2,--i))-1)/11>e;);return 1/Math.pow(4,3-i)-7.5625*Math.pow((3*t-2)/22-e,2)}}),e.each(t,function(t,i){e.easing["easeIn"+t]=i,e.easing["easeOut"+t]=function(e){return 1-i(1-e)},e.easing["easeInOut"+t]=function(e){return.5>e?i(2*e)/2:1-i(-2*e+2)/2}})}(),e.effects,e.effects.effect.blind=function(t,i){var s,n,a,o=e(this),r=/up|down|vertical/,h=/up|left|vertical|horizontal/,l=["position","top","bottom","left","right","height","width"],u=e.effects.setMode(o,t.mode||"hide"),d=t.direction||"up",c=r.test(d),p=c?"height":"width",f=c?"top":"left",m=h.test(d),g={},v="show"===u;o.parent().is(".ui-effects-wrapper")?e.effects.save(o.parent(),l):e.effects.save(o,l),o.show(),s=e.effects.createWrapper(o).css({overflow:"hidden"}),n=s[p](),a=parseFloat(s.css(f))||0,g[p]=v?n:0,m||(o.css(c?"bottom":"right",0).css(c?"top":"left","auto").css({position:"absolute"}),g[f]=v?a:n+a),v&&(s.css(p,0),m||s.css(f,a+n)),s.animate(g,{duration:t.duration,easing:t.easing,queue:!1,complete:function(){"hide"===u&&o.hide(),e.effects.restore(o,l),e.effects.removeWrapper(o),i()}})},e.effects.effect.bounce=function(t,i){var s,n,a,o=e(this),r=["position","top","bottom","left","right","height","width"],h=e.effects.setMode(o,t.mode||"effect"),l="hide"===h,u="show"===h,d=t.direction||"up",c=t.distance,p=t.times||5,f=2*p+(u||l?1:0),m=t.duration/f,g=t.easing,v="up"===d||"down"===d?"top":"left",y="up"===d||"left"===d,b=o.queue(),_=b.length;for((u||l)&&r.push("opacity"),e.effects.save(o,r),o.show(),e.effects.createWrapper(o),c||(c=o["top"===v?"outerHeight":"outerWidth"]()/3),u&&(a={opacity:1},a[v]=0,o.css("opacity",0).css(v,y?2*-c:2*c).animate(a,m,g)),l&&(c/=Math.pow(2,p-1)),a={},a[v]=0,s=0;p>s;s++)n={},n[v]=(y?"-=":"+=")+c,o.animate(n,m,g).animate(a,m,g),c=l?2*c:c/2;l&&(n={opacity:0},n[v]=(y?"-=":"+=")+c,o.animate(n,m,g)),o.queue(function(){l&&o.hide(),e.effects.restore(o,r),e.effects.removeWrapper(o),i()}),_>1&&b.splice.apply(b,[1,0].concat(b.splice(_,f+1))),o.dequeue()},e.effects.effect.clip=function(t,i){var s,n,a,o=e(this),r=["position","top","bottom","left","right","height","width"],h=e.effects.setMode(o,t.mode||"hide"),l="show"===h,u=t.direction||"vertical",d="vertical"===u,c=d?"height":"width",p=d?"top":"left",f={};e.effects.save(o,r),o.show(),s=e.effects.createWrapper(o).css({overflow:"hidden"}),n="IMG"===o[0].tagName?s:o,a=n[c](),l&&(n.css(c,0),n.css(p,a/2)),f[c]=l?a:0,f[p]=l?0:a/2,n.animate(f,{queue:!1,duration:t.duration,easing:t.easing,complete:function(){l||o.hide(),e.effects.restore(o,r),e.effects.removeWrapper(o),i()}})},e.effects.effect.drop=function(t,i){var s,n=e(this),a=["position","top","bottom","left","right","opacity","height","width"],o=e.effects.setMode(n,t.mode||"hide"),r="show"===o,h=t.direction||"left",l="up"===h||"down"===h?"top":"left",u="up"===h||"left"===h?"pos":"neg",d={opacity:r?1:0};e.effects.save(n,a),n.show(),e.effects.createWrapper(n),s=t.distance||n["top"===l?"outerHeight":"outerWidth"](!0)/2,r&&n.css("opacity",0).css(l,"pos"===u?-s:s),d[l]=(r?"pos"===u?"+=":"-=":"pos"===u?"-=":"+=")+s,n.animate(d,{queue:!1,duration:t.duration,easing:t.easing,complete:function(){"hide"===o&&n.hide(),e.effects.restore(n,a),e.effects.removeWrapper(n),i()}})},e.effects.effect.explode=function(t,i){function s(){b.push(this),b.length===d*c&&n()}function n(){p.css({visibility:"visible"}),e(b).remove(),m||p.hide(),i()}var a,o,r,h,l,u,d=t.pieces?Math.round(Math.sqrt(t.pieces)):3,c=d,p=e(this),f=e.effects.setMode(p,t.mode||"hide"),m="show"===f,g=p.show().css("visibility","hidden").offset(),v=Math.ceil(p.outerWidth()/c),y=Math.ceil(p.outerHeight()/d),b=[];for(a=0;d>a;a++)for(h=g.top+a*y,u=a-(d-1)/2,o=0;c>o;o++)r=g.left+o*v,l=o-(c-1)/2,p.clone().appendTo("body").wrap("
    ").css({position:"absolute",visibility:"visible",left:-o*v,top:-a*y}).parent().addClass("ui-effects-explode").css({position:"absolute",overflow:"hidden",width:v,height:y,left:r+(m?l*v:0),top:h+(m?u*y:0),opacity:m?0:1}).animate({left:r+(m?0:l*v),top:h+(m?0:u*y),opacity:m?1:0},t.duration||500,t.easing,s)},e.effects.effect.fade=function(t,i){var s=e(this),n=e.effects.setMode(s,t.mode||"toggle");s.animate({opacity:n},{queue:!1,duration:t.duration,easing:t.easing,complete:i})},e.effects.effect.fold=function(t,i){var s,n,a=e(this),o=["position","top","bottom","left","right","height","width"],r=e.effects.setMode(a,t.mode||"hide"),h="show"===r,l="hide"===r,u=t.size||15,d=/([0-9]+)%/.exec(u),c=!!t.horizFirst,p=h!==c,f=p?["width","height"]:["height","width"],m=t.duration/2,g={},v={};e.effects.save(a,o),a.show(),s=e.effects.createWrapper(a).css({overflow:"hidden"}),n=p?[s.width(),s.height()]:[s.height(),s.width()],d&&(u=parseInt(d[1],10)/100*n[l?0:1]),h&&s.css(c?{height:0,width:u}:{height:u,width:0}),g[f[0]]=h?n[0]:u,v[f[1]]=h?n[1]:0,s.animate(g,m,t.easing).animate(v,m,t.easing,function(){l&&a.hide(),e.effects.restore(a,o),e.effects.removeWrapper(a),i()})},e.effects.effect.highlight=function(t,i){var s=e(this),n=["backgroundImage","backgroundColor","opacity"],a=e.effects.setMode(s,t.mode||"show"),o={backgroundColor:s.css("backgroundColor")};"hide"===a&&(o.opacity=0),e.effects.save(s,n),s.show().css({backgroundImage:"none",backgroundColor:t.color||"#ffff99"}).animate(o,{queue:!1,duration:t.duration,easing:t.easing,complete:function(){"hide"===a&&s.hide(),e.effects.restore(s,n),i()}})},e.effects.effect.size=function(t,i){var s,n,a,o=e(this),r=["position","top","bottom","left","right","width","height","overflow","opacity"],h=["position","top","bottom","left","right","overflow","opacity"],l=["width","height","overflow"],u=["fontSize"],d=["borderTopWidth","borderBottomWidth","paddingTop","paddingBottom"],c=["borderLeftWidth","borderRightWidth","paddingLeft","paddingRight"],p=e.effects.setMode(o,t.mode||"effect"),f=t.restore||"effect"!==p,m=t.scale||"both",g=t.origin||["middle","center"],v=o.css("position"),y=f?r:h,b={height:0,width:0,outerHeight:0,outerWidth:0};"show"===p&&o.show(),s={height:o.height(),width:o.width(),outerHeight:o.outerHeight(),outerWidth:o.outerWidth()},"toggle"===t.mode&&"show"===p?(o.from=t.to||b,o.to=t.from||s):(o.from=t.from||("show"===p?b:s),o.to=t.to||("hide"===p?b:s)),a={from:{y:o.from.height/s.height,x:o.from.width/s.width},to:{y:o.to.height/s.height,x:o.to.width/s.width}},("box"===m||"both"===m)&&(a.from.y!==a.to.y&&(y=y.concat(d),o.from=e.effects.setTransition(o,d,a.from.y,o.from),o.to=e.effects.setTransition(o,d,a.to.y,o.to)),a.from.x!==a.to.x&&(y=y.concat(c),o.from=e.effects.setTransition(o,c,a.from.x,o.from),o.to=e.effects.setTransition(o,c,a.to.x,o.to))),("content"===m||"both"===m)&&a.from.y!==a.to.y&&(y=y.concat(u).concat(l),o.from=e.effects.setTransition(o,u,a.from.y,o.from),o.to=e.effects.setTransition(o,u,a.to.y,o.to)),e.effects.save(o,y),o.show(),e.effects.createWrapper(o),o.css("overflow","hidden").css(o.from),g&&(n=e.effects.getBaseline(g,s),o.from.top=(s.outerHeight-o.outerHeight())*n.y,o.from.left=(s.outerWidth-o.outerWidth())*n.x,o.to.top=(s.outerHeight-o.to.outerHeight)*n.y,o.to.left=(s.outerWidth-o.to.outerWidth)*n.x),o.css(o.from),("content"===m||"both"===m)&&(d=d.concat(["marginTop","marginBottom"]).concat(u),c=c.concat(["marginLeft","marginRight"]),l=r.concat(d).concat(c),o.find("*[width]").each(function(){var i=e(this),s={height:i.height(),width:i.width(),outerHeight:i.outerHeight(),outerWidth:i.outerWidth()};f&&e.effects.save(i,l),i.from={height:s.height*a.from.y,width:s.width*a.from.x,outerHeight:s.outerHeight*a.from.y,outerWidth:s.outerWidth*a.from.x},i.to={height:s.height*a.to.y,width:s.width*a.to.x,outerHeight:s.height*a.to.y,outerWidth:s.width*a.to.x},a.from.y!==a.to.y&&(i.from=e.effects.setTransition(i,d,a.from.y,i.from),i.to=e.effects.setTransition(i,d,a.to.y,i.to)),a.from.x!==a.to.x&&(i.from=e.effects.setTransition(i,c,a.from.x,i.from),i.to=e.effects.setTransition(i,c,a.to.x,i.to)),i.css(i.from),i.animate(i.to,t.duration,t.easing,function(){f&&e.effects.restore(i,l)})})),o.animate(o.to,{queue:!1,duration:t.duration,easing:t.easing,complete:function(){0===o.to.opacity&&o.css("opacity",o.from.opacity),"hide"===p&&o.hide(),e.effects.restore(o,y),f||("static"===v?o.css({position:"relative",top:o.to.top,left:o.to.left}):e.each(["top","left"],function(e,t){o.css(t,function(t,i){var s=parseInt(i,10),n=e?o.to.left:o.to.top;return"auto"===i?n+"px":s+n+"px"})})),e.effects.removeWrapper(o),i()}})},e.effects.effect.scale=function(t,i){var s=e(this),n=e.extend(!0,{},t),a=e.effects.setMode(s,t.mode||"effect"),o=parseInt(t.percent,10)||(0===parseInt(t.percent,10)?0:"hide"===a?0:100),r=t.direction||"both",h=t.origin,l={height:s.height(),width:s.width(),outerHeight:s.outerHeight(),outerWidth:s.outerWidth()},u={y:"horizontal"!==r?o/100:1,x:"vertical"!==r?o/100:1};n.effect="size",n.queue=!1,n.complete=i,"effect"!==a&&(n.origin=h||["middle","center"],n.restore=!0),n.from=t.from||("show"===a?{height:0,width:0,outerHeight:0,outerWidth:0}:l),n.to={height:l.height*u.y,width:l.width*u.x,outerHeight:l.outerHeight*u.y,outerWidth:l.outerWidth*u.x},n.fade&&("show"===a&&(n.from.opacity=0,n.to.opacity=1),"hide"===a&&(n.from.opacity=1,n.to.opacity=0)),s.effect(n)},e.effects.effect.puff=function(t,i){var s=e(this),n=e.effects.setMode(s,t.mode||"hide"),a="hide"===n,o=parseInt(t.percent,10)||150,r=o/100,h={height:s.height(),width:s.width(),outerHeight:s.outerHeight(),outerWidth:s.outerWidth()};e.extend(t,{effect:"scale",queue:!1,fade:!0,mode:n,complete:i,percent:a?o:100,from:a?h:{height:h.height*r,width:h.width*r,outerHeight:h.outerHeight*r,outerWidth:h.outerWidth*r}}),s.effect(t)},e.effects.effect.pulsate=function(t,i){var s,n=e(this),a=e.effects.setMode(n,t.mode||"show"),o="show"===a,r="hide"===a,h=o||"hide"===a,l=2*(t.times||5)+(h?1:0),u=t.duration/l,d=0,c=n.queue(),p=c.length;for((o||!n.is(":visible"))&&(n.css("opacity",0).show(),d=1),s=1;l>s;s++)n.animate({opacity:d},u,t.easing),d=1-d;n.animate({opacity:d},u,t.easing),n.queue(function(){r&&n.hide(),i()}),p>1&&c.splice.apply(c,[1,0].concat(c.splice(p,l+1))),n.dequeue()},e.effects.effect.shake=function(t,i){var s,n=e(this),a=["position","top","bottom","left","right","height","width"],o=e.effects.setMode(n,t.mode||"effect"),r=t.direction||"left",h=t.distance||20,l=t.times||3,u=2*l+1,d=Math.round(t.duration/u),c="up"===r||"down"===r?"top":"left",p="up"===r||"left"===r,f={},m={},g={},v=n.queue(),y=v.length;for(e.effects.save(n,a),n.show(),e.effects.createWrapper(n),f[c]=(p?"-=":"+=")+h,m[c]=(p?"+=":"-=")+2*h,g[c]=(p?"-=":"+=")+2*h,n.animate(f,d,t.easing),s=1;l>s;s++)n.animate(m,d,t.easing).animate(g,d,t.easing);n.animate(m,d,t.easing).animate(f,d/2,t.easing).queue(function(){"hide"===o&&n.hide(),e.effects.restore(n,a),e.effects.removeWrapper(n),i()}),y>1&&v.splice.apply(v,[1,0].concat(v.splice(y,u+1))),n.dequeue()},e.effects.effect.slide=function(t,i){var s,n=e(this),a=["position","top","bottom","left","right","width","height"],o=e.effects.setMode(n,t.mode||"show"),r="show"===o,h=t.direction||"left",l="up"===h||"down"===h?"top":"left",u="up"===h||"left"===h,d={};e.effects.save(n,a),n.show(),s=t.distance||n["top"===l?"outerHeight":"outerWidth"](!0),e.effects.createWrapper(n).css({overflow:"hidden"}),r&&n.css(l,u?isNaN(s)?"-"+s:-s:s),d[l]=(r?u?"+=":"-=":u?"-=":"+=")+s,n.animate(d,{queue:!1,duration:t.duration,easing:t.easing,complete:function(){"hide"===o&&n.hide(),e.effects.restore(n,a),e.effects.removeWrapper(n),i()}})},e.effects.effect.transfer=function(t,i){var s=e(this),n=e(t.to),a="fixed"===n.css("position"),o=e("body"),r=a?o.scrollTop():0,h=a?o.scrollLeft():0,l=n.offset(),u={top:l.top-r,left:l.left-h,height:n.innerHeight(),width:n.innerWidth()},d=s.offset(),c=e("
    ").appendTo(document.body).addClass(t.className).css({top:d.top-r,left:d.left-h,height:s.innerHeight(),width:s.innerWidth(),position:a?"fixed":"absolute"}).animate(u,t.duration,t.easing,function(){c.remove(),i()})}}); \ No newline at end of file diff --git a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery/jquery.min.js b/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery/jquery.min.js deleted file mode 100644 index 9f7b3d3..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/jid1-KtlZuoiikVfFew@jetpack/resources/librejs/data/settings/third-party/jquery/jquery.min.js +++ /dev/null @@ -1,9190 +0,0 @@ -/*! - * jQuery JavaScript Library v2.1.1 - * http://jquery.com/ - * - * Includes Sizzle.js - * http://sizzlejs.com/ - * - * Copyright 2005, 2014 jQuery Foundation, Inc. and other contributors - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2014-05-01T17:11Z - */ - -(function( global, factory ) { - - if ( typeof module === "object" && typeof module.exports === "object" ) { - // For CommonJS and CommonJS-like environments where a proper window is present, - // execute the factory and get jQuery - // For environments that do not inherently posses a window with a document - // (such as Node.js), expose a jQuery-making factory as module.exports - // This accentuates the need for the creation of a real window - // e.g. var jQuery = require("jquery")(window); - // See ticket #14549 for more info - module.exports = global.document ? - factory( global, true ) : - function( w ) { - if ( !w.document ) { - throw new Error( "jQuery requires a window with a document" ); - } - return factory( w ); - }; - } else { - factory( global ); - } - -// Pass this if window is not defined yet -}(typeof window !== "undefined" ? window : this, function( window, noGlobal ) { - -// Can't do this because several apps including ASP.NET trace -// the stack via arguments.caller.callee and Firefox dies if -// you try to trace through "use strict" call chains. (#13335) -// Support: Firefox 18+ -// - -var arr = []; - -var slice = arr.slice; - -var concat = arr.concat; - -var push = arr.push; - -var indexOf = arr.indexOf; - -var class2type = {}; - -var toString = class2type.toString; - -var hasOwn = class2type.hasOwnProperty; - -var support = {}; - - - -var - // Use the correct document accordingly with window argument (sandbox) - document = window.document, - - version = "2.1.1", - - // Define a local copy of jQuery - jQuery = function( selector, context ) { - // The jQuery object is actually just the init constructor 'enhanced' - // Need init if jQuery is called (just allow error to be thrown if not included) - return new jQuery.fn.init( selector, context ); - }, - - // Support: Android<4.1 - // Make sure we trim BOM and NBSP - rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, - - // Matches dashed string for camelizing - rmsPrefix = /^-ms-/, - rdashAlpha = /-([\da-z])/gi, - - // Used by jQuery.camelCase as callback to replace() - fcamelCase = function( all, letter ) { - return letter.toUpperCase(); - }; - -jQuery.fn = jQuery.prototype = { - // The current version of jQuery being used - jquery: version, - - constructor: jQuery, - - // Start with an empty selector - selector: "", - - // The default length of a jQuery object is 0 - length: 0, - - toArray: function() { - return slice.call( this ); - }, - - // Get the Nth element in the matched element set OR - // Get the whole matched element set as a clean array - get: function( num ) { - return num != null ? - - // Return just the one element from the set - ( num < 0 ? this[ num + this.length ] : this[ num ] ) : - - // Return all the elements in a clean array - slice.call( this ); - }, - - // Take an array of elements and push it onto the stack - // (returning the new matched element set) - pushStack: function( elems ) { - - // Build a new jQuery matched element set - var ret = jQuery.merge( this.constructor(), elems ); - - // Add the old object onto the stack (as a reference) - ret.prevObject = this; - ret.context = this.context; - - // Return the newly-formed element set - return ret; - }, - - // Execute a callback for every element in the matched set. - // (You can seed the arguments with an array of args, but this is - // only used internally.) - each: function( callback, args ) { - return jQuery.each( this, callback, args ); - }, - - map: function( callback ) { - return this.pushStack( jQuery.map(this, function( elem, i ) { - return callback.call( elem, i, elem ); - })); - }, - - slice: function() { - return this.pushStack( slice.apply( this, arguments ) ); - }, - - first: function() { - return this.eq( 0 ); - }, - - last: function() { - return this.eq( -1 ); - }, - - eq: function( i ) { - var len = this.length, - j = +i + ( i < 0 ? len : 0 ); - return this.pushStack( j >= 0 && j < len ? [ this[j] ] : [] ); - }, - - end: function() { - return this.prevObject || this.constructor(null); - }, - - // For internal use only. - // Behaves like an Array's method, not like a jQuery method. - push: push, - sort: arr.sort, - splice: arr.splice -}; - -jQuery.extend = jQuery.fn.extend = function() { - var options, name, src, copy, copyIsArray, clone, - target = arguments[0] || {}, - i = 1, - length = arguments.length, - deep = false; - - // Handle a deep copy situation - if ( typeof target === "boolean" ) { - deep = target; - - // skip the boolean and the target - target = arguments[ i ] || {}; - i++; - } - - // Handle case when target is a string or something (possible in deep copy) - if ( typeof target !== "object" && !jQuery.isFunction(target) ) { - target = {}; - } - - // extend jQuery itself if only one argument is passed - if ( i === length ) { - target = this; - i--; - } - - for ( ; i < length; i++ ) { - // Only deal with non-null/undefined values - if ( (options = arguments[ i ]) != null ) { - // Extend the base object - for ( name in options ) { - src = target[ name ]; - copy = options[ name ]; - - // Prevent never-ending loop - if ( target === copy ) { - continue; - } - - // Recurse if we're merging plain objects or arrays - if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) { - if ( copyIsArray ) { - copyIsArray = false; - clone = src && jQuery.isArray(src) ? src : []; - - } else { - clone = src && jQuery.isPlainObject(src) ? src : {}; - } - - // Never move original objects, clone them - target[ name ] = jQuery.extend( deep, clone, copy ); - - // Don't bring in undefined values - } else if ( copy !== undefined ) { - target[ name ] = copy; - } - } - } - } - - // Return the modified object - return target; -}; - -jQuery.extend({ - // Unique for each copy of jQuery on the page - expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ), - - // Assume jQuery is ready without the ready module - isReady: true, - - error: function( msg ) { - throw new Error( msg ); - }, - - noop: function() {}, - - // See test/unit/core.js for details concerning isFunction. - // Since version 1.3, DOM methods and functions like alert - // aren't supported. They return false on IE (#2968). - isFunction: function( obj ) { - return jQuery.type(obj) === "function"; - }, - - isArray: Array.isArray, - - isWindow: function( obj ) { - return obj != null && obj === obj.window; - }, - - isNumeric: function( obj ) { - // parseFloat NaNs numeric-cast false positives (null|true|false|"") - // ...but misinterprets leading-number strings, particularly hex literals ("0x...") - // subtraction forces infinities to NaN - return !jQuery.isArray( obj ) && obj - parseFloat( obj ) >= 0; - }, - - isPlainObject: function( obj ) { - // Not plain objects: - // - Any object or value whose internal [[Class]] property is not "[object Object]" - // - DOM nodes - // - window - if ( jQuery.type( obj ) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) { - return false; - } - - if ( obj.constructor && - !hasOwn.call( obj.constructor.prototype, "isPrototypeOf" ) ) { - return false; - } - - // If the function hasn't returned already, we're confident that - // |obj| is a plain object, created by {} or constructed with new Object - return true; - }, - - isEmptyObject: function( obj ) { - var name; - for ( name in obj ) { - return false; - } - return true; - }, - - type: function( obj ) { - if ( obj == null ) { - return obj + ""; - } - // Support: Android < 4.0, iOS < 6 (functionish RegExp) - return typeof obj === "object" || typeof obj === "function" ? - class2type[ toString.call(obj) ] || "object" : - typeof obj; - }, - - // Evaluates a script in a global context - globalEval: function( code ) { - var script, - indirect = eval; - - code = jQuery.trim( code ); - - if ( code ) { - // If the code includes a valid, prologue position - // strict mode pragma, execute code by injecting a - // script tag into the document. - if ( code.indexOf("use strict") === 1 ) { - script = document.createElement("script"); - script.text = code; - document.head.appendChild( script ).parentNode.removeChild( script ); - } else { - // Otherwise, avoid the DOM node creation, insertion - // and removal by using an indirect global eval - indirect( code ); - } - } - }, - - // Convert dashed to camelCase; used by the css and data modules - // Microsoft forgot to hump their vendor prefix (#9572) - camelCase: function( string ) { - return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); - }, - - nodeName: function( elem, name ) { - return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); - }, - - // args is for internal usage only - each: function( obj, callback, args ) { - var value, - i = 0, - length = obj.length, - isArray = isArraylike( obj ); - - if ( args ) { - if ( isArray ) { - for ( ; i < length; i++ ) { - value = callback.apply( obj[ i ], args ); - - if ( value === false ) { - break; - } - } - } else { - for ( i in obj ) { - value = callback.apply( obj[ i ], args ); - - if ( value === false ) { - break; - } - } - } - - // A special, fast, case for the most common use of each - } else { - if ( isArray ) { - for ( ; i < length; i++ ) { - value = callback.call( obj[ i ], i, obj[ i ] ); - - if ( value === false ) { - break; - } - } - } else { - for ( i in obj ) { - value = callback.call( obj[ i ], i, obj[ i ] ); - - if ( value === false ) { - break; - } - } - } - } - - return obj; - }, - - // Support: Android<4.1 - trim: function( text ) { - return text == null ? - "" : - ( text + "" ).replace( rtrim, "" ); - }, - - // results is for internal usage only - makeArray: function( arr, results ) { - var ret = results || []; - - if ( arr != null ) { - if ( isArraylike( Object(arr) ) ) { - jQuery.merge( ret, - typeof arr === "string" ? - [ arr ] : arr - ); - } else { - push.call( ret, arr ); - } - } - - return ret; - }, - - inArray: function( elem, arr, i ) { - return arr == null ? -1 : indexOf.call( arr, elem, i ); - }, - - merge: function( first, second ) { - var len = +second.length, - j = 0, - i = first.length; - - for ( ; j < len; j++ ) { - first[ i++ ] = second[ j ]; - } - - first.length = i; - - return first; - }, - - grep: function( elems, callback, invert ) { - var callbackInverse, - matches = [], - i = 0, - length = elems.length, - callbackExpect = !invert; - - // Go through the array, only saving the items - // that pass the validator function - for ( ; i < length; i++ ) { - callbackInverse = !callback( elems[ i ], i ); - if ( callbackInverse !== callbackExpect ) { - matches.push( elems[ i ] ); - } - } - - return matches; - }, - - // arg is for internal usage only - map: function( elems, callback, arg ) { - var value, - i = 0, - length = elems.length, - isArray = isArraylike( elems ), - ret = []; - - // Go through the array, translating each of the items to their new values - if ( isArray ) { - for ( ; i < length; i++ ) { - value = callback( elems[ i ], i, arg ); - - if ( value != null ) { - ret.push( value ); - } - } - - // Go through every key on the object, - } else { - for ( i in elems ) { - value = callback( elems[ i ], i, arg ); - - if ( value != null ) { - ret.push( value ); - } - } - } - - // Flatten any nested arrays - return concat.apply( [], ret ); - }, - - // A global GUID counter for objects - guid: 1, - - // Bind a function to a context, optionally partially applying any - // arguments. - proxy: function( fn, context ) { - var tmp, args, proxy; - - if ( typeof context === "string" ) { - tmp = fn[ context ]; - context = fn; - fn = tmp; - } - - // Quick check to determine if target is callable, in the spec - // this throws a TypeError, but we will just return undefined. - if ( !jQuery.isFunction( fn ) ) { - return undefined; - } - - // Simulated bind - args = slice.call( arguments, 2 ); - proxy = function() { - return fn.apply( context || this, args.concat( slice.call( arguments ) ) ); - }; - - // Set the guid of unique handler to the same of original handler, so it can be removed - proxy.guid = fn.guid = fn.guid || jQuery.guid++; - - return proxy; - }, - - now: Date.now, - - // jQuery.support is not used in Core but other projects attach their - // properties to it so it needs to exist. - support: support -}); - -// Populate the class2type map -jQuery.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function(i, name) { - class2type[ "[object " + name + "]" ] = name.toLowerCase(); -}); - -function isArraylike( obj ) { - var length = obj.length, - type = jQuery.type( obj ); - - if ( type === "function" || jQuery.isWindow( obj ) ) { - return false; - } - - if ( obj.nodeType === 1 && length ) { - return true; - } - - return type === "array" || length === 0 || - typeof length === "number" && length > 0 && ( length - 1 ) in obj; -} -var Sizzle = -/*! - * Sizzle CSS Selector Engine v1.10.19 - * http://sizzlejs.com/ - * - * Copyright 2013 jQuery Foundation, Inc. and other contributors - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2014-04-18 - */ -(function( window ) { - -var i, - support, - Expr, - getText, - isXML, - tokenize, - compile, - select, - outermostContext, - sortInput, - hasDuplicate, - - // Local document vars - setDocument, - document, - docElem, - documentIsHTML, - rbuggyQSA, - rbuggyMatches, - matches, - contains, - - // Instance-specific data - expando = "sizzle" + -(new Date()), - preferredDoc = window.document, - dirruns = 0, - done = 0, - classCache = createCache(), - tokenCache = createCache(), - compilerCache = createCache(), - sortOrder = function( a, b ) { - if ( a === b ) { - hasDuplicate = true; - } - return 0; - }, - - // General-purpose constants - strundefined = typeof undefined, - MAX_NEGATIVE = 1 << 31, - - // Instance methods - hasOwn = ({}).hasOwnProperty, - arr = [], - pop = arr.pop, - push_native = arr.push, - push = arr.push, - slice = arr.slice, - // Use a stripped-down indexOf if we can't use a native one - indexOf = arr.indexOf || function( elem ) { - var i = 0, - len = this.length; - for ( ; i < len; i++ ) { - if ( this[i] === elem ) { - return i; - } - } - return -1; - }, - - booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", - - // Regular expressions - - // Whitespace characters http://www.w3.org/TR/css3-selectors/#whitespace - whitespace = "[\\x20\\t\\r\\n\\f]", - // http://www.w3.org/TR/css3-syntax/#characters - characterEncoding = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+", - - // Loosely modeled on CSS identifier characters - // An unquoted value should be a CSS identifier http://www.w3.org/TR/css3-selectors/#attribute-selectors - // Proper syntax: http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier - identifier = characterEncoding.replace( "w", "w#" ), - - // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors - attributes = "\\[" + whitespace + "*(" + characterEncoding + ")(?:" + whitespace + - // Operator (capture 2) - "*([*^$|!~]?=)" + whitespace + - // "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]" - "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace + - "*\\]", - - pseudos = ":(" + characterEncoding + ")(?:\\((" + - // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments: - // 1. quoted (capture 3; capture 4 or capture 5) - "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" + - // 2. simple (capture 6) - "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" + - // 3. anything else (capture 2) - ".*" + - ")\\)|)", - - // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter - rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ), - - rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ), - rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ), - - rattributeQuotes = new RegExp( "=" + whitespace + "*([^\\]'\"]*?)" + whitespace + "*\\]", "g" ), - - rpseudo = new RegExp( pseudos ), - ridentifier = new RegExp( "^" + identifier + "$" ), - - matchExpr = { - "ID": new RegExp( "^#(" + characterEncoding + ")" ), - "CLASS": new RegExp( "^\\.(" + characterEncoding + ")" ), - "TAG": new RegExp( "^(" + characterEncoding.replace( "w", "w*" ) + ")" ), - "ATTR": new RegExp( "^" + attributes ), - "PSEUDO": new RegExp( "^" + pseudos ), - "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace + - "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace + - "*(\\d+)|))" + whitespace + "*\\)|)", "i" ), - "bool": new RegExp( "^(?:" + booleans + ")$", "i" ), - // For use in libraries implementing .is() - // We use this for POS matching in `select` - "needsContext": new RegExp( "^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + - whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" ) - }, - - rinputs = /^(?:input|select|textarea|button)$/i, - rheader = /^h\d$/i, - - rnative = /^[^{]+\{\s*\[native \w/, - - // Easily-parseable/retrievable ID or TAG or CLASS selectors - rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, - - rsibling = /[+~]/, - rescape = /'|\\/g, - - // CSS escapes http://www.w3.org/TR/CSS21/syndata.html#escaped-characters - runescape = new RegExp( "\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig" ), - funescape = function( _, escaped, escapedWhitespace ) { - var high = "0x" + escaped - 0x10000; - // NaN means non-codepoint - // Support: Firefox<24 - // Workaround erroneous numeric interpretation of +"0x" - return high !== high || escapedWhitespace ? - escaped : - high < 0 ? - // BMP codepoint - String.fromCharCode( high + 0x10000 ) : - // Supplemental Plane codepoint (surrogate pair) - String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 ); - }; - -// Optimize for push.apply( _, NodeList ) -try { - push.apply( - (arr = slice.call( preferredDoc.childNodes )), - preferredDoc.childNodes - ); - // Support: Android<4.0 - // Detect silently failing push.apply - arr[ preferredDoc.childNodes.length ].nodeType; -} catch ( e ) { - push = { apply: arr.length ? - - // Leverage slice if possible - function( target, els ) { - push_native.apply( target, slice.call(els) ); - } : - - // Support: IE<9 - // Otherwise append directly - function( target, els ) { - var j = target.length, - i = 0; - // Can't trust NodeList.length - while ( (target[j++] = els[i++]) ) {} - target.length = j - 1; - } - }; -} - -function Sizzle( selector, context, results, seed ) { - var match, elem, m, nodeType, - // QSA vars - i, groups, old, nid, newContext, newSelector; - - if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) { - setDocument( context ); - } - - context = context || document; - results = results || []; - - if ( !selector || typeof selector !== "string" ) { - return results; - } - - if ( (nodeType = context.nodeType) !== 1 && nodeType !== 9 ) { - return []; - } - - if ( documentIsHTML && !seed ) { - - // Shortcuts - if ( (match = rquickExpr.exec( selector )) ) { - // Speed-up: Sizzle("#ID") - if ( (m = match[1]) ) { - if ( nodeType === 9 ) { - elem = context.getElementById( m ); - // Check parentNode to catch when Blackberry 4.6 returns - // nodes that are no longer in the document (jQuery #6963) - if ( elem && elem.parentNode ) { - // Handle the case where IE, Opera, and Webkit return items - // by name instead of ID - if ( elem.id === m ) { - results.push( elem ); - return results; - } - } else { - return results; - } - } else { - // Context is not a document - if ( context.ownerDocument && (elem = context.ownerDocument.getElementById( m )) && - contains( context, elem ) && elem.id === m ) { - results.push( elem ); - return results; - } - } - - // Speed-up: Sizzle("TAG") - } else if ( match[2] ) { - push.apply( results, context.getElementsByTagName( selector ) ); - return results; - - // Speed-up: Sizzle(".CLASS") - } else if ( (m = match[3]) && support.getElementsByClassName && context.getElementsByClassName ) { - push.apply( results, context.getElementsByClassName( m ) ); - return results; - } - } - - // QSA path - if ( support.qsa && (!rbuggyQSA || !rbuggyQSA.test( selector )) ) { - nid = old = expando; - newContext = context; - newSelector = nodeType === 9 && selector; - - // qSA works strangely on Element-rooted queries - // We can work around this by specifying an extra ID on the root - // and working up from there (Thanks to Andrew Dupont for the technique) - // IE 8 doesn't work on object elements - if ( nodeType === 1 && context.nodeName.toLowerCase() !== "object" ) { - groups = tokenize( selector ); - - if ( (old = context.getAttribute("id")) ) { - nid = old.replace( rescape, "\\$&" ); - } else { - context.setAttribute( "id", nid ); - } - nid = "[id='" + nid + "'] "; - - i = groups.length; - while ( i-- ) { - groups[i] = nid + toSelector( groups[i] ); - } - newContext = rsibling.test( selector ) && testContext( context.parentNode ) || context; - newSelector = groups.join(","); - } - - if ( newSelector ) { - try { - push.apply( results, - newContext.querySelectorAll( newSelector ) - ); - return results; - } catch(qsaError) { - } finally { - if ( !old ) { - context.removeAttribute("id"); - } - } - } - } - } - - // All others - return select( selector.replace( rtrim, "$1" ), context, results, seed ); -} - -/** - * Create key-value caches of limited size - * @returns {Function(string, Object)} Returns the Object data after storing it on itself with - * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength) - * deleting the oldest entry - */ -function createCache() { - var keys = []; - - function cache( key, value ) { - // Use (key + " ") to avoid collision with native prototype properties (see Issue #157) - if ( keys.push( key + " " ) > Expr.cacheLength ) { - // Only keep the most recent entries - delete cache[ keys.shift() ]; - } - return (cache[ key + " " ] = value); - } - return cache; -} - -/** - * Mark a function for special use by Sizzle - * @param {Function} fn The function to mark - */ -function markFunction( fn ) { - fn[ expando ] = true; - return fn; -} - -/** - * Support testing using an element - * @param {Function} fn Passed the created div and expects a boolean result - */ -function assert( fn ) { - var div = document.createElement("div"); - - try { - return !!fn( div ); - } catch (e) { - return false; - } finally { - // Remove from its parent by default - if ( div.parentNode ) { - div.parentNode.removeChild( div ); - } - // release memory in IE - div = null; - } -} - -/** - * Adds the same handler for all of the specified attrs - * @param {String} attrs Pipe-separated list of attributes - * @param {Function} handler The method that will be applied - */ -function addHandle( attrs, handler ) { - var arr = attrs.split("|"), - i = attrs.length; - - while ( i-- ) { - Expr.attrHandle[ arr[i] ] = handler; - } -} - -/** - * Checks document order of two siblings - * @param {Element} a - * @param {Element} b - * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b - */ -function siblingCheck( a, b ) { - var cur = b && a, - diff = cur && a.nodeType === 1 && b.nodeType === 1 && - ( ~b.sourceIndex || MAX_NEGATIVE ) - - ( ~a.sourceIndex || MAX_NEGATIVE ); - - // Use IE sourceIndex if available on both nodes - if ( diff ) { - return diff; - } - - // Check if b follows a - if ( cur ) { - while ( (cur = cur.nextSibling) ) { - if ( cur === b ) { - return -1; - } - } - } - - return a ? 1 : -1; -} - -/** - * Returns a function to use in pseudos for input types - * @param {String} type - */ -function createInputPseudo( type ) { - return function( elem ) { - var name = elem.nodeName.toLowerCase(); - return name === "input" && elem.type === type; - }; -} - -/** - * Returns a function to use in pseudos for buttons - * @param {String} type - */ -function createButtonPseudo( type ) { - return function( elem ) { - var name = elem.nodeName.toLowerCase(); - return (name === "input" || name === "button") && elem.type === type; - }; -} - -/** - * Returns a function to use in pseudos for positionals - * @param {Function} fn - */ -function createPositionalPseudo( fn ) { - return markFunction(function( argument ) { - argument = +argument; - return markFunction(function( seed, matches ) { - var j, - matchIndexes = fn( [], seed.length, argument ), - i = matchIndexes.length; - - // Match elements found at the specified indexes - while ( i-- ) { - if ( seed[ (j = matchIndexes[i]) ] ) { - seed[j] = !(matches[j] = seed[j]); - } - } - }); - }); -} - -/** - * Checks a node for validity as a Sizzle context - * @param {Element|Object=} context - * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value - */ -function testContext( context ) { - return context && typeof context.getElementsByTagName !== strundefined && context; -} - -// Expose support vars for convenience -support = Sizzle.support = {}; - -/** - * Detects XML nodes - * @param {Element|Object} elem An element or a document - * @returns {Boolean} True iff elem is a non-HTML XML node - */ -isXML = Sizzle.isXML = function( elem ) { - // documentElement is verified for cases where it doesn't yet exist - // (such as loading iframes in IE - #4833) - var documentElement = elem && (elem.ownerDocument || elem).documentElement; - return documentElement ? documentElement.nodeName !== "HTML" : false; -}; - -/** - * Sets document-related variables once based on the current document - * @param {Element|Object} [doc] An element or document object to use to set the document - * @returns {Object} Returns the current document - */ -setDocument = Sizzle.setDocument = function( node ) { - var hasCompare, - doc = node ? node.ownerDocument || node : preferredDoc, - parent = doc.defaultView; - - // If no document and documentElement is available, return - if ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) { - return document; - } - - // Set our document - document = doc; - docElem = doc.documentElement; - - // Support tests - documentIsHTML = !isXML( doc ); - - // Support: IE>8 - // If iframe document is assigned to "document" variable and if iframe has been reloaded, - // IE will throw "permission denied" error when accessing "document" variable, see jQuery #13936 - // IE6-8 do not support the defaultView property so parent will be undefined - if ( parent && parent !== parent.top ) { - // IE11 does not have attachEvent, so all must suffer - if ( parent.addEventListener ) { - parent.addEventListener( "unload", function() { - setDocument(); - }, false ); - } else if ( parent.attachEvent ) { - parent.attachEvent( "onunload", function() { - setDocument(); - }); - } - } - - /* Attributes - ---------------------------------------------------------------------- */ - - // Support: IE<8 - // Verify that getAttribute really returns attributes and not properties (excepting IE8 booleans) - support.attributes = assert(function( div ) { - div.className = "i"; - return !div.getAttribute("className"); - }); - - /* getElement(s)By* - ---------------------------------------------------------------------- */ - - // Check if getElementsByTagName("*") returns only elements - support.getElementsByTagName = assert(function( div ) { - div.appendChild( doc.createComment("") ); - return !div.getElementsByTagName("*").length; - }); - - // Check if getElementsByClassName can be trusted - support.getElementsByClassName = rnative.test( doc.getElementsByClassName ) && assert(function( div ) { - div.innerHTML = "
    "; - - // Support: Safari<4 - // Catch class over-caching - div.firstChild.className = "i"; - // Support: Opera<10 - // Catch gEBCN failure to find non-leading classes - return div.getElementsByClassName("i").length === 2; - }); - - // Support: IE<10 - // Check if getElementById returns elements by name - // The broken getElementById methods don't pick up programatically-set names, - // so use a roundabout getElementsByName test - support.getById = assert(function( div ) { - docElem.appendChild( div ).id = expando; - return !doc.getElementsByName || !doc.getElementsByName( expando ).length; - }); - - // ID find and filter - if ( support.getById ) { - Expr.find["ID"] = function( id, context ) { - if ( typeof context.getElementById !== strundefined && documentIsHTML ) { - var m = context.getElementById( id ); - // Check parentNode to catch when Blackberry 4.6 returns - // nodes that are no longer in the document #6963 - return m && m.parentNode ? [ m ] : []; - } - }; - Expr.filter["ID"] = function( id ) { - var attrId = id.replace( runescape, funescape ); - return function( elem ) { - return elem.getAttribute("id") === attrId; - }; - }; - } else { - // Support: IE6/7 - // getElementById is not reliable as a find shortcut - delete Expr.find["ID"]; - - Expr.filter["ID"] = function( id ) { - var attrId = id.replace( runescape, funescape ); - return function( elem ) { - var node = typeof elem.getAttributeNode !== strundefined && elem.getAttributeNode("id"); - return node && node.value === attrId; - }; - }; - } - - // Tag - Expr.find["TAG"] = support.getElementsByTagName ? - function( tag, context ) { - if ( typeof context.getElementsByTagName !== strundefined ) { - return context.getElementsByTagName( tag ); - } - } : - function( tag, context ) { - var elem, - tmp = [], - i = 0, - results = context.getElementsByTagName( tag ); - - // Filter out possible comments - if ( tag === "*" ) { - while ( (elem = results[i++]) ) { - if ( elem.nodeType === 1 ) { - tmp.push( elem ); - } - } - - return tmp; - } - return results; - }; - - // Class - Expr.find["CLASS"] = support.getElementsByClassName && function( className, context ) { - if ( typeof context.getElementsByClassName !== strundefined && documentIsHTML ) { - return context.getElementsByClassName( className ); - } - }; - - /* QSA/matchesSelector - ---------------------------------------------------------------------- */ - - // QSA and matchesSelector support - - // matchesSelector(:active) reports false when true (IE9/Opera 11.5) - rbuggyMatches = []; - - // qSa(:focus) reports false when true (Chrome 21) - // We allow this because of a bug in IE8/9 that throws an error - // whenever `document.activeElement` is accessed on an iframe - // So, we allow :focus to pass through QSA all the time to avoid the IE error - // See http://bugs.jquery.com/ticket/13378 - rbuggyQSA = []; - - if ( (support.qsa = rnative.test( doc.querySelectorAll )) ) { - // Build QSA regex - // Regex strategy adopted from Diego Perini - assert(function( div ) { - // Select is set to empty string on purpose - // This is to test IE's treatment of not explicitly - // setting a boolean content attribute, - // since its presence should be enough - // http://bugs.jquery.com/ticket/12359 - div.innerHTML = ""; - - // Support: IE8, Opera 11-12.16 - // Nothing should be selected when empty strings follow ^= or $= or *= - // The test attribute must be unknown in Opera but "safe" for WinRT - // http://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section - if ( div.querySelectorAll("[msallowclip^='']").length ) { - rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" ); - } - - // Support: IE8 - // Boolean attributes and "value" are not treated correctly - if ( !div.querySelectorAll("[selected]").length ) { - rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" ); - } - - // Webkit/Opera - :checked should return selected option elements - // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked - // IE8 throws error here and will not see later tests - if ( !div.querySelectorAll(":checked").length ) { - rbuggyQSA.push(":checked"); - } - }); - - assert(function( div ) { - // Support: Windows 8 Native Apps - // The type and name attributes are restricted during .innerHTML assignment - var input = doc.createElement("input"); - input.setAttribute( "type", "hidden" ); - div.appendChild( input ).setAttribute( "name", "D" ); - - // Support: IE8 - // Enforce case-sensitivity of name attribute - if ( div.querySelectorAll("[name=d]").length ) { - rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" ); - } - - // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled) - // IE8 throws error here and will not see later tests - if ( !div.querySelectorAll(":enabled").length ) { - rbuggyQSA.push( ":enabled", ":disabled" ); - } - - // Opera 10-11 does not throw on post-comma invalid pseudos - div.querySelectorAll("*,:x"); - rbuggyQSA.push(",.*:"); - }); - } - - if ( (support.matchesSelector = rnative.test( (matches = docElem.matches || - docElem.webkitMatchesSelector || - docElem.mozMatchesSelector || - docElem.oMatchesSelector || - docElem.msMatchesSelector) )) ) { - - assert(function( div ) { - // Check to see if it's possible to do matchesSelector - // on a disconnected node (IE 9) - support.disconnectedMatch = matches.call( div, "div" ); - - // This should fail with an exception - // Gecko does not error, returns false instead - matches.call( div, "[s!='']:x" ); - rbuggyMatches.push( "!=", pseudos ); - }); - } - - rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join("|") ); - rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join("|") ); - - /* Contains - ---------------------------------------------------------------------- */ - hasCompare = rnative.test( docElem.compareDocumentPosition ); - - // Element contains another - // Purposefully does not implement inclusive descendent - // As in, an element does not contain itself - contains = hasCompare || rnative.test( docElem.contains ) ? - function( a, b ) { - var adown = a.nodeType === 9 ? a.documentElement : a, - bup = b && b.parentNode; - return a === bup || !!( bup && bup.nodeType === 1 && ( - adown.contains ? - adown.contains( bup ) : - a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16 - )); - } : - function( a, b ) { - if ( b ) { - while ( (b = b.parentNode) ) { - if ( b === a ) { - return true; - } - } - } - return false; - }; - - /* Sorting - ---------------------------------------------------------------------- */ - - // Document order sorting - sortOrder = hasCompare ? - function( a, b ) { - - // Flag for duplicate removal - if ( a === b ) { - hasDuplicate = true; - return 0; - } - - // Sort on method existence if only one input has compareDocumentPosition - var compare = !a.compareDocumentPosition - !b.compareDocumentPosition; - if ( compare ) { - return compare; - } - - // Calculate position if both inputs belong to the same document - compare = ( a.ownerDocument || a ) === ( b.ownerDocument || b ) ? - a.compareDocumentPosition( b ) : - - // Otherwise we know they are disconnected - 1; - - // Disconnected nodes - if ( compare & 1 || - (!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) { - - // Choose the first element that is related to our preferred document - if ( a === doc || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) { - return -1; - } - if ( b === doc || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) { - return 1; - } - - // Maintain original order - return sortInput ? - ( indexOf.call( sortInput, a ) - indexOf.call( sortInput, b ) ) : - 0; - } - - return compare & 4 ? -1 : 1; - } : - function( a, b ) { - // Exit early if the nodes are identical - if ( a === b ) { - hasDuplicate = true; - return 0; - } - - var cur, - i = 0, - aup = a.parentNode, - bup = b.parentNode, - ap = [ a ], - bp = [ b ]; - - // Parentless nodes are either documents or disconnected - if ( !aup || !bup ) { - return a === doc ? -1 : - b === doc ? 1 : - aup ? -1 : - bup ? 1 : - sortInput ? - ( indexOf.call( sortInput, a ) - indexOf.call( sortInput, b ) ) : - 0; - - // If the nodes are siblings, we can do a quick check - } else if ( aup === bup ) { - return siblingCheck( a, b ); - } - - // Otherwise we need full lists of their ancestors for comparison - cur = a; - while ( (cur = cur.parentNode) ) { - ap.unshift( cur ); - } - cur = b; - while ( (cur = cur.parentNode) ) { - bp.unshift( cur ); - } - - // Walk down the tree looking for a discrepancy - while ( ap[i] === bp[i] ) { - i++; - } - - return i ? - // Do a sibling check if the nodes have a common ancestor - siblingCheck( ap[i], bp[i] ) : - - // Otherwise nodes in our document sort first - ap[i] === preferredDoc ? -1 : - bp[i] === preferredDoc ? 1 : - 0; - }; - - return doc; -}; - -Sizzle.matches = function( expr, elements ) { - return Sizzle( expr, null, null, elements ); -}; - -Sizzle.matchesSelector = function( elem, expr ) { - // Set document vars if needed - if ( ( elem.ownerDocument || elem ) !== document ) { - setDocument( elem ); - } - - // Make sure that attribute selectors are quoted - expr = expr.replace( rattributeQuotes, "='$1']" ); - - if ( support.matchesSelector && documentIsHTML && - ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) && - ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) { - - try { - var ret = matches.call( elem, expr ); - - // IE 9's matchesSelector returns false on disconnected nodes - if ( ret || support.disconnectedMatch || - // As well, disconnected nodes are said to be in a document - // fragment in IE 9 - elem.document && elem.document.nodeType !== 11 ) { - return ret; - } - } catch(e) {} - } - - return Sizzle( expr, document, null, [ elem ] ).length > 0; -}; - -Sizzle.contains = function( context, elem ) { - // Set document vars if needed - if ( ( context.ownerDocument || context ) !== document ) { - setDocument( context ); - } - return contains( context, elem ); -}; - -Sizzle.attr = function( elem, name ) { - // Set document vars if needed - if ( ( elem.ownerDocument || elem ) !== document ) { - setDocument( elem ); - } - - var fn = Expr.attrHandle[ name.toLowerCase() ], - // Don't get fooled by Object.prototype properties (jQuery #13807) - val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ? - fn( elem, name, !documentIsHTML ) : - undefined; - - return val !== undefined ? - val : - support.attributes || !documentIsHTML ? - elem.getAttribute( name ) : - (val = elem.getAttributeNode(name)) && val.specified ? - val.value : - null; -}; - -Sizzle.error = function( msg ) { - throw new Error( "Syntax error, unrecognized expression: " + msg ); -}; - -/** - * Document sorting and removing duplicates - * @param {ArrayLike} results - */ -Sizzle.uniqueSort = function( results ) { - var elem, - duplicates = [], - j = 0, - i = 0; - - // Unless we *know* we can detect duplicates, assume their presence - hasDuplicate = !support.detectDuplicates; - sortInput = !support.sortStable && results.slice( 0 ); - results.sort( sortOrder ); - - if ( hasDuplicate ) { - while ( (elem = results[i++]) ) { - if ( elem === results[ i ] ) { - j = duplicates.push( i ); - } - } - while ( j-- ) { - results.splice( duplicates[ j ], 1 ); - } - } - - // Clear input after sorting to release objects - // See https://github.com/jquery/sizzle/pull/225 - sortInput = null; - - return results; -}; - -/** - * Utility function for retrieving the text value of an array of DOM nodes - * @param {Array|Element} elem - */ -getText = Sizzle.getText = function( elem ) { - var node, - ret = "", - i = 0, - nodeType = elem.nodeType; - - if ( !nodeType ) { - // If no nodeType, this is expected to be an array - while ( (node = elem[i++]) ) { - // Do not traverse comment nodes - ret += getText( node ); - } - } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) { - // Use textContent for elements - // innerText usage removed for consistency of new lines (jQuery #11153) - if ( typeof elem.textContent === "string" ) { - return elem.textContent; - } else { - // Traverse its children - for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { - ret += getText( elem ); - } - } - } else if ( nodeType === 3 || nodeType === 4 ) { - return elem.nodeValue; - } - // Do not include comment or processing instruction nodes - - return ret; -}; - -Expr = Sizzle.selectors = { - - // Can be adjusted by the user - cacheLength: 50, - - createPseudo: markFunction, - - match: matchExpr, - - attrHandle: {}, - - find: {}, - - relative: { - ">": { dir: "parentNode", first: true }, - " ": { dir: "parentNode" }, - "+": { dir: "previousSibling", first: true }, - "~": { dir: "previousSibling" } - }, - - preFilter: { - "ATTR": function( match ) { - match[1] = match[1].replace( runescape, funescape ); - - // Move the given value to match[3] whether quoted or unquoted - match[3] = ( match[3] || match[4] || match[5] || "" ).replace( runescape, funescape ); - - if ( match[2] === "~=" ) { - match[3] = " " + match[3] + " "; - } - - return match.slice( 0, 4 ); - }, - - "CHILD": function( match ) { - /* matches from matchExpr["CHILD"] - 1 type (only|nth|...) - 2 what (child|of-type) - 3 argument (even|odd|\d*|\d*n([+-]\d+)?|...) - 4 xn-component of xn+y argument ([+-]?\d*n|) - 5 sign of xn-component - 6 x of xn-component - 7 sign of y-component - 8 y of y-component - */ - match[1] = match[1].toLowerCase(); - - if ( match[1].slice( 0, 3 ) === "nth" ) { - // nth-* requires argument - if ( !match[3] ) { - Sizzle.error( match[0] ); - } - - // numeric x and y parameters for Expr.filter.CHILD - // remember that false/true cast respectively to 0/1 - match[4] = +( match[4] ? match[5] + (match[6] || 1) : 2 * ( match[3] === "even" || match[3] === "odd" ) ); - match[5] = +( ( match[7] + match[8] ) || match[3] === "odd" ); - - // other types prohibit arguments - } else if ( match[3] ) { - Sizzle.error( match[0] ); - } - - return match; - }, - - "PSEUDO": function( match ) { - var excess, - unquoted = !match[6] && match[2]; - - if ( matchExpr["CHILD"].test( match[0] ) ) { - return null; - } - - // Accept quoted arguments as-is - if ( match[3] ) { - match[2] = match[4] || match[5] || ""; - - // Strip excess characters from unquoted arguments - } else if ( unquoted && rpseudo.test( unquoted ) && - // Get excess from tokenize (recursively) - (excess = tokenize( unquoted, true )) && - // advance to the next closing parenthesis - (excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) { - - // excess is a negative index - match[0] = match[0].slice( 0, excess ); - match[2] = unquoted.slice( 0, excess ); - } - - // Return only captures needed by the pseudo filter method (type and argument) - return match.slice( 0, 3 ); - } - }, - - filter: { - - "TAG": function( nodeNameSelector ) { - var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase(); - return nodeNameSelector === "*" ? - function() { return true; } : - function( elem ) { - return elem.nodeName && elem.nodeName.toLowerCase() === nodeName; - }; - }, - - "CLASS": function( className ) { - var pattern = classCache[ className + " " ]; - - return pattern || - (pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) && - classCache( className, function( elem ) { - return pattern.test( typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== strundefined && elem.getAttribute("class") || "" ); - }); - }, - - "ATTR": function( name, operator, check ) { - return function( elem ) { - var result = Sizzle.attr( elem, name ); - - if ( result == null ) { - return operator === "!="; - } - if ( !operator ) { - return true; - } - - result += ""; - - return operator === "=" ? result === check : - operator === "!=" ? result !== check : - operator === "^=" ? check && result.indexOf( check ) === 0 : - operator === "*=" ? check && result.indexOf( check ) > -1 : - operator === "$=" ? check && result.slice( -check.length ) === check : - operator === "~=" ? ( " " + result + " " ).indexOf( check ) > -1 : - operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" : - false; - }; - }, - - "CHILD": function( type, what, argument, first, last ) { - var simple = type.slice( 0, 3 ) !== "nth", - forward = type.slice( -4 ) !== "last", - ofType = what === "of-type"; - - return first === 1 && last === 0 ? - - // Shortcut for :nth-*(n) - function( elem ) { - return !!elem.parentNode; - } : - - function( elem, context, xml ) { - var cache, outerCache, node, diff, nodeIndex, start, - dir = simple !== forward ? "nextSibling" : "previousSibling", - parent = elem.parentNode, - name = ofType && elem.nodeName.toLowerCase(), - useCache = !xml && !ofType; - - if ( parent ) { - - // :(first|last|only)-(child|of-type) - if ( simple ) { - while ( dir ) { - node = elem; - while ( (node = node[ dir ]) ) { - if ( ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1 ) { - return false; - } - } - // Reverse direction for :only-* (if we haven't yet done so) - start = dir = type === "only" && !start && "nextSibling"; - } - return true; - } - - start = [ forward ? parent.firstChild : parent.lastChild ]; - - // non-xml :nth-child(...) stores cache data on `parent` - if ( forward && useCache ) { - // Seek `elem` from a previously-cached index - outerCache = parent[ expando ] || (parent[ expando ] = {}); - cache = outerCache[ type ] || []; - nodeIndex = cache[0] === dirruns && cache[1]; - diff = cache[0] === dirruns && cache[2]; - node = nodeIndex && parent.childNodes[ nodeIndex ]; - - while ( (node = ++nodeIndex && node && node[ dir ] || - - // Fallback to seeking `elem` from the start - (diff = nodeIndex = 0) || start.pop()) ) { - - // When found, cache indexes on `parent` and break - if ( node.nodeType === 1 && ++diff && node === elem ) { - outerCache[ type ] = [ dirruns, nodeIndex, diff ]; - break; - } - } - - // Use previously-cached element index if available - } else if ( useCache && (cache = (elem[ expando ] || (elem[ expando ] = {}))[ type ]) && cache[0] === dirruns ) { - diff = cache[1]; - - // xml :nth-child(...) or :nth-last-child(...) or :nth(-last)?-of-type(...) - } else { - // Use the same loop as above to seek `elem` from the start - while ( (node = ++nodeIndex && node && node[ dir ] || - (diff = nodeIndex = 0) || start.pop()) ) { - - if ( ( ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1 ) && ++diff ) { - // Cache the index of each encountered element - if ( useCache ) { - (node[ expando ] || (node[ expando ] = {}))[ type ] = [ dirruns, diff ]; - } - - if ( node === elem ) { - break; - } - } - } - } - - // Incorporate the offset, then check against cycle size - diff -= last; - return diff === first || ( diff % first === 0 && diff / first >= 0 ); - } - }; - }, - - "PSEUDO": function( pseudo, argument ) { - // pseudo-class names are case-insensitive - // http://www.w3.org/TR/selectors/#pseudo-classes - // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters - // Remember that setFilters inherits from pseudos - var args, - fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] || - Sizzle.error( "unsupported pseudo: " + pseudo ); - - // The user may use createPseudo to indicate that - // arguments are needed to create the filter function - // just as Sizzle does - if ( fn[ expando ] ) { - return fn( argument ); - } - - // But maintain support for old signatures - if ( fn.length > 1 ) { - args = [ pseudo, pseudo, "", argument ]; - return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ? - markFunction(function( seed, matches ) { - var idx, - matched = fn( seed, argument ), - i = matched.length; - while ( i-- ) { - idx = indexOf.call( seed, matched[i] ); - seed[ idx ] = !( matches[ idx ] = matched[i] ); - } - }) : - function( elem ) { - return fn( elem, 0, args ); - }; - } - - return fn; - } - }, - - pseudos: { - // Potentially complex pseudos - "not": markFunction(function( selector ) { - // Trim the selector passed to compile - // to avoid treating leading and trailing - // spaces as combinators - var input = [], - results = [], - matcher = compile( selector.replace( rtrim, "$1" ) ); - - return matcher[ expando ] ? - markFunction(function( seed, matches, context, xml ) { - var elem, - unmatched = matcher( seed, null, xml, [] ), - i = seed.length; - - // Match elements unmatched by `matcher` - while ( i-- ) { - if ( (elem = unmatched[i]) ) { - seed[i] = !(matches[i] = elem); - } - } - }) : - function( elem, context, xml ) { - input[0] = elem; - matcher( input, null, xml, results ); - return !results.pop(); - }; - }), - - "has": markFunction(function( selector ) { - return function( elem ) { - return Sizzle( selector, elem ).length > 0; - }; - }), - - "contains": markFunction(function( text ) { - return function( elem ) { - return ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1; - }; - }), - - // "Whether an element is represented by a :lang() selector - // is based solely on the element's language value - // being equal to the identifier C, - // or beginning with the identifier C immediately followed by "-". - // The matching of C against the element's language value is performed case-insensitively. - // The identifier C does not have to be a valid language name." - // http://www.w3.org/TR/selectors/#lang-pseudo - "lang": markFunction( function( lang ) { - // lang value must be a valid identifier - if ( !ridentifier.test(lang || "") ) { - Sizzle.error( "unsupported lang: " + lang ); - } - lang = lang.replace( runescape, funescape ).toLowerCase(); - return function( elem ) { - var elemLang; - do { - if ( (elemLang = documentIsHTML ? - elem.lang : - elem.getAttribute("xml:lang") || elem.getAttribute("lang")) ) { - - elemLang = elemLang.toLowerCase(); - return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0; - } - } while ( (elem = elem.parentNode) && elem.nodeType === 1 ); - return false; - }; - }), - - // Miscellaneous - "target": function( elem ) { - var hash = window.location && window.location.hash; - return hash && hash.slice( 1 ) === elem.id; - }, - - "root": function( elem ) { - return elem === docElem; - }, - - "focus": function( elem ) { - return elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex); - }, - - // Boolean properties - "enabled": function( elem ) { - return elem.disabled === false; - }, - - "disabled": function( elem ) { - return elem.disabled === true; - }, - - "checked": function( elem ) { - // In CSS3, :checked should return both checked and selected elements - // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked - var nodeName = elem.nodeName.toLowerCase(); - return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected); - }, - - "selected": function( elem ) { - // Accessing this property makes selected-by-default - // options in Safari work properly - if ( elem.parentNode ) { - elem.parentNode.selectedIndex; - } - - return elem.selected === true; - }, - - // Contents - "empty": function( elem ) { - // http://www.w3.org/TR/selectors/#empty-pseudo - // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5), - // but not by others (comment: 8; processing instruction: 7; etc.) - // nodeType < 6 works because attributes (2) do not appear as children - for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { - if ( elem.nodeType < 6 ) { - return false; - } - } - return true; - }, - - "parent": function( elem ) { - return !Expr.pseudos["empty"]( elem ); - }, - - // Element/input types - "header": function( elem ) { - return rheader.test( elem.nodeName ); - }, - - "input": function( elem ) { - return rinputs.test( elem.nodeName ); - }, - - "button": function( elem ) { - var name = elem.nodeName.toLowerCase(); - return name === "input" && elem.type === "button" || name === "button"; - }, - - "text": function( elem ) { - var attr; - return elem.nodeName.toLowerCase() === "input" && - elem.type === "text" && - - // Support: IE<8 - // New HTML5 attribute values (e.g., "search") appear with elem.type === "text" - ( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === "text" ); - }, - - // Position-in-collection - "first": createPositionalPseudo(function() { - return [ 0 ]; - }), - - "last": createPositionalPseudo(function( matchIndexes, length ) { - return [ length - 1 ]; - }), - - "eq": createPositionalPseudo(function( matchIndexes, length, argument ) { - return [ argument < 0 ? argument + length : argument ]; - }), - - "even": createPositionalPseudo(function( matchIndexes, length ) { - var i = 0; - for ( ; i < length; i += 2 ) { - matchIndexes.push( i ); - } - return matchIndexes; - }), - - "odd": createPositionalPseudo(function( matchIndexes, length ) { - var i = 1; - for ( ; i < length; i += 2 ) { - matchIndexes.push( i ); - } - return matchIndexes; - }), - - "lt": createPositionalPseudo(function( matchIndexes, length, argument ) { - var i = argument < 0 ? argument + length : argument; - for ( ; --i >= 0; ) { - matchIndexes.push( i ); - } - return matchIndexes; - }), - - "gt": createPositionalPseudo(function( matchIndexes, length, argument ) { - var i = argument < 0 ? argument + length : argument; - for ( ; ++i < length; ) { - matchIndexes.push( i ); - } - return matchIndexes; - }) - } -}; - -Expr.pseudos["nth"] = Expr.pseudos["eq"]; - -// Add button/input type pseudos -for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) { - Expr.pseudos[ i ] = createInputPseudo( i ); -} -for ( i in { submit: true, reset: true } ) { - Expr.pseudos[ i ] = createButtonPseudo( i ); -} - -// Easy API for creating new setFilters -function setFilters() {} -setFilters.prototype = Expr.filters = Expr.pseudos; -Expr.setFilters = new setFilters(); - -tokenize = Sizzle.tokenize = function( selector, parseOnly ) { - var matched, match, tokens, type, - soFar, groups, preFilters, - cached = tokenCache[ selector + " " ]; - - if ( cached ) { - return parseOnly ? 0 : cached.slice( 0 ); - } - - soFar = selector; - groups = []; - preFilters = Expr.preFilter; - - while ( soFar ) { - - // Comma and first run - if ( !matched || (match = rcomma.exec( soFar )) ) { - if ( match ) { - // Don't consume trailing commas as valid - soFar = soFar.slice( match[0].length ) || soFar; - } - groups.push( (tokens = []) ); - } - - matched = false; - - // Combinators - if ( (match = rcombinators.exec( soFar )) ) { - matched = match.shift(); - tokens.push({ - value: matched, - // Cast descendant combinators to space - type: match[0].replace( rtrim, " " ) - }); - soFar = soFar.slice( matched.length ); - } - - // Filters - for ( type in Expr.filter ) { - if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] || - (match = preFilters[ type ]( match ))) ) { - matched = match.shift(); - tokens.push({ - value: matched, - type: type, - matches: match - }); - soFar = soFar.slice( matched.length ); - } - } - - if ( !matched ) { - break; - } - } - - // Return the length of the invalid excess - // if we're just parsing - // Otherwise, throw an error or return tokens - return parseOnly ? - soFar.length : - soFar ? - Sizzle.error( selector ) : - // Cache the tokens - tokenCache( selector, groups ).slice( 0 ); -}; - -function toSelector( tokens ) { - var i = 0, - len = tokens.length, - selector = ""; - for ( ; i < len; i++ ) { - selector += tokens[i].value; - } - return selector; -} - -function addCombinator( matcher, combinator, base ) { - var dir = combinator.dir, - checkNonElements = base && dir === "parentNode", - doneName = done++; - - return combinator.first ? - // Check against closest ancestor/preceding element - function( elem, context, xml ) { - while ( (elem = elem[ dir ]) ) { - if ( elem.nodeType === 1 || checkNonElements ) { - return matcher( elem, context, xml ); - } - } - } : - - // Check against all ancestor/preceding elements - function( elem, context, xml ) { - var oldCache, outerCache, - newCache = [ dirruns, doneName ]; - - // We can't set arbitrary data on XML nodes, so they don't benefit from dir caching - if ( xml ) { - while ( (elem = elem[ dir ]) ) { - if ( elem.nodeType === 1 || checkNonElements ) { - if ( matcher( elem, context, xml ) ) { - return true; - } - } - } - } else { - while ( (elem = elem[ dir ]) ) { - if ( elem.nodeType === 1 || checkNonElements ) { - outerCache = elem[ expando ] || (elem[ expando ] = {}); - if ( (oldCache = outerCache[ dir ]) && - oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) { - - // Assign to newCache so results back-propagate to previous elements - return (newCache[ 2 ] = oldCache[ 2 ]); - } else { - // Reuse newcache so results back-propagate to previous elements - outerCache[ dir ] = newCache; - - // A match means we're done; a fail means we have to keep checking - if ( (newCache[ 2 ] = matcher( elem, context, xml )) ) { - return true; - } - } - } - } - } - }; -} - -function elementMatcher( matchers ) { - return matchers.length > 1 ? - function( elem, context, xml ) { - var i = matchers.length; - while ( i-- ) { - if ( !matchers[i]( elem, context, xml ) ) { - return false; - } - } - return true; - } : - matchers[0]; -} - -function multipleContexts( selector, contexts, results ) { - var i = 0, - len = contexts.length; - for ( ; i < len; i++ ) { - Sizzle( selector, contexts[i], results ); - } - return results; -} - -function condense( unmatched, map, filter, context, xml ) { - var elem, - newUnmatched = [], - i = 0, - len = unmatched.length, - mapped = map != null; - - for ( ; i < len; i++ ) { - if ( (elem = unmatched[i]) ) { - if ( !filter || filter( elem, context, xml ) ) { - newUnmatched.push( elem ); - if ( mapped ) { - map.push( i ); - } - } - } - } - - return newUnmatched; -} - -function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) { - if ( postFilter && !postFilter[ expando ] ) { - postFilter = setMatcher( postFilter ); - } - if ( postFinder && !postFinder[ expando ] ) { - postFinder = setMatcher( postFinder, postSelector ); - } - return markFunction(function( seed, results, context, xml ) { - var temp, i, elem, - preMap = [], - postMap = [], - preexisting = results.length, - - // Get initial elements from seed or context - elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ), - - // Prefilter to get matcher input, preserving a map for seed-results synchronization - matcherIn = preFilter && ( seed || !selector ) ? - condense( elems, preMap, preFilter, context, xml ) : - elems, - - matcherOut = matcher ? - // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results, - postFinder || ( seed ? preFilter : preexisting || postFilter ) ? - - // ...intermediate processing is necessary - [] : - - // ...otherwise use results directly - results : - matcherIn; - - // Find primary matches - if ( matcher ) { - matcher( matcherIn, matcherOut, context, xml ); - } - - // Apply postFilter - if ( postFilter ) { - temp = condense( matcherOut, postMap ); - postFilter( temp, [], context, xml ); - - // Un-match failing elements by moving them back to matcherIn - i = temp.length; - while ( i-- ) { - if ( (elem = temp[i]) ) { - matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem); - } - } - } - - if ( seed ) { - if ( postFinder || preFilter ) { - if ( postFinder ) { - // Get the final matcherOut by condensing this intermediate into postFinder contexts - temp = []; - i = matcherOut.length; - while ( i-- ) { - if ( (elem = matcherOut[i]) ) { - // Restore matcherIn since elem is not yet a final match - temp.push( (matcherIn[i] = elem) ); - } - } - postFinder( null, (matcherOut = []), temp, xml ); - } - - // Move matched elements from seed to results to keep them synchronized - i = matcherOut.length; - while ( i-- ) { - if ( (elem = matcherOut[i]) && - (temp = postFinder ? indexOf.call( seed, elem ) : preMap[i]) > -1 ) { - - seed[temp] = !(results[temp] = elem); - } - } - } - - // Add elements to results, through postFinder if defined - } else { - matcherOut = condense( - matcherOut === results ? - matcherOut.splice( preexisting, matcherOut.length ) : - matcherOut - ); - if ( postFinder ) { - postFinder( null, results, matcherOut, xml ); - } else { - push.apply( results, matcherOut ); - } - } - }); -} - -function matcherFromTokens( tokens ) { - var checkContext, matcher, j, - len = tokens.length, - leadingRelative = Expr.relative[ tokens[0].type ], - implicitRelative = leadingRelative || Expr.relative[" "], - i = leadingRelative ? 1 : 0, - - // The foundational matcher ensures that elements are reachable from top-level context(s) - matchContext = addCombinator( function( elem ) { - return elem === checkContext; - }, implicitRelative, true ), - matchAnyContext = addCombinator( function( elem ) { - return indexOf.call( checkContext, elem ) > -1; - }, implicitRelative, true ), - matchers = [ function( elem, context, xml ) { - return ( !leadingRelative && ( xml || context !== outermostContext ) ) || ( - (checkContext = context).nodeType ? - matchContext( elem, context, xml ) : - matchAnyContext( elem, context, xml ) ); - } ]; - - for ( ; i < len; i++ ) { - if ( (matcher = Expr.relative[ tokens[i].type ]) ) { - matchers = [ addCombinator(elementMatcher( matchers ), matcher) ]; - } else { - matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches ); - - // Return special upon seeing a positional matcher - if ( matcher[ expando ] ) { - // Find the next relative operator (if any) for proper handling - j = ++i; - for ( ; j < len; j++ ) { - if ( Expr.relative[ tokens[j].type ] ) { - break; - } - } - return setMatcher( - i > 1 && elementMatcher( matchers ), - i > 1 && toSelector( - // If the preceding token was a descendant combinator, insert an implicit any-element `*` - tokens.slice( 0, i - 1 ).concat({ value: tokens[ i - 2 ].type === " " ? "*" : "" }) - ).replace( rtrim, "$1" ), - matcher, - i < j && matcherFromTokens( tokens.slice( i, j ) ), - j < len && matcherFromTokens( (tokens = tokens.slice( j )) ), - j < len && toSelector( tokens ) - ); - } - matchers.push( matcher ); - } - } - - return elementMatcher( matchers ); -} - -function matcherFromGroupMatchers( elementMatchers, setMatchers ) { - var bySet = setMatchers.length > 0, - byElement = elementMatchers.length > 0, - superMatcher = function( seed, context, xml, results, outermost ) { - var elem, j, matcher, - matchedCount = 0, - i = "0", - unmatched = seed && [], - setMatched = [], - contextBackup = outermostContext, - // We must always have either seed elements or outermost context - elems = seed || byElement && Expr.find["TAG"]( "*", outermost ), - // Use integer dirruns iff this is the outermost matcher - dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.random() || 0.1), - len = elems.length; - - if ( outermost ) { - outermostContext = context !== document && context; - } - - // Add elements passing elementMatchers directly to results - // Keep `i` a string if there are no elements so `matchedCount` will be "00" below - // Support: IE<9, Safari - // Tolerate NodeList properties (IE: "length"; Safari: ) matching elements by id - for ( ; i !== len && (elem = elems[i]) != null; i++ ) { - if ( byElement && elem ) { - j = 0; - while ( (matcher = elementMatchers[j++]) ) { - if ( matcher( elem, context, xml ) ) { - results.push( elem ); - break; - } - } - if ( outermost ) { - dirruns = dirrunsUnique; - } - } - - // Track unmatched elements for set filters - if ( bySet ) { - // They will have gone through all possible matchers - if ( (elem = !matcher && elem) ) { - matchedCount--; - } - - // Lengthen the array for every element, matched or not - if ( seed ) { - unmatched.push( elem ); - } - } - } - - // Apply set filters to unmatched elements - matchedCount += i; - if ( bySet && i !== matchedCount ) { - j = 0; - while ( (matcher = setMatchers[j++]) ) { - matcher( unmatched, setMatched, context, xml ); - } - - if ( seed ) { - // Reintegrate element matches to eliminate the need for sorting - if ( matchedCount > 0 ) { - while ( i-- ) { - if ( !(unmatched[i] || setMatched[i]) ) { - setMatched[i] = pop.call( results ); - } - } - } - - // Discard index placeholder values to get only actual matches - setMatched = condense( setMatched ); - } - - // Add matches to results - push.apply( results, setMatched ); - - // Seedless set matches succeeding multiple successful matchers stipulate sorting - if ( outermost && !seed && setMatched.length > 0 && - ( matchedCount + setMatchers.length ) > 1 ) { - - Sizzle.uniqueSort( results ); - } - } - - // Override manipulation of globals by nested matchers - if ( outermost ) { - dirruns = dirrunsUnique; - outermostContext = contextBackup; - } - - return unmatched; - }; - - return bySet ? - markFunction( superMatcher ) : - superMatcher; -} - -compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) { - var i, - setMatchers = [], - elementMatchers = [], - cached = compilerCache[ selector + " " ]; - - if ( !cached ) { - // Generate a function of recursive functions that can be used to check each element - if ( !match ) { - match = tokenize( selector ); - } - i = match.length; - while ( i-- ) { - cached = matcherFromTokens( match[i] ); - if ( cached[ expando ] ) { - setMatchers.push( cached ); - } else { - elementMatchers.push( cached ); - } - } - - // Cache the compiled function - cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) ); - - // Save selector and tokenization - cached.selector = selector; - } - return cached; -}; - -/** - * A low-level selection function that works with Sizzle's compiled - * selector functions - * @param {String|Function} selector A selector or a pre-compiled - * selector function built with Sizzle.compile - * @param {Element} context - * @param {Array} [results] - * @param {Array} [seed] A set of elements to match against - */ -select = Sizzle.select = function( selector, context, results, seed ) { - var i, tokens, token, type, find, - compiled = typeof selector === "function" && selector, - match = !seed && tokenize( (selector = compiled.selector || selector) ); - - results = results || []; - - // Try to minimize operations if there is no seed and only one group - if ( match.length === 1 ) { - - // Take a shortcut and set the context if the root selector is an ID - tokens = match[0] = match[0].slice( 0 ); - if ( tokens.length > 2 && (token = tokens[0]).type === "ID" && - support.getById && context.nodeType === 9 && documentIsHTML && - Expr.relative[ tokens[1].type ] ) { - - context = ( Expr.find["ID"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0]; - if ( !context ) { - return results; - - // Precompiled matchers will still verify ancestry, so step up a level - } else if ( compiled ) { - context = context.parentNode; - } - - selector = selector.slice( tokens.shift().value.length ); - } - - // Fetch a seed set for right-to-left matching - i = matchExpr["needsContext"].test( selector ) ? 0 : tokens.length; - while ( i-- ) { - token = tokens[i]; - - // Abort if we hit a combinator - if ( Expr.relative[ (type = token.type) ] ) { - break; - } - if ( (find = Expr.find[ type ]) ) { - // Search, expanding context for leading sibling combinators - if ( (seed = find( - token.matches[0].replace( runescape, funescape ), - rsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context - )) ) { - - // If seed is empty or no tokens remain, we can return early - tokens.splice( i, 1 ); - selector = seed.length && toSelector( tokens ); - if ( !selector ) { - push.apply( results, seed ); - return results; - } - - break; - } - } - } - } - - // Compile and execute a filtering function if one is not provided - // Provide `match` to avoid retokenization if we modified the selector above - ( compiled || compile( selector, match ) )( - seed, - context, - !documentIsHTML, - results, - rsibling.test( selector ) && testContext( context.parentNode ) || context - ); - return results; -}; - -// One-time assignments - -// Sort stability -support.sortStable = expando.split("").sort( sortOrder ).join("") === expando; - -// Support: Chrome<14 -// Always assume duplicates if they aren't passed to the comparison function -support.detectDuplicates = !!hasDuplicate; - -// Initialize against the default document -setDocument(); - -// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27) -// Detached nodes confoundingly follow *each other* -support.sortDetached = assert(function( div1 ) { - // Should return 1, but returns 4 (following) - return div1.compareDocumentPosition( document.createElement("div") ) & 1; -}); - -// Support: IE<8 -// Prevent attribute/property "interpolation" -// http://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx -if ( !assert(function( div ) { - div.innerHTML = "
    "; - return div.firstChild.getAttribute("href") === "#" ; -}) ) { - addHandle( "type|href|height|width", function( elem, name, isXML ) { - if ( !isXML ) { - return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 ); - } - }); -} - -// Support: IE<9 -// Use defaultValue in place of getAttribute("value") -if ( !support.attributes || !assert(function( div ) { - div.innerHTML = ""; - div.firstChild.setAttribute( "value", "" ); - return div.firstChild.getAttribute( "value" ) === ""; -}) ) { - addHandle( "value", function( elem, name, isXML ) { - if ( !isXML && elem.nodeName.toLowerCase() === "input" ) { - return elem.defaultValue; - } - }); -} - -// Support: IE<9 -// Use getAttributeNode to fetch booleans when getAttribute lies -if ( !assert(function( div ) { - return div.getAttribute("disabled") == null; -}) ) { - addHandle( booleans, function( elem, name, isXML ) { - var val; - if ( !isXML ) { - return elem[ name ] === true ? name.toLowerCase() : - (val = elem.getAttributeNode( name )) && val.specified ? - val.value : - null; - } - }); -} - -return Sizzle; - -})( window ); - - - -jQuery.find = Sizzle; -jQuery.expr = Sizzle.selectors; -jQuery.expr[":"] = jQuery.expr.pseudos; -jQuery.unique = Sizzle.uniqueSort; -jQuery.text = Sizzle.getText; -jQuery.isXMLDoc = Sizzle.isXML; -jQuery.contains = Sizzle.contains; - - - -var rneedsContext = jQuery.expr.match.needsContext; - -var rsingleTag = (/^<(\w+)\s*\/?>(?:<\/\1>|)$/); - - - -var risSimple = /^.[^:#\[\.,]*$/; - -// Implement the identical functionality for filter and not -function winnow( elements, qualifier, not ) { - if ( jQuery.isFunction( qualifier ) ) { - return jQuery.grep( elements, function( elem, i ) { - /* jshint -W018 */ - return !!qualifier.call( elem, i, elem ) !== not; - }); - - } - - if ( qualifier.nodeType ) { - return jQuery.grep( elements, function( elem ) { - return ( elem === qualifier ) !== not; - }); - - } - - if ( typeof qualifier === "string" ) { - if ( risSimple.test( qualifier ) ) { - return jQuery.filter( qualifier, elements, not ); - } - - qualifier = jQuery.filter( qualifier, elements ); - } - - return jQuery.grep( elements, function( elem ) { - return ( indexOf.call( qualifier, elem ) >= 0 ) !== not; - }); -} - -jQuery.filter = function( expr, elems, not ) { - var elem = elems[ 0 ]; - - if ( not ) { - expr = ":not(" + expr + ")"; - } - - return elems.length === 1 && elem.nodeType === 1 ? - jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [] : - jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) { - return elem.nodeType === 1; - })); -}; - -jQuery.fn.extend({ - find: function( selector ) { - var i, - len = this.length, - ret = [], - self = this; - - if ( typeof selector !== "string" ) { - return this.pushStack( jQuery( selector ).filter(function() { - for ( i = 0; i < len; i++ ) { - if ( jQuery.contains( self[ i ], this ) ) { - return true; - } - } - }) ); - } - - for ( i = 0; i < len; i++ ) { - jQuery.find( selector, self[ i ], ret ); - } - - // Needed because $( selector, context ) becomes $( context ).find( selector ) - ret = this.pushStack( len > 1 ? jQuery.unique( ret ) : ret ); - ret.selector = this.selector ? this.selector + " " + selector : selector; - return ret; - }, - filter: function( selector ) { - return this.pushStack( winnow(this, selector || [], false) ); - }, - not: function( selector ) { - return this.pushStack( winnow(this, selector || [], true) ); - }, - is: function( selector ) { - return !!winnow( - this, - - // If this is a positional/relative selector, check membership in the returned set - // so $("p:first").is("p:last") won't return true for a doc with two "p". - typeof selector === "string" && rneedsContext.test( selector ) ? - jQuery( selector ) : - selector || [], - false - ).length; - } -}); - - -// Initialize a jQuery object - - -// A central reference to the root jQuery(document) -var rootjQuery, - - // A simple way to check for HTML strings - // Prioritize #id over to avoid XSS via location.hash (#9521) - // Strict HTML recognition (#11290: must start with <) - rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/, - - init = jQuery.fn.init = function( selector, context ) { - var match, elem; - - // HANDLE: $(""), $(null), $(undefined), $(false) - if ( !selector ) { - return this; - } - - // Handle HTML strings - if ( typeof selector === "string" ) { - if ( selector[0] === "<" && selector[ selector.length - 1 ] === ">" && selector.length >= 3 ) { - // Assume that strings that start and end with <> are HTML and skip the regex check - match = [ null, selector, null ]; - - } else { - match = rquickExpr.exec( selector ); - } - - // Match html or make sure no context is specified for #id - if ( match && (match[1] || !context) ) { - - // HANDLE: $(html) -> $(array) - if ( match[1] ) { - context = context instanceof jQuery ? context[0] : context; - - // scripts is true for back-compat - // Intentionally let the error be thrown if parseHTML is not present - jQuery.merge( this, jQuery.parseHTML( - match[1], - context && context.nodeType ? context.ownerDocument || context : document, - true - ) ); - - // HANDLE: $(html, props) - if ( rsingleTag.test( match[1] ) && jQuery.isPlainObject( context ) ) { - for ( match in context ) { - // Properties of context are called as methods if possible - if ( jQuery.isFunction( this[ match ] ) ) { - this[ match ]( context[ match ] ); - - // ...and otherwise set as attributes - } else { - this.attr( match, context[ match ] ); - } - } - } - - return this; - - // HANDLE: $(#id) - } else { - elem = document.getElementById( match[2] ); - - // Check parentNode to catch when Blackberry 4.6 returns - // nodes that are no longer in the document #6963 - if ( elem && elem.parentNode ) { - // Inject the element directly into the jQuery object - this.length = 1; - this[0] = elem; - } - - this.context = document; - this.selector = selector; - return this; - } - - // HANDLE: $(expr, $(...)) - } else if ( !context || context.jquery ) { - return ( context || rootjQuery ).find( selector ); - - // HANDLE: $(expr, context) - // (which is just equivalent to: $(context).find(expr) - } else { - return this.constructor( context ).find( selector ); - } - - // HANDLE: $(DOMElement) - } else if ( selector.nodeType ) { - this.context = this[0] = selector; - this.length = 1; - return this; - - // HANDLE: $(function) - // Shortcut for document ready - } else if ( jQuery.isFunction( selector ) ) { - return typeof rootjQuery.ready !== "undefined" ? - rootjQuery.ready( selector ) : - // Execute immediately if ready is not present - selector( jQuery ); - } - - if ( selector.selector !== undefined ) { - this.selector = selector.selector; - this.context = selector.context; - } - - return jQuery.makeArray( selector, this ); - }; - -// Give the init function the jQuery prototype for later instantiation -init.prototype = jQuery.fn; - -// Initialize central reference -rootjQuery = jQuery( document ); - - -var rparentsprev = /^(?:parents|prev(?:Until|All))/, - // methods guaranteed to produce a unique set when starting from a unique set - guaranteedUnique = { - children: true, - contents: true, - next: true, - prev: true - }; - -jQuery.extend({ - dir: function( elem, dir, until ) { - var matched = [], - truncate = until !== undefined; - - while ( (elem = elem[ dir ]) && elem.nodeType !== 9 ) { - if ( elem.nodeType === 1 ) { - if ( truncate && jQuery( elem ).is( until ) ) { - break; - } - matched.push( elem ); - } - } - return matched; - }, - - sibling: function( n, elem ) { - var matched = []; - - for ( ; n; n = n.nextSibling ) { - if ( n.nodeType === 1 && n !== elem ) { - matched.push( n ); - } - } - - return matched; - } -}); - -jQuery.fn.extend({ - has: function( target ) { - var targets = jQuery( target, this ), - l = targets.length; - - return this.filter(function() { - var i = 0; - for ( ; i < l; i++ ) { - if ( jQuery.contains( this, targets[i] ) ) { - return true; - } - } - }); - }, - - closest: function( selectors, context ) { - var cur, - i = 0, - l = this.length, - matched = [], - pos = rneedsContext.test( selectors ) || typeof selectors !== "string" ? - jQuery( selectors, context || this.context ) : - 0; - - for ( ; i < l; i++ ) { - for ( cur = this[i]; cur && cur !== context; cur = cur.parentNode ) { - // Always skip document fragments - if ( cur.nodeType < 11 && (pos ? - pos.index(cur) > -1 : - - // Don't pass non-elements to Sizzle - cur.nodeType === 1 && - jQuery.find.matchesSelector(cur, selectors)) ) { - - matched.push( cur ); - break; - } - } - } - - return this.pushStack( matched.length > 1 ? jQuery.unique( matched ) : matched ); - }, - - // Determine the position of an element within - // the matched set of elements - index: function( elem ) { - - // No argument, return index in parent - if ( !elem ) { - return ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1; - } - - // index in selector - if ( typeof elem === "string" ) { - return indexOf.call( jQuery( elem ), this[ 0 ] ); - } - - // Locate the position of the desired element - return indexOf.call( this, - - // If it receives a jQuery object, the first element is used - elem.jquery ? elem[ 0 ] : elem - ); - }, - - add: function( selector, context ) { - return this.pushStack( - jQuery.unique( - jQuery.merge( this.get(), jQuery( selector, context ) ) - ) - ); - }, - - addBack: function( selector ) { - return this.add( selector == null ? - this.prevObject : this.prevObject.filter(selector) - ); - } -}); - -function sibling( cur, dir ) { - while ( (cur = cur[dir]) && cur.nodeType !== 1 ) {} - return cur; -} - -jQuery.each({ - parent: function( elem ) { - var parent = elem.parentNode; - return parent && parent.nodeType !== 11 ? parent : null; - }, - parents: function( elem ) { - return jQuery.dir( elem, "parentNode" ); - }, - parentsUntil: function( elem, i, until ) { - return jQuery.dir( elem, "parentNode", until ); - }, - next: function( elem ) { - return sibling( elem, "nextSibling" ); - }, - prev: function( elem ) { - return sibling( elem, "previousSibling" ); - }, - nextAll: function( elem ) { - return jQuery.dir( elem, "nextSibling" ); - }, - prevAll: function( elem ) { - return jQuery.dir( elem, "previousSibling" ); - }, - nextUntil: function( elem, i, until ) { - return jQuery.dir( elem, "nextSibling", until ); - }, - prevUntil: function( elem, i, until ) { - return jQuery.dir( elem, "previousSibling", until ); - }, - siblings: function( elem ) { - return jQuery.sibling( ( elem.parentNode || {} ).firstChild, elem ); - }, - children: function( elem ) { - return jQuery.sibling( elem.firstChild ); - }, - contents: function( elem ) { - return elem.contentDocument || jQuery.merge( [], elem.childNodes ); - } -}, function( name, fn ) { - jQuery.fn[ name ] = function( until, selector ) { - var matched = jQuery.map( this, fn, until ); - - if ( name.slice( -5 ) !== "Until" ) { - selector = until; - } - - if ( selector && typeof selector === "string" ) { - matched = jQuery.filter( selector, matched ); - } - - if ( this.length > 1 ) { - // Remove duplicates - if ( !guaranteedUnique[ name ] ) { - jQuery.unique( matched ); - } - - // Reverse order for parents* and prev-derivatives - if ( rparentsprev.test( name ) ) { - matched.reverse(); - } - } - - return this.pushStack( matched ); - }; -}); -var rnotwhite = (/\S+/g); - - - -// String to Object options format cache -var optionsCache = {}; - -// Convert String-formatted options into Object-formatted ones and store in cache -function createOptions( options ) { - var object = optionsCache[ options ] = {}; - jQuery.each( options.match( rnotwhite ) || [], function( _, flag ) { - object[ flag ] = true; - }); - return object; -} - -/* - * Create a callback list using the following parameters: - * - * options: an optional list of space-separated options that will change how - * the callback list behaves or a more traditional option object - * - * By default a callback list will act like an event callback list and can be - * "fired" multiple times. - * - * Possible options: - * - * once: will ensure the callback list can only be fired once (like a Deferred) - * - * memory: will keep track of previous values and will call any callback added - * after the list has been fired right away with the latest "memorized" - * values (like a Deferred) - * - * unique: will ensure a callback can only be added once (no duplicate in the list) - * - * stopOnFalse: interrupt callings when a callback returns false - * - */ -jQuery.Callbacks = function( options ) { - - // Convert options from String-formatted to Object-formatted if needed - // (we check in cache first) - options = typeof options === "string" ? - ( optionsCache[ options ] || createOptions( options ) ) : - jQuery.extend( {}, options ); - - var // Last fire value (for non-forgettable lists) - memory, - // Flag to know if list was already fired - fired, - // Flag to know if list is currently firing - firing, - // First callback to fire (used internally by add and fireWith) - firingStart, - // End of the loop when firing - firingLength, - // Index of currently firing callback (modified by remove if needed) - firingIndex, - // Actual callback list - list = [], - // Stack of fire calls for repeatable lists - stack = !options.once && [], - // Fire callbacks - fire = function( data ) { - memory = options.memory && data; - fired = true; - firingIndex = firingStart || 0; - firingStart = 0; - firingLength = list.length; - firing = true; - for ( ; list && firingIndex < firingLength; firingIndex++ ) { - if ( list[ firingIndex ].apply( data[ 0 ], data[ 1 ] ) === false && options.stopOnFalse ) { - memory = false; // To prevent further calls using add - break; - } - } - firing = false; - if ( list ) { - if ( stack ) { - if ( stack.length ) { - fire( stack.shift() ); - } - } else if ( memory ) { - list = []; - } else { - self.disable(); - } - } - }, - // Actual Callbacks object - self = { - // Add a callback or a collection of callbacks to the list - add: function() { - if ( list ) { - // First, we save the current length - var start = list.length; - (function add( args ) { - jQuery.each( args, function( _, arg ) { - var type = jQuery.type( arg ); - if ( type === "function" ) { - if ( !options.unique || !self.has( arg ) ) { - list.push( arg ); - } - } else if ( arg && arg.length && type !== "string" ) { - // Inspect recursively - add( arg ); - } - }); - })( arguments ); - // Do we need to add the callbacks to the - // current firing batch? - if ( firing ) { - firingLength = list.length; - // With memory, if we're not firing then - // we should call right away - } else if ( memory ) { - firingStart = start; - fire( memory ); - } - } - return this; - }, - // Remove a callback from the list - remove: function() { - if ( list ) { - jQuery.each( arguments, function( _, arg ) { - var index; - while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) { - list.splice( index, 1 ); - // Handle firing indexes - if ( firing ) { - if ( index <= firingLength ) { - firingLength--; - } - if ( index <= firingIndex ) { - firingIndex--; - } - } - } - }); - } - return this; - }, - // Check if a given callback is in the list. - // If no argument is given, return whether or not list has callbacks attached. - has: function( fn ) { - return fn ? jQuery.inArray( fn, list ) > -1 : !!( list && list.length ); - }, - // Remove all callbacks from the list - empty: function() { - list = []; - firingLength = 0; - return this; - }, - // Have the list do nothing anymore - disable: function() { - list = stack = memory = undefined; - return this; - }, - // Is it disabled? - disabled: function() { - return !list; - }, - // Lock the list in its current state - lock: function() { - stack = undefined; - if ( !memory ) { - self.disable(); - } - return this; - }, - // Is it locked? - locked: function() { - return !stack; - }, - // Call all callbacks with the given context and arguments - fireWith: function( context, args ) { - if ( list && ( !fired || stack ) ) { - args = args || []; - args = [ context, args.slice ? args.slice() : args ]; - if ( firing ) { - stack.push( args ); - } else { - fire( args ); - } - } - return this; - }, - // Call all the callbacks with the given arguments - fire: function() { - self.fireWith( this, arguments ); - return this; - }, - // To know if the callbacks have already been called at least once - fired: function() { - return !!fired; - } - }; - - return self; -}; - - -jQuery.extend({ - - Deferred: function( func ) { - var tuples = [ - // action, add listener, listener list, final state - [ "resolve", "done", jQuery.Callbacks("once memory"), "resolved" ], - [ "reject", "fail", jQuery.Callbacks("once memory"), "rejected" ], - [ "notify", "progress", jQuery.Callbacks("memory") ] - ], - state = "pending", - promise = { - state: function() { - return state; - }, - always: function() { - deferred.done( arguments ).fail( arguments ); - return this; - }, - then: function( /* fnDone, fnFail, fnProgress */ ) { - var fns = arguments; - return jQuery.Deferred(function( newDefer ) { - jQuery.each( tuples, function( i, tuple ) { - var fn = jQuery.isFunction( fns[ i ] ) && fns[ i ]; - // deferred[ done | fail | progress ] for forwarding actions to newDefer - deferred[ tuple[1] ](function() { - var returned = fn && fn.apply( this, arguments ); - if ( returned && jQuery.isFunction( returned.promise ) ) { - returned.promise() - .done( newDefer.resolve ) - .fail( newDefer.reject ) - .progress( newDefer.notify ); - } else { - newDefer[ tuple[ 0 ] + "With" ]( this === promise ? newDefer.promise() : this, fn ? [ returned ] : arguments ); - } - }); - }); - fns = null; - }).promise(); - }, - // Get a promise for this deferred - // If obj is provided, the promise aspect is added to the object - promise: function( obj ) { - return obj != null ? jQuery.extend( obj, promise ) : promise; - } - }, - deferred = {}; - - // Keep pipe for back-compat - promise.pipe = promise.then; - - // Add list-specific methods - jQuery.each( tuples, function( i, tuple ) { - var list = tuple[ 2 ], - stateString = tuple[ 3 ]; - - // promise[ done | fail | progress ] = list.add - promise[ tuple[1] ] = list.add; - - // Handle state - if ( stateString ) { - list.add(function() { - // state = [ resolved | rejected ] - state = stateString; - - // [ reject_list | resolve_list ].disable; progress_list.lock - }, tuples[ i ^ 1 ][ 2 ].disable, tuples[ 2 ][ 2 ].lock ); - } - - // deferred[ resolve | reject | notify ] - deferred[ tuple[0] ] = function() { - deferred[ tuple[0] + "With" ]( this === deferred ? promise : this, arguments ); - return this; - }; - deferred[ tuple[0] + "With" ] = list.fireWith; - }); - - // Make the deferred a promise - promise.promise( deferred ); - - // Call given func if any - if ( func ) { - func.call( deferred, deferred ); - } - - // All done! - return deferred; - }, - - // Deferred helper - when: function( subordinate /* , ..., subordinateN */ ) { - var i = 0, - resolveValues = slice.call( arguments ), - length = resolveValues.length, - - // the count of uncompleted subordinates - remaining = length !== 1 || ( subordinate && jQuery.isFunction( subordinate.promise ) ) ? length : 0, - - // the master Deferred. If resolveValues consist of only a single Deferred, just use that. - deferred = remaining === 1 ? subordinate : jQuery.Deferred(), - - // Update function for both resolve and progress values - updateFunc = function( i, contexts, values ) { - return function( value ) { - contexts[ i ] = this; - values[ i ] = arguments.length > 1 ? slice.call( arguments ) : value; - if ( values === progressValues ) { - deferred.notifyWith( contexts, values ); - } else if ( !( --remaining ) ) { - deferred.resolveWith( contexts, values ); - } - }; - }, - - progressValues, progressContexts, resolveContexts; - - // add listeners to Deferred subordinates; treat others as resolved - if ( length > 1 ) { - progressValues = new Array( length ); - progressContexts = new Array( length ); - resolveContexts = new Array( length ); - for ( ; i < length; i++ ) { - if ( resolveValues[ i ] && jQuery.isFunction( resolveValues[ i ].promise ) ) { - resolveValues[ i ].promise() - .done( updateFunc( i, resolveContexts, resolveValues ) ) - .fail( deferred.reject ) - .progress( updateFunc( i, progressContexts, progressValues ) ); - } else { - --remaining; - } - } - } - - // if we're not waiting on anything, resolve the master - if ( !remaining ) { - deferred.resolveWith( resolveContexts, resolveValues ); - } - - return deferred.promise(); - } -}); - - -// The deferred used on DOM ready -var readyList; - -jQuery.fn.ready = function( fn ) { - // Add the callback - jQuery.ready.promise().done( fn ); - - return this; -}; - -jQuery.extend({ - // Is the DOM ready to be used? Set to true once it occurs. - isReady: false, - - // A counter to track how many items to wait for before - // the ready event fires. See #6781 - readyWait: 1, - - // Hold (or release) the ready event - holdReady: function( hold ) { - if ( hold ) { - jQuery.readyWait++; - } else { - jQuery.ready( true ); - } - }, - - // Handle when the DOM is ready - ready: function( wait ) { - - // Abort if there are pending holds or we're already ready - if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) { - return; - } - - // Remember that the DOM is ready - jQuery.isReady = true; - - // If a normal DOM Ready event fired, decrement, and wait if need be - if ( wait !== true && --jQuery.readyWait > 0 ) { - return; - } - - // If there are functions bound, to execute - readyList.resolveWith( document, [ jQuery ] ); - - // Trigger any bound ready events - if ( jQuery.fn.triggerHandler ) { - jQuery( document ).triggerHandler( "ready" ); - jQuery( document ).off( "ready" ); - } - } -}); - -/** - * The ready event handler and self cleanup method - */ -function completed() { - document.removeEventListener( "DOMContentLoaded", completed, false ); - window.removeEventListener( "load", completed, false ); - jQuery.ready(); -} - -jQuery.ready.promise = function( obj ) { - if ( !readyList ) { - - readyList = jQuery.Deferred(); - - // Catch cases where $(document).ready() is called after the browser event has already occurred. - // we once tried to use readyState "interactive" here, but it caused issues like the one - // discovered by ChrisS here: http://bugs.jquery.com/ticket/12282#comment:15 - if ( document.readyState === "complete" ) { - // Handle it asynchronously to allow scripts the opportunity to delay ready - setTimeout( jQuery.ready ); - - } else { - - // Use the handy event callback - document.addEventListener( "DOMContentLoaded", completed, false ); - - // A fallback to window.onload, that will always work - window.addEventListener( "load", completed, false ); - } - } - return readyList.promise( obj ); -}; - -// Kick off the DOM ready check even if the user does not -jQuery.ready.promise(); - - - - -// Multifunctional method to get and set values of a collection -// The value/s can optionally be executed if it's a function -var access = jQuery.access = function( elems, fn, key, value, chainable, emptyGet, raw ) { - var i = 0, - len = elems.length, - bulk = key == null; - - // Sets many values - if ( jQuery.type( key ) === "object" ) { - chainable = true; - for ( i in key ) { - jQuery.access( elems, fn, i, key[i], true, emptyGet, raw ); - } - - // Sets one value - } else if ( value !== undefined ) { - chainable = true; - - if ( !jQuery.isFunction( value ) ) { - raw = true; - } - - if ( bulk ) { - // Bulk operations run against the entire set - if ( raw ) { - fn.call( elems, value ); - fn = null; - - // ...except when executing function values - } else { - bulk = fn; - fn = function( elem, key, value ) { - return bulk.call( jQuery( elem ), value ); - }; - } - } - - if ( fn ) { - for ( ; i < len; i++ ) { - fn( elems[i], key, raw ? value : value.call( elems[i], i, fn( elems[i], key ) ) ); - } - } - } - - return chainable ? - elems : - - // Gets - bulk ? - fn.call( elems ) : - len ? fn( elems[0], key ) : emptyGet; -}; - - -/** - * Determines whether an object can have data - */ -jQuery.acceptData = function( owner ) { - // Accepts only: - // - Node - // - Node.ELEMENT_NODE - // - Node.DOCUMENT_NODE - // - Object - // - Any - /* jshint -W018 */ - return owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType ); -}; - - -function Data() { - // Support: Android < 4, - // Old WebKit does not have Object.preventExtensions/freeze method, - // return new empty object instead with no [[set]] accessor - Object.defineProperty( this.cache = {}, 0, { - get: function() { - return {}; - } - }); - - this.expando = jQuery.expando + Math.random(); -} - -Data.uid = 1; -Data.accepts = jQuery.acceptData; - -Data.prototype = { - key: function( owner ) { - // We can accept data for non-element nodes in modern browsers, - // but we should not, see #8335. - // Always return the key for a frozen object. - if ( !Data.accepts( owner ) ) { - return 0; - } - - var descriptor = {}, - // Check if the owner object already has a cache key - unlock = owner[ this.expando ]; - - // If not, create one - if ( !unlock ) { - unlock = Data.uid++; - - // Secure it in a non-enumerable, non-writable property - try { - descriptor[ this.expando ] = { value: unlock }; - Object.defineProperties( owner, descriptor ); - - // Support: Android < 4 - // Fallback to a less secure definition - } catch ( e ) { - descriptor[ this.expando ] = unlock; - jQuery.extend( owner, descriptor ); - } - } - - // Ensure the cache object - if ( !this.cache[ unlock ] ) { - this.cache[ unlock ] = {}; - } - - return unlock; - }, - set: function( owner, data, value ) { - var prop, - // There may be an unlock assigned to this node, - // if there is no entry for this "owner", create one inline - // and set the unlock as though an owner entry had always existed - unlock = this.key( owner ), - cache = this.cache[ unlock ]; - - // Handle: [ owner, key, value ] args - if ( typeof data === "string" ) { - cache[ data ] = value; - - // Handle: [ owner, { properties } ] args - } else { - // Fresh assignments by object are shallow copied - if ( jQuery.isEmptyObject( cache ) ) { - jQuery.extend( this.cache[ unlock ], data ); - // Otherwise, copy the properties one-by-one to the cache object - } else { - for ( prop in data ) { - cache[ prop ] = data[ prop ]; - } - } - } - return cache; - }, - get: function( owner, key ) { - // Either a valid cache is found, or will be created. - // New caches will be created and the unlock returned, - // allowing direct access to the newly created - // empty data object. A valid owner object must be provided. - var cache = this.cache[ this.key( owner ) ]; - - return key === undefined ? - cache : cache[ key ]; - }, - access: function( owner, key, value ) { - var stored; - // In cases where either: - // - // 1. No key was specified - // 2. A string key was specified, but no value provided - // - // Take the "read" path and allow the get method to determine - // which value to return, respectively either: - // - // 1. The entire cache object - // 2. The data stored at the key - // - if ( key === undefined || - ((key && typeof key === "string") && value === undefined) ) { - - stored = this.get( owner, key ); - - return stored !== undefined ? - stored : this.get( owner, jQuery.camelCase(key) ); - } - - // [*]When the key is not a string, or both a key and value - // are specified, set or extend (existing objects) with either: - // - // 1. An object of properties - // 2. A key and value - // - this.set( owner, key, value ); - - // Since the "set" path can have two possible entry points - // return the expected data based on which path was taken[*] - return value !== undefined ? value : key; - }, - remove: function( owner, key ) { - var i, name, camel, - unlock = this.key( owner ), - cache = this.cache[ unlock ]; - - if ( key === undefined ) { - this.cache[ unlock ] = {}; - - } else { - // Support array or space separated string of keys - if ( jQuery.isArray( key ) ) { - // If "name" is an array of keys... - // When data is initially created, via ("key", "val") signature, - // keys will be converted to camelCase. - // Since there is no way to tell _how_ a key was added, remove - // both plain key and camelCase key. #12786 - // This will only penalize the array argument path. - name = key.concat( key.map( jQuery.camelCase ) ); - } else { - camel = jQuery.camelCase( key ); - // Try the string as a key before any manipulation - if ( key in cache ) { - name = [ key, camel ]; - } else { - // If a key with the spaces exists, use it. - // Otherwise, create an array by matching non-whitespace - name = camel; - name = name in cache ? - [ name ] : ( name.match( rnotwhite ) || [] ); - } - } - - i = name.length; - while ( i-- ) { - delete cache[ name[ i ] ]; - } - } - }, - hasData: function( owner ) { - return !jQuery.isEmptyObject( - this.cache[ owner[ this.expando ] ] || {} - ); - }, - discard: function( owner ) { - if ( owner[ this.expando ] ) { - delete this.cache[ owner[ this.expando ] ]; - } - } -}; -var data_priv = new Data(); - -var data_user = new Data(); - - - -/* - Implementation Summary - - 1. Enforce API surface and semantic compatibility with 1.9.x branch - 2. Improve the module's maintainability by reducing the storage - paths to a single mechanism. - 3. Use the same single mechanism to support "private" and "user" data. - 4. _Never_ expose "private" data to user code (TODO: Drop _data, _removeData) - 5. Avoid exposing implementation details on user objects (eg. expando properties) - 6. Provide a clear path for implementation upgrade to WeakMap in 2014 -*/ -var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, - rmultiDash = /([A-Z])/g; - -function dataAttr( elem, key, data ) { - var name; - - // If nothing was found internally, try to fetch any - // data from the HTML5 data-* attribute - if ( data === undefined && elem.nodeType === 1 ) { - name = "data-" + key.replace( rmultiDash, "-$1" ).toLowerCase(); - data = elem.getAttribute( name ); - - if ( typeof data === "string" ) { - try { - data = data === "true" ? true : - data === "false" ? false : - data === "null" ? null : - // Only convert to a number if it doesn't change the string - +data + "" === data ? +data : - rbrace.test( data ) ? jQuery.parseJSON( data ) : - data; - } catch( e ) {} - - // Make sure we set the data so it isn't changed later - data_user.set( elem, key, data ); - } else { - data = undefined; - } - } - return data; -} - -jQuery.extend({ - hasData: function( elem ) { - return data_user.hasData( elem ) || data_priv.hasData( elem ); - }, - - data: function( elem, name, data ) { - return data_user.access( elem, name, data ); - }, - - removeData: function( elem, name ) { - data_user.remove( elem, name ); - }, - - // TODO: Now that all calls to _data and _removeData have been replaced - // with direct calls to data_priv methods, these can be deprecated. - _data: function( elem, name, data ) { - return data_priv.access( elem, name, data ); - }, - - _removeData: function( elem, name ) { - data_priv.remove( elem, name ); - } -}); - -jQuery.fn.extend({ - data: function( key, value ) { - var i, name, data, - elem = this[ 0 ], - attrs = elem && elem.attributes; - - // Gets all values - if ( key === undefined ) { - if ( this.length ) { - data = data_user.get( elem ); - - if ( elem.nodeType === 1 && !data_priv.get( elem, "hasDataAttrs" ) ) { - i = attrs.length; - while ( i-- ) { - - // Support: IE11+ - // The attrs elements can be null (#14894) - if ( attrs[ i ] ) { - name = attrs[ i ].name; - if ( name.indexOf( "data-" ) === 0 ) { - name = jQuery.camelCase( name.slice(5) ); - dataAttr( elem, name, data[ name ] ); - } - } - } - data_priv.set( elem, "hasDataAttrs", true ); - } - } - - return data; - } - - // Sets multiple values - if ( typeof key === "object" ) { - return this.each(function() { - data_user.set( this, key ); - }); - } - - return access( this, function( value ) { - var data, - camelKey = jQuery.camelCase( key ); - - // The calling jQuery object (element matches) is not empty - // (and therefore has an element appears at this[ 0 ]) and the - // `value` parameter was not undefined. An empty jQuery object - // will result in `undefined` for elem = this[ 0 ] which will - // throw an exception if an attempt to read a data cache is made. - if ( elem && value === undefined ) { - // Attempt to get data from the cache - // with the key as-is - data = data_user.get( elem, key ); - if ( data !== undefined ) { - return data; - } - - // Attempt to get data from the cache - // with the key camelized - data = data_user.get( elem, camelKey ); - if ( data !== undefined ) { - return data; - } - - // Attempt to "discover" the data in - // HTML5 custom data-* attrs - data = dataAttr( elem, camelKey, undefined ); - if ( data !== undefined ) { - return data; - } - - // We tried really hard, but the data doesn't exist. - return; - } - - // Set the data... - this.each(function() { - // First, attempt to store a copy or reference of any - // data that might've been store with a camelCased key. - var data = data_user.get( this, camelKey ); - - // For HTML5 data-* attribute interop, we have to - // store property names with dashes in a camelCase form. - // This might not apply to all properties...* - data_user.set( this, camelKey, value ); - - // *... In the case of properties that might _actually_ - // have dashes, we need to also store a copy of that - // unchanged property. - if ( key.indexOf("-") !== -1 && data !== undefined ) { - data_user.set( this, key, value ); - } - }); - }, null, value, arguments.length > 1, null, true ); - }, - - removeData: function( key ) { - return this.each(function() { - data_user.remove( this, key ); - }); - } -}); - - -jQuery.extend({ - queue: function( elem, type, data ) { - var queue; - - if ( elem ) { - type = ( type || "fx" ) + "queue"; - queue = data_priv.get( elem, type ); - - // Speed up dequeue by getting out quickly if this is just a lookup - if ( data ) { - if ( !queue || jQuery.isArray( data ) ) { - queue = data_priv.access( elem, type, jQuery.makeArray(data) ); - } else { - queue.push( data ); - } - } - return queue || []; - } - }, - - dequeue: function( elem, type ) { - type = type || "fx"; - - var queue = jQuery.queue( elem, type ), - startLength = queue.length, - fn = queue.shift(), - hooks = jQuery._queueHooks( elem, type ), - next = function() { - jQuery.dequeue( elem, type ); - }; - - // If the fx queue is dequeued, always remove the progress sentinel - if ( fn === "inprogress" ) { - fn = queue.shift(); - startLength--; - } - - if ( fn ) { - - // Add a progress sentinel to prevent the fx queue from being - // automatically dequeued - if ( type === "fx" ) { - queue.unshift( "inprogress" ); - } - - // clear up the last queue stop function - delete hooks.stop; - fn.call( elem, next, hooks ); - } - - if ( !startLength && hooks ) { - hooks.empty.fire(); - } - }, - - // not intended for public consumption - generates a queueHooks object, or returns the current one - _queueHooks: function( elem, type ) { - var key = type + "queueHooks"; - return data_priv.get( elem, key ) || data_priv.access( elem, key, { - empty: jQuery.Callbacks("once memory").add(function() { - data_priv.remove( elem, [ type + "queue", key ] ); - }) - }); - } -}); - -jQuery.fn.extend({ - queue: function( type, data ) { - var setter = 2; - - if ( typeof type !== "string" ) { - data = type; - type = "fx"; - setter--; - } - - if ( arguments.length < setter ) { - return jQuery.queue( this[0], type ); - } - - return data === undefined ? - this : - this.each(function() { - var queue = jQuery.queue( this, type, data ); - - // ensure a hooks for this queue - jQuery._queueHooks( this, type ); - - if ( type === "fx" && queue[0] !== "inprogress" ) { - jQuery.dequeue( this, type ); - } - }); - }, - dequeue: function( type ) { - return this.each(function() { - jQuery.dequeue( this, type ); - }); - }, - clearQueue: function( type ) { - return this.queue( type || "fx", [] ); - }, - // Get a promise resolved when queues of a certain type - // are emptied (fx is the type by default) - promise: function( type, obj ) { - var tmp, - count = 1, - defer = jQuery.Deferred(), - elements = this, - i = this.length, - resolve = function() { - if ( !( --count ) ) { - defer.resolveWith( elements, [ elements ] ); - } - }; - - if ( typeof type !== "string" ) { - obj = type; - type = undefined; - } - type = type || "fx"; - - while ( i-- ) { - tmp = data_priv.get( elements[ i ], type + "queueHooks" ); - if ( tmp && tmp.empty ) { - count++; - tmp.empty.add( resolve ); - } - } - resolve(); - return defer.promise( obj ); - } -}); -var pnum = (/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/).source; - -var cssExpand = [ "Top", "Right", "Bottom", "Left" ]; - -var isHidden = function( elem, el ) { - // isHidden might be called from jQuery#filter function; - // in that case, element will be second argument - elem = el || elem; - return jQuery.css( elem, "display" ) === "none" || !jQuery.contains( elem.ownerDocument, elem ); - }; - -var rcheckableType = (/^(?:checkbox|radio)$/i); - - - -(function() { - var fragment = document.createDocumentFragment(), - div = fragment.appendChild( document.createElement( "div" ) ), - input = document.createElement( "input" ); - - // #11217 - WebKit loses check when the name is after the checked attribute - // Support: Windows Web Apps (WWA) - // `name` and `type` need .setAttribute for WWA - input.setAttribute( "type", "radio" ); - input.setAttribute( "checked", "checked" ); - input.setAttribute( "name", "t" ); - - div.appendChild( input ); - - // Support: Safari 5.1, iOS 5.1, Android 4.x, Android 2.3 - // old WebKit doesn't clone checked state correctly in fragments - support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked; - - // Make sure textarea (and checkbox) defaultValue is properly cloned - // Support: IE9-IE11+ - div.innerHTML = ""; - support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; -})(); -var strundefined = typeof undefined; - - - -support.focusinBubbles = "onfocusin" in window; - - -var - rkeyEvent = /^key/, - rmouseEvent = /^(?:mouse|pointer|contextmenu)|click/, - rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, - rtypenamespace = /^([^.]*)(?:\.(.+)|)$/; - -function returnTrue() { - return true; -} - -function returnFalse() { - return false; -} - -function safeActiveElement() { - try { - return document.activeElement; - } catch ( err ) { } -} - -/* - * Helper functions for managing events -- not part of the public interface. - * Props to Dean Edwards' addEvent library for many of the ideas. - */ -jQuery.event = { - - global: {}, - - add: function( elem, types, handler, data, selector ) { - - var handleObjIn, eventHandle, tmp, - events, t, handleObj, - special, handlers, type, namespaces, origType, - elemData = data_priv.get( elem ); - - // Don't attach events to noData or text/comment nodes (but allow plain objects) - if ( !elemData ) { - return; - } - - // Caller can pass in an object of custom data in lieu of the handler - if ( handler.handler ) { - handleObjIn = handler; - handler = handleObjIn.handler; - selector = handleObjIn.selector; - } - - // Make sure that the handler has a unique ID, used to find/remove it later - if ( !handler.guid ) { - handler.guid = jQuery.guid++; - } - - // Init the element's event structure and main handler, if this is the first - if ( !(events = elemData.events) ) { - events = elemData.events = {}; - } - if ( !(eventHandle = elemData.handle) ) { - eventHandle = elemData.handle = function( e ) { - // Discard the second event of a jQuery.event.trigger() and - // when an event is called after a page has unloaded - return typeof jQuery !== strundefined && jQuery.event.triggered !== e.type ? - jQuery.event.dispatch.apply( elem, arguments ) : undefined; - }; - } - - // Handle multiple events separated by a space - types = ( types || "" ).match( rnotwhite ) || [ "" ]; - t = types.length; - while ( t-- ) { - tmp = rtypenamespace.exec( types[t] ) || []; - type = origType = tmp[1]; - namespaces = ( tmp[2] || "" ).split( "." ).sort(); - - // There *must* be a type, no attaching namespace-only handlers - if ( !type ) { - continue; - } - - // If event changes its type, use the special event handlers for the changed type - special = jQuery.event.special[ type ] || {}; - - // If selector defined, determine special event api type, otherwise given type - type = ( selector ? special.delegateType : special.bindType ) || type; - - // Update special based on newly reset type - special = jQuery.event.special[ type ] || {}; - - // handleObj is passed to all event handlers - handleObj = jQuery.extend({ - type: type, - origType: origType, - data: data, - handler: handler, - guid: handler.guid, - selector: selector, - needsContext: selector && jQuery.expr.match.needsContext.test( selector ), - namespace: namespaces.join(".") - }, handleObjIn ); - - // Init the event handler queue if we're the first - if ( !(handlers = events[ type ]) ) { - handlers = events[ type ] = []; - handlers.delegateCount = 0; - - // Only use addEventListener if the special events handler returns false - if ( !special.setup || special.setup.call( elem, data, namespaces, eventHandle ) === false ) { - if ( elem.addEventListener ) { - elem.addEventListener( type, eventHandle, false ); - } - } - } - - if ( special.add ) { - special.add.call( elem, handleObj ); - - if ( !handleObj.handler.guid ) { - handleObj.handler.guid = handler.guid; - } - } - - // Add to the element's handler list, delegates in front - if ( selector ) { - handlers.splice( handlers.delegateCount++, 0, handleObj ); - } else { - handlers.push( handleObj ); - } - - // Keep track of which events have ever been used, for event optimization - jQuery.event.global[ type ] = true; - } - - }, - - // Detach an event or set of events from an element - remove: function( elem, types, handler, selector, mappedTypes ) { - - var j, origCount, tmp, - events, t, handleObj, - special, handlers, type, namespaces, origType, - elemData = data_priv.hasData( elem ) && data_priv.get( elem ); - - if ( !elemData || !(events = elemData.events) ) { - return; - } - - // Once for each type.namespace in types; type may be omitted - types = ( types || "" ).match( rnotwhite ) || [ "" ]; - t = types.length; - while ( t-- ) { - tmp = rtypenamespace.exec( types[t] ) || []; - type = origType = tmp[1]; - namespaces = ( tmp[2] || "" ).split( "." ).sort(); - - // Unbind all events (on this namespace, if provided) for the element - if ( !type ) { - for ( type in events ) { - jQuery.event.remove( elem, type + types[ t ], handler, selector, true ); - } - continue; - } - - special = jQuery.event.special[ type ] || {}; - type = ( selector ? special.delegateType : special.bindType ) || type; - handlers = events[ type ] || []; - tmp = tmp[2] && new RegExp( "(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)" ); - - // Remove matching events - origCount = j = handlers.length; - while ( j-- ) { - handleObj = handlers[ j ]; - - if ( ( mappedTypes || origType === handleObj.origType ) && - ( !handler || handler.guid === handleObj.guid ) && - ( !tmp || tmp.test( handleObj.namespace ) ) && - ( !selector || selector === handleObj.selector || selector === "**" && handleObj.selector ) ) { - handlers.splice( j, 1 ); - - if ( handleObj.selector ) { - handlers.delegateCount--; - } - if ( special.remove ) { - special.remove.call( elem, handleObj ); - } - } - } - - // Remove generic event handler if we removed something and no more handlers exist - // (avoids potential for endless recursion during removal of special event handlers) - if ( origCount && !handlers.length ) { - if ( !special.teardown || special.teardown.call( elem, namespaces, elemData.handle ) === false ) { - jQuery.removeEvent( elem, type, elemData.handle ); - } - - delete events[ type ]; - } - } - - // Remove the expando if it's no longer used - if ( jQuery.isEmptyObject( events ) ) { - delete elemData.handle; - data_priv.remove( elem, "events" ); - } - }, - - trigger: function( event, data, elem, onlyHandlers ) { - - var i, cur, tmp, bubbleType, ontype, handle, special, - eventPath = [ elem || document ], - type = hasOwn.call( event, "type" ) ? event.type : event, - namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split(".") : []; - - cur = tmp = elem = elem || document; - - // Don't do events on text and comment nodes - if ( elem.nodeType === 3 || elem.nodeType === 8 ) { - return; - } - - // focus/blur morphs to focusin/out; ensure we're not firing them right now - if ( rfocusMorph.test( type + jQuery.event.triggered ) ) { - return; - } - - if ( type.indexOf(".") >= 0 ) { - // Namespaced trigger; create a regexp to match event type in handle() - namespaces = type.split("."); - type = namespaces.shift(); - namespaces.sort(); - } - ontype = type.indexOf(":") < 0 && "on" + type; - - // Caller can pass in a jQuery.Event object, Object, or just an event type string - event = event[ jQuery.expando ] ? - event : - new jQuery.Event( type, typeof event === "object" && event ); - - // Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true) - event.isTrigger = onlyHandlers ? 2 : 3; - event.namespace = namespaces.join("."); - event.namespace_re = event.namespace ? - new RegExp( "(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)" ) : - null; - - // Clean up the event in case it is being reused - event.result = undefined; - if ( !event.target ) { - event.target = elem; - } - - // Clone any incoming data and prepend the event, creating the handler arg list - data = data == null ? - [ event ] : - jQuery.makeArray( data, [ event ] ); - - // Allow special events to draw outside the lines - special = jQuery.event.special[ type ] || {}; - if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) { - return; - } - - // Determine event propagation path in advance, per W3C events spec (#9951) - // Bubble up to document, then to window; watch for a global ownerDocument var (#9724) - if ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) { - - bubbleType = special.delegateType || type; - if ( !rfocusMorph.test( bubbleType + type ) ) { - cur = cur.parentNode; - } - for ( ; cur; cur = cur.parentNode ) { - eventPath.push( cur ); - tmp = cur; - } - - // Only add window if we got to document (e.g., not plain obj or detached DOM) - if ( tmp === (elem.ownerDocument || document) ) { - eventPath.push( tmp.defaultView || tmp.parentWindow || window ); - } - } - - // Fire handlers on the event path - i = 0; - while ( (cur = eventPath[i++]) && !event.isPropagationStopped() ) { - - event.type = i > 1 ? - bubbleType : - special.bindType || type; - - // jQuery handler - handle = ( data_priv.get( cur, "events" ) || {} )[ event.type ] && data_priv.get( cur, "handle" ); - if ( handle ) { - handle.apply( cur, data ); - } - - // Native handler - handle = ontype && cur[ ontype ]; - if ( handle && handle.apply && jQuery.acceptData( cur ) ) { - event.result = handle.apply( cur, data ); - if ( event.result === false ) { - event.preventDefault(); - } - } - } - event.type = type; - - // If nobody prevented the default action, do it now - if ( !onlyHandlers && !event.isDefaultPrevented() ) { - - if ( (!special._default || special._default.apply( eventPath.pop(), data ) === false) && - jQuery.acceptData( elem ) ) { - - // Call a native DOM method on the target with the same name name as the event. - // Don't do default actions on window, that's where global variables be (#6170) - if ( ontype && jQuery.isFunction( elem[ type ] ) && !jQuery.isWindow( elem ) ) { - - // Don't re-trigger an onFOO event when we call its FOO() method - tmp = elem[ ontype ]; - - if ( tmp ) { - elem[ ontype ] = null; - } - - // Prevent re-triggering of the same event, since we already bubbled it above - jQuery.event.triggered = type; - elem[ type ](); - jQuery.event.triggered = undefined; - - if ( tmp ) { - elem[ ontype ] = tmp; - } - } - } - } - - return event.result; - }, - - dispatch: function( event ) { - - // Make a writable jQuery.Event from the native event object - event = jQuery.event.fix( event ); - - var i, j, ret, matched, handleObj, - handlerQueue = [], - args = slice.call( arguments ), - handlers = ( data_priv.get( this, "events" ) || {} )[ event.type ] || [], - special = jQuery.event.special[ event.type ] || {}; - - // Use the fix-ed jQuery.Event rather than the (read-only) native event - args[0] = event; - event.delegateTarget = this; - - // Call the preDispatch hook for the mapped type, and let it bail if desired - if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) { - return; - } - - // Determine handlers - handlerQueue = jQuery.event.handlers.call( this, event, handlers ); - - // Run delegates first; they may want to stop propagation beneath us - i = 0; - while ( (matched = handlerQueue[ i++ ]) && !event.isPropagationStopped() ) { - event.currentTarget = matched.elem; - - j = 0; - while ( (handleObj = matched.handlers[ j++ ]) && !event.isImmediatePropagationStopped() ) { - - // Triggered event must either 1) have no namespace, or - // 2) have namespace(s) a subset or equal to those in the bound event (both can have no namespace). - if ( !event.namespace_re || event.namespace_re.test( handleObj.namespace ) ) { - - event.handleObj = handleObj; - event.data = handleObj.data; - - ret = ( (jQuery.event.special[ handleObj.origType ] || {}).handle || handleObj.handler ) - .apply( matched.elem, args ); - - if ( ret !== undefined ) { - if ( (event.result = ret) === false ) { - event.preventDefault(); - event.stopPropagation(); - } - } - } - } - } - - // Call the postDispatch hook for the mapped type - if ( special.postDispatch ) { - special.postDispatch.call( this, event ); - } - - return event.result; - }, - - handlers: function( event, handlers ) { - var i, matches, sel, handleObj, - handlerQueue = [], - delegateCount = handlers.delegateCount, - cur = event.target; - - // Find delegate handlers - // Black-hole SVG instance trees (#13180) - // Avoid non-left-click bubbling in Firefox (#3861) - if ( delegateCount && cur.nodeType && (!event.button || event.type !== "click") ) { - - for ( ; cur !== this; cur = cur.parentNode || this ) { - - // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764) - if ( cur.disabled !== true || event.type !== "click" ) { - matches = []; - for ( i = 0; i < delegateCount; i++ ) { - handleObj = handlers[ i ]; - - // Don't conflict with Object.prototype properties (#13203) - sel = handleObj.selector + " "; - - if ( matches[ sel ] === undefined ) { - matches[ sel ] = handleObj.needsContext ? - jQuery( sel, this ).index( cur ) >= 0 : - jQuery.find( sel, this, null, [ cur ] ).length; - } - if ( matches[ sel ] ) { - matches.push( handleObj ); - } - } - if ( matches.length ) { - handlerQueue.push({ elem: cur, handlers: matches }); - } - } - } - } - - // Add the remaining (directly-bound) handlers - if ( delegateCount < handlers.length ) { - handlerQueue.push({ elem: this, handlers: handlers.slice( delegateCount ) }); - } - - return handlerQueue; - }, - - // Includes some event props shared by KeyEvent and MouseEvent - props: "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "), - - fixHooks: {}, - - keyHooks: { - props: "char charCode key keyCode".split(" "), - filter: function( event, original ) { - - // Add which for key events - if ( event.which == null ) { - event.which = original.charCode != null ? original.charCode : original.keyCode; - } - - return event; - } - }, - - mouseHooks: { - props: "button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement".split(" "), - filter: function( event, original ) { - var eventDoc, doc, body, - button = original.button; - - // Calculate pageX/Y if missing and clientX/Y available - if ( event.pageX == null && original.clientX != null ) { - eventDoc = event.target.ownerDocument || document; - doc = eventDoc.documentElement; - body = eventDoc.body; - - event.pageX = original.clientX + ( doc && doc.scrollLeft || body && body.scrollLeft || 0 ) - ( doc && doc.clientLeft || body && body.clientLeft || 0 ); - event.pageY = original.clientY + ( doc && doc.scrollTop || body && body.scrollTop || 0 ) - ( doc && doc.clientTop || body && body.clientTop || 0 ); - } - - // Add which for click: 1 === left; 2 === middle; 3 === right - // Note: button is not normalized, so don't use it - if ( !event.which && button !== undefined ) { - event.which = ( button & 1 ? 1 : ( button & 2 ? 3 : ( button & 4 ? 2 : 0 ) ) ); - } - - return event; - } - }, - - fix: function( event ) { - if ( event[ jQuery.expando ] ) { - return event; - } - - // Create a writable copy of the event object and normalize some properties - var i, prop, copy, - type = event.type, - originalEvent = event, - fixHook = this.fixHooks[ type ]; - - if ( !fixHook ) { - this.fixHooks[ type ] = fixHook = - rmouseEvent.test( type ) ? this.mouseHooks : - rkeyEvent.test( type ) ? this.keyHooks : - {}; - } - copy = fixHook.props ? this.props.concat( fixHook.props ) : this.props; - - event = new jQuery.Event( originalEvent ); - - i = copy.length; - while ( i-- ) { - prop = copy[ i ]; - event[ prop ] = originalEvent[ prop ]; - } - - // Support: Cordova 2.5 (WebKit) (#13255) - // All events should have a target; Cordova deviceready doesn't - if ( !event.target ) { - event.target = document; - } - - // Support: Safari 6.0+, Chrome < 28 - // Target should not be a text node (#504, #13143) - if ( event.target.nodeType === 3 ) { - event.target = event.target.parentNode; - } - - return fixHook.filter ? fixHook.filter( event, originalEvent ) : event; - }, - - special: { - load: { - // Prevent triggered image.load events from bubbling to window.load - noBubble: true - }, - focus: { - // Fire native event if possible so blur/focus sequence is correct - trigger: function() { - if ( this !== safeActiveElement() && this.focus ) { - this.focus(); - return false; - } - }, - delegateType: "focusin" - }, - blur: { - trigger: function() { - if ( this === safeActiveElement() && this.blur ) { - this.blur(); - return false; - } - }, - delegateType: "focusout" - }, - click: { - // For checkbox, fire native event so checked state will be right - trigger: function() { - if ( this.type === "checkbox" && this.click && jQuery.nodeName( this, "input" ) ) { - this.click(); - return false; - } - }, - - // For cross-browser consistency, don't fire native .click() on links - _default: function( event ) { - return jQuery.nodeName( event.target, "a" ); - } - }, - - beforeunload: { - postDispatch: function( event ) { - - // Support: Firefox 20+ - // Firefox doesn't alert if the returnValue field is not set. - if ( event.result !== undefined && event.originalEvent ) { - event.originalEvent.returnValue = event.result; - } - } - } - }, - - simulate: function( type, elem, event, bubble ) { - // Piggyback on a donor event to simulate a different one. - // Fake originalEvent to avoid donor's stopPropagation, but if the - // simulated event prevents default then we do the same on the donor. - var e = jQuery.extend( - new jQuery.Event(), - event, - { - type: type, - isSimulated: true, - originalEvent: {} - } - ); - if ( bubble ) { - jQuery.event.trigger( e, null, elem ); - } else { - jQuery.event.dispatch.call( elem, e ); - } - if ( e.isDefaultPrevented() ) { - event.preventDefault(); - } - } -}; - -jQuery.removeEvent = function( elem, type, handle ) { - if ( elem.removeEventListener ) { - elem.removeEventListener( type, handle, false ); - } -}; - -jQuery.Event = function( src, props ) { - // Allow instantiation without the 'new' keyword - if ( !(this instanceof jQuery.Event) ) { - return new jQuery.Event( src, props ); - } - - // Event object - if ( src && src.type ) { - this.originalEvent = src; - this.type = src.type; - - // Events bubbling up the document may have been marked as prevented - // by a handler lower down the tree; reflect the correct value. - this.isDefaultPrevented = src.defaultPrevented || - src.defaultPrevented === undefined && - // Support: Android < 4.0 - src.returnValue === false ? - returnTrue : - returnFalse; - - // Event type - } else { - this.type = src; - } - - // Put explicitly provided properties onto the event object - if ( props ) { - jQuery.extend( this, props ); - } - - // Create a timestamp if incoming event doesn't have one - this.timeStamp = src && src.timeStamp || jQuery.now(); - - // Mark it as fixed - this[ jQuery.expando ] = true; -}; - -// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding -// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html -jQuery.Event.prototype = { - isDefaultPrevented: returnFalse, - isPropagationStopped: returnFalse, - isImmediatePropagationStopped: returnFalse, - - preventDefault: function() { - var e = this.originalEvent; - - this.isDefaultPrevented = returnTrue; - - if ( e && e.preventDefault ) { - e.preventDefault(); - } - }, - stopPropagation: function() { - var e = this.originalEvent; - - this.isPropagationStopped = returnTrue; - - if ( e && e.stopPropagation ) { - e.stopPropagation(); - } - }, - stopImmediatePropagation: function() { - var e = this.originalEvent; - - this.isImmediatePropagationStopped = returnTrue; - - if ( e && e.stopImmediatePropagation ) { - e.stopImmediatePropagation(); - } - - this.stopPropagation(); - } -}; - -// Create mouseenter/leave events using mouseover/out and event-time checks -// Support: Chrome 15+ -jQuery.each({ - mouseenter: "mouseover", - mouseleave: "mouseout", - pointerenter: "pointerover", - pointerleave: "pointerout" -}, function( orig, fix ) { - jQuery.event.special[ orig ] = { - delegateType: fix, - bindType: fix, - - handle: function( event ) { - var ret, - target = this, - related = event.relatedTarget, - handleObj = event.handleObj; - - // For mousenter/leave call the handler if related is outside the target. - // NB: No relatedTarget if the mouse left/entered the browser window - if ( !related || (related !== target && !jQuery.contains( target, related )) ) { - event.type = handleObj.origType; - ret = handleObj.handler.apply( this, arguments ); - event.type = fix; - } - return ret; - } - }; -}); - -// Create "bubbling" focus and blur events -// Support: Firefox, Chrome, Safari -if ( !support.focusinBubbles ) { - jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix ) { - - // Attach a single capturing handler on the document while someone wants focusin/focusout - var handler = function( event ) { - jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ), true ); - }; - - jQuery.event.special[ fix ] = { - setup: function() { - var doc = this.ownerDocument || this, - attaches = data_priv.access( doc, fix ); - - if ( !attaches ) { - doc.addEventListener( orig, handler, true ); - } - data_priv.access( doc, fix, ( attaches || 0 ) + 1 ); - }, - teardown: function() { - var doc = this.ownerDocument || this, - attaches = data_priv.access( doc, fix ) - 1; - - if ( !attaches ) { - doc.removeEventListener( orig, handler, true ); - data_priv.remove( doc, fix ); - - } else { - data_priv.access( doc, fix, attaches ); - } - } - }; - }); -} - -jQuery.fn.extend({ - - on: function( types, selector, data, fn, /*INTERNAL*/ one ) { - var origFn, type; - - // Types can be a map of types/handlers - if ( typeof types === "object" ) { - // ( types-Object, selector, data ) - if ( typeof selector !== "string" ) { - // ( types-Object, data ) - data = data || selector; - selector = undefined; - } - for ( type in types ) { - this.on( type, selector, data, types[ type ], one ); - } - return this; - } - - if ( data == null && fn == null ) { - // ( types, fn ) - fn = selector; - data = selector = undefined; - } else if ( fn == null ) { - if ( typeof selector === "string" ) { - // ( types, selector, fn ) - fn = data; - data = undefined; - } else { - // ( types, data, fn ) - fn = data; - data = selector; - selector = undefined; - } - } - if ( fn === false ) { - fn = returnFalse; - } else if ( !fn ) { - return this; - } - - if ( one === 1 ) { - origFn = fn; - fn = function( event ) { - // Can use an empty set, since event contains the info - jQuery().off( event ); - return origFn.apply( this, arguments ); - }; - // Use same guid so caller can remove using origFn - fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ ); - } - return this.each( function() { - jQuery.event.add( this, types, fn, data, selector ); - }); - }, - one: function( types, selector, data, fn ) { - return this.on( types, selector, data, fn, 1 ); - }, - off: function( types, selector, fn ) { - var handleObj, type; - if ( types && types.preventDefault && types.handleObj ) { - // ( event ) dispatched jQuery.Event - handleObj = types.handleObj; - jQuery( types.delegateTarget ).off( - handleObj.namespace ? handleObj.origType + "." + handleObj.namespace : handleObj.origType, - handleObj.selector, - handleObj.handler - ); - return this; - } - if ( typeof types === "object" ) { - // ( types-object [, selector] ) - for ( type in types ) { - this.off( type, selector, types[ type ] ); - } - return this; - } - if ( selector === false || typeof selector === "function" ) { - // ( types [, fn] ) - fn = selector; - selector = undefined; - } - if ( fn === false ) { - fn = returnFalse; - } - return this.each(function() { - jQuery.event.remove( this, types, fn, selector ); - }); - }, - - trigger: function( type, data ) { - return this.each(function() { - jQuery.event.trigger( type, data, this ); - }); - }, - triggerHandler: function( type, data ) { - var elem = this[0]; - if ( elem ) { - return jQuery.event.trigger( type, data, elem, true ); - } - } -}); - - -var - rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, - rtagName = /<([\w:]+)/, - rhtml = /<|&#?\w+;/, - rnoInnerhtml = /<(?:script|style|link)/i, - // checked="checked" or checked - rchecked = /checked\s*(?:[^=]|=\s*.checked.)/i, - rscriptType = /^$|\/(?:java|ecma)script/i, - rscriptTypeMasked = /^true\/(.*)/, - rcleanScript = /^\s*\s*$/g, - - // We have to close these tags to support XHTML (#13200) - wrapMap = { - - // Support: IE 9 - option: [ 1, "" ], - - thead: [ 1, "", "
    " ], - col: [ 2, "", "
    " ], - tr: [ 2, "", "
    " ], - td: [ 3, "", "
    " ], - - _default: [ 0, "", "" ] - }; - -// Support: IE 9 -wrapMap.optgroup = wrapMap.option; - -wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; -wrapMap.th = wrapMap.td; - -// Support: 1.x compatibility -// Manipulating tables requires a tbody -function manipulationTarget( elem, content ) { - return jQuery.nodeName( elem, "table" ) && - jQuery.nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ? - - elem.getElementsByTagName("tbody")[0] || - elem.appendChild( elem.ownerDocument.createElement("tbody") ) : - elem; -} - -// Replace/restore the type attribute of script elements for safe DOM manipulation -function disableScript( elem ) { - elem.type = (elem.getAttribute("type") !== null) + "/" + elem.type; - return elem; -} -function restoreScript( elem ) { - var match = rscriptTypeMasked.exec( elem.type ); - - if ( match ) { - elem.type = match[ 1 ]; - } else { - elem.removeAttribute("type"); - } - - return elem; -} - -// Mark scripts as having already been evaluated -function setGlobalEval( elems, refElements ) { - var i = 0, - l = elems.length; - - for ( ; i < l; i++ ) { - data_priv.set( - elems[ i ], "globalEval", !refElements || data_priv.get( refElements[ i ], "globalEval" ) - ); - } -} - -function cloneCopyEvent( src, dest ) { - var i, l, type, pdataOld, pdataCur, udataOld, udataCur, events; - - if ( dest.nodeType !== 1 ) { - return; - } - - // 1. Copy private data: events, handlers, etc. - if ( data_priv.hasData( src ) ) { - pdataOld = data_priv.access( src ); - pdataCur = data_priv.set( dest, pdataOld ); - events = pdataOld.events; - - if ( events ) { - delete pdataCur.handle; - pdataCur.events = {}; - - for ( type in events ) { - for ( i = 0, l = events[ type ].length; i < l; i++ ) { - jQuery.event.add( dest, type, events[ type ][ i ] ); - } - } - } - } - - // 2. Copy user data - if ( data_user.hasData( src ) ) { - udataOld = data_user.access( src ); - udataCur = jQuery.extend( {}, udataOld ); - - data_user.set( dest, udataCur ); - } -} - -function getAll( context, tag ) { - var ret = context.getElementsByTagName ? context.getElementsByTagName( tag || "*" ) : - context.querySelectorAll ? context.querySelectorAll( tag || "*" ) : - []; - - return tag === undefined || tag && jQuery.nodeName( context, tag ) ? - jQuery.merge( [ context ], ret ) : - ret; -} - -// Support: IE >= 9 -function fixInput( src, dest ) { - var nodeName = dest.nodeName.toLowerCase(); - - // Fails to persist the checked state of a cloned checkbox or radio button. - if ( nodeName === "input" && rcheckableType.test( src.type ) ) { - dest.checked = src.checked; - - // Fails to return the selected option to the default selected state when cloning options - } else if ( nodeName === "input" || nodeName === "textarea" ) { - dest.defaultValue = src.defaultValue; - } -} - -jQuery.extend({ - clone: function( elem, dataAndEvents, deepDataAndEvents ) { - var i, l, srcElements, destElements, - clone = elem.cloneNode( true ), - inPage = jQuery.contains( elem.ownerDocument, elem ); - - // Support: IE >= 9 - // Fix Cloning issues - if ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) && - !jQuery.isXMLDoc( elem ) ) { - - // We eschew Sizzle here for performance reasons: http://jsperf.com/getall-vs-sizzle/2 - destElements = getAll( clone ); - srcElements = getAll( elem ); - - for ( i = 0, l = srcElements.length; i < l; i++ ) { - fixInput( srcElements[ i ], destElements[ i ] ); - } - } - - // Copy the events from the original to the clone - if ( dataAndEvents ) { - if ( deepDataAndEvents ) { - srcElements = srcElements || getAll( elem ); - destElements = destElements || getAll( clone ); - - for ( i = 0, l = srcElements.length; i < l; i++ ) { - cloneCopyEvent( srcElements[ i ], destElements[ i ] ); - } - } else { - cloneCopyEvent( elem, clone ); - } - } - - // Preserve script evaluation history - destElements = getAll( clone, "script" ); - if ( destElements.length > 0 ) { - setGlobalEval( destElements, !inPage && getAll( elem, "script" ) ); - } - - // Return the cloned set - return clone; - }, - - buildFragment: function( elems, context, scripts, selection ) { - var elem, tmp, tag, wrap, contains, j, - fragment = context.createDocumentFragment(), - nodes = [], - i = 0, - l = elems.length; - - for ( ; i < l; i++ ) { - elem = elems[ i ]; - - if ( elem || elem === 0 ) { - - // Add nodes directly - if ( jQuery.type( elem ) === "object" ) { - // Support: QtWebKit - // jQuery.merge because push.apply(_, arraylike) throws - jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem ); - - // Convert non-html into a text node - } else if ( !rhtml.test( elem ) ) { - nodes.push( context.createTextNode( elem ) ); - - // Convert html into DOM nodes - } else { - tmp = tmp || fragment.appendChild( context.createElement("div") ); - - // Deserialize a standard representation - tag = ( rtagName.exec( elem ) || [ "", "" ] )[ 1 ].toLowerCase(); - wrap = wrapMap[ tag ] || wrapMap._default; - tmp.innerHTML = wrap[ 1 ] + elem.replace( rxhtmlTag, "<$1>" ) + wrap[ 2 ]; - - // Descend through wrappers to the right content - j = wrap[ 0 ]; - while ( j-- ) { - tmp = tmp.lastChild; - } - - // Support: QtWebKit - // jQuery.merge because push.apply(_, arraylike) throws - jQuery.merge( nodes, tmp.childNodes ); - - // Remember the top-level container - tmp = fragment.firstChild; - - // Fixes #12346 - // Support: Webkit, IE - tmp.textContent = ""; - } - } - } - - // Remove wrapper from fragment - fragment.textContent = ""; - - i = 0; - while ( (elem = nodes[ i++ ]) ) { - - // #4087 - If origin and destination elements are the same, and this is - // that element, do not do anything - if ( selection && jQuery.inArray( elem, selection ) !== -1 ) { - continue; - } - - contains = jQuery.contains( elem.ownerDocument, elem ); - - // Append to fragment - tmp = getAll( fragment.appendChild( elem ), "script" ); - - // Preserve script evaluation history - if ( contains ) { - setGlobalEval( tmp ); - } - - // Capture executables - if ( scripts ) { - j = 0; - while ( (elem = tmp[ j++ ]) ) { - if ( rscriptType.test( elem.type || "" ) ) { - scripts.push( elem ); - } - } - } - } - - return fragment; - }, - - cleanData: function( elems ) { - var data, elem, type, key, - special = jQuery.event.special, - i = 0; - - for ( ; (elem = elems[ i ]) !== undefined; i++ ) { - if ( jQuery.acceptData( elem ) ) { - key = elem[ data_priv.expando ]; - - if ( key && (data = data_priv.cache[ key ]) ) { - if ( data.events ) { - for ( type in data.events ) { - if ( special[ type ] ) { - jQuery.event.remove( elem, type ); - - // This is a shortcut to avoid jQuery.event.remove's overhead - } else { - jQuery.removeEvent( elem, type, data.handle ); - } - } - } - if ( data_priv.cache[ key ] ) { - // Discard any remaining `private` data - delete data_priv.cache[ key ]; - } - } - } - // Discard any remaining `user` data - delete data_user.cache[ elem[ data_user.expando ] ]; - } - } -}); - -jQuery.fn.extend({ - text: function( value ) { - return access( this, function( value ) { - return value === undefined ? - jQuery.text( this ) : - this.empty().each(function() { - if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { - this.textContent = value; - } - }); - }, null, value, arguments.length ); - }, - - append: function() { - return this.domManip( arguments, function( elem ) { - if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { - var target = manipulationTarget( this, elem ); - target.appendChild( elem ); - } - }); - }, - - prepend: function() { - return this.domManip( arguments, function( elem ) { - if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { - var target = manipulationTarget( this, elem ); - target.insertBefore( elem, target.firstChild ); - } - }); - }, - - before: function() { - return this.domManip( arguments, function( elem ) { - if ( this.parentNode ) { - this.parentNode.insertBefore( elem, this ); - } - }); - }, - - after: function() { - return this.domManip( arguments, function( elem ) { - if ( this.parentNode ) { - this.parentNode.insertBefore( elem, this.nextSibling ); - } - }); - }, - - remove: function( selector, keepData /* Internal Use Only */ ) { - var elem, - elems = selector ? jQuery.filter( selector, this ) : this, - i = 0; - - for ( ; (elem = elems[i]) != null; i++ ) { - if ( !keepData && elem.nodeType === 1 ) { - jQuery.cleanData( getAll( elem ) ); - } - - if ( elem.parentNode ) { - if ( keepData && jQuery.contains( elem.ownerDocument, elem ) ) { - setGlobalEval( getAll( elem, "script" ) ); - } - elem.parentNode.removeChild( elem ); - } - } - - return this; - }, - - empty: function() { - var elem, - i = 0; - - for ( ; (elem = this[i]) != null; i++ ) { - if ( elem.nodeType === 1 ) { - - // Prevent memory leaks - jQuery.cleanData( getAll( elem, false ) ); - - // Remove any remaining nodes - elem.textContent = ""; - } - } - - return this; - }, - - clone: function( dataAndEvents, deepDataAndEvents ) { - dataAndEvents = dataAndEvents == null ? false : dataAndEvents; - deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents; - - return this.map(function() { - return jQuery.clone( this, dataAndEvents, deepDataAndEvents ); - }); - }, - - html: function( value ) { - return access( this, function( value ) { - var elem = this[ 0 ] || {}, - i = 0, - l = this.length; - - if ( value === undefined && elem.nodeType === 1 ) { - return elem.innerHTML; - } - - // See if we can take a shortcut and just use innerHTML - if ( typeof value === "string" && !rnoInnerhtml.test( value ) && - !wrapMap[ ( rtagName.exec( value ) || [ "", "" ] )[ 1 ].toLowerCase() ] ) { - - value = value.replace( rxhtmlTag, "<$1>" ); - - try { - for ( ; i < l; i++ ) { - elem = this[ i ] || {}; - - // Remove element nodes and prevent memory leaks - if ( elem.nodeType === 1 ) { - jQuery.cleanData( getAll( elem, false ) ); - elem.innerHTML = value; - } - } - - elem = 0; - - // If using innerHTML throws an exception, use the fallback method - } catch( e ) {} - } - - if ( elem ) { - this.empty().append( value ); - } - }, null, value, arguments.length ); - }, - - replaceWith: function() { - var arg = arguments[ 0 ]; - - // Make the changes, replacing each context element with the new content - this.domManip( arguments, function( elem ) { - arg = this.parentNode; - - jQuery.cleanData( getAll( this ) ); - - if ( arg ) { - arg.replaceChild( elem, this ); - } - }); - - // Force removal if there was no new content (e.g., from empty arguments) - return arg && (arg.length || arg.nodeType) ? this : this.remove(); - }, - - detach: function( selector ) { - return this.remove( selector, true ); - }, - - domManip: function( args, callback ) { - - // Flatten any nested arrays - args = concat.apply( [], args ); - - var fragment, first, scripts, hasScripts, node, doc, - i = 0, - l = this.length, - set = this, - iNoClone = l - 1, - value = args[ 0 ], - isFunction = jQuery.isFunction( value ); - - // We can't cloneNode fragments that contain checked, in WebKit - if ( isFunction || - ( l > 1 && typeof value === "string" && - !support.checkClone && rchecked.test( value ) ) ) { - return this.each(function( index ) { - var self = set.eq( index ); - if ( isFunction ) { - args[ 0 ] = value.call( this, index, self.html() ); - } - self.domManip( args, callback ); - }); - } - - if ( l ) { - fragment = jQuery.buildFragment( args, this[ 0 ].ownerDocument, false, this ); - first = fragment.firstChild; - - if ( fragment.childNodes.length === 1 ) { - fragment = first; - } - - if ( first ) { - scripts = jQuery.map( getAll( fragment, "script" ), disableScript ); - hasScripts = scripts.length; - - // Use the original fragment for the last item instead of the first because it can end up - // being emptied incorrectly in certain situations (#8070). - for ( ; i < l; i++ ) { - node = fragment; - - if ( i !== iNoClone ) { - node = jQuery.clone( node, true, true ); - - // Keep references to cloned scripts for later restoration - if ( hasScripts ) { - // Support: QtWebKit - // jQuery.merge because push.apply(_, arraylike) throws - jQuery.merge( scripts, getAll( node, "script" ) ); - } - } - - callback.call( this[ i ], node, i ); - } - - if ( hasScripts ) { - doc = scripts[ scripts.length - 1 ].ownerDocument; - - // Reenable scripts - jQuery.map( scripts, restoreScript ); - - // Evaluate executable scripts on first document insertion - for ( i = 0; i < hasScripts; i++ ) { - node = scripts[ i ]; - if ( rscriptType.test( node.type || "" ) && - !data_priv.access( node, "globalEval" ) && jQuery.contains( doc, node ) ) { - - if ( node.src ) { - // Optional AJAX dependency, but won't run scripts if not present - if ( jQuery._evalUrl ) { - jQuery._evalUrl( node.src ); - } - } else { - jQuery.globalEval( node.textContent.replace( rcleanScript, "" ) ); - } - } - } - } - } - } - - return this; - } -}); - -jQuery.each({ - appendTo: "append", - prependTo: "prepend", - insertBefore: "before", - insertAfter: "after", - replaceAll: "replaceWith" -}, function( name, original ) { - jQuery.fn[ name ] = function( selector ) { - var elems, - ret = [], - insert = jQuery( selector ), - last = insert.length - 1, - i = 0; - - for ( ; i <= last; i++ ) { - elems = i === last ? this : this.clone( true ); - jQuery( insert[ i ] )[ original ]( elems ); - - // Support: QtWebKit - // .get() because push.apply(_, arraylike) throws - push.apply( ret, elems.get() ); - } - - return this.pushStack( ret ); - }; -}); - - -var iframe, - elemdisplay = {}; - -/** - * Retrieve the actual display of a element - * @param {String} name nodeName of the element - * @param {Object} doc Document object - */ -// Called only from within defaultDisplay -function actualDisplay( name, doc ) { - var style, - elem = jQuery( doc.createElement( name ) ).appendTo( doc.body ), - - // getDefaultComputedStyle might be reliably used only on attached element - display = window.getDefaultComputedStyle && ( style = window.getDefaultComputedStyle( elem[ 0 ] ) ) ? - - // Use of this method is a temporary fix (more like optmization) until something better comes along, - // since it was removed from specification and supported only in FF - style.display : jQuery.css( elem[ 0 ], "display" ); - - // We don't have any data stored on the element, - // so use "detach" method as fast way to get rid of the element - elem.detach(); - - return display; -} - -/** - * Try to determine the default display value of an element - * @param {String} nodeName - */ -function defaultDisplay( nodeName ) { - var doc = document, - display = elemdisplay[ nodeName ]; - - if ( !display ) { - display = actualDisplay( nodeName, doc ); - - // If the simple way fails, read from inside an iframe - if ( display === "none" || !display ) { - - // Use the already-created iframe if possible - iframe = (iframe || jQuery( " -
    - - \ No newline at end of file diff --git a/helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/firstRun.js b/helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/firstRun.js deleted file mode 100644 index be2caa6..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/firstRun.js +++ /dev/null @@ -1,253 +0,0 @@ -/* - * This file is part of Adblock Plus , - * Copyright (C) 2006-2014 Eyeo GmbH - * - * Adblock Plus is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 3 as - * published by the Free Software Foundation. - * - * Adblock Plus is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Adblock Plus. If not, see . - */ - -"use strict"; - -(function() -{ - // Load subscriptions for features - var featureSubscriptions = [ - { - feature: "malware", - homepage: "http://malwaredomains.com/", - title: "Malware Domains", - url: "https://easylist-downloads.adblockplus.org/malwaredomains_full.txt" - }, - { - feature: "social", - homepage: "https://www.fanboy.co.nz/", - title: "Fanboy's Social Blocking List", - url: "https://easylist-downloads.adblockplus.org/fanboy-social.txt" - }, - { - feature: "tracking", - homepage: "https://easylist.adblockplus.org/", - title: "EasyPrivacy", - url: "https://easylist-downloads.adblockplus.org/easyprivacy.txt" - } - ]; - - function onDOMLoaded() - { - var locale = require("utils").Utils.appLocale; - document.documentElement.setAttribute("lang", locale); - - // Set up URLs - var donateLink = E("donate"); - donateLink.href = Utils.getDocLink("donate"); - - var contributors = E("contributors"); - contributors.href = Utils.getDocLink("contributors"); - - setLinks("acceptableAdsExplanation", Utils.getDocLink("acceptable_ads_criteria"), openFilters); - setLinks("share-headline", Utils.getDocLink("contribute")); - - if (typeof backgroundPage != "undefined") - { - // Show warning if data corruption was detected - if (backgroundPage.seenDataCorruption) - { - E("dataCorruptionWarning").removeAttribute("hidden"); - setLinks("dataCorruptionWarning", Utils.getDocLink("knownIssuesChrome_filterstorage")); - } - - // Show warning if filterlists settings were reinitialized - if (backgroundPage.filterlistsReinitialized) - { - E("filterlistsReinitializedWarning").removeAttribute("hidden"); - setLinks("filterlistsReinitializedWarning", openFilters); - } - } - - // Show warning if Safari version isn't supported - var info = require("info"); - if (info.platform == "safari" && ( - Services.vc.compare(info.platformVersion, "6.0") < 0 || // beforeload breaks websites in Safari 5 - Services.vc.compare(info.platformVersion, "6.1") == 0 || // extensions are broken in 6.1 and 7.0 - Services.vc.compare(info.platformVersion, "7.0") == 0 - )) - E("legacySafariWarning").removeAttribute("hidden"); - - // Set up feature buttons linked to subscriptions - featureSubscriptions.forEach(setToggleSubscriptionButton); - var filterListener = function(action) - { - if (/^subscription\.(added|removed|disabled)$/.test(action)) - { - for (var i = 0; i < featureSubscriptions.length; i++) - { - var featureSubscription = featureSubscriptions[i]; - updateToggleButton(featureSubscription.feature, isSubscriptionEnabled(featureSubscription)); - } - } - } - FilterNotifier.addListener(filterListener); - window.addEventListener("unload", function(event) - { - FilterNotifier.removeListener(filterListener); - }, false); - - initSocialLinks(); - } - - function isSubscriptionEnabled(featureSubscription) - { - return featureSubscription.url in FilterStorage.knownSubscriptions - && !Subscription.fromURL(featureSubscription.url).disabled; - } - - function setToggleSubscriptionButton(featureSubscription) - { - var feature = featureSubscription.feature; - - var element = E("toggle-" + feature); - updateToggleButton(feature, isSubscriptionEnabled(featureSubscription)); - element.addEventListener("click", function(event) - { - var subscription = Subscription.fromURL(featureSubscription.url); - if (isSubscriptionEnabled(featureSubscription)) - FilterStorage.removeSubscription(subscription); - else - { - subscription.disabled = false; - subscription.title = featureSubscription.title; - subscription.homepage = featureSubscription.homepage; - FilterStorage.addSubscription(subscription); - if (!subscription.lastDownload) - Synchronizer.execute(subscription); - } - }, false); - } - - function openSharePopup(url) - { - var iframe = E("share-popup"); - var glassPane = E("glass-pane"); - var popupMessageReceived = false; - - var popupMessageListener = function(event) - { - var originFilter = Filter.fromText("||adblockplus.org^"); - if (!originFilter.matches(event.origin, "OTHER", null, null)) - return; - - var width = event.data.width; - var height = event.data.height; - iframe.width = width; - iframe.height = height; - iframe.style.marginTop = -height/2 + "px"; - iframe.style.marginLeft = -width/2 + "px"; - popupMessageReceived = true; - window.removeEventListener("message", popupMessageListener); - }; - // Firefox requires last parameter to be true to be triggered by unprivileged pages - window.addEventListener("message", popupMessageListener, false, true); - - var popupLoadListener = function() - { - if (popupMessageReceived) - { - iframe.className = "visible"; - - var popupCloseListener = function() - { - iframe.className = glassPane.className = ""; - document.removeEventListener("click", popupCloseListener); - }; - document.addEventListener("click", popupCloseListener, false); - } - else - { - glassPane.className = ""; - window.removeEventListener("message", popupMessageListener); - } - - iframe.removeEventListener("load", popupLoadListener); - }; - iframe.addEventListener("load", popupLoadListener, false); - - iframe.src = url; - glassPane.className = "visible"; - } - - function initSocialLinks() - { - var networks = ["twitter", "facebook", "gplus"]; - networks.forEach(function(network) - { - var link = E("share-" + network); - link.addEventListener("click", onSocialLinkClick, false); - }); - } - - function onSocialLinkClick(event) - { - // Don't open the share page if the sharing script would be blocked - var filter = defaultMatcher.matchesAny(event.target.getAttribute("data-script"), "SCRIPT", "adblockplus.org", true); - if (!(filter instanceof BlockingFilter)) - { - event.preventDefault(); - openSharePopup(Utils.getDocLink(event.target.id)); - } - } - - function setLinks(id) - { - var element = E(id); - if (!element) - { - return; - } - - var links = element.getElementsByTagName("a"); - - for (var i = 0; i < links.length; i++) - { - if (typeof arguments[i + 1] == "string") - { - links[i].href = arguments[i + 1]; - links[i].setAttribute("target", "_blank"); - } - else if (typeof arguments[i + 1] == "function") - { - links[i].href = "javascript:void(0);"; - links[i].addEventListener("click", arguments[i + 1], false); - } - } - } - - function openFilters() - { - if (typeof UI != "undefined") - UI.openFiltersDialog(); - else - { - backgroundPage.openOptions(); - } - } - - function updateToggleButton(feature, isEnabled) - { - var button = E("toggle-" + feature); - if (isEnabled) - button.classList.remove("off"); - else - button.classList.add("off"); - } - - document.addEventListener("DOMContentLoaded", onDOMLoaded, false); -})(); diff --git a/helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/flasher.js b/helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/flasher.js deleted file mode 100644 index ddb4131..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/flasher.js +++ /dev/null @@ -1,108 +0,0 @@ -/* - * This file is part of Adblock Plus , - * Copyright (C) 2006-2014 Eyeo GmbH - * - * Adblock Plus is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 3 as - * published by the Free Software Foundation. - * - * Adblock Plus is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Adblock Plus. If not, see . - */ - -/** - * Draws a blinking border for a list of matching nodes. - */ - -var flasher = { - nodes: null, - count: 0, - timer: null, - - flash: function(nodes) - { - this.stop(); - if (nodes) - nodes = nodes.filter(function(node) node.nodeType == Node.ELEMENT_NODE); - if (!nodes || !nodes.length) - return; - - if (Prefs.flash_scrolltoitem && nodes[0].ownerDocument) - { - // Ensure that at least one node is visible when flashing - let wnd = nodes[0].ownerDocument.defaultView; - try - { - let topWnd = Utils.getChromeWindow(wnd); - let {getBrowser} = require("appSupport"); - let browser = (getBrowser ? getBrowser(topWnd) : null); - if (browser) - browser.markupDocumentViewer.scrollToNode(nodes[0]); - } - catch(e) - { - Cu.reportError(e); - } - } - - this.nodes = nodes; - this.count = 0; - - this.doFlash(); - }, - - doFlash: function() { - if (this.count >= 12) { - this.stop(); - return; - } - - if (this.count % 2) - this.switchOff(); - else - this.switchOn(); - - this.count++; - - this.timer = window.setTimeout(function() {flasher.doFlash()}, 300); - }, - - stop: function() { - if (this.timer) { - window.clearTimeout(this.timer); - this.timer = null; - } - - if (this.nodes) { - this.switchOff(); - this.nodes = null; - } - }, - - setOutline: function(outline, offset) - { - for (var i = 0; i < this.nodes.length; i++) - { - if ("style" in this.nodes[i]) - { - this.nodes[i].style.outline = outline; - this.nodes[i].style.outlineOffset = offset; - } - } - }, - - switchOn: function() - { - this.setOutline("#CC0000 dotted 2px", "-2px"); - }, - - switchOff: function() - { - this.setOutline("", ""); - } -}; diff --git a/helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/i18n.js b/helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/i18n.js deleted file mode 100644 index 8366268..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/i18n.js +++ /dev/null @@ -1,150 +0,0 @@ -/* - * This file is part of Adblock Plus , - * Copyright (C) 2006-2014 Eyeo GmbH - * - * Adblock Plus is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 3 as - * published by the Free Software Foundation. - * - * Adblock Plus is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Adblock Plus. If not, see . - */ - -var i18n; - -if (typeof ext != "undefined") - i18n = ext.i18n; -else if (typeof chrome != "undefined") - // TODO: This check only exist for backwards compatibility, while the Safari - // port isn't merged into the adblockpluschrome repo. So this branch should - // be removed when the Safari port was merged. - i18n = chrome.i18n; -else -{ - // Using Firefox' approach on i18n instead - - // Randomize URI to work around bug 719376 - var pageName = location.pathname.replace(/.*\//, '').replace(/\..*?$/, ''); - var stringBundle = Services.strings.createBundle("chrome://adblockplus/locale/" + pageName + - ".properties?" + Math.random()); - - function getI18nMessage(key) - { - return { - "message": stringBundle.GetStringFromName(key) - }; - } - - i18n = (function() - { - function getText(message, args) - { - var text = message.message; - var placeholders = message.placeholders; - - if (!args || !placeholders) - return text; - - for (var key in placeholders) - { - var content = placeholders[key].content; - if (!content) - continue; - - var index = parseInt(content.slice(1), 10); - if (isNaN(index)) - continue; - - var replacement = args[index - 1]; - if (typeof replacement === "undefined") - continue; - - text = text.split("$" + key + "$").join(replacement); - } - return text; - } - - return { - getMessage: function(key, args) - { - try{ - var message = getI18nMessage(key); - return getText(message, args); - } - catch(e) - { - Cu.reportError(e); - return "Missing translation: " + key; - } - } - }; - })(); -} - -// Inserts i18n strings into matching elements. Any inner HTML already in the element is -// parsed as JSON and used as parameters to substitute into placeholders in the i18n -// message. -i18n.setElementText = function(element, stringName, arguments) -{ - function processString(str, element) - { - var match = /^(.*?)<(a|strong)>(.*?)<\/\2>(.*)$/.exec(str); - if (match) - { - processString(match[1], element); - - var e = document.createElement(match[2]); - processString(match[3], e); - element.appendChild(e); - - processString(match[4], element); - } - else - element.appendChild(document.createTextNode(str)); - } - - while (element.lastChild) - element.removeChild(element.lastChild); - processString(i18n.getMessage(stringName, arguments), element); -} - -// Loads i18n strings -function loadI18nStrings() -{ - var nodes = document.querySelectorAll("[class^='i18n_']"); - for(var i = 0; i < nodes.length; i++) - { - var node = nodes[i]; - var arguments = JSON.parse("[" + node.textContent + "]"); - if (arguments.length == 0) - arguments = null; - - var className = node.className; - if (className instanceof SVGAnimatedString) - className = className.animVal; - var stringName = className.split(/\s/)[0].substring(5); - - i18n.setElementText(node, stringName, arguments); - } -} - -// Provides a more readable string of the current date and time -function i18n_timeDateStrings(when) -{ - var d = new Date(when); - var timeString = d.toLocaleTimeString(); - - var now = new Date(); - if (d.toDateString() == now.toDateString()) - return [timeString]; - else - return [timeString, d.toLocaleDateString()]; -} - -// Fill in the strings as soon as possible -window.addEventListener("DOMContentLoaded", loadI18nStrings, true); diff --git a/helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/overlay.xul b/helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/overlay.xul deleted file mode 100644 index 90b5b9f..0000000 --- a/helpers/DATA/firefox/trisquel/extensions/spyblock@gnu.org/chrome/content/ui/overlay.xul +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - %overlayDTD; - - %subscriptionsDTD; -]> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -