From 55eedb186917018c4022d9be0624f28395ccd6d9 Mon Sep 17 00:00:00 2001 From: evilhero Date: Sun, 10 Jul 2016 18:28:14 -0400 Subject: [PATCH] IMP: Added ALT_PULL=2 method for weeklypull management. Will now update against an external site and pull down already populated ComicID/IssueID's for the series that exist on the pullist. Alternate Search Names aren't needed with this option to match on pullist, as well as CV API Hits are also not used since it is all populated. Also allows for future viewing of pullists (up to 4 weeks in advance), FIX: Alternate search names now will be searched against when doing manual post-processing, FIX: When manually post-processing, if series volume wasn't specified would fail to match against v1 (by default), IMP:(#1309) Https_chain option now allowed within config.ini, IMP: 32P pack support on a per series basis (will search individual torrents first before packs), IMP: When pack is snatched, will mark all issues within pack that are not in a Downloaded status as Snatched within Mylar (annuals currently don't work), IMP: Removed unnecessary config spamming on startup when verbose mode was enabled, IMP: Allow for searching on 32p against series+publisher for some titles that distinguish between series by different publisher, IMP: Better series matching when trying to find series matches on 32P, FIX: When metatagging, if volume label is not provided within Mylar would default to None (now will be v1), IMP:(#1304) Attempt at better file parsing when utf-8 filenames are being parsed, FIX: Proper handling of Infinity issue number when file-checking, FIX: When adding series and annuals were enabled, if annual was a new release, would not be shown on the annual subset table for the given series (and subsequently wouldn't be auto-marked as Wanted), FIX:(#1306) Correct handling of the imported value when doing an import and moving files was selected (would previously error out during moving for some imports), FIX: When cbz files were being imported and were attempted to being auto-imported, would fail due to improper handling of the imported variable, FIX: Manage issues will now default the dropdown to the correct selected option, FIX: Manage Comics - fixed dropdown options for multiple selection of series - delete/pause/resume, IMP: Added 'delete stragglers' option to Story Arcs when deleting an arc to ensure that all traces of the arc are removed from the db, FIX: Manual/group metatagging would not tag properly if the START_YEAR_AS_VOLUME option was enabled, FIX: (#1313) NzbHydra wouldn't set the nzbid properly when using Failed Download handling/Retrying --- Mylar.py | 7 + data/interfaces/default/comicdetails.html | 22 +- data/interfaces/default/config.html | 4 +- data/interfaces/default/css/data_table.css | 28 +- data/interfaces/default/importresults.html | 2 +- .../default/importresults_popup.html | 2 +- data/interfaces/default/managecomics.html | 2 +- data/interfaces/default/storyarc.html | 24 +- data/interfaces/default/upcoming.html | 4 +- data/interfaces/default/weeklypull.html | 45 +- mylar/PostProcessor.py | 11 +- mylar/__init__.py | 38 +- mylar/auth32p.py | 81 +- mylar/cmtagmylar.py | 2 +- mylar/cv.py | 67 ++ mylar/filechecker.py | 133 ++- mylar/helpers.py | 68 +- mylar/importer.py | 5 +- mylar/librarysync.py | 2 +- mylar/locg.py | 128 +++ mylar/moveit.py | 24 +- mylar/search.py | 841 +++++++++--------- mylar/updater.py | 138 +-- mylar/webserve.py | 406 ++++++--- mylar/webstart.py | 16 +- mylar/weeklypull.py | 394 +++++++- 26 files changed, 1727 insertions(+), 767 deletions(-) create mode 100755 mylar/locg.py diff --git a/Mylar.py b/Mylar.py index a5fb0496..f49d1ffb 100644 --- a/Mylar.py +++ b/Mylar.py @@ -72,6 +72,7 @@ def main(): parser.add_argument('-d', '--daemon', action='store_true', help='Run as a daemon') parser.add_argument('-p', '--port', type=int, help='Force mylar to run on a specified port') parser.add_argument('-b', '--backup', action='store_true', help='Will automatically backup & keep the last 2 copies of the .db & ini files prior to startup') + parser.add_argument('-w', '--noweekly', action='store_true', help='Turn off weekly pull list check on startup (quicker boot sequence)') parser.add_argument('--datadir', help='Specify a directory where to store your data files') parser.add_argument('--config', help='Specify a config file to use') parser.add_argument('--nolaunch', action='store_true', help='Prevent browser from launching on startup') @@ -135,6 +136,11 @@ def main(): else: mylar.SAFESTART = False + if args.noweekly: + mylar.NOWEEKLY = True + else: + mylar.NOWEEKLY = False + # Try to create the DATA_DIR if it doesn't exist #if not os.path.exists(mylar.DATA_DIR): # try: @@ -228,6 +234,7 @@ def main(): 'enable_https': mylar.ENABLE_HTTPS, 'https_cert': mylar.HTTPS_CERT, 'https_key': mylar.HTTPS_KEY, + 'https_chain': mylar.HTTPS_CHAIN, 'http_username': mylar.HTTP_USERNAME, 'http_password': mylar.HTTP_PASSWORD, } diff --git a/data/interfaces/default/comicdetails.html b/data/interfaces/default/comicdetails.html index 2e2fea76..1b790dbf 100644 --- a/data/interfaces/default/comicdetails.html +++ b/data/interfaces/default/comicdetails.html @@ -313,18 +313,21 @@ Alternate file-naming to be used when post-processing / renaming files instead of the actual title. -
+
<% year_options = "Default - Keep the Year as is\nYear Removal - Remove issue publication year from searches (dangerous)\nFuzzy the Year - Increase & Decrease the issue publication year by one" %> -
- - - -
-
- + Default  Year Removal  Fuzzy the Year +
+ + %if mylar.ENABLE_32P and mylar.MODE_32P == 1: +
+ +
+ %endif + + @@ -461,7 +464,7 @@ %endif %if mylar.ENABLE_META: - + %endif %endif @@ -801,6 +804,7 @@ { 'sType': 'numeric', 'aTargets': [1] }, { 'iDataSort': [1], 'aTargets': [2] } ], + "aLengthMenu": [[10, 25, 50, -1], [10, 25, 50, 'All' ]], "oLanguage": { "sLengthMenu":"", "sEmptyTable": "No issue information available", diff --git a/data/interfaces/default/config.html b/data/interfaces/default/config.html index 8037f270..18452778 100755 --- a/data/interfaces/default/config.html +++ b/data/interfaces/default/config.html @@ -282,9 +282,9 @@ - Get API + Get API diff --git a/data/interfaces/default/css/data_table.css b/data/interfaces/default/css/data_table.css index d8245f53..d705d596 100755 --- a/data/interfaces/default/css/data_table.css +++ b/data/interfaces/default/css/data_table.css @@ -279,12 +279,20 @@ table.display tr.even.gradeC { background-color: #ebf5ff; } -table.display tr.even.gradeH{ - background-color: #FFF5CC; +table.display tr.even.gradeE { + background-color: #F96178; +} + +table.display tr.odd.gradeE { + background-color: #F96178; +} + +table.display tr.even.gradeH { + background-color: #FFF5CC; } table.display tr.odd.gradeH { - background-color: #FFF5CC; + background-color: #FFF5CC; } table.display tr.even.gradeL { @@ -340,6 +348,9 @@ table.display tr.gradeL #status { } table.display tr.gradeA td, table.display tr.gradeC td, +table.display tr.gradeE td, +table.display tr.gradeH td, +table.display tr.gradeL td, table.display tr.gradeX td, table.display tr.gradeU td, table.display tr.gradeP td, @@ -370,6 +381,14 @@ table.display_no_select tr.even.gradeC { background-color: #ebf5ff; } +table.display_no_select tr.even.gradeE { + background-color: #F96178; +} + +table.display_no_select tr.odd.gradeE { + background-color: #F96178; +} + table.display_no_select tr.even.gradeH{ background-color: #FFF5CC; } @@ -428,6 +447,9 @@ table.display_no_select tr.gradeL #status { } table.display_no_select tr.gradeA td, table.display_no_select tr.gradeC td, +table.display_no_select tr.gradeE td, +table.display_no_select tr.gradeH td, +table.display_no_select tr.gradeL td, table.display_no_select tr.gradeX td, table.display_no_select tr.gradeU td, table.display_no_select tr.gradeP td, diff --git a/data/interfaces/default/importresults.html b/data/interfaces/default/importresults.html index 146421f3..a7226646 100755 --- a/data/interfaces/default/importresults.html +++ b/data/interfaces/default/importresults.html @@ -140,7 +140,7 @@ %endif [Remove] %if result['SRID'] is not None and result['Status'] != 'Imported': - [Select] + [Select] %endif diff --git a/data/interfaces/default/importresults_popup.html b/data/interfaces/default/importresults_popup.html index b23d3b0d..43cd7458 100755 --- a/data/interfaces/default/importresults_popup.html +++ b/data/interfaces/default/importresults_popup.html @@ -53,7 +53,7 @@ <% calledby = "web-import" %> - Add this Comic + Add this Comic %else: Already in Library %endif diff --git a/data/interfaces/default/managecomics.html b/data/interfaces/default/managecomics.html index 32227261..b0ed3e20 100755 --- a/data/interfaces/default/managecomics.html +++ b/data/interfaces/default/managecomics.html @@ -57,7 +57,7 @@ grade = 'A' %> - +
${comic['ComicName']} (${comic['ComicYear']}) ${comic['recentstatus']} diff --git a/data/interfaces/default/storyarc.html b/data/interfaces/default/storyarc.html index 9c788d54..22e9aaae 100755 --- a/data/interfaces/default/storyarc.html +++ b/data/interfaces/default/storyarc.html @@ -96,7 +96,20 @@ ${item['SpanYears']} ${css}
${item['Have']}/${item['Total']}
- + + + %if item['CV_ArcID']: %endif @@ -114,7 +127,14 @@ <%def name="javascriptIncludes()"> - +