@saooti/octopus-sdk 38.3.0 → 38.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/assets/share.scss +1 -0
- package/src/components/display/sharing/ShareButtons.vue +2 -2
- package/src/components/display/sharing/SharePlayer.vue +3 -0
- package/src/components/misc/modal/NewsletterModal.vue +133 -240
- package/src/locale/de.ts +10 -5
- package/src/locale/en.ts +10 -5
- package/src/locale/es.ts +10 -5
- package/src/locale/fr.ts +11 -6
- package/src/locale/it.ts +11 -6
- package/src/locale/sl.ts +10 -5
- package/src/stores/ParamSdkStore.ts +11 -11
- package/src/stores/SaveFetchStore.ts +3 -0
package/package.json
CHANGED
package/src/assets/share.scss
CHANGED
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
</div>
|
|
29
29
|
</div>
|
|
30
30
|
<div class="d-flex align-items-center">
|
|
31
|
-
|
|
31
|
+
<div
|
|
32
32
|
v-if="podcast || emission || playlist"
|
|
33
33
|
class="d-flex flex-column ms-4"
|
|
34
34
|
>
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
@click="newsletter = true"
|
|
44
44
|
/>
|
|
45
45
|
</div>
|
|
46
|
-
</div>
|
|
46
|
+
</div>
|
|
47
47
|
<div class="d-flex flex-column ms-4">
|
|
48
48
|
<div class="h2 mb-2">
|
|
49
49
|
{{ $t("QR Code") }}
|
|
@@ -303,6 +303,9 @@ export default defineComponent({
|
|
|
303
303
|
if (this.isLiveReadyToRecord) {
|
|
304
304
|
this.iFrameModel = "large";
|
|
305
305
|
}
|
|
306
|
+
if("true"===this.podcast?.annotations?.["fromTTS"]){
|
|
307
|
+
this.displayTranscript = false;
|
|
308
|
+
}
|
|
306
309
|
},
|
|
307
310
|
methods: {
|
|
308
311
|
...mapActions(useSaveFetchStore, ["getOrgaAttributes"]),
|
|
@@ -1,75 +1,50 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<ClassicModal
|
|
3
3
|
id-modal="newsletter-modal"
|
|
4
|
-
:title-modal="
|
|
4
|
+
:title-modal="newsletterInfo.titleModal"
|
|
5
5
|
:closable="false"
|
|
6
6
|
@close="closePopup"
|
|
7
7
|
>
|
|
8
8
|
<template #body>
|
|
9
|
-
<div class="d-flex
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
<h4 class="mb-3">
|
|
15
|
-
{{ $t("Configuration") }}
|
|
16
|
-
</h4>
|
|
17
|
-
<label for="share-url-newsletter">{{ $t("Share") }}</label>
|
|
18
|
-
<input
|
|
19
|
-
id="share-url-newsletter"
|
|
20
|
-
v-model="shareUrl"
|
|
21
|
-
class="form-input mb-2"
|
|
22
|
-
type="text"
|
|
23
|
-
:class="{ 'border border-danger': 0 === shareUrl }"
|
|
24
|
-
/>
|
|
25
|
-
<template v-if="podcast">
|
|
26
|
-
<ClassicCheckbox
|
|
27
|
-
v-model:textInit="displayEmissionName"
|
|
28
|
-
id-checkbox="display-emission-name"
|
|
29
|
-
:label="$t('Display emission name')"
|
|
30
|
-
/>
|
|
31
|
-
<ClassicCheckbox
|
|
32
|
-
v-model:textInit="displayParticipantsNames"
|
|
33
|
-
id-checkbox="display-participants-names"
|
|
34
|
-
:label="$t('Display participants list')"
|
|
35
|
-
/>
|
|
36
|
-
</template>
|
|
37
|
-
<div class="d-flex align-items-center mt-2">
|
|
38
|
-
<VSwatches
|
|
39
|
-
v-model="color"
|
|
40
|
-
class="c-hand me-2 mt-2"
|
|
41
|
-
show-fallback
|
|
42
|
-
fallback-input-type="color"
|
|
43
|
-
colors="text-advanced"
|
|
44
|
-
popover-to="right"
|
|
45
|
-
:data-color="color"
|
|
46
|
-
/>
|
|
47
|
-
<div>{{ $t("Choose main color") }}</div>
|
|
48
|
-
</div>
|
|
49
|
-
<div
|
|
50
|
-
class="d-flex justify-content-between align-items-center mt-3 mb-2"
|
|
51
|
-
>
|
|
52
|
-
<h4 class="mb-0">
|
|
53
|
-
{{ $t("HTML Code") }}
|
|
9
|
+
<div class="d-flex flex-column">
|
|
10
|
+
<div class="d-flex">
|
|
11
|
+
<div class="d-flex flex-column flex-shrink-0 me-3">
|
|
12
|
+
<h4 class="mb-3">
|
|
13
|
+
{{ $t("Configure your Newsletter tile") }}
|
|
54
14
|
</h4>
|
|
55
|
-
<
|
|
56
|
-
|
|
57
|
-
:
|
|
58
|
-
class="
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
15
|
+
<div
|
|
16
|
+
v-for="colors in arrayColors"
|
|
17
|
+
:key="colors.mainText"
|
|
18
|
+
class="d-flex align-items-center mb-3"
|
|
19
|
+
>
|
|
20
|
+
<VSwatches
|
|
21
|
+
v-model="colors.color"
|
|
22
|
+
class="c-hand me-2"
|
|
23
|
+
show-fallback
|
|
24
|
+
fallback-input-type="color"
|
|
25
|
+
colors="text-advanced"
|
|
26
|
+
popover-to="right"
|
|
27
|
+
:data-color="colors.color"
|
|
28
|
+
/>
|
|
29
|
+
<div class="d-flex flex-column">
|
|
30
|
+
<div class="fw-bold">{{ colors.mainText }}</div>
|
|
31
|
+
<div v-if="colors.secondText" class="descriptionText">{{ colors.secondText }}</div>
|
|
32
|
+
</div>
|
|
33
|
+
</div>
|
|
62
34
|
</div>
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
readonly
|
|
67
|
-
@click="selectAll"
|
|
68
|
-
/>
|
|
69
|
-
<label for="newsletter_code_textarea" :title="$t('HTML Code')" />
|
|
35
|
+
<!-- eslint-disable vue/no-v-html -->
|
|
36
|
+
<div v-html="newsletterHtml" />
|
|
37
|
+
<!-- eslint-enable -->
|
|
70
38
|
</div>
|
|
39
|
+
<button
|
|
40
|
+
class="btn flex-grow-1 mt-3 fw-bold"
|
|
41
|
+
@click="onCopyCode(newsletterHtml, afterCopy)"
|
|
42
|
+
>
|
|
43
|
+
<span class="saooti-copy me-2"/>
|
|
44
|
+
{{ $t("Copy and embed the HTML code into your email tool") }}
|
|
45
|
+
</button>
|
|
46
|
+
<SnackBar ref="snackbar" position="bottom-left" />
|
|
71
47
|
</div>
|
|
72
|
-
<SnackBar ref="snackbar" position="bottom-left" />
|
|
73
48
|
</template>
|
|
74
49
|
<template #footer>
|
|
75
50
|
<button class="btn btn-primary m-1" @click="closePopup">
|
|
@@ -81,16 +56,11 @@
|
|
|
81
56
|
|
|
82
57
|
<script lang="ts">
|
|
83
58
|
import ClassicModal from "../modal/ClassicModal.vue";
|
|
84
|
-
import ClassicCheckbox from "../../form/ClassicCheckbox.vue";
|
|
85
59
|
import SnackBar from "../../misc/SnackBar.vue";
|
|
86
|
-
import dayjs from "dayjs";
|
|
87
60
|
// @ts-ignore
|
|
88
61
|
import { VSwatches } from "vue3-swatches";
|
|
89
62
|
import "vue3-swatches/dist/style.css";
|
|
90
|
-
// @ts-ignore
|
|
91
|
-
import humanizeDuration from "humanize-duration";
|
|
92
63
|
import displayMethods from "../../mixins/displayMethods";
|
|
93
|
-
import { Participant } from "@/stores/class/general/participant";
|
|
94
64
|
import { Podcast } from "@/stores/class/general/podcast";
|
|
95
65
|
import { state } from "../../../stores/ParamSdkStore";
|
|
96
66
|
import { defineComponent } from "vue";
|
|
@@ -105,7 +75,6 @@ export default defineComponent({
|
|
|
105
75
|
components: {
|
|
106
76
|
SnackBar,
|
|
107
77
|
VSwatches,
|
|
108
|
-
ClassicCheckbox,
|
|
109
78
|
ClassicModal,
|
|
110
79
|
},
|
|
111
80
|
|
|
@@ -121,172 +90,102 @@ export default defineComponent({
|
|
|
121
90
|
|
|
122
91
|
data() {
|
|
123
92
|
return {
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
93
|
+
arrayColors: [
|
|
94
|
+
{color:"#40a372", mainText: this.$t('Choose main color'),secondText: this.$t('Newsletter elements') },
|
|
95
|
+
{color:"#000000", mainText: this.$t('Choose text color') },
|
|
96
|
+
{color:"#FFFFFF", mainText: this.$t('Choose background color') }],
|
|
127
97
|
shareUrl: window.location.href,
|
|
128
98
|
};
|
|
129
99
|
},
|
|
130
|
-
|
|
131
100
|
computed: {
|
|
132
101
|
...mapState(useAuthStore, ["authOrganisation"]),
|
|
133
|
-
|
|
134
|
-
if (!this.podcast || 1970 === dayjs(this.podcast.pubDate).year()) {
|
|
135
|
-
return "";
|
|
136
|
-
}
|
|
137
|
-
return dayjs(this.podcast.pubDate).format("D MMMM YYYY, HH[h]mm");
|
|
138
|
-
},
|
|
139
|
-
duration(): string {
|
|
140
|
-
if (!this.podcast || this.podcast.duration <= 1) return "";
|
|
141
|
-
if (this.podcast.duration > 600000) {
|
|
142
|
-
return humanizeDuration(this.podcast.duration, {
|
|
143
|
-
language: this.$i18n.locale,
|
|
144
|
-
largest: 1,
|
|
145
|
-
round: true,
|
|
146
|
-
});
|
|
147
|
-
}
|
|
148
|
-
return humanizeDuration(this.podcast.duration, {
|
|
149
|
-
language: this.$i18n.locale,
|
|
150
|
-
largest: 2,
|
|
151
|
-
round: true,
|
|
152
|
-
});
|
|
153
|
-
},
|
|
154
|
-
emissionName(): string {
|
|
155
|
-
if (!this.displayEmissionName || !this.podcast) {
|
|
156
|
-
return "";
|
|
157
|
-
}
|
|
158
|
-
return `<tr><td colspan="2" style="font-size: 16px;line-height:24px;font-weight: bold;">${this.podcast.emission.name}</td></tr>`;
|
|
159
|
-
},
|
|
160
|
-
articleHtml(): string {
|
|
161
|
-
if (!this.podcast?.article || 0 === this.podcast.article?.length) {
|
|
162
|
-
return "";
|
|
163
|
-
}
|
|
164
|
-
return `<a href="${this.podcast.article}" title="${this.$t(
|
|
165
|
-
"See associated article",
|
|
166
|
-
)}">
|
|
167
|
-
<img width="44" height="44" style="display: inline-block;vertical-align: middle; margin-right:3px" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAABmJLR0QA/wD/AP+gvaeTAAAA6UlEQVRIie3WPUpEMRTF8R9+4QpEBGttrcdeV+E2pp3KdYi7GBRttNVCZgOCjSuQ+UCLJzLIe7l3HpFpPJAuOf+T5F4SYh3jFZ/JMVlevJUwv8c+HvEQzD/FIBEaHOFtKdkosWb0PfdHGwXzOxxk03SpDVDNvA1Q1bwNcFMwn/cB/K6iQ+3VMsVVDQDcylVMSl1VBOea5FFjTXHWZVJqtCdcYjcI+YHnPoB3FY6qdERVVNrBHi6wGXgscK3Z8UqAE80dbAeAGV4wXhUwxk5gHurP72CtgP9Gw5oabYBhT7/wwZ/If09S35Yv52lVAXwyqt0AAAAASUVORK5CYII=">
|
|
168
|
-
</a>
|
|
169
|
-
<a style="color: #000;text-decoration: none;" href="${
|
|
170
|
-
this.podcast.article
|
|
171
|
-
}">${this.$t("See associated article")}</a>`;
|
|
172
|
-
},
|
|
173
|
-
participantsName(): string {
|
|
174
|
-
if (
|
|
175
|
-
!this.displayParticipantsNames ||
|
|
176
|
-
!this.podcast ||
|
|
177
|
-
!this.podcast.animators
|
|
178
|
-
)
|
|
179
|
-
return "";
|
|
180
|
-
const text = [""];
|
|
181
|
-
this.podcast.animators.forEach((element: Participant) => {
|
|
182
|
-
text.push(
|
|
183
|
-
`<table width='100%' style="width:100%;background: #f3f3f3;font-family: Arial, sans-serif;font-size: 12px;line-height: 20px;border-bottom-left-radius: 1.5em;border-bottom-right-radius: 1.5em;">
|
|
184
|
-
<tr>
|
|
185
|
-
<td width="90" rowspan="2" style="text-align:left; vertical-align: top; width: 90px;padding:0 15px 15px 10px">
|
|
186
|
-
<img width="72" style="width: 62px;height: 62px;border-radius: 50%;background-color: #fff;" src="${
|
|
187
|
-
element.imageUrl
|
|
188
|
-
}" alt="${this.$t("Animator image")}">
|
|
189
|
-
</td>
|
|
190
|
-
<td height="1" style="height: 1px;text-align:left; font-size: 14px;line-height:20px;vertical-align: top;font-weight: bold;padding-top: 23px;">${this.getName(
|
|
191
|
-
element,
|
|
192
|
-
)}</td>
|
|
193
|
-
</tr>`,
|
|
194
|
-
);
|
|
195
|
-
if (element.description) {
|
|
196
|
-
text.push(
|
|
197
|
-
`<tr><td style="height: 100%;text-align:justify;padding-bottom: 15px;padding-right: 15px; font-size: 12px;line-height:16px;vertical-align: top">
|
|
198
|
-
${element.description}</td></tr>`,
|
|
199
|
-
);
|
|
200
|
-
}
|
|
201
|
-
text.push(`</table>`);
|
|
202
|
-
});
|
|
203
|
-
return text.join("");
|
|
204
|
-
},
|
|
205
|
-
imageUrl(): string {
|
|
102
|
+
newsletterInfo() {
|
|
206
103
|
if (this.podcast) {
|
|
207
|
-
return
|
|
104
|
+
return {
|
|
105
|
+
titleModal: this.$t("Share the episode in your newsletter"),
|
|
106
|
+
imageUrl: `${this.podcast.imageUrl}" alt="${this.$t(
|
|
107
|
+
"Podcast image",
|
|
108
|
+
)}`,
|
|
109
|
+
title:this.podcast.title,
|
|
110
|
+
description: this.podcast.description ?? "",
|
|
111
|
+
shareText: this.$t("Listen this episode"),
|
|
112
|
+
emissionHtml: `<tr><td style="padding:5px 0;">
|
|
113
|
+
<div style="display:flex; margin-top:5px;">
|
|
114
|
+
<div style="font-size:20px; color:${this.arrayColors[1].color}; margin-right:5px;">${this.$t(
|
|
115
|
+
"Emission",
|
|
116
|
+
)} :</div>
|
|
117
|
+
<a href="${this.shareUrl}" style="font-size: 18px;color: ${
|
|
118
|
+
this.arrayColors[0].color
|
|
119
|
+
};">${this.podcast.emission.name}</a>
|
|
120
|
+
</div></td></tr>`,
|
|
121
|
+
articleHtml:
|
|
122
|
+
!this.podcast?.article || 0 === this.podcast.article?.length
|
|
123
|
+
? ``
|
|
124
|
+
: `<tr><td style="padding:5px 0;">
|
|
125
|
+
<div style="display:flex;">
|
|
126
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24"><path fill="currentColor" d="M7 17h7v-2H7zm0-4h10v-2H7zm0-4h10V7H7zM5 21q-.825 0-1.412-.587T3 19V5q0-.825.588-1.412T5 3h14q.825 0 1.413.588T21 5v14q0 .825-.587 1.413T19 21zm0-2h14V5H5zM5 5v14z"/></svg>
|
|
127
|
+
<a href="${
|
|
128
|
+
this.podcast.article
|
|
129
|
+
}" style="color: ${this.arrayColors[1].color};margin-top:2px">${this.$t(
|
|
130
|
+
"See associated article",
|
|
131
|
+
)}</a>
|
|
132
|
+
</div></td></tr>
|
|
133
|
+
`,
|
|
134
|
+
colorTitle: `color:${this.arrayColors[1].color};`,
|
|
135
|
+
};
|
|
208
136
|
}
|
|
209
137
|
if (this.emission) {
|
|
210
|
-
return
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
}
|
|
236
|
-
if (this.playlist?.description) {
|
|
237
|
-
return `<tr><td colspan="2" valign="top" style="line-height:24px;font-size: 14px;max-width: 500px;">${this.playlist.description}</td></tr>`;
|
|
238
|
-
}
|
|
239
|
-
return "";
|
|
240
|
-
},
|
|
241
|
-
shareText(): string {
|
|
242
|
-
if (this.podcast) {
|
|
243
|
-
return this.$t("Listen this episode");
|
|
244
|
-
}
|
|
245
|
-
if (this.emission) {
|
|
246
|
-
return this.$t("All podcast emission button");
|
|
247
|
-
}
|
|
248
|
-
return this.$t("Podcasts in the playlist");
|
|
249
|
-
},
|
|
250
|
-
durationPodcast(): string {
|
|
251
|
-
if (!this.podcast) {
|
|
252
|
-
return "";
|
|
253
|
-
}
|
|
254
|
-
return `<td colspan="2" style="height: 1px;color: #666;font-size: 12px;line-height: 16px;padding-top:15px;">
|
|
255
|
-
<span>${this.date}</span>
|
|
256
|
-
<span style="padding: 0 10px">${this.$t("Duration", {
|
|
257
|
-
duration: this.duration,
|
|
258
|
-
})}</span>
|
|
259
|
-
</td>`;
|
|
138
|
+
return {
|
|
139
|
+
titleModal: this.$t("Share the series in your newsletter"),
|
|
140
|
+
imageUrl: `${this.emission.imageUrl}" alt="${this.$t(
|
|
141
|
+
"Emission image",
|
|
142
|
+
)}`,
|
|
143
|
+
title: this.emission.name,
|
|
144
|
+
description: this.emission.description ?? "",
|
|
145
|
+
shareText: this.$t("Listen to all episodes"),
|
|
146
|
+
emissionHtml: ``,
|
|
147
|
+
articleHtml: ``,
|
|
148
|
+
colorTitle: `color:${this.arrayColors[0].color};`,
|
|
149
|
+
};
|
|
150
|
+
}
|
|
151
|
+
return {
|
|
152
|
+
titleModal: this.$t("Share the playlist in your newsletter"),
|
|
153
|
+
imageUrl: `${this.playlist?.imageUrl}" alt="${this.$t(
|
|
154
|
+
"Playlist image",
|
|
155
|
+
)}`,
|
|
156
|
+
title: this.playlist?.title,
|
|
157
|
+
description: this.playlist?.description ?? "",
|
|
158
|
+
shareText: this.$t("Listen to all episodes"),
|
|
159
|
+
emissionHtml: ``,
|
|
160
|
+
articleHtml: ``,
|
|
161
|
+
colorTitle: `color:${this.arrayColors[0].color};`,
|
|
162
|
+
};
|
|
260
163
|
},
|
|
261
164
|
newsletterHtml(): string {
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
</tr>
|
|
287
|
-
</table>${this.participantsName}`,
|
|
288
|
-
);
|
|
289
|
-
return html.join("");
|
|
165
|
+
return `<table style="background:${this.arrayColors[2].color};color:${this.arrayColors[1].color};table-layout: fixed;width:100%;font-size: 14px;">
|
|
166
|
+
<tr>
|
|
167
|
+
<td valign="top" width="30%" rowspan="7" style="padding-right:5px;"><img width="100%" src="${
|
|
168
|
+
this.newsletterInfo.imageUrl
|
|
169
|
+
}" style="border-radius: 4px;"></td>
|
|
170
|
+
<td valign="top" width="70%" style="padding:5px 0;"><div style="margin-top:5px;font-size: 24px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;font-weight:bold;${
|
|
171
|
+
this.newsletterInfo.colorTitle
|
|
172
|
+
}">${this.newsletterInfo.title}</div></td>
|
|
173
|
+
</tr>${this.newsletterInfo.emissionHtml}
|
|
174
|
+
<tr><td style="padding:5px 0;"><div style="overflow: hidden;display: -webkit-box;-webkit-line-clamp: 6;-webkit-box-orient: vertical;word-break: break-word;">${
|
|
175
|
+
this.newsletterInfo.description
|
|
176
|
+
}</div></td></tr>
|
|
177
|
+
<tr><td valign="top" style="padding:5px 0;"><a href="${this.shareUrl}" style="color: ${
|
|
178
|
+
this.arrayColors[0].color
|
|
179
|
+
};">${this.$t("See more")}</a></td></tr>
|
|
180
|
+
<tr>${this.newsletterInfo.articleHtml}
|
|
181
|
+
<td width="1" style="padding:5px 0;"><a href="${this.shareUrl}" style="font-size: 18px;color: ${
|
|
182
|
+
this.arrayColors[0].color
|
|
183
|
+
};text-decoration: none; display:flex;"><svg xmlns="http://www.w3.org/2000/svg" width="50" height="50" viewBox="0 0 24 24"><path fill="currentColor" d="m9.5 16.5l7-4.5l-7-4.5zM12 22q-2.075 0-3.9-.788t-3.175-2.137q-1.35-1.35-2.137-3.175T2 12q0-2.075.788-3.9t2.137-3.175q1.35-1.35 3.175-2.137T12 2q2.075 0 3.9.788t3.175 2.137q1.35 1.35 2.138 3.175T22 12q0 2.075-.788 3.9t-2.137 3.175q-1.35 1.35-3.175 2.138T12 22"/></svg><div style="margin-top: 15px; color:${this.arrayColors[1].color};">${
|
|
184
|
+
this.newsletterInfo.shareText
|
|
185
|
+
}</div></a></td>
|
|
186
|
+
</tr>
|
|
187
|
+
</table>
|
|
188
|
+
`;
|
|
290
189
|
},
|
|
291
190
|
},
|
|
292
191
|
created() {
|
|
@@ -297,16 +196,6 @@ export default defineComponent({
|
|
|
297
196
|
closePopup(): void {
|
|
298
197
|
this.$emit("close");
|
|
299
198
|
},
|
|
300
|
-
getName(person: Participant): string {
|
|
301
|
-
return `${person.firstName ?? ""} ${person.lastName ?? ""}`.trim();
|
|
302
|
-
},
|
|
303
|
-
selectAll(element: Event): void {
|
|
304
|
-
const target = element.target;
|
|
305
|
-
if (null !== target) {
|
|
306
|
-
(target as HTMLInputElement).focus();
|
|
307
|
-
(target as HTMLInputElement).select();
|
|
308
|
-
}
|
|
309
|
-
},
|
|
310
199
|
afterCopy(): void {
|
|
311
200
|
(this.$refs.snackbar as InstanceType<typeof SnackBar>).open(
|
|
312
201
|
this.$t("Data in clipboard"),
|
|
@@ -317,8 +206,11 @@ export default defineComponent({
|
|
|
317
206
|
"" !== this.authOrganisation.id
|
|
318
207
|
? this.authOrganisation.id
|
|
319
208
|
: state.generalParameters.organisationId;
|
|
209
|
+
if(!orgaId ||orgaId?.length){
|
|
210
|
+
return;
|
|
211
|
+
}
|
|
320
212
|
const attributes = await this.getOrgaAttributes(orgaId ?? "");
|
|
321
|
-
if (Object.hasOwn(attributes, "podcastmakerUrl")) {
|
|
213
|
+
if (Object.hasOwn(attributes, "podcastmakerUrl") && (attributes.podcastmakerUrl as string|undefined|null)?.length) {
|
|
322
214
|
this.shareUrl =
|
|
323
215
|
attributes.podcastmakerUrl +
|
|
324
216
|
window.location.pathname +
|
|
@@ -328,11 +220,11 @@ export default defineComponent({
|
|
|
328
220
|
state.generalParameters.podcastmaker &&
|
|
329
221
|
state.generalParameters.podcastmakerColor
|
|
330
222
|
) {
|
|
331
|
-
this.color = state.generalParameters.podcastmakerColor;
|
|
223
|
+
this.arrayColors[0].color = state.generalParameters.podcastmakerColor;
|
|
332
224
|
return;
|
|
333
225
|
}
|
|
334
226
|
if (Object.hasOwn(attributes, "COLOR")) {
|
|
335
|
-
this.color = attributes.COLOR as string;
|
|
227
|
+
this.arrayColors[0].color = attributes.COLOR as string;
|
|
336
228
|
}
|
|
337
229
|
},
|
|
338
230
|
},
|
|
@@ -342,10 +234,11 @@ export default defineComponent({
|
|
|
342
234
|
<style lang="scss">
|
|
343
235
|
.octopus-app {
|
|
344
236
|
#newsletter-modal {
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
237
|
+
.octopus-modal-body{
|
|
238
|
+
overflow-x: inherit;
|
|
239
|
+
@media (max-width: 500px){
|
|
240
|
+
overflow-x: auto;
|
|
241
|
+
}
|
|
349
242
|
}
|
|
350
243
|
.octopus-modal-dialog {
|
|
351
244
|
max-width: 80%;
|
package/src/locale/de.ts
CHANGED
|
@@ -200,12 +200,10 @@ export default {
|
|
|
200
200
|
Publishing: "Veröffentlichen",
|
|
201
201
|
"select productor": "Produzenten wählen",
|
|
202
202
|
"Share newsletter": "Einen Newsletter teilen",
|
|
203
|
-
|
|
204
|
-
"HTML
|
|
203
|
+
"Configure your Newsletter tile": "Konfigurieren Sie Ihre Newsletter-Kachel",
|
|
204
|
+
"Copy and embed the HTML code into your email tool": "Kopieren Sie den HTML-Code und betten Sie ihn in Ihr E-Mail-Tool ein",
|
|
205
205
|
"Listen this episode": "Diese Folge anhören",
|
|
206
|
-
"
|
|
207
|
-
"Display participants list": "Liste der Sprecher anzeigen",
|
|
208
|
-
"Choose main color": "Wählen Sie die Hauptfarbe",
|
|
206
|
+
"Choose main color": "Wählen Sie die Farbe der Newsletter-Modulelemente",
|
|
209
207
|
"Octopus is ACPM Podcast accredited": "Octopus ist von der ACPM zertifiziert",
|
|
210
208
|
"Live episode": "Aktuelle Live-Übertragungen",
|
|
211
209
|
"This live will start": "Diese Live-Übertragung beginnt",
|
|
@@ -351,4 +349,11 @@ export default {
|
|
|
351
349
|
"Share in one click":"Mit einem Klick teilen",
|
|
352
350
|
"Chaptering":"Kapitelaufteilung",
|
|
353
351
|
"Listen to the latest episode":"Hören Sie sich die neueste Folge an",
|
|
352
|
+
"Share the episode in your newsletter": "Teilen Sie die Episode in Ihrem Newsletter",
|
|
353
|
+
"Share the series in your newsletter": "Teilen Sie die Show in Ihrem Newsletter",
|
|
354
|
+
"Share the playlist in your newsletter": "Teilen Sie die Playlist in Ihrem Newsletter",
|
|
355
|
+
"Listen to all episodes":"Hören Sie sich alle Folgen an",
|
|
356
|
+
"Newsletter elements":"Piktogramm abspielen, Name der Show, Mehr anzeigen",
|
|
357
|
+
"Choose text color":"Wählen Sie Textfarbe",
|
|
358
|
+
"Choose background color":"Wählen Sie die Hintergrundfarbe",
|
|
354
359
|
}
|
package/src/locale/en.ts
CHANGED
|
@@ -198,12 +198,10 @@ export default {
|
|
|
198
198
|
Publishing: "Publishing",
|
|
199
199
|
"select productor": "Select Producer",
|
|
200
200
|
"Share newsletter": "Share a newsletter",
|
|
201
|
-
|
|
202
|
-
"HTML
|
|
201
|
+
"Configure your Newsletter tile": "Configure your Newsletter tile",
|
|
202
|
+
"Copy and embed the HTML code into your email tool": "Copy and embed the HTML code into your email tool",
|
|
203
203
|
"Listen this episode": "Listen to this episode",
|
|
204
|
-
"
|
|
205
|
-
"Display participants list": "Display the speakers list",
|
|
206
|
-
"Choose main color": "Choose the main color",
|
|
204
|
+
"Choose main color": "Choose the color of the newsletter module elements",
|
|
207
205
|
"Octopus is ACPM Podcast accredited": "Octopus is ACPM accredited",
|
|
208
206
|
"Live episode": "Current Live episodes",
|
|
209
207
|
"This live will start": "This live will start",
|
|
@@ -351,4 +349,11 @@ export default {
|
|
|
351
349
|
"Share in one click":"Share in one click",
|
|
352
350
|
"Chaptering":"Chaptering",
|
|
353
351
|
"Listen to the latest episode":"Listen to the latest episode",
|
|
352
|
+
"Share the episode in your newsletter": "Share the episode in your newsletter",
|
|
353
|
+
"Share the series in your newsletter": "Share the series in your newsletter",
|
|
354
|
+
"Share the playlist in your newsletter": "Share the playlist in your newsletter",
|
|
355
|
+
"Listen to all episodes":"Listen to all episodes",
|
|
356
|
+
"Newsletter elements":"Play pictogram, name of the show, See more",
|
|
357
|
+
"Choose text color":"Choose text color",
|
|
358
|
+
"Choose background color":"Choose background color",
|
|
354
359
|
};
|
package/src/locale/es.ts
CHANGED
|
@@ -199,12 +199,10 @@ export default {
|
|
|
199
199
|
Publishing: "En proceso de publicación",
|
|
200
200
|
"select productor": "Seleccionar productor",
|
|
201
201
|
"Share newsletter": "Compartir newsletter",
|
|
202
|
-
|
|
203
|
-
"HTML
|
|
202
|
+
"Configure your Newsletter tile": "Configure el mosaico de su boletín",
|
|
203
|
+
"Copy and embed the HTML code into your email tool": "Copie e incruste el código HTML en su herramienta de correo electrónico",
|
|
204
204
|
"Listen this episode": "Escuchar este episodio",
|
|
205
|
-
"
|
|
206
|
-
"Display participants list": "Mostrar la lista de participantes",
|
|
207
|
-
"Choose main color": "Elegir el color principal",
|
|
205
|
+
"Choose main color": "Elija el color de los elementos del módulo de newsletter",
|
|
208
206
|
"Octopus is ACPM Podcast accredited":
|
|
209
207
|
"Octopus ha recibido la certificación ACPM",
|
|
210
208
|
"Live episode": "Episodios en directo ahora",
|
|
@@ -352,4 +350,11 @@ export default {
|
|
|
352
350
|
"Share in one click":"Comparte en un clic",
|
|
353
351
|
"Chaptering":"Capítulos",
|
|
354
352
|
"Listen to the latest episode":"Escuche el último episodio",
|
|
353
|
+
"Share the episode in your newsletter": "Comparte el episodio en tu newsletter",
|
|
354
|
+
"Share the series in your newsletter": "Comparte el programa en tu newsletter",
|
|
355
|
+
"Share the playlist in your newsletter": "Comparte la lista de reproducción en tu newsletter",
|
|
356
|
+
"Listen to all episodes":"Escuche todos los episodios",
|
|
357
|
+
"Newsletter elements":"Pictograma de reproducción, nombre del programa, Ver más",
|
|
358
|
+
"Choose text color":"Elige el color del texto",
|
|
359
|
+
"Choose background color":"Elige el color de fondo",
|
|
355
360
|
}
|
package/src/locale/fr.ts
CHANGED
|
@@ -201,13 +201,11 @@ export default {
|
|
|
201
201
|
Debriefing: "Debriefing",
|
|
202
202
|
Publishing: "Publication",
|
|
203
203
|
"select productor": "Choisir un producteur",
|
|
204
|
-
"Share newsletter": "Partage
|
|
205
|
-
|
|
206
|
-
"HTML
|
|
204
|
+
"Share newsletter": "Partage dans votre newsletter",
|
|
205
|
+
"Configure your Newsletter tile": "Configurez votre vignette Newsletter",
|
|
206
|
+
"Copy and embed the HTML code into your email tool": "Copiez et intégrez le code HTML dans votre outil d'e-mailing",
|
|
207
207
|
"Listen this episode": "Écouter ce podcast",
|
|
208
|
-
"
|
|
209
|
-
"Display participants list": "Afficher la liste des intervenants",
|
|
210
|
-
"Choose main color": "Choisir la couleur principale",
|
|
208
|
+
"Choose main color": "Choisir la couleur des éléments du module",
|
|
211
209
|
"Octopus is ACPM Podcast accredited": "Octopus est accrédité ACPM Podcasts",
|
|
212
210
|
"Live episode": "Épisode en live",
|
|
213
211
|
"This live will start": "Ce live débutera",
|
|
@@ -358,4 +356,11 @@ export default {
|
|
|
358
356
|
"Share in one click":"Partager en un clic",
|
|
359
357
|
"Chaptering":"Chapitrage",
|
|
360
358
|
"Listen to the latest episode":"Écouter le dernier épisode",
|
|
359
|
+
"Share the episode in your newsletter": "Partagez l'épisode dans votre newsletter",
|
|
360
|
+
"Share the series in your newsletter": "Partagez l'émission dans votre newsletter",
|
|
361
|
+
"Share the playlist in your newsletter": "Partagez la playlist dans votre newsletter",
|
|
362
|
+
"Listen to all episodes":"Écouter tous les épisodes",
|
|
363
|
+
"Newsletter elements":"Pictogramme Play, nom de l'émission, Voir plus",
|
|
364
|
+
"Choose text color":"Choisir la couleur du texte",
|
|
365
|
+
"Choose background color":"Choisir la couleur du fond",
|
|
361
366
|
};
|
package/src/locale/it.ts
CHANGED
|
@@ -197,12 +197,10 @@ export default{
|
|
|
197
197
|
Publishing: 'In corso di pubblicazione',
|
|
198
198
|
'select productor': 'Seleziona producer',
|
|
199
199
|
'Share newsletter': "Condividi newsletter",
|
|
200
|
-
|
|
201
|
-
|
|
200
|
+
"Configure your Newsletter tile": 'Configura il riquadro Newsletter',
|
|
201
|
+
"Copy and embed the HTML code into your email tool": 'Copia e incorpora il codice HTML nel tuo strumento di posta elettronica',
|
|
202
202
|
'Listen this episode': 'Ascolta questo episodio',
|
|
203
|
-
'
|
|
204
|
-
'Display participants list': 'Mostra la lista degli speaker',
|
|
205
|
-
'Choose main color': 'Seleziona colore principale',
|
|
203
|
+
'Choose main color': 'Scegli il colore degli elementi del modulo newsletter',
|
|
206
204
|
'Octopus is ACPM Podcast accredited': 'Octopus è accreditata ACPM Podcast',
|
|
207
205
|
'Live episode': 'Episodi live',
|
|
208
206
|
'This live will start': 'Questo live inizierà',
|
|
@@ -344,4 +342,11 @@ export default{
|
|
|
344
342
|
"Share in one click":"Condividi con un clic",
|
|
345
343
|
"Chaptering":"Capitolazione",
|
|
346
344
|
"Listen to the latest episode":"Ascolta l'ultimo episodio",
|
|
347
|
-
|
|
345
|
+
"Share the episode in your newsletter": "Condividi l'episodio nella tua newsletter",
|
|
346
|
+
"Share the series in your newsletter": "Condividi lo spettacolo nella tua newsletter",
|
|
347
|
+
"Share the playlist in your newsletter": "Condividi la playlist nella tua newsletter",
|
|
348
|
+
"Listen to all episodes":"Ascolta tutti gli episodi",
|
|
349
|
+
"Newsletter elements":"Riproduci pittogramma, nome dello spettacolo, vedi altro",
|
|
350
|
+
"Choose text color":"Scegli il colore del testo",
|
|
351
|
+
"Choose background color":"Scegli il colore dello sfondo",
|
|
352
|
+
};
|
package/src/locale/sl.ts
CHANGED
|
@@ -194,12 +194,10 @@ export default {
|
|
|
194
194
|
Publishing: "Objava",
|
|
195
195
|
"select productor": "Izberi producenta",
|
|
196
196
|
"Share newsletter": "Deli glasilo",
|
|
197
|
-
|
|
198
|
-
"HTML
|
|
197
|
+
"Configure your Newsletter tile": "Konfigurirajte svojo ploščico Newsletter",
|
|
198
|
+
"Copy and embed the HTML code into your email tool": "Kopirajte in vdelajte kodo HTML v svoje e-poštno orodje",
|
|
199
199
|
"Listen this episode": "Poslušajte to epizodo",
|
|
200
|
-
"
|
|
201
|
-
"Display participants list": "Prikaži seznam sodelujočih",
|
|
202
|
-
"Choose main color": "Izberi glavno barvo",
|
|
200
|
+
"Choose main color": "Izberite barvo elementov modula newsletter",
|
|
203
201
|
"Octopus is ACPM Podcast accredited":
|
|
204
202
|
"Octopus je akreditiran pri organizaciji ACPM",
|
|
205
203
|
"Live episode": "Trenutne epizode v živo",
|
|
@@ -341,4 +339,11 @@ export default {
|
|
|
341
339
|
"Share in one click":"Delite z enim klikom",
|
|
342
340
|
"Chaptering":"Poglavje",
|
|
343
341
|
"Listen to the latest episode":"Poslušajte najnovejšo epizodo",
|
|
342
|
+
"Share the episode in your newsletter": "Delite epizodo v svojem glasilu",
|
|
343
|
+
"Share the series in your newsletter": "Delite oddajo v svojem glasilu",
|
|
344
|
+
"Share the playlist in your newsletter": "Delite seznam predvajanja v svojem glasilu",
|
|
345
|
+
"Listen to all episodes":"Poslušaj vse epizode",
|
|
346
|
+
"Newsletter elements":"Predvajaj piktogram, ime oddaje, Poglej več",
|
|
347
|
+
"Choose text color":"Izberite barvo besedila",
|
|
348
|
+
"Choose background color":"Izberite barvo ozadja",
|
|
344
349
|
}
|
|
@@ -13,7 +13,7 @@ const state: ParamStore = {
|
|
|
13
13
|
isProduction: true,
|
|
14
14
|
isContribution: true,
|
|
15
15
|
isRadio: true,
|
|
16
|
-
ApiUri: "https://api.
|
|
16
|
+
ApiUri: "https://api.dev2.saooti.org/",
|
|
17
17
|
podcastmaker: false,
|
|
18
18
|
buttonPlus: true,
|
|
19
19
|
allCategories: [],
|
|
@@ -27,8 +27,8 @@ const state: ParamStore = {
|
|
|
27
27
|
SharePlayer: true,
|
|
28
28
|
ShareButtons: true,
|
|
29
29
|
ShareDistribution: true,
|
|
30
|
-
MiniplayerUri: "https://playerbeta.
|
|
31
|
-
hlsUri: "https://hls.live.
|
|
30
|
+
MiniplayerUri: "https://playerbeta.dev2.saooti.org/",
|
|
31
|
+
hlsUri: "https://hls.live.dev2.saooti.org/",
|
|
32
32
|
mainRubrique: 0,
|
|
33
33
|
resourceUrl: undefined,
|
|
34
34
|
podcastItemShowEmission: false,
|
|
@@ -80,14 +80,14 @@ const state: ParamStore = {
|
|
|
80
80
|
userName: "",
|
|
81
81
|
},
|
|
82
82
|
octopusApi: {
|
|
83
|
-
url: "https://api.
|
|
84
|
-
commentsUrl: "https://comments.
|
|
85
|
-
imageUrl: "https://imageproxy.
|
|
86
|
-
studioUrl: "https://studio.
|
|
87
|
-
playerUrl: "https://playerbeta.
|
|
88
|
-
speechToTextUrl: "https://speech2text.
|
|
89
|
-
radioUrl:"https://radio.
|
|
90
|
-
recoUrl: "https://reco.
|
|
83
|
+
url: "https://api.dev2.saooti.org/",
|
|
84
|
+
commentsUrl: "https://comments.dev2.saooti.org/",
|
|
85
|
+
imageUrl: "https://imageproxy.dev2.saooti.org/",
|
|
86
|
+
studioUrl: "https://studio.dev2.saooti.org/",
|
|
87
|
+
playerUrl: "https://playerbeta.dev2.saooti.org/",
|
|
88
|
+
speechToTextUrl: "https://speech2text.dev2.saooti.org/",
|
|
89
|
+
radioUrl:"https://radio.dev2.saooti.org/",
|
|
90
|
+
recoUrl: "https://reco.dev2.saooti.org/",
|
|
91
91
|
organisationId: undefined,
|
|
92
92
|
rubriqueIdFilter: undefined,
|
|
93
93
|
},
|
|
@@ -12,6 +12,9 @@ export const useSaveFetchStore = defineStore('SaveFetchStore', {
|
|
|
12
12
|
}),
|
|
13
13
|
actions:{
|
|
14
14
|
async getOrgaAttributes(orgaId: string): Promise<{ [key: string]: string | number | boolean | undefined; }>{
|
|
15
|
+
if(!orgaId.length){
|
|
16
|
+
return {};
|
|
17
|
+
}
|
|
15
18
|
if(this.orgaPublicAttributes[orgaId]){
|
|
16
19
|
return this.orgaPublicAttributes[orgaId];
|
|
17
20
|
}
|