sW: melde-erinnerungen only for regattas not registered
This commit is contained in:
@@ -459,8 +459,16 @@ async function runPageScript() {
|
|||||||
|
|
||||||
if (isLoggedIn()) {
|
if (isLoggedIn()) {
|
||||||
var plannings = await dbGetDataIndex('plannings', 'user', USER_ID);
|
var plannings = await dbGetDataIndex('plannings', 'user', USER_ID);
|
||||||
plannings = plannings.map(function (e) { return e.regatta; });
|
plannings_all = plannings.map(function (e) { return e.regatta; });
|
||||||
dbSettingsSet('myregattas_' + BOATCLASS, plannings);
|
dbSettingsSet('myregattas_' + BOATCLASS, plannings_all);
|
||||||
|
for (var i = plannings.length - 1; i >= 0; i --) {
|
||||||
|
if (plannings[i].gemeldet == '1') plannings.splice(i, 1);
|
||||||
|
}
|
||||||
|
plannings_meldung_off = plannings.map(function (e) { return e.regatta; });
|
||||||
|
dbSettingsSet('myregattas_' + BOATCLASS + '_meldung_off', plannings_meldung_off);
|
||||||
|
} else {
|
||||||
|
dbSettingsSet('myregattas_' + BOATCLASS, null);
|
||||||
|
dbSettingsSet('myregattas_' + BOATCLASS + '_meldung_off', null);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (typeof updateSyncStatusTimer == 'undefined') {
|
if (typeof updateSyncStatusTimer == 'undefined') {
|
||||||
@@ -954,7 +962,7 @@ function initDatabase() {
|
|||||||
db.onversionchange = function (event) {
|
db.onversionchange = function (event) {
|
||||||
if (syncTimer != null) window.clearInterval(syncTimer);
|
if (syncTimer != null) window.clearInterval(syncTimer);
|
||||||
if (updateSyncStatusTimer != null) window.clearInterval(updateSyncStatusTimer);
|
if (updateSyncStatusTimer != null) window.clearInterval(updateSyncStatusTimer);
|
||||||
// TODO document.getElementById('syncstatus').innerHTML = '';
|
$('#syncstatus').html('');
|
||||||
canUseLocalDB = false;
|
canUseLocalDB = false;
|
||||||
db.close();
|
db.close();
|
||||||
location.reload;
|
location.reload;
|
||||||
|
|||||||
@@ -182,9 +182,9 @@ function getEntry(data, index, defaultValue) {
|
|||||||
return ((typeof data[index] !== "undefined") ? data[index] : defaultValue);
|
return ((typeof data[index] !== "undefined") ? data[index] : defaultValue);
|
||||||
}
|
}
|
||||||
|
|
||||||
function isMyRegatta(id) {
|
function isMyRegatta(id, suffix = '') {
|
||||||
return new Promise(async function (resolve) {
|
return new Promise(async function (resolve) {
|
||||||
var regattas = await dbSettingsGet('myregattas_<?php echo BOATCLASS; ?>');
|
var regattas = await dbSettingsGet('myregattas_<?php echo BOATCLASS; ?>' + suffix);
|
||||||
if (regattas == null) resolve(false);
|
if (regattas == null) resolve(false);
|
||||||
else resolve(regattas.includes(id.toString()));
|
else resolve(regattas.includes(id.toString()));
|
||||||
});
|
});
|
||||||
@@ -228,8 +228,7 @@ self.addEventListener('push', async function(event) {
|
|||||||
break;
|
break;
|
||||||
case 'meldeschluss':
|
case 'meldeschluss':
|
||||||
if (await dbSettingsGet('notify_channel_<?php echo BOATCLASS; ?>_meldeschluss')) {
|
if (await dbSettingsGet('notify_channel_<?php echo BOATCLASS; ?>_meldeschluss')) {
|
||||||
if (await isMyRegatta(getEntry(data, 'id', ''))) okay = true;
|
if (await isMyRegatta(getEntry(data, 'id', ''), '_meldung_off')) okay = true;
|
||||||
// TODO: only if not already registered
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
|
|||||||
Reference in New Issue
Block a user