From 74064aa0019f34ed3be8fb5a01ec94c0e77dc208 Mon Sep 17 00:00:00 2001 From: JackDandy Date: Sat, 28 Jan 2017 19:42:39 +0000 Subject: [PATCH] Update jquery-tokeninput 1.60 to 1.62 (9c36e19). --- CHANGES.md | 1 + gui/slick/css/dark.css | 57 +- gui/slick/css/lib/token-input.min.css | 1 + gui/slick/css/light.css | 60 -- gui/slick/css/style.css | 110 +-- .../interfaces/default/config_subtitles.tmpl | 227 ++--- gui/slick/interfaces/default/inc_top.tmpl | 1 + gui/slick/js/lib/jquery.tokeninput.js | 861 ------------------ gui/slick/js/lib/jquery.tokeninput.min.js | 39 + 9 files changed, 182 insertions(+), 1175 deletions(-) create mode 100644 gui/slick/css/lib/token-input.min.css delete mode 100644 gui/slick/js/lib/jquery.tokeninput.js create mode 100644 gui/slick/js/lib/jquery.tokeninput.min.js diff --git a/CHANGES.md b/CHANGES.md index 6db9f747..99a79e5e 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -33,6 +33,7 @@ * Update jquery.cookiejar 1.0.1 to 1.0.2 * Update jQuery JSON 2.2 (c908771) to 2.6 (2339804) * Update jquery.form plugin 3.35.0 to 3.51.0 (6bf24a5) +* Update jquery-tokeninput 1.60 to 1.62 (9c36e19) * Update qTip 2.2.1 to 2.2.2 diff --git a/gui/slick/css/dark.css b/gui/slick/css/dark.css index c0113931..7063fffb 100644 --- a/gui/slick/css/dark.css +++ b/gui/slick/css/dark.css @@ -1450,65 +1450,18 @@ thead.tablesorter-stickyHeader{ color:#000 } - /* ======================================================================= -token-input.css +token-input.css Overrides ========================================================================== */ -ul.token-input-list{ - border:1px solid #ccc; - background-color:#ddd -} - -ul.token-input-list li input{ - border:0; - background-color:white -} - -li.token-input-token{ - background-color:#d0efa0; - color:#000 -} - -li.token-input-token span{ - color:#777 -} - -li.token-input-selected-token{ - background-color:#08844e; - color:#ddd -} - -li.token-input-selected-token span{ - color:#bbb -} - -div.token-input-dropdown{ - background-color:#ddd; - color:#000; - border-left-color:#ccc; - border-right-color:#ccc; - border-bottom-color:#ccc -} - -div.token-input-dropdown p{ - color:#777 -} - +ul.token-input-list, +div.token-input-dropdown, div.token-input-dropdown ul li{ background-color:#ddd } -div.token-input-dropdown ul li.token-input-dropdown-item{ - background-color:#fafafa -} - -div.token-input-dropdown ul li.token-input-dropdown-item2{ - background-color:#ddd -} - -div.token-input-dropdown ul li.token-input-selected-dropdown-item{ - background-color:#6196c2 +li.token-input-selected-token{ + color:#ddd } /* ======================================================================= diff --git a/gui/slick/css/lib/token-input.min.css b/gui/slick/css/lib/token-input.min.css new file mode 100644 index 00000000..16f33eb6 --- /dev/null +++ b/gui/slick/css/lib/token-input.min.css @@ -0,0 +1 @@ +div.token-input-dropdown,ul.token-input-list{overflow:hidden;font-size:12px;font-family:Verdana,sans-serif}ul.token-input-list,ul.token-input-list li{list-style-type:none}ul.token-input-list{height:auto!important;height:1%;width:400px;border:1px solid #999;cursor:text;z-index:999;margin:0;padding:0;background-color:#fff;clear:left}ul.token-input-list li input{border:0;width:350px;padding:3px 8px;background-color:#fff;-webkit-appearance:caret}ul.token-input-disabled,ul.token-input-disabled li input{background-color:#E8E8E8}ul.token-input-disabled li.token-input-token{background-color:#D9E3CA;color:#7D7D7D}ul.token-input-disabled li.token-input-token span{color:#CFCFCF;cursor:default}li.token-input-token{overflow:hidden;height:auto!important;height:1%;margin:3px;padding:3px 5px;background-color:#d0efa0;color:#000;font-weight:700;cursor:default;display:block}li.token-input-token p{float:left;padding:0;margin:0}li.token-input-token span{float:right;color:#777;cursor:pointer}li.token-input-selected-token{background-color:#08844e;color:#fff}li.token-input-selected-token span{color:#bbb}div.token-input-dropdown{position:absolute;width:400px;background-color:#fff;border-left:1px solid #ccc;border-right:1px solid #ccc;border-bottom:1px solid #ccc;cursor:default;z-index:1}div.token-input-dropdown p{margin:0;padding:5px;font-weight:700;color:#777}div.token-input-dropdown ul{margin:0;padding:0}div.token-input-dropdown ul li{background-color:#fff;padding:3px;list-style-type:none}div.token-input-dropdown ul li.token-input-dropdown-item{background-color:#fafafa}div.token-input-dropdown ul li.token-input-dropdown-item2{background-color:#fff}div.token-input-dropdown ul li em{font-weight:700;font-style:normal}div.token-input-dropdown ul li.token-input-selected-dropdown-item{background-color:#d0efa0} \ No newline at end of file diff --git a/gui/slick/css/light.css b/gui/slick/css/light.css index 94b04bd8..1db3422a 100644 --- a/gui/slick/css/light.css +++ b/gui/slick/css/light.css @@ -1382,66 +1382,6 @@ thead.tablesorter-stickyHeader{ color:#fff } -/* ======================================================================= -token-input.css -========================================================================== */ - -ul.token-input-list{ - border:1px solid #ccc; - background-color:#fff -} - -ul.token-input-list li input{ - border:0; - background-color:white -} - -li.token-input-token{ - background-color:#d0efa0; - color:#000 -} - -li.token-input-token span{ - color:#777 -} - -li.token-input-selected-token{ - background-color:#08844e; - color:#fff -} - -li.token-input-selected-token span{ - color:#bbb -} - -div.token-input-dropdown{ - background-color:#fff; - color:#000; - border-left-color:#ccc; - border-right-color:#ccc; - border-bottom-color:#ccc -} - -div.token-input-dropdown p{ - color:#777 -} - -div.token-input-dropdown ul li{ - background-color:#fff -} - -div.token-input-dropdown ul li.token-input-dropdown-item{ - background-color:#fafafa -} - -div.token-input-dropdown ul li.token-input-dropdown-item2{ - background-color:#fff -} - -div.token-input-dropdown ul li.token-input-selected-dropdown-item{ - background-color:#6196c2 -} - /* ======================================================================= jquery.confirm.css ========================================================================== */ diff --git a/gui/slick/css/style.css b/gui/slick/css/style.css index 369c4373..f2b61462 100644 --- a/gui/slick/css/style.css +++ b/gui/slick/css/style.css @@ -4304,58 +4304,25 @@ thead.tablesorter-stickyHeader{ } /* ======================================================================= -token-input.css +token-input.css Overrides ========================================================================== */ ul.token-input-list{ - overflow:hidden; - height:auto !important; - height:1%; width:273px; border:1px solid #ccc; - cursor:text; font-size:10px; - font-family:Verdana; - z-index:999; - margin:0; padding:0 0 1px 0; - background-color:#ddd; - list-style-type:none; -/* clear:left; */ - border-top-left-radius:3px; - border-top-right-radius:3px; - border-bottom-left-radius:3px; - border-bottom-right-radius:3px -} - -ul.token-input-list li{ - list-style-type:none + clear:none; + border-radius:3px } ul.token-input-list li input{ - border:0; padding:3px 4px; - background-color:white -/* -webkit-appearance:caret */ + -webkit-appearance:none } li.token-input-token{ - overflow:hidden; - height:auto !important; - height:1%; - margin:3px; - padding:3px 5px 0 5px; - background-color:#d0efa0; - color:#000; - font-weight:bold; - cursor:default; - display:block -} - -li.token-input-token img{ - padding-top:7px; - padding-right:4px; - float:left + padding:3px 5px 0 5px } li.token-input-token input{ @@ -4365,75 +4332,27 @@ li.token-input-token input{ } li.token-input-token p{ - float:left; - padding:0; - margin:0; line-height:2.0 !important } -li.token-input-token span{ - float:right; - color:#777; - cursor:pointer -} - -li.token-input-selected-token{ - background-color:#08844e; - color:#ddd -} - -li.token-input-selected-token span{ - color:#bbb -} - li.token-input-input-token input{ - margin:3px 3px 3px 3px !important + margin:3px !important } div.token-input-dropdown{ - position:absolute; width:273px; - overflow:hidden; - border-left:1px solid; - border-right:1px solid; - border-bottom:1px solid; - cursor:default; - font-size:11px; - font-family:Verdana; - z-index:1 + color:#000; + font-size:11px } div.token-input-dropdown p{ - margin:0; - padding:3px; - font-weight:bold; - color:#777 -} - -div.token-input-dropdown ul{ - margin:0; - padding:0 -} - -div.token-input-dropdown ul li{ - background-color:#ddd; - padding:3px; - list-style-type:none -} - -div.token-input-dropdown ul li.token-input-dropdown-item{ - background-color:#fafafa + padding:3px } div.token-input-dropdown ul li.token-input-dropdown-item2{ background-color:#ddd } -div.token-input-dropdown ul li em{ - font-weight:bold; - font-style:normal -} - div.token-input-dropdown ul li.token-input-selected-dropdown-item{ background-color:#6196c2 } @@ -4442,6 +4361,17 @@ span.token-input-delete-token{ margin:0 1px } +li.token-input-token img{ + padding:5px 4px 0 0; + float:left +} + +li.token-input-dropdown-item img, +li.token-input-dropdown-item2 img{ + padding:2px 4px 0 0; + float:left +} + /* ======================================================================= jquery.confirm.css ========================================================================== */ diff --git a/gui/slick/interfaces/default/config_subtitles.tmpl b/gui/slick/interfaces/default/config_subtitles.tmpl index 60271ff3..11f978e0 100644 --- a/gui/slick/interfaces/default/config_subtitles.tmpl +++ b/gui/slick/interfaces/default/config_subtitles.tmpl @@ -12,27 +12,30 @@ - + @@ -43,118 +46,118 @@ #end if
-
+
-
+ -
- +
+ -
+
-
-

Subtitles Search

-

Settings that dictate how SickGear handles subtitles search results.

-
+
+

Subtitles Search

+

Settings that dictate how SickGear handles subtitles search results.

+
-
- - -
-
-
- -
-
- - - -
-
- - -
-
- - -
-

-
-
-
+
+ + +
+
+
+ +
+
+ + + +
+
+ + +
+
+ + +
+

+
+ +
-
+
-
-

Subtitle Plugins

-

Check off and drag the plugins into the order you want them to be used.

-

At least one plugin is required.

-

* Web-scraping plugin

-
+
+

Subtitle Plugins

+

Check off and drag the plugins into the order you want them to be used.

+

At least one plugin is required.

+

* Web-scraping plugin

+
-
-
    - #for $curService in $sickbeard.subtitles.sortedServiceList(): - #set $curName = $curService.id -
  • - - #set $provider_url = $curService.url - - $curService.name - - $curService.name.capitalize() - #if not $curService.api_based then "*" else ""# - -
  • - #end for -
- "/> - -

-
-
+
+
    +#for $curService in $sickbeard.subtitles.sortedServiceList(): + #set $curName = $curService.id +
  • + + #set $provider_url = $curService.url + + $curService.name + + $curService.name.capitalize() + #if not $curService.api_based#*#end if# + +
  • +#end for +
+ "> -

+

+
+
-
+

- -
+
+ + +
-#include $os.path.join($sickbeard.PROG_DIR, 'gui/slick/interfaces/default/inc_bottom.tmpl') \ No newline at end of file +#include $os.path.join($sickbeard.PROG_DIR, 'gui/slick/interfaces/default/inc_bottom.tmpl') diff --git a/gui/slick/interfaces/default/inc_top.tmpl b/gui/slick/interfaces/default/inc_top.tmpl index 34f7466a..4c8c2f73 100644 --- a/gui/slick/interfaces/default/inc_top.tmpl +++ b/gui/slick/interfaces/default/inc_top.tmpl @@ -45,6 +45,7 @@ + diff --git a/gui/slick/js/lib/jquery.tokeninput.js b/gui/slick/js/lib/jquery.tokeninput.js deleted file mode 100644 index 2afcc0f2..00000000 --- a/gui/slick/js/lib/jquery.tokeninput.js +++ /dev/null @@ -1,861 +0,0 @@ -/* - * jQuery Plugin: Tokenizing Autocomplete Text Entry - * Version 1.6.0 - * - * Copyright (c) 2009 James Smith (http://loopj.com) - * Licensed jointly under the GPL and MIT licenses, - * choose which one suits your project best! - * - */ - -(function ($) { -// Default settings -var DEFAULT_SETTINGS = { - // Search settings - method: "GET", - contentType: "json", - queryParam: "q", - searchDelay: 300, - minChars: 1, - propertyToSearch: "name", - jsonContainer: null, - - // Display settings - hintText: "Type in a search term", - noResultsText: "No results", - searchingText: "Searching...", - deleteText: "×", - animateDropdown: true, - - // Tokenization settings - tokenLimit: null, - tokenDelimiter: ",", - preventDuplicates: false, - - // Output settings - tokenValue: "id", - - // Prepopulation settings - prePopulate: null, - processPrePopulate: true, - - // Manipulation settings - idPrefix: "token-input-", - - // Formatters - resultsFormatter: function(item){ return "
  • " + item[this.propertyToSearch]+ "
  • " }, - tokenFormatter: function(item) { return "
  • " + item[this.propertyToSearch] + "

  • " }, - flag: "flag", - - // Callbacks - onResult: null, - onAdd: null, - onDelete: null, - onReady: null -}; - -// Default classes to use when theming -var DEFAULT_CLASSES = { - tokenList: "token-input-list", - token: "token-input-token", - tokenDelete: "token-input-delete-token", - selectedToken: "token-input-selected-token", - highlightedToken: "token-input-highlighted-token", - dropdown: "token-input-dropdown", - dropdownItem: "token-input-dropdown-item", - dropdownItem2: "token-input-dropdown-item2", - selectedDropdownItem: "token-input-selected-dropdown-item", - inputToken: "token-input-input-token" -}; - -// Input box position "enum" -var POSITION = { - BEFORE: 0, - AFTER: 1, - END: 2 -}; - -// Keys "enum" -var KEY = { - BACKSPACE: 8, - TAB: 9, - ENTER: 13, - ESCAPE: 27, - SPACE: 32, - PAGE_UP: 33, - PAGE_DOWN: 34, - END: 35, - HOME: 36, - LEFT: 37, - UP: 38, - RIGHT: 39, - DOWN: 40, - NUMPAD_ENTER: 108, - COMMA: 188 -}; - -// Additional public (exposed) methods -var methods = { - init: function(url_or_data_or_function, options) { - var settings = $.extend({}, DEFAULT_SETTINGS, options || {}); - - return this.each(function () { - $(this).data("tokenInputObject", new $.TokenList(this, url_or_data_or_function, settings)); - }); - }, - clear: function() { - this.data("tokenInputObject").clear(); - return this; - }, - add: function(item) { - this.data("tokenInputObject").add(item); - return this; - }, - remove: function(item) { - this.data("tokenInputObject").remove(item); - return this; - }, - get: function() { - return this.data("tokenInputObject").getTokens(); - } -} - -// Expose the .tokenInput function to jQuery as a plugin -$.fn.tokenInput = function (method) { - // Method calling and initialization logic - if(methods[method]) { - return methods[method].apply(this, Array.prototype.slice.call(arguments, 1)); - } else { - return methods.init.apply(this, arguments); - } -}; - -// TokenList class for each input -$.TokenList = function (input, url_or_data, settings) { - // - // Initialization - // - - // Configure the data source - if($.type(url_or_data) === "string" || $.type(url_or_data) === "function") { - // Set the url to query against - settings.url = url_or_data; - - // If the URL is a function, evaluate it here to do our initalization work - var url = computeURL(); - - // Make a smart guess about cross-domain if it wasn't explicitly specified - if(settings.crossDomain === undefined) { - if(url.indexOf("://") === -1) { - settings.crossDomain = false; - } else { - settings.crossDomain = (location.href.split(/\/+/g)[1] !== url.split(/\/+/g)[1]); - } - } - } else if(typeof(url_or_data) === "object") { - // Set the local data to search through - settings.local_data = url_or_data; - } - - // Build class names - if(settings.classes) { - // Use custom class names - settings.classes = $.extend({}, DEFAULT_CLASSES, settings.classes); - } else if(settings.theme) { - // Use theme-suffixed default class names - settings.classes = {}; - $.each(DEFAULT_CLASSES, function(key, value) { - settings.classes[key] = value + "-" + settings.theme; - }); - } else { - settings.classes = DEFAULT_CLASSES; - } - - - // Save the tokens - var saved_tokens = []; - - // Keep track of the number of tokens in the list - var token_count = 0; - - // Basic cache to save on db hits - var cache = new $.TokenList.Cache(); - - // Keep track of the timeout, old vals - var timeout; - var input_val; - - // Create a new text input an attach keyup events - var input_box = $("") - .css({ - outline: "none" - }) - .attr("id", settings.idPrefix + input.id) - .focus(function () { - if (settings.tokenLimit === null || settings.tokenLimit !== token_count) { - show_dropdown_hint(); - } - }) - .blur(function () { - hide_dropdown(); - $(this).val(""); - }) - .bind("keyup keydown blur update", resize_input) - .keydown(function (event) { - var previous_token; - var next_token; - - switch(event.keyCode) { - case KEY.LEFT: - case KEY.RIGHT: - case KEY.UP: - case KEY.DOWN: - if(!$(this).val()) { - previous_token = input_token.prev(); - next_token = input_token.next(); - - if((previous_token.length && previous_token.get(0) === selected_token) || (next_token.length && next_token.get(0) === selected_token)) { - // Check if there is a previous/next token and it is selected - if(event.keyCode === KEY.LEFT || event.keyCode === KEY.UP) { - deselect_token($(selected_token), POSITION.BEFORE); - } else { - deselect_token($(selected_token), POSITION.AFTER); - } - } else if((event.keyCode === KEY.LEFT || event.keyCode === KEY.UP) && previous_token.length) { - // We are moving left, select the previous token if it exists - select_token($(previous_token.get(0))); - } else if((event.keyCode === KEY.RIGHT || event.keyCode === KEY.DOWN) && next_token.length) { - // We are moving right, select the next token if it exists - select_token($(next_token.get(0))); - } - } else { - var dropdown_item = null; - - if(event.keyCode === KEY.DOWN || event.keyCode === KEY.RIGHT) { - dropdown_item = $(selected_dropdown_item).next(); - } else { - dropdown_item = $(selected_dropdown_item).prev(); - } - - if(dropdown_item.length) { - select_dropdown_item(dropdown_item); - } - return false; - } - break; - - case KEY.BACKSPACE: - previous_token = input_token.prev(); - - if(!$(this).val().length) { - if(selected_token) { - delete_token($(selected_token)); - hidden_input.change(); - } else if(previous_token.length) { - select_token($(previous_token.get(0))); - } - - return false; - } else if($(this).val().length === 1) { - hide_dropdown(); - } else { - // set a timeout just long enough to let this function finish. - setTimeout(function(){do_search();}, 5); - } - break; - - case KEY.TAB: - case KEY.ENTER: - case KEY.NUMPAD_ENTER: - case KEY.COMMA: - if(selected_dropdown_item) { - add_token($(selected_dropdown_item).data("tokeninput")); - hidden_input.change(); - return false; - } - break; - - case KEY.ESCAPE: - hide_dropdown(); - return true; - - default: - if(String.fromCharCode(event.which)) { - // set a timeout just long enough to let this function finish. - setTimeout(function(){do_search();}, 5); - } - break; - } - }); - - // Keep a reference to the original input box - var hidden_input = $(input) - .hide() - .val("") - .focus(function () { - input_box.focus(); - }) - .blur(function () { - input_box.blur(); - }); - - // Keep a reference to the selected token and dropdown item - var selected_token = null; - var selected_token_index = 0; - var selected_dropdown_item = null; - - // The list to store the token items in - var token_list = $("