Fixed format of events

This commit is contained in:
Torsten Schulz
2024-06-23 17:32:45 +02:00
parent 692e989861
commit 8b89d8b800
26 changed files with 455 additions and 157 deletions

View File

@@ -5,7 +5,7 @@
</template>
<script>
import { menuData } from '../../config/menuData';
import { mapState } from 'vuex';
export default {
name: 'ImageContent',
@@ -15,6 +15,9 @@ export default {
currentImage: '/images/homepage1.png'
};
},
computed: {
...mapState(['menuData']),
},
watch: {
$route: {
immediate: true,
@@ -26,6 +29,7 @@ export default {
methods: {
updateImage() {
const routePath = this.$route.path;
const menuData = this.menuData;
const menuItem = this.findMenuItemByPath(menuData, routePath);
if (menuItem && menuItem.image) {
this.currentImage = `/images/${menuItem.image}`;

View File

@@ -77,7 +77,7 @@
<div class="additional-toolbar">
<button @click="openAddEventsDialog">Events</button>
<button @click="openAddContactDialog">Kontaktpersonen</button>
<button>Institutionen</button>
<button @click="openAddInstitutionDialog">Institutionen</button>
<button @click="openWorshipDialog">Gottesdienste</button>
</div>
<div :class="['htmleditor']">
@@ -90,7 +90,7 @@
<AddEventDialog ref="addEventDialog" @confirm="insertEvent" />
<AddLinkDialog ref="addLinkDialog" @confirm="insertLink" />
<AddDownloadDialog ref="addDownloadDialog" @confirm="insertDownload" />
<AddContactDialog ref="addContactDialog" @confirm="insertContact" />
<AddInstitutionDialog ref="addInstitutionDialog" @confirm="insertInstitution" />
<input type="color" ref="colorPicker" @input="setColor" style="display: none;" />
</div>
</template>
@@ -119,8 +119,7 @@ import AddImageDialog from '@/components/AddImageDialog.vue';
import AddEventDialog from '@/components/AddEventDialog.vue';
import AddLinkDialog from '@/components/AddLinkDialog.vue';
import AddDownloadDialog from '@/components/AddDownloadDialog.vue';
import AddContactDialog from '@/components/AddContactDialog.vue';
import AddInstitutionDialog from '@/components/AddInstitutionDialog.vue';
import { BoldIcon, ItalicIcon, UnderlineIcon, StrikethroughIcon, ListIcon, NumberedListLeftIcon, TableIcon,
Table2ColumnsIcon, ArrowDownIcon, ArrowRightIcon, TableRowsIcon, AlignTopBoxIcon, AlignLeftBoxIcon, StatsReportIcon,
OpenInWindowIcon, DownloadIcon
@@ -149,7 +148,7 @@ export default {
AddEventDialog,
AddLinkDialog,
AddDownloadDialog,
AddContactDialog,
AddInstitutionDialog,
OpenInWindowIcon,
DownloadIcon,
},
@@ -163,7 +162,7 @@ export default {
const addEventDialog = ref(null);
const addLinkDialog = ref(null);
const addDownloadDialog = ref(null);
const addContactDialog = ref(null);
const addInstitutionDialog = ref(null);
const colorPicker = ref(null);
const editor = useEditor({
@@ -280,8 +279,11 @@ export default {
const insertWorshipList = (selectedLocations) => {
if (editor.value) {
const configuration = `location=${selectedLocations},order:"date asc"`;
editor.value.chain().focus().insertContent(`{{ worshipslist:${configuration} }}`).run();
const configuration = {
location: selectedLocations,
order: "date asc",
}
editor.value.chain().focus().insertContent('{{ worshipslist:' + JSON.stringify(configuration) + ' }}').run();
}
};
@@ -315,18 +317,18 @@ export default {
addDownloadDialog.value.openAddDownloadDialog();
};
const insertDownload = ({ title, hash, extension }) => {
if (title && hash && extension && editor.value) {
const url = `/files/download/${hash}`;
editor.value.chain().focus().extendMarkRange('link').setLink({ href: url }).insertContent(title).run();
const insertDownload = ({ hash }) => {
if (hash && editor.value) {
const downloadString = '{{ download:' + hash + ' }}'
editor.value.chain().focus().insertContent(downloadString).run();
}
};
const openAddContactDialog = () => {
addContactDialog.value.openAddContactDialog();
const openAddInstitutionDialog = () => {
addInstitutionDialog.value.openAddInstitutionDialog();
};
const insertContact = (configString) => {
const insertInstitution = (configString) => {
if (editor.value) {
editor.value.chain().focus().insertContent(configString).run();
}
@@ -375,38 +377,6 @@ export default {
editor.value.chain().focus().toggleOrderedList().run();
};
const addColumnBefore = () => {
editor.value.chain().focus().addColumnBefore().run();
};
const addColumnAfter = () => {
editor.value.chain().focus().addColumnAfter().run();
};
const addRowBefore = () => {
editor.value.chain().focus().addRowBefore().run();
};
const addRowAfter = () => {
editor.value.chain().focus().addRowAfter().run();
};
const deleteColumn = () => {
editor.value.chain().focus().deleteColumn().run();
};
const deleteRow = () => {
editor.value.chain().focus().deleteRow().run();
};
const toggleHeaderColumn = () => {
editor.value.chain().focus().toggleHeaderColumn().run();
};
const toggleHeaderRow = () => {
editor.value.chain().focus().toggleHeaderRow().run();
};
return {
pages,
sortedPages,
@@ -430,9 +400,9 @@ export default {
addDownloadDialog,
openAddDownloadDialog,
insertDownload,
addContactDialog,
openAddContactDialog,
insertContact,
addInstitutionDialog,
openAddInstitutionDialog,
insertInstitution,
colorPicker,
openColorPicker,
setColor,
@@ -444,14 +414,6 @@ export default {
insertTable,
toggleBulletList,
toggleOrderedList,
addColumnBefore,
addColumnAfter,
addRowBefore,
addRowAfter,
deleteColumn,
deleteRow,
toggleHeaderColumn,
toggleHeaderRow,
};
},
};

View File

@@ -0,0 +1,11 @@
<template>
<div>
<h2>Kindergottesdiest</h2>
</div>
</template>
<script>
export default {
name: 'ChildrensWorshipContent',
};
</script>

View File

@@ -0,0 +1,11 @@
<template>
<div>
<h2>Flötenkinder</h2>
</div>
</template>
<script>
export default {
name: 'FlootChildrenContent',
};
</script>