Улучшение формы доната
This commit is contained in:
@@ -20,11 +20,11 @@
|
|||||||
|
|
||||||
<q-dialog ref="dialog2" v-model="donationVisible" style="z-index: 100" no-route-dismiss no-esc-dismiss no-backdrop-dismiss>
|
<q-dialog ref="dialog2" v-model="donationVisible" style="z-index: 100" no-route-dismiss no-esc-dismiss no-backdrop-dismiss>
|
||||||
<div class="column bg-white no-wrap q-pa-md">
|
<div class="column bg-white no-wrap q-pa-md">
|
||||||
<div class="row justify-center q-mb-md" style="font-size: 110%">
|
<div class="row justify-center q-mb-md">
|
||||||
Здравствуйте, дорогие читатели!
|
Здравствуйте, дорогие читатели!
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="q-mx-md column" style="word-break: normal">
|
<div class="q-mx-md column" style="font-size: 90%; word-break: normal">
|
||||||
<div>
|
<div>
|
||||||
Вот уже много лет мы все вместе пользуемся нашей любимой читалкой.<br><br>
|
Вот уже много лет мы все вместе пользуемся нашей любимой читалкой.<br><br>
|
||||||
|
|
||||||
@@ -43,19 +43,31 @@
|
|||||||
Однако на оплату хостинга читалки и сервера обновлений автор тратит свои
|
Однако на оплату хостинга читалки и сервера обновлений автор тратит свои
|
||||||
собственные средства, а также тратит свое время и силы на улучшение проекта.
|
собственные средства, а также тратит свое время и силы на улучшение проекта.
|
||||||
<br><br>
|
<br><br>
|
||||||
Поддержим же материально наш ресурс, чтобы и дальше спокойно существовать и развиваться:
|
Давайте поддержим наш ресурс, чтобы и дальше спокойно существовать и развиваться:
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<q-btn style="margin: 10px 50px 10px 50px" color="green-8" size="14px" no-caps @click="makeDonation">
|
<q-btn style="margin: 10px 20px 10px 20px" color="green-8" no-caps @click="makeDonation">
|
||||||
<q-icon class="q-mr-xs" name="la la-donate" size="24px" />
|
<q-icon class="q-mr-xs" name="la la-donate" size="24px" />
|
||||||
Поддержать проект
|
Поддержать проект
|
||||||
</q-btn>
|
</q-btn>
|
||||||
|
|
||||||
<q-btn style="margin: 0 50px 20px 50px" size="14px" no-caps @click="donationDialogRemind">
|
<div class="row justify-center q-mt-sm">
|
||||||
Напомнить в следующем месяце
|
Напомнить снова через:
|
||||||
</q-btn>
|
</div>
|
||||||
|
|
||||||
<div class="row justify-center">
|
<div class="row justify-between" style="margin: 0 20px 10px 20px">
|
||||||
|
<q-btn style="width: 140px; margin-top: 5px" no-caps @click="donationDialogRemindLater(30)">
|
||||||
|
1 месяц
|
||||||
|
</q-btn>
|
||||||
|
<q-btn style="width: 140px; margin-top: 5px" no-caps @click="donationDialogRemindLater(60)">
|
||||||
|
2 месяца
|
||||||
|
</q-btn>
|
||||||
|
<q-btn style="width: 140px; margin-top: 5px" no-caps @click="donationDialogRemindLater(90)">
|
||||||
|
3 месяца
|
||||||
|
</q-btn>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row justify-center q-mt-md">
|
||||||
<div class="q-px-sm clickable" style="font-size: 80%" @click="openDonate">
|
<div class="q-px-sm clickable" style="font-size: 80%" @click="openDonate">
|
||||||
Помочь проекту можно в любое время
|
Помочь проекту можно в любое время
|
||||||
</div>
|
</div>
|
||||||
@@ -89,6 +101,7 @@ import vueComponent from '../../vueComponent.js';
|
|||||||
import Dialog from '../../share/Dialog.vue';
|
import Dialog from '../../share/Dialog.vue';
|
||||||
import * as utils from '../../../share/utils';
|
import * as utils from '../../../share/utils';
|
||||||
import {versionHistory} from '../versionHistory';
|
import {versionHistory} from '../versionHistory';
|
||||||
|
import rstore from '../../../store/modules/reader';
|
||||||
|
|
||||||
const componentOptions = {
|
const componentOptions = {
|
||||||
components: {
|
components: {
|
||||||
@@ -139,8 +152,7 @@ class ReaderDialogs {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async showDonation() {
|
async showDonation() {
|
||||||
const today = utils.dateFormat(new Date(), 'MM');
|
if ((this.mode == 'omnireader' || this.mode == 'liberama') && this.showDonationDialog && this.donationNextPopup <= Date.now()) {
|
||||||
if ((this.mode == 'omnireader' || this.mode == 'liberama') && this.showDonationDialog && this.donationRemindDate != today) {
|
|
||||||
await utils.sleep(3000);
|
await utils.sleep(3000);
|
||||||
this.donationVisible = true;
|
this.donationVisible = true;
|
||||||
}
|
}
|
||||||
@@ -155,14 +167,15 @@ class ReaderDialogs {
|
|||||||
this.urlHelpVisible = false;
|
this.urlHelpVisible = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
donationDialogRemind() {
|
donationDialogRemindLater(remindAfter = 30) {
|
||||||
this.donationVisible = false;
|
this.donationVisible = false;
|
||||||
this.commit('reader/setDonationRemindDate', utils.dateFormat(new Date(), 'MM'));
|
|
||||||
|
this.commit('reader/setDonationNextPopup', Date.now() + rstore.dayMs*remindAfter);
|
||||||
}
|
}
|
||||||
|
|
||||||
makeDonation() {
|
makeDonation() {
|
||||||
utils.makeDonation();
|
utils.makeDonation();
|
||||||
this.donationDialogRemind();
|
this.donationDialogRemindLater();
|
||||||
}
|
}
|
||||||
|
|
||||||
openDonate() {
|
openDonate() {
|
||||||
@@ -203,8 +216,8 @@ class ReaderDialogs {
|
|||||||
return this.$store.state.reader.whatsNewContentHash;
|
return this.$store.state.reader.whatsNewContentHash;
|
||||||
}
|
}
|
||||||
|
|
||||||
get donationRemindDate() {
|
get donationNextPopup() {
|
||||||
return this.$store.state.reader.donationRemindDate;
|
return this.$store.state.reader.donationNextPopup;
|
||||||
}
|
}
|
||||||
|
|
||||||
keyHook() {
|
keyHook() {
|
||||||
|
|||||||
@@ -1,6 +1,10 @@
|
|||||||
import * as utils from '../../share/utils';
|
import * as utils from '../../share/utils';
|
||||||
import googleFonts from './fonts/fonts.json';
|
import googleFonts from './fonts/fonts.json';
|
||||||
|
|
||||||
|
const minuteMs = 60*1000;//количество ms в минуте
|
||||||
|
const hourMs = 60*minuteMs;//количество ms в часе
|
||||||
|
const dayMs = 24*hourMs;//количество ms в сутках
|
||||||
|
|
||||||
const readerActions = {
|
const readerActions = {
|
||||||
'loader': 'На страницу загрузки',
|
'loader': 'На страницу загрузки',
|
||||||
'loadFile': 'Загрузить файл с диска',
|
'loadFile': 'Загрузить файл с диска',
|
||||||
@@ -280,7 +284,7 @@ const state = {
|
|||||||
profilesRev: 0,
|
profilesRev: 0,
|
||||||
allowProfilesSave: false,//подстраховка для разработки
|
allowProfilesSave: false,//подстраховка для разработки
|
||||||
whatsNewContentHash: '',
|
whatsNewContentHash: '',
|
||||||
donationRemindDate: '',
|
donationNextPopup: Date.now() + dayMs*30,
|
||||||
currentProfile: '',
|
currentProfile: '',
|
||||||
settings: Object.assign({}, settingDefaults),
|
settings: Object.assign({}, settingDefaults),
|
||||||
settingsRev: {},
|
settingsRev: {},
|
||||||
@@ -320,8 +324,8 @@ const mutations = {
|
|||||||
setWhatsNewContentHash(state, value) {
|
setWhatsNewContentHash(state, value) {
|
||||||
state.whatsNewContentHash = value;
|
state.whatsNewContentHash = value;
|
||||||
},
|
},
|
||||||
setDonationRemindDate(state, value) {
|
setDonationNextPopup(state, value) {
|
||||||
state.donationRemindDate = value;
|
state.donationNextPopup = value;
|
||||||
},
|
},
|
||||||
setCurrentProfile(state, value) {
|
setCurrentProfile(state, value) {
|
||||||
state.currentProfile = value;
|
state.currentProfile = value;
|
||||||
@@ -347,6 +351,10 @@ const mutations = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
minuteMs,
|
||||||
|
hourMs,
|
||||||
|
dayMs,
|
||||||
|
|
||||||
readerActions,
|
readerActions,
|
||||||
toolButtons,
|
toolButtons,
|
||||||
hotKeys,
|
hotKeys,
|
||||||
|
|||||||
Reference in New Issue
Block a user