From d2fec8ea2f13d8ee18949e2fa8b3101dc087d2cc Mon Sep 17 00:00:00 2001 From: ogerly Date: Wed, 5 Apr 2023 10:24:58 +0200 Subject: [PATCH 01/40] first step for events --- .../ContributionForm/ContributionForm.vue | 17 +++++++++++++++++ webapp/locales/de.json | 8 ++++++++ webapp/locales/en.json | 8 ++++++++ webapp/pages/post/create.vue | 16 +++++++++++++--- 4 files changed, 46 insertions(+), 3 deletions(-) diff --git a/webapp/components/ContributionForm/ContributionForm.vue b/webapp/components/ContributionForm/ContributionForm.vue index 8863fbc8a..0106e65f1 100644 --- a/webapp/components/ContributionForm/ContributionForm.vue +++ b/webapp/components/ContributionForm/ContributionForm.vue @@ -30,6 +30,15 @@ +
+

Start, End Datum

+

Location

+

Strasse

+

Nr.

+

PLZ

+

Ort

+
+ null, }, + creatEvent: { + type: Boolean, + default: false, + } }, data() { const { title, content, image, categories } = this.contribution @@ -180,6 +193,10 @@ export default { }, methods: { submit() { + if (creatEvent) { + alert('EVENT speichern') + return + } let image = null const { title, content, categoryIds } = this.formData if (this.formData.image) { diff --git a/webapp/locales/de.json b/webapp/locales/de.json index fe39eed69..101778080 100644 --- a/webapp/locales/de.json +++ b/webapp/locales/de.json @@ -278,6 +278,7 @@ "inappropriatePicture": "Dieses Bild kann für einige Menschen unangemessen sein.", "languageSelectLabel": "Sprache Deines Beitrags", "languageSelectText": "Sprache wählen", + "newEvent": "Erstelle einen neue Veranstaltung", "newPost": "Erstelle einen neuen Beitrag", "success": "Gespeichert!", "teaserImage": { @@ -684,6 +685,12 @@ "submitted": "Kommentar gesendet", "updated": "Änderungen gespeichert" }, + "createNewEvent": { + "forGroup": { + "title": "Für die Gruppe „{name}“" + }, + "title": "Erstelle ein neues Event" + }, "createNewPost": { "forGroup": { "title": "Für die Gruppe „{name}“" @@ -706,6 +713,7 @@ "unpinnedSuccessfully": "Angehefteten Beitrag erfolgreich losgelöst!" }, "name": "Beitrag", + "event":"Veranstaltung", "pinned": "Meldung", "takeAction": { "name": "Aktiv werden" diff --git a/webapp/locales/en.json b/webapp/locales/en.json index 92f5687c2..10d44c777 100644 --- a/webapp/locales/en.json +++ b/webapp/locales/en.json @@ -278,6 +278,7 @@ "inappropriatePicture": "This image may be inappropriate for some people.", "languageSelectLabel": "Language of your contribution", "languageSelectText": "Select Language", + "newEvent": "Create a new Event", "newPost": "Create a new Post", "success": "Saved!", "teaserImage": { @@ -684,6 +685,12 @@ "submitted": "Comment submitted!", "updated": "Changes saved!" }, + "createNewEvent": { + "forGroup": { + "title": "For The Group “{name}”" + }, + "title": "Create A New Event" + }, "createNewPost": { "forGroup": { "title": "For The Group “{name}”" @@ -706,6 +713,7 @@ "unpinnedSuccessfully": "Post unpinned successfully!" }, "name": "Post", + "event":"Event", "pinned": "Announcement", "takeAction": { "name": "Take action" diff --git a/webapp/pages/post/create.vue b/webapp/pages/post/create.vue index 60309480d..a8b40d98b 100644 --- a/webapp/pages/post/create.vue +++ b/webapp/pages/post/create.vue @@ -1,15 +1,24 @@ @@ -95,3 +99,13 @@ export default { }, } + From fa4ecaa3f60705d5583bf603eff765089d4f58bd Mon Sep 17 00:00:00 2001 From: Moriz Wahl Date: Tue, 25 Apr 2023 22:02:44 +0200 Subject: [PATCH 20/40] filter by post type --- webapp/assets/_new/icons/svgs/book.svg | 5 ++ webapp/assets/_new/icons/svgs/calendar.svg | 5 ++ .../FilterMenu/FilterMenuComponent.vue | 3 + .../components/FilterMenu/PostTypeFilter.vue | 59 +++++++++++++++++++ webapp/locales/de.json | 3 + webapp/locales/en.json | 3 + webapp/store/posts.js | 9 +++ 7 files changed, 87 insertions(+) create mode 100644 webapp/assets/_new/icons/svgs/book.svg create mode 100644 webapp/assets/_new/icons/svgs/calendar.svg create mode 100644 webapp/components/FilterMenu/PostTypeFilter.vue diff --git a/webapp/assets/_new/icons/svgs/book.svg b/webapp/assets/_new/icons/svgs/book.svg new file mode 100644 index 000000000..305e367ac --- /dev/null +++ b/webapp/assets/_new/icons/svgs/book.svg @@ -0,0 +1,5 @@ + + +book + + diff --git a/webapp/assets/_new/icons/svgs/calendar.svg b/webapp/assets/_new/icons/svgs/calendar.svg new file mode 100644 index 000000000..5a67a8299 --- /dev/null +++ b/webapp/assets/_new/icons/svgs/calendar.svg @@ -0,0 +1,5 @@ + + +calendar + + diff --git a/webapp/components/FilterMenu/FilterMenuComponent.vue b/webapp/components/FilterMenu/FilterMenuComponent.vue index 7a582a7c4..708c3bc7c 100644 --- a/webapp/components/FilterMenu/FilterMenuComponent.vue +++ b/webapp/components/FilterMenu/FilterMenuComponent.vue @@ -3,6 +3,7 @@

{{ $t('filter-menu.filter-by') }}

+
@@ -13,6 +14,7 @@ diff --git a/webapp/locales/de.json b/webapp/locales/de.json index fe39eed69..6ed6efd02 100644 --- a/webapp/locales/de.json +++ b/webapp/locales/de.json @@ -377,9 +377,11 @@ }, "filter-menu": { "all": "Alle", + "article": "Artikel", "categories": "Themen", "deleteFilter": "Filter löschen", "emotions": "Emotionen", + "events": "Veranstaltungen", "filter-by": "Filtern nach ...", "following": "Nutzer denen ich folge", "languages": "Sprachen", @@ -395,6 +397,7 @@ } }, "order-by": "Sortieren nach ...", + "post-type": "Beitrags-Typ", "save": { "error": "Themen konnten nicht gespeichert werden!", "success": "Themen gespeichert!" diff --git a/webapp/locales/en.json b/webapp/locales/en.json index 92f5687c2..14b8f85e3 100644 --- a/webapp/locales/en.json +++ b/webapp/locales/en.json @@ -377,9 +377,11 @@ }, "filter-menu": { "all": "All", + "article": "Article", "categories": "Topics", "deleteFilter": "Delete filter", "emotions": "Emotions", + "events": "Events", "filter-by": "Filter by ...", "following": "Users I follow", "languages": "Languages", @@ -395,6 +397,7 @@ } }, "order-by": "Order by ...", + "post-type": "Post type", "save": { "error": "Failed saving topic settings!", "success": "Topics saved!" diff --git a/webapp/store/posts.js b/webapp/store/posts.js index 587867b0e..6deb2ed15 100644 --- a/webapp/store/posts.js +++ b/webapp/store/posts.js @@ -63,6 +63,12 @@ export const mutations = { if (isEmpty(get(filter, 'categories_some.id_in'))) delete filter.categories_some state.filter = filter }, + TOGGLE_POST_TYPE(state, postType) { + const filter = clone(state.filter) + update(filter, 'postType_in', (postTypes) => xor(postTypes, [postType])) + if (isEmpty(get(filter, 'postType_in'))) delete filter.postType_in + state.filter = filter + }, TOGGLE_LANGUAGE(state, languageCode) { const filter = clone(state.filter) update(filter, 'language_in', (languageCodes) => xor(languageCodes, [languageCode])) @@ -90,6 +96,9 @@ export const getters = { filteredCategoryIds(state) { return get(state.filter, 'categories_some.id_in') || [] }, + filteredPostTypes(state) { + return get(state.filter, 'postType_in') || [] + }, filteredLanguageCodes(state) { return get(state.filter, 'language_in') || [] }, From fad1ab212e9525662cb8a22a85ef78c10e7969fa Mon Sep 17 00:00:00 2001 From: ogerly Date: Tue, 25 Apr 2023 22:03:05 +0200 Subject: [PATCH 21/40] locales, style, events --- .../ContributionForm/ContributionForm.vue | 45 ++++++++++--------- webapp/locales/de.json | 7 ++- webapp/locales/en.json | 7 ++- 3 files changed, 37 insertions(+), 22 deletions(-) diff --git a/webapp/components/ContributionForm/ContributionForm.vue b/webapp/components/ContributionForm/ContributionForm.vue index 0a598f99f..94166306a 100644 --- a/webapp/components/ContributionForm/ContributionForm.vue +++ b/webapp/components/ContributionForm/ContributionForm.vue @@ -52,12 +52,14 @@ {{ contentLength }} + -
- {{ formData.eventStart }} +
+
+ - +
@@ -76,7 +79,7 @@
- +
- - {{ formData.eventLocationName.length }}/{{ formSchema.eventLocationName.max }} - + + {{ formData.eventVenue.length }}/{{ formSchema.eventVenue.max }} +
- +
- {{ errors }} - - {{ formData.eventVenue.length }}/{{ formSchema.eventVenue.max }} - + + {{ formData.eventLocationName.length }}/{{ formSchema.eventLocationName.max }} +
@@ -121,10 +124,12 @@ name="eventIsOnline" style="font-size: larger" /> - Online Event + {{ $t('post.viewEvent.eventIsOnline') }}
+ +
- + category.id) : [], eventStart: eventStart || null, eventEnd: eventEnd || null, - eventLocation: eventLocation || 'Dresden, Saxony, Germany', + eventLocation: eventLocation || '', eventLocationName: eventLocationName || '', eventVenue: eventVenue || '', eventIsOnline: eventIsOnline || true, @@ -272,7 +277,6 @@ export default { }), eventInput() { if (this.creatEvent) { - alert(typeof this.formData.eventStart) return { eventStart: this.formData.eventStart, eventLocation: this.formData.eventLocation, @@ -501,11 +505,12 @@ export default { width: 100%; } .mx-datepicker input { - font-size: 1.25rem; + font-size: 1rem; height: calc(1.625rem + 18px); padding: 8px 8px; background-color: #faf9fa; border-color: #c8c8c8; + color: #4b4554; } .mx-datepicker input:hover { border-color: #c8c8c8; diff --git a/webapp/locales/de.json b/webapp/locales/de.json index 7ef2f0fcd..347e4130f 100644 --- a/webapp/locales/de.json +++ b/webapp/locales/de.json @@ -728,7 +728,12 @@ "forGroup": { "title": "In der Gruppe „{name}“" }, - "title": "Event" + "title": "Veranstaltung", + "eventStart":"Beginn", + "eventEnd":"Ende", + "eventVenue":"Veranstaltungsort", + "eventLocationName":"Stadt", + "eventIsOnline":"Online Veranstaltung" } }, "profile": { diff --git a/webapp/locales/en.json b/webapp/locales/en.json index 1fdb5c7ac..1b6711887 100644 --- a/webapp/locales/en.json +++ b/webapp/locales/en.json @@ -725,7 +725,12 @@ "title": "Post" }, "viewEvent": { - "title": "Event" + "title": "Event", + "eventStart":"Start", + "eventEnd":"End", + "eventVenue":"Venue", + "eventLocationName":"City", + "eventIsOnline":"Online Event" } }, "profile": { From 2c5576f8a1aef55fd7c3ad959f033e79882717df Mon Sep 17 00:00:00 2001 From: ogerly Date: Tue, 25 Apr 2023 22:11:25 +0200 Subject: [PATCH 22/40] fix lint, fix locales --- .../ContributionForm/ContributionForm.vue | 14 ++++++++------ webapp/components/PostTeaser/PostTeaser.vue | 2 +- webapp/components/Ribbon/index.vue | 10 +++++----- webapp/locales/de.json | 19 ++++++++----------- webapp/locales/en.json | 16 ++++++++-------- webapp/pages/post/_id/_slug/index.vue | 1 - 6 files changed, 30 insertions(+), 32 deletions(-) diff --git a/webapp/components/ContributionForm/ContributionForm.vue b/webapp/components/ContributionForm/ContributionForm.vue index 94166306a..ba52bf319 100644 --- a/webapp/components/ContributionForm/ContributionForm.vue +++ b/webapp/components/ContributionForm/ContributionForm.vue @@ -52,11 +52,11 @@ {{ contentLength }} - +
-
- +
+ @@ -107,7 +107,11 @@
- +
{{ formData.eventLocationName.length }}/{{ formSchema.eventLocationName.max }} @@ -126,8 +130,6 @@ /> {{ $t('post.viewEvent.eventIsOnline') }}
- -
-