diff --git a/client/components/Reader/ReaderDialogs/ReaderDialogs.vue b/client/components/Reader/ReaderDialogs/ReaderDialogs.vue index daca5568..6471efee 100644 --- a/client/components/Reader/ReaderDialogs/ReaderDialogs.vue +++ b/client/components/Reader/ReaderDialogs/ReaderDialogs.vue @@ -20,11 +20,11 @@
-
+
Здравствуйте, дорогие читатели!
-
+
Вот уже много лет мы все вместе пользуемся нашей любимой читалкой.

@@ -43,19 +43,31 @@ Однако на оплату хостинга читалки и сервера обновлений автор тратит свои собственные средства, а также тратит свое время и силы на улучшение проекта.

- Поддержим же материально наш ресурс, чтобы и дальше спокойно существовать и развиваться: + Давайте поддержим наш ресурс, чтобы и дальше спокойно существовать и развиваться:
- + Поддержать проект - - Напомнить в следующем месяце - +
+ Напомнить снова через: +
-
+
+ + 1 месяц + + + 2 месяца + + + 3 месяца + +
+ +
Помочь проекту можно в любое время
@@ -89,6 +101,7 @@ import vueComponent from '../../vueComponent.js'; import Dialog from '../../share/Dialog.vue'; import * as utils from '../../../share/utils'; import {versionHistory} from '../versionHistory'; +import rstore from '../../../store/modules/reader'; const componentOptions = { components: { @@ -139,8 +152,7 @@ class ReaderDialogs { } async showDonation() { - const today = utils.dateFormat(new Date(), 'MM'); - if ((this.mode == 'omnireader' || this.mode == 'liberama') && this.showDonationDialog && this.donationRemindDate != today) { + if ((this.mode == 'omnireader' || this.mode == 'liberama') && this.showDonationDialog && this.donationNextPopup <= Date.now()) { await utils.sleep(3000); this.donationVisible = true; } @@ -155,14 +167,15 @@ class ReaderDialogs { this.urlHelpVisible = false; } - donationDialogRemind() { + donationDialogRemindLater(remindAfter = 30) { this.donationVisible = false; - this.commit('reader/setDonationRemindDate', utils.dateFormat(new Date(), 'MM')); + + this.commit('reader/setDonationNextPopup', Date.now() + rstore.dayMs*remindAfter); } makeDonation() { utils.makeDonation(); - this.donationDialogRemind(); + this.donationDialogRemindLater(); } openDonate() { @@ -203,8 +216,8 @@ class ReaderDialogs { return this.$store.state.reader.whatsNewContentHash; } - get donationRemindDate() { - return this.$store.state.reader.donationRemindDate; + get donationNextPopup() { + return this.$store.state.reader.donationNextPopup; } keyHook() { diff --git a/client/store/modules/reader.js b/client/store/modules/reader.js index 15c94451..455bd16f 100644 --- a/client/store/modules/reader.js +++ b/client/store/modules/reader.js @@ -1,6 +1,10 @@ import * as utils from '../../share/utils'; import googleFonts from './fonts/fonts.json'; +const minuteMs = 60*1000;//количество ms в минуте +const hourMs = 60*minuteMs;//количество ms в часе +const dayMs = 24*hourMs;//количество ms в сутках + const readerActions = { 'loader': 'На страницу загрузки', 'loadFile': 'Загрузить файл с диска', @@ -280,7 +284,7 @@ const state = { profilesRev: 0, allowProfilesSave: false,//подстраховка для разработки whatsNewContentHash: '', - donationRemindDate: '', + donationNextPopup: Date.now() + dayMs*30, currentProfile: '', settings: Object.assign({}, settingDefaults), settingsRev: {}, @@ -320,8 +324,8 @@ const mutations = { setWhatsNewContentHash(state, value) { state.whatsNewContentHash = value; }, - setDonationRemindDate(state, value) { - state.donationRemindDate = value; + setDonationNextPopup(state, value) { + state.donationNextPopup = value; }, setCurrentProfile(state, value) { state.currentProfile = value; @@ -347,6 +351,10 @@ const mutations = { }; export default { + minuteMs, + hourMs, + dayMs, + readerActions, toolButtons, hotKeys,