Skip to content

Commit

Permalink
Fix #1307 Update progress information and show Abort Scan link while …
Browse files Browse the repository at this point in the history
…scan is running.

Signed-off-by: Michael Herger <[email protected]>
  • Loading branch information
michaelherger committed Jan 24, 2025
1 parent 7cd347c commit 40db8ec
Show file tree
Hide file tree
Showing 7 changed files with 33 additions and 24 deletions.
1 change: 1 addition & 0 deletions Changelog9.html
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ <h2><a name="v9.0.2" id="v9.0.2"></a>Version 9.0.2</h2>
<li><a href="https://github.com/LMS-Community/slimserver/issues/1193">#1193</a> - Don't throw error when fulltext search is being used before the end of a scan.</li>
<li><a href="https://github.com/LMS-Community/slimserver/issues/1288">#1288</a> - Update Carp::Assert to latest to fix compatibility with recent Perl versions.</li>
<li><a href="https://github.com/LMS-Community/slimserver/pull/1303">#1303</a> - Fix an issue where browsing releases would sometimes create thousands of parameters (and more - thanks @darrel-k!).</li>
<li><a href="https://github.com/LMS-Community/slimserver/pull/1307">#1307</a> - Fix scanner progress information in the web UI.</li>
<li></li>
</ul>
<br />
Expand Down
6 changes: 5 additions & 1 deletion HTML/EN/html/SqueezeJS/UI.js
Original file line number Diff line number Diff line change
Expand Up @@ -2234,9 +2234,13 @@ SqueezeJS.UI.ScannerInfoExtended = function(){
Ext.get('abortscanlink').hide();
}

else
else {
Ext.get('message').update(decodeURIComponent(result.message));

if (Ext.get('abortscanlink'))
Ext.get('abortscanlink').show();
}

