Restrict mailbox creation depending on plan

This commit is contained in:
Johannes Zellner
2025-05-07 15:51:22 +02:00
parent 186a336232
commit 91fd93c724
2 changed files with 8 additions and 4 deletions

View File

@@ -4,7 +4,7 @@ import { useI18n } from 'vue-i18n';
const i18n = useI18n();
const t = i18n.t;
import { ref, onMounted, useTemplateRef } from 'vue';
import { ref, onMounted, useTemplateRef, inject } from 'vue';
import { Button, TableView, Dialog, Checkbox } from 'pankow';
import { prettyDecimalSize } from 'pankow/utils';
import { eachLimit } from 'async';
@@ -51,6 +51,9 @@ const domains = ref([]);
const users = ref([]);
const groups = ref([]);
const features = inject('features');
const subscriptionRequiredDialog = inject('subscriptionRequiredDialog');
function renderAliases(aliases) {
return aliases.map(a => `${a.name}@${a.domain}`).join(', ');
}
@@ -58,7 +61,8 @@ function renderAliases(aliases) {
const mailboxDialog = useTemplateRef('mailboxDialog');
async function onAddOrEdit(mailbox = null) {
mailboxDialog.value.open(mailbox);
if (mailbox || features.value.mailboxMaxCount > mailboxes.value.length) mailboxDialog.value.open(mailbox);
else subscriptionRequiredDialog.value.open();
}
const removeDialog = useTemplateRef('removeDialog');