Compare commits
7 Commits
pushsubscr
...
notify_and
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
053981175b | ||
|
|
2c8c99b8f0 | ||
|
|
07d01ae700 | ||
|
|
08ab714a54 | ||
|
|
44c962b7b3 | ||
|
|
63a8d174d7 | ||
|
|
69ef983c07 |
@@ -397,6 +397,33 @@ function dbGetRanking(minDate, maxDate, jugend, jugstrict) {
|
||||
});
|
||||
}
|
||||
|
||||
function dbGetCurrentYear() {
|
||||
return new Promise(async function (resolve) {
|
||||
var date = new Date();
|
||||
var year = date.getFullYear();
|
||||
if (date.getMonth() == 11) {
|
||||
year ++; // In DECEMBER show next year
|
||||
} else {
|
||||
// if there are no more regattas until end of the year, show next year
|
||||
var regattas = dbGetRegattasRange(parseDate(date.getDate() + '.' + (date.getMonth() + 1) + '.' + year), parseDate('31.12.' + year));
|
||||
if (regattas.length == 0) {
|
||||
year ++;
|
||||
}
|
||||
}
|
||||
var years = await dbGetData('years');
|
||||
years.sort(function (a, b) {
|
||||
if (a['year'] > b['year']) return -1;
|
||||
if (a['year'] < b['year']) return 1;
|
||||
return 0;
|
||||
});
|
||||
for (id in years) {
|
||||
if (years[id].year < year) year = years[id].year;
|
||||
if (years[id].year == year) break;
|
||||
}
|
||||
resolve(year);
|
||||
});
|
||||
}
|
||||
|
||||
function dbSettingsGet(key) {
|
||||
return new Promise(function(resolve) {
|
||||
if (canUseLocalDB) {
|
||||
|
||||
@@ -362,6 +362,7 @@ function pushesSubscribe() {
|
||||
log('[app] Subscription:', subscription);
|
||||
if (await pushesUpdateServerSubscription(subscription, true)) {
|
||||
log('[app] Subscription: Sent to server, updating UI');
|
||||
dbSettingsSet('notify_endpoint_' + BOATCLASS, subscription.endpoint);
|
||||
updatePushSwitches();
|
||||
updatePushBadge();
|
||||
} else {
|
||||
@@ -395,6 +396,7 @@ function pushesUnSubscribe(silent = false) {
|
||||
subscription.unsubscribe();
|
||||
log('[app] Subscription: Updating UI');
|
||||
$('#menu-pushes').hideMenu();
|
||||
dbSettingsSet('notify_endpoint_' + BOATCLASS, false);
|
||||
updatePushBadge();
|
||||
hideLoader();
|
||||
if (!silent) toastOk('Du erhältst ab sofort keine Benachrichtigungen mehr von uns.');
|
||||
@@ -510,12 +512,29 @@ function updatePushBadge() {
|
||||
$('#badge-pushes').removeClass('bg-green2-dark').addClass('bg-red2-dark').text('BLOCKED');
|
||||
return;
|
||||
}
|
||||
swRegistration.pushManager.getSubscription().then(function(subscription) {
|
||||
swRegistration.pushManager.getSubscription().then(async function(subscription) {
|
||||
var dbSub = await dbSettingsGet('notify_endpoint_' + BOATCLASS);
|
||||
var isSub = (subscription !== null);
|
||||
log('[app] DB Subscription:', dbSub);
|
||||
log('[app] Real Subscription:', subscription);
|
||||
if (isSub) {
|
||||
$('#badge-pushes').removeClass('bg-red2-dark').addClass('bg-green2-dark').text('AN');
|
||||
if (dbSub === null) dbSettingsSet('notify_endpoint_' + BOATCLASS, subscription.endpoint);
|
||||
else if (dbSub !== subscription.endpoint) {
|
||||
if (navigator.onLine) {
|
||||
log('[app] Updating subscription');
|
||||
pushesSubscribe();
|
||||
}
|
||||
}
|
||||
} else {
|
||||
$('#badge-pushes').removeClass('bg-green2-dark').addClass('bg-red2-dark').text('AUS');
|
||||
if (dbSub === null) dbSettingsSet('notify_endpoint_' + BOATCLASS, false);
|
||||
else if (dbSub !== false) {
|
||||
if (navigator.onLine) {
|
||||
log('[app] Re subscribe');
|
||||
pushesSubscribe();
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@@ -74,11 +74,15 @@ function selectChange() {
|
||||
}
|
||||
|
||||
function initYear() {
|
||||
var year = findGetParameter('year');
|
||||
if (year === null) year = new Date().getFullYear();
|
||||
return new Promise(async function (resolve) {
|
||||
var year = findGetParameter('year');
|
||||
if (year === null) year = await dbGetCurrentYear();
|
||||
|
||||
$('#select-year').html('<option value="' + year + '">' + year + '</option>');
|
||||
$('#select-year').val(year);
|
||||
$('#select-year').html('<option value="' + year + '">' + year + '</option>');
|
||||
$('#select-year').val(year);
|
||||
|
||||
resolve();
|
||||
});
|
||||
}
|
||||
|
||||
var firstCall = true;
|
||||
@@ -107,7 +111,7 @@ var siteScript = async function() {
|
||||
|
||||
if (firstCall) {
|
||||
firstCall = false;
|
||||
initYear();
|
||||
await initYear();
|
||||
$('#select-year').change(selectChange);
|
||||
$('#input-search').on('input', drawList);
|
||||
$('#switch-status-gemeldet').parent().parent().click(planningSwitchChanged);
|
||||
|
||||
@@ -291,11 +291,15 @@ function selectChange() {
|
||||
}
|
||||
|
||||
function initYear() {
|
||||
var year = findGetParameter('year');
|
||||
if (year === null) year = new Date().getFullYear();
|
||||
return new Promise(async function (resolve) {
|
||||
var year = findGetParameter('year');
|
||||
if (year === null) year = await dbGetCurrentYear();
|
||||
|
||||
$('#select-year').html('<option value="' + year + '">' + year + '</option>');
|
||||
$('#select-year').val(year);
|
||||
$('#select-year').html('<option value="' + year + '">' + year + '</option>');
|
||||
$('#select-year').val(year);
|
||||
|
||||
resolve();
|
||||
});
|
||||
}
|
||||
|
||||
var firstCall = true;
|
||||
@@ -324,7 +328,7 @@ var siteScript = async function() {
|
||||
|
||||
if (firstCall) {
|
||||
firstCall = false;
|
||||
initYear();
|
||||
await initYear();
|
||||
$('#select-year').change(selectChange);
|
||||
$('#input-search').on('input', drawList);
|
||||
$('#switch-planning-include').parent().parent().click(planningSwitchChanged);
|
||||
|
||||
@@ -16,11 +16,15 @@ function selectChange() {
|
||||
}
|
||||
|
||||
function initYear() {
|
||||
var year = findGetParameter('year');
|
||||
if (year === null) year = new Date().getFullYear();
|
||||
return new Promise(async function (resolve) {
|
||||
var year = findGetParameter('year');
|
||||
if (year === null) year = await dbGetCurrentYear();
|
||||
|
||||
$('#select-year').html('<option value="' + year + '">' + year + '</option>');
|
||||
$('#select-year').val(year);
|
||||
$('#select-year').html('<option value="' + year + '">' + year + '</option>');
|
||||
$('#select-year').val(year);
|
||||
|
||||
resolve();
|
||||
});
|
||||
}
|
||||
|
||||
var firstCall = true;
|
||||
@@ -47,7 +51,7 @@ var siteScript = async function() {
|
||||
|
||||
if (firstCall) {
|
||||
firstCall = false;
|
||||
initYear();
|
||||
await initYear();
|
||||
$('#select-year').change(selectChange);
|
||||
$('#input-search').on('input', drawList);
|
||||
}
|
||||
|
||||
@@ -11,11 +11,15 @@ function selectChange() {
|
||||
}
|
||||
|
||||
function initYear() {
|
||||
var year = findGetParameter('year');
|
||||
if (year === null) year = new Date().getFullYear();
|
||||
return new Promise(async function (resolve) {
|
||||
var year = findGetParameter('year');
|
||||
if (year === null) year = await dbGetCurrentYear();
|
||||
|
||||
$('#select-year').html('<option value="' + year + '">' + year + '</option>');
|
||||
$('#select-year').val(year);
|
||||
$('#select-year').html('<option value="' + year + '">' + year + '</option>');
|
||||
$('#select-year').val(year);
|
||||
|
||||
resolve();
|
||||
});
|
||||
}
|
||||
|
||||
var firstCall = true;
|
||||
@@ -60,7 +64,7 @@ var siteScript = async function() {
|
||||
|
||||
if (firstCall) {
|
||||
firstCall = false;
|
||||
initYear();
|
||||
await initYear();
|
||||
$('#select-year').change(selectChange);
|
||||
$('#input-search').on('input', drawList);
|
||||
}
|
||||
|
||||
@@ -29,22 +29,26 @@ function buttonShowPressed() {
|
||||
}
|
||||
|
||||
function initYear() {
|
||||
var year = findGetParameter('year');
|
||||
if (year === null) year = new Date().getFullYear();
|
||||
return new Promise(async function (resolve) {
|
||||
var year = findGetParameter('year');
|
||||
if (year === null) year = await dbGetCurrentYear();
|
||||
|
||||
$('#select-year').html('<option value="' + year + '">' + year + '</option>');
|
||||
$('#select-year').val(year);
|
||||
$('#select-year').html('<option value="' + year + '">' + year + '</option>');
|
||||
$('#select-year').val(year);
|
||||
|
||||
if (year == "user") {
|
||||
var from = findGetParameter('from');
|
||||
var to = findGetParameter('to');
|
||||
if (from === null) from = formatDate('Y-m-d')
|
||||
if (to === null) to = formatDate('Y-m-d')
|
||||
$('#input-from').val(from).trigger('focusin').trigger('focusout');
|
||||
$('#input-to').val(to).trigger('focusin').trigger('focusout');
|
||||
}
|
||||
if (year == "user") {
|
||||
var from = findGetParameter('from');
|
||||
var to = findGetParameter('to');
|
||||
if (from === null) from = formatDate('Y-m-d')
|
||||
if (to === null) to = formatDate('Y-m-d')
|
||||
$('#input-from').val(from).trigger('focusin').trigger('focusout');
|
||||
$('#input-to').val(to).trigger('focusin').trigger('focusout');
|
||||
}
|
||||
|
||||
selectChange(false);
|
||||
selectChange(false);
|
||||
|
||||
resolve();
|
||||
});
|
||||
}
|
||||
|
||||
var firstCall = true;
|
||||
@@ -68,7 +72,7 @@ async function drawList () {
|
||||
var siteScript = async function() {
|
||||
if (firstCall) {
|
||||
firstCall = false;
|
||||
initYear();
|
||||
await initYear();
|
||||
$('#select-year').change(selectChange);
|
||||
$('#button-show').click(buttonShowPressed);
|
||||
$('#input-search').on('input', drawList);
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?php
|
||||
|
||||
define('PWA_VERSION', '1.11.3h1');
|
||||
define('PWA_VERSION', '1.11.4h1');
|
||||
|
||||
?>
|
||||
|
||||
Reference in New Issue
Block a user