progressTimer.delay(5000)
}
};
Expand Down
13 changes: 5 additions & 8 deletions HTML/EN/html/global.js
Original file line number Diff line number Diff line change
Expand Up @@ -89,7 +89,6 @@ function showElements(myAry,style) {
var div = myAry[i];

if ($(div)) {
//document.getElementByID(div).style.display = 'block';
$(div).style.display = style;
}
}
Expand Down Expand Up @@ -119,16 +118,14 @@ function refreshElement(element, value, truncate) {
// this function parses the response into a hash object used in all update functions
function parseData(thisData) {
var lines = thisData.split("\n");
var returnData = new Array();
var returnData = {};

for (i=0; i<lines.length; i++) {
var comment = /^#/;
var blank = /^\s*$/;
var preTag = /<\\*pre>/;
var commentLine = lines[i].match(comment);
var blankLine = lines[i].match(blank);
var preTag = lines[i].match(/<\/*pre>/);
var commentLine = lines[i].match(/^#/);
var blankLine = lines[i].match(/^\s*$/);

if (!commentLine && !blankLine && preTag) {
if (!commentLine && !blankLine && !preTag) {
var keyValue = lines[i].split('|');
var key = keyValue[0];
var value = keyValue[1];
Expand Down
8 changes: 6 additions & 2 deletions HTML/EN/html/progress.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
const pollingInterval = 2000;

function ajaxProgressCallback(theData) {

var parsedData = fillDataHash(theData);
Expand Down Expand Up @@ -30,15 +32,17 @@ function ajaxProgressCallback(theData) {

if (parsedData['message']) {
if (parsedData['total_time']) {
refreshElement('message',parsedData['message']+ timestring + parsedData['total_time']);
refreshElement('message',parsedData['message']+ '<br>' + timestring + ' ' + parsedData['total_time']);
} else {
refreshElement('message',parsedData['message']);
}

hideElements(['abortscanlink']);
setTimeout( "ajaxProgressRefresh()", pollingInterval);
} else {
refreshElement('message','');
showElements(['abortscanlink']);
setTimeout( "ajaxProgressRefresh()", 5000);
setTimeout( "ajaxProgressRefresh()", pollingInterval);
}
}

Expand Down
21 changes: 13 additions & 8 deletions HTML/EN/progress.html
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@
</pre>
[%- ELSE -%]
[% pagetitle = (type || "SCANNER") _ "_PROGRESS" | string %]

[% pageHeaderMenu = pagetitle %]

[%- IF !abortScan -%]

[% pageHeaderScripts = BLOCK %]
Expand All @@ -32,14 +32,19 @@
</script>
[% END %]

[% bodyscript = 'onload="ajaxProgressRefresh();"' %]

[% END %]


[% bodyscript = 'onload="ajaxProgressRefresh();"' %]

[% IF !ajaxUpdate; PROCESS pageheader.html; END %]

[%- IF abortScan -%]
<div>[% "SCAN_ABORTED" | string %]</div>
<script type="text/javascript">
setTimeout(function() {
window.location.href = "[% webroot %][% path %]?playerid=[% playerid | uri %]&player=[% player | uri %]";
}, 5000);
</script>
[% END %]

[% IF desc && type && !ajaxUpdate %]<div id="browsedbHeader"><br/>[% type _ "_PROGRESS_DESC" | string %]<br/>&nbsp;</div>[% END %]
Expand All @@ -52,8 +57,8 @@
<div class="progressItem">
<span id="Name[% num %]"></span>&nbsp;
<span id="Count[% num %]">
&nbsp;(<span id="Done[% num %]"></span><span
id="XofY[% num %]">&nbsp;[% "OF" | string %]&nbsp;</span><span
&nbsp;(<span id="Done[% num %]"></span><span
id="XofY[% num %]">&nbsp;[% "OF" | string %]&nbsp;</span><span
id="Total[% num %]"></span>)
</span>&nbsp;
<span id="Active[% num %]"></span>&nbsp;
Expand All @@ -72,7 +77,7 @@
[% odd = (not odd) %]
[% END %]

[% IF scanning && !ajaxUpdate %]<div><br/><a href="[% webroot %][% path %]?playerid=[% playerid | uri %]&amp;player=[% player | uri %]&amp;abortScan=1">[% "ABORT_SCAN" | string %]</a></div>[% END %]
[% IF !ajaxUpdate %]<div id="abortscanlink" style="display: none;"><br/><a href="[% webroot %][% path %]?playerid=[% playerid | uri %]&amp;player=[% player | uri %]&amp;abortScan=1">[% "ABORT_SCAN" | string %]</a></div>[% END %]
<div id="message">[% IF message %][% message %][% END %][% IF total_time %] [% "TOTAL_TIME" | string %][% total_time %][% END %]</div>

[% IF !ajaxUpdate; PROCESS pagefooter.html; END %]
Expand Down
6 changes: 2 additions & 4 deletions HTML/EN/settings/server/status.html
Original file line number Diff line number Diff line change
Expand Up @@ -62,14 +62,12 @@
[% END %]
[% END %]

[% IF progress AND NOT simple %]
[% IF NOT simple %]
[% WRAPPER setting title="SCANNER_PROGRESS" %]
[% progress %]
[% IF scanning && !abortScan %]
<div id="abortscanlink"><br/>
<div id="abortscanlink" style="display: none;"><br/>
<a href="[% webroot %][% path %]?playerid=[% playerid | uri %]&amp;player=[% player | uri %]&amp;abortScan=1">[% "ABORT_SCAN" | string %]</a>[%# stringCOLON %] [%# scanning | string %]
</div>
[% END %]
[% END %]
[% END %]

Expand Down
2 changes: 1 addition & 1 deletion Slim/Schema/Album.pm
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ sub addReleaseTypeStrings {
}
}

$stringsObj->delete;
$stringsObj->delete unless Slim::Music::Import->stillScanning();
}
}

Expand Down

0 comments on commit 40db8ec

Please sign in to comment.