FIX: Monkey-patch for week 52-2018 pull being empty instead of starting on week 0-2019, FIX: Incorrect variable reference in search_queue when manual searching, FIX: If series start year was 2018, and first issue was in 2019, publication date would incorrectly use 2018 as the start year

This commit is contained in:
evilhero 2018-12-29 10:22:52 -05:00
parent d9ce193630
commit a6fc3aac28
4 changed files with 36 additions and 9 deletions

View File

@ -29,7 +29,7 @@
<table width="100%" align="center">
<tr>
<td style="vertical-align: middle; text-align: right">
<a href="pullist?week=${weekinfo['prev_weeknumber']}&year=${weekinfo['prev_year']}" title="Previous Week (${weekinfo['prev_weeknumber']})" onclick="$('#pull_table').page('first').draw('page');">
<a href="pullist?week=${weekinfo['prev_weeknumber']}&year=${weekinfo['prev_year']}&current=${weekinfo['weeknumber']}-${weekinfo['year']}" title="Previous Week (${weekinfo['prev_weeknumber']})" onclick="$('#pull_table').page('first').draw('page');">
<img src="interfaces/default/images/prev.gif" width="16" height="18" Alt="Previous"/>
</a>
</td>
@ -41,7 +41,7 @@
%endif
</td>
<td style="vertical-align: middle; text-align: left">
<a href="pullist?week=${weekinfo['next_weeknumber']}&year=${weekinfo['next_year']}" title="Next Week (${weekinfo['next_weeknumber']})" onclick="$('#pull_table').page('first').draw('page');">
<a href="pullist?week=${weekinfo['next_weeknumber']}&year=${weekinfo['next_year']}&current=${weekinfo['weeknumber']}-${weekinfo['year']}" title="Next Week (${weekinfo['next_weeknumber']})" onclick="$('#pull_table').page('first').draw('page');">
<img src="interfaces/default/images/next.gif" width="16" height="18" Alt="Next"/>
</a>
</td>

View File

@ -2894,15 +2894,29 @@ def torrentinfo(issueid=None, torrent_hash=None, download=False, monitor=False):
torrent_info['snatch_status'] = snatch_status
return torrent_info
def weekly_info(week=None, year=None):
def weekly_info(week=None, year=None, current=None):
#find the current week and save it as a reference point.
todaydate = datetime.datetime.today()
current_weeknumber = todaydate.strftime("%U")
if current is not None:
c_weeknumber = int(current[:current.find('-')])
c_weekyear = int(current[current.find('-')+1:])
else:
c_weeknumber = week
c_weekyear = year
if week:
weeknumber = int(week)
year = int(year)
#monkey patch for 2018/2019 - week 52/week 0
if all([weeknumber == 52, c_weeknumber == 51, c_weekyear == 2018]):
weeknumber = 0
year = 2019
elif all([weeknumber == 52, c_weeknumber == 0, c_weekyear == 2019]):
weeknumber = 51
year = 2018
#view specific week (prev_week, next_week)
startofyear = date(year,1,1)
week0 = startofyear - timedelta(days=startofyear.isoweekday())
@ -2913,11 +2927,20 @@ def weekly_info(week=None, year=None):
else:
#find the given week number for the current day
weeknumber = current_weeknumber
year = todaydate.strftime("%Y")
#monkey patch for 2018/2019 - week 52/week 0
if all([weeknumber == 52, c_weeknumber == 51, c_weekyear == 2018]):
weeknumber = 0
year = 2019
elif all([weeknumber == 52, c_weeknumber == 0, c_weekyear == 2019]):
weeknumber = 51
year = 2018
stweek = datetime.datetime.strptime(todaydate.strftime('%Y-%m-%d'), '%Y-%m-%d')
startweek = stweek - timedelta(days = (stweek.weekday() + 1) % 7)
midweek = startweek + timedelta(days = 3)
endweek = startweek + timedelta(days = 6)
year = todaydate.strftime("%Y")
prev_week = int(weeknumber) - 1
prev_year = year

View File

@ -1279,6 +1279,10 @@ def updateissuedata(comicid, comicname=None, issued=None, comicIssues=None, call
issue_collection(issuedata, nostatus='True')
styear = str(SeriesYear)
if firstdate is not None:
if SeriesYear != firstdate[:4]:
logger.fdebug('Series start date (%s) crosses over into different year (%s) - assuming store date of first issue (%s) as Start Year (even though CV will say previous year - it\'s all gravy).' % (SeriesYear, firstdate[:4], firstdate))
styear = str(firstdate[:4])
if firstdate[5:7] == '00':
stmonth = "?"

View File

@ -1420,7 +1420,7 @@ class WebInterface(object):
ComicVersion = cdname['ComicVersion']
ComicName = cdname['ComicName']
TorrentID_32p = cdname['TorrentID_32P']
Type = cdname['Type']
BookType = cdname['Type']
controlValueDict = {"IssueID": IssueID}
newStatus = {"Status": "Wanted"}
if mode == 'want':
@ -1466,7 +1466,7 @@ class WebInterface(object):
#Publisher = miy['ComicPublisher']
#UseAFuzzy = miy['UseFuzzy']
#ComicVersion = miy['ComicVersion']
s = mylar.SEARCH_QUEUE.put({'issueid': IssueID, 'comicname': ComicName, 'seriesyear': SeriesYear, 'comicid': ComicID, 'issuenumber': ComicIssue, 'type': Type})
s = mylar.SEARCH_QUEUE.put({'issueid': IssueID, 'comicname': ComicName, 'seriesyear': SeriesYear, 'comicid': ComicID, 'issuenumber': ComicIssue, 'booktype': BookType})
# foundcom, prov = search.search_init(ComicName, ComicIssue, ComicYear, SeriesYear, Publisher, issues['IssueDate'], storedate, IssueID, AlternateSearch, UseAFuzzy, ComicVersion, mode=mode, ComicID=ComicID, manualsearch=manualsearch, filesafe=ComicName_Filesafe, allow_packs=AllowPacks, torrentid_32p=TorrentID_32p)
# if foundcom['status'] is True:
# # file check to see if issue exists and update 'have' count
@ -1613,7 +1613,7 @@ class WebInterface(object):
return
pullSearch.exposed = True
def pullist(self, week=None, year=None, generateonly=False):
def pullist(self, week=None, year=None, generateonly=False, current=None):
myDB = db.DBConnection()
autowant = []
if generateonly is False:
@ -1628,7 +1628,7 @@ class WebInterface(object):
weeklyresults = []
wantedcount = 0
weekinfo = helpers.weekly_info(week, year)
weekinfo = helpers.weekly_info(week, year, current)
popit = myDB.select("SELECT * FROM sqlite_master WHERE name='weekly' and type='table'")
if popit: