Support card/cal dav well-known endpoints

This commit is contained in:
Johannes Zellner
2026-02-20 14:53:21 +01:00
parent 0daabdc21c
commit 2f951dc272
4 changed files with 34 additions and 2 deletions
@@ -15,6 +15,8 @@ const domain = ref('');
const matrixHostname = ref('');
const mastodonHostname = ref('');
const jitsiHostname = ref('');
const carddavLocation = ref('');
const caldavLocation = ref('');
async function onSubmit() {
busy.value = true;
@@ -47,6 +49,9 @@ async function onSubmit() {
+ '</XRD>';
}
if (carddavLocation.value) wellKnown['carddav'] = carddavLocation.value;
if (caldavLocation.value) wellKnown['caldav'] = caldavLocation.value;
const [error] = await domainsModel.setWellKnown(domain.value, wellKnown);
if (error) {
errorMessage.value = error.body ? error.body.message : 'Internal error';
@@ -110,6 +115,16 @@ defineExpose({
<p class="has-error" v-show="errorMessage">{{ errorMessage }}</p>
<FormGroup>
<label for="">{{ $t('domains.domainDialog.carddavLocation') }}</label>
<TextInput id="" v-model="carddavLocation" placeholder="contacts.example.com"/>
</FormGroup>
<FormGroup>
<label for="">{{ $t('domains.domainDialog.caldavLocation') }}</label>
<TextInput id="" v-model="caldavLocation" placeholder="calendar.example.com"/>
</FormGroup>
<FormGroup>
<label for="">{{ $t('domains.domainDialog.matrixHostname') }}</label>
<TextInput id="" v-model="matrixHostname" placeholder="synapse.example.com:443"/>