From 639309ed92a1ad87041c7a34c9a6d9042bc464e6 Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Tue, 17 Aug 2021 10:28:03 +0200 Subject: [PATCH 1/2] Add some visio services to preconfigured metadata Signed-off-by: Thomas Citharel --- js/src/components/Event/EventMetadataList.vue | 3 + .../Event/Integrations/JitsiMeet.vue | 38 ++++++++++++ js/src/i18n/en_US.json | 13 ++++- js/src/i18n/fr_FR.json | 13 ++++- js/src/services/EventMetadata.ts | 58 +++++++++++++++++++ js/src/types/enums.ts | 1 + js/src/views/Event/Event.vue | 5 ++ 7 files changed, 129 insertions(+), 2 deletions(-) create mode 100644 js/src/components/Event/Integrations/JitsiMeet.vue diff --git a/js/src/components/Event/EventMetadataList.vue b/js/src/components/Event/EventMetadataList.vue index b5779def6..b6b863e77 100644 --- a/js/src/components/Event/EventMetadataList.vue +++ b/js/src/components/Event/EventMetadataList.vue @@ -140,6 +140,9 @@ export default class EventMetadataList extends Vue { [EventMetadataCategories.SOCIAL]: this.$t("Social") as string, [EventMetadataCategories.DETAILS]: this.$t("Details") as string, [EventMetadataCategories.BOOKING]: this.$t("Booking") as string, + [EventMetadataCategories.VIDEO_CONFERENCE]: this.$t( + "Video Conference" + ) as string, }; get filteredDataArray(): GroupedIEventMetadata { diff --git a/js/src/components/Event/Integrations/JitsiMeet.vue b/js/src/components/Event/Integrations/JitsiMeet.vue new file mode 100644 index 000000000..2bee04aab --- /dev/null +++ b/js/src/components/Event/Integrations/JitsiMeet.vue @@ -0,0 +1,38 @@ + + + diff --git a/js/src/i18n/en_US.json b/js/src/i18n/en_US.json index faef2ada9..b0196daf8 100644 --- a/js/src/i18n/en_US.json +++ b/js/src/i18n/en_US.json @@ -1128,5 +1128,16 @@ "Redirecting in progress…": "Redirecting in progress…", "Zoom in": "Zoom in", "Zoom out": "Zoom out", - "Show me where I am": "Show me where I am" + "Show me where I am": "Show me where I am", + "Video Conference": "Video Conference", + "Jisti Meet": "Jisti Meet", + "The Jitsi Meet video teleconference URL": "The Jitsi Meet video teleconference URL", + "Zoom": "Zoom", + "The Zoom video teleconference URL": "The Zoom video teleconference URL", + "Microsoft Teams": "Microsoft Teams", + "The Microsoft Teams video teleconference URL": "The Microsoft Teams video teleconference URL", + "Google Meet": "Google Meet", + "The Google Meet video teleconference URL": "The Google Meet video teleconference URL", + "Big Blue Button": "Big Blue Button", + "The Big Blue Button video teleconference URL": "The Big Blue Button video teleconference URL" } diff --git a/js/src/i18n/fr_FR.json b/js/src/i18n/fr_FR.json index e7f3473da..76ee8772e 100644 --- a/js/src/i18n/fr_FR.json +++ b/js/src/i18n/fr_FR.json @@ -1219,5 +1219,16 @@ "Redirecting in progress…": "Redirection en cours…", "Zoom in": "Zoomer", "Zoom out": "Dézoomer", - "Show me where I am": "Afficher ma position" + "Show me where I am": "Afficher ma position", + "Video Conference": "Visio-conférence", + "Jisti Meet": "Jitsi Meet", + "The Jitsi Meet video teleconference URL": "L'URL de visio-conférence Jitsi Meet", + "Zoom": "Zoom", + "The Zoom video teleconference URL": "L'URL de visio-conférence Zoom", + "Microsoft Teams": "Microsoft Teams", + "The Microsoft Teams video teleconference URL": "L'URL de visio-conférence Microsoft Teams", + "Google Meet": "Google Meet", + "The Google Meet video teleconference URL": "L'URL de visio-conférence Google Meet", + "Big Blue Button": "Big Blue Button", + "The Big Blue Button video teleconference URL": "L'URL de visio-conférence Big Blue Button" } diff --git a/js/src/services/EventMetadata.ts b/js/src/services/EventMetadata.ts index a6b899d85..c964f9d8d 100644 --- a/js/src/services/EventMetadata.ts +++ b/js/src/services/EventMetadata.ts @@ -209,4 +209,62 @@ export const eventMetaDataList: IEventMetadataDescription[] = [ keyType: EventMetadataKeyType.URL, category: EventMetadataCategories.DETAILS, }, + { + icon: "webcam", + key: "mz:visio:jitsi_meet", + label: i18n.t("Jisti Meet") as string, + description: i18n.t("The Jitsi Meet video teleconference URL") as string, + value: "", + type: EventMetadataType.STRING, + keyType: EventMetadataKeyType.URL, + category: EventMetadataCategories.VIDEO_CONFERENCE, + placeholder: "https://meet.jit.si/AFewWords", + }, + { + icon: "webcam", + key: "mz:visio:zoom", + label: i18n.t("Zoom") as string, + description: i18n.t("The Zoom video teleconference URL") as string, + value: "", + type: EventMetadataType.STRING, + keyType: EventMetadataKeyType.URL, + category: EventMetadataCategories.VIDEO_CONFERENCE, + pattern: /https:\/\/.*\.?zoom.us\/.*/, + }, + { + icon: "microsoft-teams", + key: "mz:visio:microsoft_teams", + label: i18n.t("Microsoft Teams") as string, + description: i18n.t( + "The Microsoft Teams video teleconference URL" + ) as string, + value: "", + type: EventMetadataType.STRING, + keyType: EventMetadataKeyType.URL, + category: EventMetadataCategories.VIDEO_CONFERENCE, + pattern: /https:\/\/teams\.live\.com\/meet\/.+/, + }, + { + icon: "google-hangouts", + key: "mz:visio:google_meet", + label: i18n.t("Google Meet") as string, + description: i18n.t("The Google Meet video teleconference URL") as string, + value: "", + type: EventMetadataType.STRING, + keyType: EventMetadataKeyType.URL, + category: EventMetadataCategories.VIDEO_CONFERENCE, + pattern: /https:\/\/meet\.google\.com\/.+/, + }, + { + icon: "webcam", + key: "mz:visio:big_blue_button", + label: i18n.t("Big Blue Button") as string, + description: i18n.t( + "The Big Blue Button video teleconference URL" + ) as string, + value: "", + type: EventMetadataType.STRING, + keyType: EventMetadataKeyType.URL, + category: EventMetadataCategories.VIDEO_CONFERENCE, + }, ]; diff --git a/js/src/types/enums.ts b/js/src/types/enums.ts index b5c738b7c..34049388b 100644 --- a/js/src/types/enums.ts +++ b/js/src/types/enums.ts @@ -274,4 +274,5 @@ export enum EventMetadataCategories { TOOLS = "TOOLS", DETAILS = "DETAILS", BOOKING = "BOOKING", + VIDEO_CONFERENCE = "VIDEO_CONFERENCE", } diff --git a/js/src/views/Event/Event.vue b/js/src/views/Event/Event.vue index 5ac44b715..74eab15a4 100755 --- a/js/src/views/Event/Event.vue +++ b/js/src/views/Event/Event.vue @@ -533,6 +533,10 @@ import { eventMetaDataList } from "../../services/EventMetadata"; import( /* webpackChunkName: "YouTubeIntegration" */ "../../components/Event/Integrations/YouTube.vue" ), + "integration-jitsi-meet": () => + import( + /* webpackChunkName: "JitsiMeetIntegration" */ "../../components/Event/Integrations/JitsiMeet.vue" + ), }, apollo: { event: { @@ -1087,6 +1091,7 @@ export default class Event extends EventMixin { "mz:live:twitch:url": "integration-twitch", "mz:live:peertube:url": "integration-peertube", "mz:live:youtube:url": "integration-youtube", + "mz:visio:jitsi_meet": "integration-jitsi-meet", }; get integrations(): Record { From ae318359233c3b236d9c8ae61991484e65503b9d Mon Sep 17 00:00:00 2001 From: Thomas Citharel Date: Tue, 17 Aug 2021 10:41:39 +0200 Subject: [PATCH 2/2] Add Etherpad Integration Signed-off-by: Thomas Citharel --- .../Event/Integrations/Etherpad.vue | 38 +++++++++++++++++++ js/src/i18n/en_US.json | 5 ++- js/src/i18n/fr_FR.json | 5 ++- js/src/services/EventMetadata.ts | 15 ++++++++ js/src/views/Event/Event.vue | 5 +++ 5 files changed, 66 insertions(+), 2 deletions(-) create mode 100644 js/src/components/Event/Integrations/Etherpad.vue diff --git a/js/src/components/Event/Integrations/Etherpad.vue b/js/src/components/Event/Integrations/Etherpad.vue new file mode 100644 index 000000000..afba2f326 --- /dev/null +++ b/js/src/components/Event/Integrations/Etherpad.vue @@ -0,0 +1,38 @@ + + + diff --git a/js/src/i18n/en_US.json b/js/src/i18n/en_US.json index b0196daf8..eeaa8fc9a 100644 --- a/js/src/i18n/en_US.json +++ b/js/src/i18n/en_US.json @@ -1139,5 +1139,8 @@ "Google Meet": "Google Meet", "The Google Meet video teleconference URL": "The Google Meet video teleconference URL", "Big Blue Button": "Big Blue Button", - "The Big Blue Button video teleconference URL": "The Big Blue Button video teleconference URL" + "The Big Blue Button video teleconference URL": "The Big Blue Button video teleconference URL", + "Etherpad notes": "Etherpad notes", + "The URL of a pad where notes are being taken collaboratively": "The URL of a pad where notes are being taken collaboratively", + "https://mensuel.framapad.org/p/some-secret-token": "https://mensuel.framapad.org/p/some-secret-token" } diff --git a/js/src/i18n/fr_FR.json b/js/src/i18n/fr_FR.json index 76ee8772e..76bf9c154 100644 --- a/js/src/i18n/fr_FR.json +++ b/js/src/i18n/fr_FR.json @@ -1230,5 +1230,8 @@ "Google Meet": "Google Meet", "The Google Meet video teleconference URL": "L'URL de visio-conférence Google Meet", "Big Blue Button": "Big Blue Button", - "The Big Blue Button video teleconference URL": "L'URL de visio-conférence Big Blue Button" + "The Big Blue Button video teleconference URL": "L'URL de visio-conférence Big Blue Button", + "Etherpad notes": "Notes sur Etherpad", + "The URL of a pad where notes are being taken collaboratively": "L'URL d'un pad où les notes sont prises collaborativement", + "https://mensuel.framapad.org/p/some-secret-token": "https://mensuel.framapad.org/p/un-jeton-secret" } diff --git a/js/src/services/EventMetadata.ts b/js/src/services/EventMetadata.ts index c964f9d8d..29f093138 100644 --- a/js/src/services/EventMetadata.ts +++ b/js/src/services/EventMetadata.ts @@ -149,6 +149,21 @@ export const eventMetaDataList: IEventMetadataDescription[] = [ keyType: EventMetadataKeyType.URL, category: EventMetadataCategories.TOOLS, }, + { + icon: "file-document-edit", + key: "mz:notes:etherpad:url", + label: i18n.t("Etherpad notes") as string, + description: i18n.t( + "The URL of a pad where notes are being taken collaboratively" + ) as string, + value: "", + placeholder: i18n.t( + "https://mensuel.framapad.org/p/some-secret-token" + ) as string, + type: EventMetadataType.STRING, + keyType: EventMetadataKeyType.URL, + category: EventMetadataCategories.TOOLS, + }, { icon: "twitter", key: "mz:social:twitter:account", diff --git a/js/src/views/Event/Event.vue b/js/src/views/Event/Event.vue index 74eab15a4..bd0ded10e 100755 --- a/js/src/views/Event/Event.vue +++ b/js/src/views/Event/Event.vue @@ -537,6 +537,10 @@ import { eventMetaDataList } from "../../services/EventMetadata"; import( /* webpackChunkName: "JitsiMeetIntegration" */ "../../components/Event/Integrations/JitsiMeet.vue" ), + "integration-etherpad": () => + import( + /* webpackChunkName: "EtherpadIntegration" */ "../../components/Event/Integrations/Etherpad.vue" + ), }, apollo: { event: { @@ -1092,6 +1096,7 @@ export default class Event extends EventMixin { "mz:live:peertube:url": "integration-peertube", "mz:live:youtube:url": "integration-youtube", "mz:visio:jitsi_meet": "integration-jitsi-meet", + "mz:notes:etherpad:url": "integration-etherpad", }; get integrations(): Record {