1
0
Fork 0
mirror of https://github.com/evilhero/mylar synced 2025-02-02 12:31:44 +00:00
mylar/data/interfaces/default/upcoming.html
evilhero 55eedb1869 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
2016-07-10 18:28:14 -04:00

262 lines
11 KiB
HTML
Executable file

<%inherit file="base.html" />
<%!
import mylar
%>
<%def name="headerIncludes()">
<div id="subhead_container">
<div id="subhead_menu">
<a href="#" id="menu_link_scan" onclick="doAjaxCall('forceSearch',$(this))" data-success="Checking for wanted issues successful" data-error="Error checking wanted issues">Force Check</a>
</div>
</div>
</%def>
<%def name="body()">
<div class="title">
<h1 class="clearfix"><img src="interfaces/default/images/icon_wanted.png" alt="Wanted Issues"/>Wanted Issues (${wantedcount})</h1>
</div>
<div id="checkboxControls" style="float: right; vertical-align: middle; margin: 3px; margin-top: -1px;">
<div style="padding-bottom: 5px;">
<label for="Wanted" class="checkbox inline Wanted"><input type="checkbox" id="Wanted" checked="checked" /> Wanted: <b>${isCounts['Wanted']}</b></label>
%if mylar.UPCOMING_SNATCHED:
%if int(isCounts['Snatched']) > 0:
<label for="Snatched" class="checkbox inline Snatched"><input type="checkbox" id="Snatched" checked="checked" /> Snatched: <b>${isCounts['Snatched']}</b></label>
%endif
%endif
%if int(isCounts['Failed']) > 0 and mylar.FAILED_DOWNLOAD_HANDLING:
<label for="Failed" class="checkbox inline Failed"><input type="checkbox" id="Failed" checked="checked" /> Failed: <b>${isCounts['Failed']}</b></label>
%endif
</div>
</div>
<div class="table_wrapper" id="wanted_table_wrapper" >
<form action="markissues" method="get" id="markissues">
<div id="markissue" style="top:0;">
Mark selected issues as
<select name="action" onChange="doAjaxCall('markissues',$(this),'table',true);" data-error="You didn't select any issues" data-success="selected issues marked">
<option disabled="disabled" selected="selected">Choose...</option>
<option value="Skipped">Skipped</option>
<option value="Downloaded">Downloaded</option>
<option value="Archived">Archived</option>
<option value="Ignored">Ignored</option>
</select>
<input type="hidden" value="Go">
</div>
<table class="display" id="wanted_table">
<thead>
<tr>
<th id="select"><input type="checkbox" onClick="toggle(this)" /></th>
<th id="comicname">Comic</th>
<th id="issuenumber">Issue</th>
<th id="reldate">Release Date</th>
</tr>
</thead>
<tbody>
%for issue in issues:
<%
if issue['Status'] == 'Wanted':
grade = 'X'
elif issue['Status'] == 'Snatched':
grade = 'C'
elif issue['Status'] == 'Failed':
grade = 'C'
else:
grade = 'Z'
%>
<tr class="${issue['Status']} grade${grade}">
<td id="select"><input type="checkbox" name="${issue['IssueID']}" class="checkbox" value="${issue['IssueID']}"/></td>
<td id="comicname"><a href="comicDetails?ComicID=${issue['ComicID']}">
<%
if any(d['IssueID'] == str(issue['IssueID']) for d in ann_list):
adjcomicname = issue['ComicName'] + ' Annual'
else:
adjcomicname = issue['ComicName']
endif
%>
${adjcomicname}</a></td>
<td id="issuenumber">${issue['Issue_Number']}</td>
<td id="reldate">${issue['IssueDate']}</td>
</tr>
%endfor
</tbody>
</table>
</form>
</div>
<div class="title">
<h1 class="clearfix"><img src="interfaces/default/images/icon_upcoming.png" alt="Upcoming Issues"/>Upcoming Issues</h1>
</div>
<div id="tabs">
<ul>
<li><a href="#tabs-1">This Week's Upcoming (${upcoming_count})</a></li>
<li><a href="#tabs-2">Upcoming nodata</a></li>
<li><a href="#tabs-3">Future Upcoming (${futureupcoming_count})</a></li>
</ul>
<div id="tabs-1">
<div class="table_wrapper">
<table class="display_no_select" id="upcoming_table">
%if upcoming:
<thead>
<tr>
<th id="comicname">Comic</th>
<th id="issuenumber">Issue</th>
<th id="reldate">Release Date</th>
<th id="status">Status</th>
</tr>
</thead>
<tbody>
%for upcome in upcoming:
<tr class="gradeZ">
<td id="comicname"><a href="comicDetails?ComicID=${upcome['ComicID']}">${upcome['ComicName']}</a></td>
<td id="issuenumber">${upcome['IssueNumber']}</td>
<td id="reldate">${upcome['IssueDate']}</td>
<td id="status">${upcome['Status']}</td>
</tr>
%endfor
%else:
<tr><td align="center" width="100%"> no upcoming data to display</td></tr>
%endif
</tbody>
</table>
</div>
</div>
<div id="tabs-2">
<a name="upcoming_nodata"></a>
<a id="menu_link_edit" href="future_check">Force Check Availability</a>
<div class="table_wrapper">
<table class="display_no_select" id="upcoming_table">
%if future_nodata_upcoming:
<thead>
<tr>
<th id="delcolumn"></th>
<th id="comicname">Comic</th>
<th id="issuenumber">Issue</th>
<th id="reldate">Release Date</th>
<th id="status">Status</th>
</tr>
</thead>
<tbody>
%for f_nodata in future_nodata_upcoming:
<tr class="gradeZ">
<td id="delcolumn">
<a href="upcoming#upcoming_nodata" title="Delete series from auto-Want list" onclick="doAjaxCall('removeautowant?comicname=${f_nodata['ComicName']}&release=${f_nodata['IssueDate']}',$(this),'table')" data-success="${f_nodata['ComicName']} has been removed from the auto-want list"><img src="interfaces/default/images/skipped_icon.png" height="25" width="25" class="highqual" /></a>
</td>
%if f_nodata['ComicID'] is not None:
<td id="comicname"><a href="comicDetails?ComicID=${f_nodata['ComicID']}">${f_nodata['ComicName']}</a></td>
%else:
<td id="comicname">${f_nodata['ComicName']}</td>
%endif
<td id="issuenumber">${f_nodata['IssueNumber']}</td>
<td id="reldate">${f_nodata['IssueDate']}</td>
<td id="status">${f_nodata['Status']}</td>
</tr>
%endfor
%else:
<tr><td align="center" width="100%">no upcoming future data to display</td></tr>
%endif
</tbody>
</table>
</div>
</div>
<div id="tabs-3">
<a id="menu_link_edit" href="futurepulllist">View Future Pull-list</a>
<div class="table_wrapper">
<table class="display_no_select" id="upcoming_table">
%if futureupcoming:
<thead>
<tr>
<th id="comicname">Comic</th>
<th id="issuenumber">Issue</th>
<th id="reldate">Release Date</th>
<th id="status">Status</th>
</tr>
</thead>
<tbody>
%for f_upcome in futureupcoming:
<tr class="gradeZ">
<td id="comicname">${f_upcome['ComicName']}</td>
<td id="issuenumber">${f_upcome['IssueNumber']}</td>
<td id="reldate">${f_upcome['IssueDate']}</td>
<td id="status">${f_upcome['Status']}</td>
</tr>
%endfor
%else:
<tr><td align="center" width="100%">no upcoming future data to display</td></tr>
%endif
</tbody>
</table>
</div>
</div>
</div>
</%def>
<%def name="headIncludes()">
<link rel="stylesheet" href="interfaces/default/css/data_table.css">
</%def>
<%def name="javascriptIncludes()">
<script src="js/libs/jquery.dataTables.min.js"></script>
<script>
// show/hide different types of rows when the checkboxes are changed
$("#checkboxControls input").change(function(e){
var whichClass = $(this).attr('id')
$(this).showHideRows(whichClass)
return
$('tr.'+whichClass).each(function(i){
$(this).toggle();
});
});
// initially show/hide all the rows according to the checkboxes
$("#checkboxControls input").each(function(e){
var status = this.checked;
$("tr."+$(this).attr('id')).each(function(e){
if (status) {
$(this).show();
} else {
$(this).hide();
}
});
});
$.fn.showHideRows = function(whichClass){
var status = $('#checkboxControls > input, #'+whichClass).prop('checked')
$("tr."+whichClass).each(function(e){
if (status) {
$(this).show();
} else {
$(this).hide();
}
});
}
function initThisPage() {
$(function() {
$( "#tabs" ).tabs();
});
$('#wanted_table').dataTable({
"bDestroy":true,
"bFilter": false,
"bInfo": false,
"bPaginate": false
});
resetFilters("issues");
initActions();
}
$(document).ready(function() {
initThisPage();
});
</script>
</%def>