mirror of
https://github.com/aunefyren/wrapperr
synced 2025-03-04 22:47:15 +00:00
Custom intro-text, timebug fixed, timezone value updates
New custom intro message, with HTML allowed Fixed bug where timezone was always Oslo Removed hardwired timeframe reference Tweaked time conversion functions, 60 seconds no longer outputs 1 min and 0 seconds. Changed oldest albums function to sort out unknown years beforehand and not receive whole array Changed movie function to not print year if value is empty
This commit is contained in:
parent
c12ac89bc0
commit
e7e783f89e
7 changed files with 49 additions and 29 deletions
10
admin.js
10
admin.js
|
@ -164,7 +164,7 @@ function set_tautulli(back) {
|
|||
|
||||
html += '<div class="form-group">';
|
||||
html += '<label for="timezone" title="The timezone the data is located in.">Timezone <a href="https://www.php.net/manual/en/timezones.php" target="_blank">(List)</a></label>';
|
||||
html += '<input type="text" class="form-control" id="timezone" value="Europe/Oslo" autocomplete="off" placeholder="Europe/Oslo" required /><br>';
|
||||
html += '<input type="text" class="form-control" id="timezone" value="' + timezone + '" autocomplete="off" placeholder="Europe/Oslo" required /><br>';
|
||||
html += '</div>';
|
||||
|
||||
html += '<div class="form-group">';
|
||||
|
@ -241,6 +241,11 @@ function set_tautulli_details(back) {
|
|||
html += '<input type="datetime-local" class="form-control" id="wrapped_end" value="' + temp_date_first[2].trim() + '-' + temp_date_first[1].trim() + '-' + temp_date_first[0].trim() + 'T' + temp_date_second[0].trim() + ':' + temp_date_second[1].trim() + '" required /></label>';
|
||||
html += '</div>';
|
||||
|
||||
html += '<div class="form-group">';
|
||||
html += '<label for="stats_intro" title="Introduction text that is shown when the statistics are done loading. Could be used to inform about chosen timeframe. HTML allowed.">Introduction for statistics page<br>';
|
||||
html += '<textarea cols="40" rows="5" class="form-control" style="resize:vertical;" id="stats_intro" name="stats_intro" value="" autocomplete="off" placeholder="New year, new page of statistics..."></textarea></label>';
|
||||
html += '</div>';
|
||||
|
||||
html += '<hr>';
|
||||
|
||||
html += '<div class="form-group">';
|
||||
|
@ -349,6 +354,7 @@ function set_tautulli_details(back) {
|
|||
|
||||
html += '</form>';
|
||||
document.getElementById("setup").innerHTML = html;
|
||||
document.getElementById("stats_intro").value = stats_intro;
|
||||
}
|
||||
|
||||
function test_tautulli_connection() {
|
||||
|
@ -407,7 +413,7 @@ function set_tautulli_last(back) {
|
|||
alert("The wrapped end period must be later than the wrapped start period.");
|
||||
return;
|
||||
}
|
||||
|
||||
stats_intro = document.getElementById('stats_intro').value;
|
||||
get_user_movie_stats = document.getElementById('get_user_movie_stats').checked;
|
||||
get_user_show_stats = document.getElementById('get_user_show_stats').checked;
|
||||
get_user_show_buddy = document.getElementById('get_user_show_buddy').checked;
|
||||
|
|
|
@ -72,7 +72,7 @@ var ssl = false;
|
|||
var password = "";
|
||||
var username = "";
|
||||
|
||||
var timezone = "";
|
||||
var timezone = "Europe/Oslo";
|
||||
|
||||
var wrapped_start = new Date(0);
|
||||
wrapped_start.setUTCSeconds(1609455600);
|
||||
|
@ -97,6 +97,8 @@ var use_logs = true;
|
|||
var current_password = "";
|
||||
var current_username = "";
|
||||
|
||||
var stats_intro = "New year, new page of statistics...";
|
||||
|
||||
$(document).ready(function() {
|
||||
|
||||
get_config_initial("../");
|
||||
|
|
|
@ -19,7 +19,8 @@ $functions = array("get_user_movie_stats" => $config->get_user_movie_stats,
|
|||
"get_year_stats_movies" => $config->get_year_stats_movies,
|
||||
"get_year_stats_shows" => $config->get_year_stats_shows,
|
||||
"get_year_stats_music" => $config->get_year_stats_music,
|
||||
"get_year_stats_leaderboard" => $config->get_year_stats_leaderboard
|
||||
"get_year_stats_leaderboard" => $config->get_year_stats_leaderboard,
|
||||
"stats_intro" => $config->stats_intro
|
||||
);
|
||||
|
||||
// Log API request if enabled
|
||||
|
|
|
@ -31,7 +31,7 @@
|
|||
|
||||
<div class="stats_tekst" style="height: auto;">
|
||||
<p>
|
||||
If you want to decrease loadtime for your users you can pre-cache their results.
|
||||
If you want to decrease loadtime for your users you can pre-cache results.
|
||||
<br><br><a href="../admin">Remember to configure the system first.</a>
|
||||
</p>
|
||||
</div>
|
||||
|
@ -43,8 +43,6 @@
|
|||
<h1>Wrapped Caching</h1>
|
||||
|
||||
<div class="search" id="cache">
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
|
|
@ -65,6 +65,8 @@ function get_config() {
|
|||
wrapped_end = new Date(0);
|
||||
wrapped_end.setUTCSeconds(result.data.wrapped_end);
|
||||
|
||||
stats_intro = result.data.stats_intro;
|
||||
|
||||
get_user_movie_stats = result.data.get_user_movie_stats;
|
||||
get_user_show_stats = result.data.get_user_show_stats;
|
||||
get_user_show_buddy = result.data.get_user_show_buddy;
|
||||
|
|
54
get_stats.js
54
get_stats.js
|
@ -92,7 +92,7 @@ function load_introduction() {
|
|||
text += "<br>";
|
||||
text += "<h1 style='font-size:3em; display: block;'>Hey there, " + results.user.name + "!</h1>";
|
||||
text += "<br><br><br><br>";
|
||||
text += "<h2>New year, new page of statistics...</h2>";
|
||||
text += "<h2>" + functions.stats_intro + "</h2>";
|
||||
text += "</div>";
|
||||
|
||||
text += "</div>";
|
||||
|
@ -213,7 +213,7 @@ function load_shows() {
|
|||
|
||||
text += "<div class='boks3'>";
|
||||
text += "<h1>Shows!</h1>";
|
||||
text += "<br><br><br><h2>You watched " + results.user.user_shows.data.shows.length + " different shows.</h2><p>(No, watching The Office twice in a year doesn't count as two shows)</p>"
|
||||
text += "<br><br><br><h2>You watched " + results.user.user_shows.data.shows.length + " different shows.</h2><p>(No, watching The Office twice doesn't count as two shows)</p>"
|
||||
text += "</div>";
|
||||
|
||||
text += "<div class='boks3'>";
|
||||
|
@ -374,12 +374,18 @@ function load_music() {
|
|||
text += "</div>";
|
||||
|
||||
text += "<div class='boks2' style='padding: 0;'>";
|
||||
|
||||
albums.sort(function(a, b) {
|
||||
|
||||
albums_year = []
|
||||
for(var i = 0; i < albums.length; i++) {
|
||||
if(typeof albums[i].year !== 'undefined' && albums[i].year !== "" && albums[i].year > 1000) {
|
||||
albums_year.push(albums[i]);
|
||||
}
|
||||
}
|
||||
albums_year.sort(function(a, b) {
|
||||
return parseFloat(a.year) - parseFloat(b.year);
|
||||
});
|
||||
text += "<div class='boks2'>";
|
||||
text += oldest_album(albums);
|
||||
text += oldest_album(albums_year[0]);
|
||||
text += "</div>";
|
||||
|
||||
var sum = 0;
|
||||
|
@ -459,12 +465,12 @@ function oldest_movie(array) {
|
|||
return html;
|
||||
}
|
||||
|
||||
function oldest_album(array) {
|
||||
function oldest_album(album) {
|
||||
var html = "";
|
||||
|
||||
html += "<div class='status' id='list3' style='padding:1em;min-width:15em;'>";
|
||||
html += "<div class='stats'>";
|
||||
html += "The oldest album you listened to was <br><b>" + array[0].title + " (" + array[0].year + ")</b> by " + array[0].grandparent_title + "<br>";
|
||||
html += "The oldest album you listened to was <br><b>" + album.title + " (" + album.year + ")</b> by " + album.grandparent_title + "<br>";
|
||||
html += "<br>Maybe get the vinyl release?";
|
||||
html += '<br><br><img src="assets/img/old-man.svg" style="margin: auto; display: block; width: 15em;">';
|
||||
|
||||
|
@ -504,7 +510,12 @@ function paused_movie(array, single) {
|
|||
var pause_time = seconds_to_time(array.paused_counter, false);
|
||||
if(!single) {
|
||||
html += "<div class='stats'>";
|
||||
html += "Your longest movie pause was watching <br><b>" + array.title + " (" + array.year + ")</b>";
|
||||
html += "Your longest movie pause was watching <br><b>" + array.title;
|
||||
if(typeof array.year !== 'undefined' && array.year !== "" && array.year > 1000) {
|
||||
html += " (" + array.year + ")</b>";
|
||||
} else {
|
||||
html += "</b>";
|
||||
}
|
||||
html += "<br><br>It was paused for " + pause_time + "...";
|
||||
html += "</div>";
|
||||
} else {
|
||||
|
@ -608,7 +619,7 @@ function top_list(array, title, music, year) {
|
|||
html += "</b>";
|
||||
var movie_hour = seconds_to_time(array[i].duration, true);
|
||||
|
||||
if(typeof(array[i].year) != "undefined" && year) {
|
||||
if(typeof(array[i].year) !== "undefined" && year) {
|
||||
html += " (" + array[i].year + ")";
|
||||
}
|
||||
|
||||
|
@ -859,26 +870,26 @@ function seconds_to_days(seconds, comma) {
|
|||
var hour_string = '';
|
||||
var minute_string = '';
|
||||
|
||||
if(day < 2) {
|
||||
if(day == 1) {
|
||||
day_string += day + ' day';
|
||||
} else {
|
||||
day_string += day + ' days';
|
||||
}
|
||||
|
||||
if(hour < 2) {
|
||||
if(hour == 1) {
|
||||
hour_string += hour + ' hour';
|
||||
} else {
|
||||
hour_string += hour + ' hours';
|
||||
}
|
||||
|
||||
if(minute < 2) {
|
||||
if(minute == 1) {
|
||||
minute_string += minute + ' minute';
|
||||
} else {
|
||||
minute_string += minute + ' minutes';
|
||||
}
|
||||
|
||||
if(!hour == 0) {
|
||||
if(!minute == 0) {
|
||||
if(hour >= 1) {
|
||||
if(minute >= 1) {
|
||||
if(comma) {
|
||||
return day_string + ', ' + hour_string + ', ' + minute_string;
|
||||
} else {
|
||||
|
@ -906,19 +917,19 @@ function seconds_to_hours(seconds, comma) {
|
|||
var hour_string = '';
|
||||
var minute_string = '';
|
||||
|
||||
if(hour < 2) {
|
||||
if(hour == 1) {
|
||||
hour_string += hour + ' hour';
|
||||
} else {
|
||||
hour_string += hour + ' hours';
|
||||
}
|
||||
|
||||
if(minute < 2) {
|
||||
if(minute == 1) {
|
||||
minute_string += minute + ' minute';
|
||||
} else {
|
||||
minute_string += minute + ' minutes';
|
||||
}
|
||||
|
||||
if(!minute == 0) {
|
||||
if(minute >= 1) {
|
||||
if(comma) {
|
||||
return hour_string + ', ' + minute_string;
|
||||
} else {
|
||||
|
@ -938,20 +949,19 @@ function seconds_to_minutes(seconds, comma) {
|
|||
var minute_string = '';
|
||||
var second_string = '';
|
||||
|
||||
|
||||
if(minute < 2) {
|
||||
if(minute == 1) {
|
||||
minute_string += minute + ' minute';
|
||||
} else {
|
||||
minute_string += minute + ' minutes';
|
||||
}
|
||||
|
||||
if(seconds < 2) {
|
||||
if(seconds == 1) {
|
||||
second_string += rest + ' second';
|
||||
} else {
|
||||
second_string += rest + ' seconds';
|
||||
}
|
||||
|
||||
if(!seconds == 0) {
|
||||
|
||||
if(rest >= 1) {
|
||||
if(comma) {
|
||||
return minute_string + ', ' + second_string;
|
||||
} else {
|
||||
|
|
|
@ -18,6 +18,7 @@ function set_config() {
|
|||
"timezone" : timezone,
|
||||
"wrapped_start" : Math.round(wrapped_start.getTime() / 1000),
|
||||
"wrapped_end" : Math.round(wrapped_end.getTime() / 1000),
|
||||
"stats_intro" : stats_intro,
|
||||
"get_user_movie_stats" : get_user_movie_stats,
|
||||
"get_user_show_stats" : get_user_show_stats,
|
||||
"get_user_show_buddy" : get_user_show_buddy,
|
||||
|
|
Loading…
Add table
Reference in a new issue