@saooti/octopus-sdk 30.0.3 → 30.0.7
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/README.md +6 -0
- package/package.json +1 -1
- package/src/App.vue +4 -4
- package/src/api/comments.ts +1 -1
- package/src/assets/form.scss +0 -15
- package/src/assets/multiselect.scss +1 -1
- package/src/components/display/categories/CategoryChooser.vue +1 -1
- package/src/components/display/categories/CategoryFilter.vue +4 -4
- package/src/components/display/categories/CategoryList.vue +1 -1
- package/src/components/display/comments/CommentInput.vue +3 -3
- package/src/components/display/comments/CommentItem.vue +4 -4
- package/src/components/display/comments/CommentList.vue +4 -4
- package/src/components/display/comments/CommentParentInfo.vue +1 -1
- package/src/components/display/comments/CommentPlayer.vue +1 -1
- package/src/components/display/comments/CommentSection.vue +3 -3
- package/src/components/display/edit/EditBox.vue +1 -1
- package/src/components/display/edit/EditCommentBox.vue +1 -1
- package/src/components/display/emission/EmissionChooser.vue +2 -2
- package/src/components/display/emission/EmissionInlineList.vue +2 -2
- package/src/components/display/emission/EmissionItem.vue +1 -1
- package/src/components/display/emission/EmissionList.vue +3 -3
- package/src/components/display/emission/EmissionPlayerItem.vue +2 -2
- package/src/components/display/filter/AdvancedSearch.vue +1 -5
- package/src/components/display/filter/CategoryFilter.vue +1 -1
- package/src/components/display/filter/MonetizableFilter.vue +1 -1
- package/src/components/display/filter/ProductorSearch.vue +1 -1
- package/src/components/display/filter/RubriqueChoice.vue +3 -3
- package/src/components/display/filter/RubriqueFilter.vue +2 -2
- package/src/components/display/live/LiveHorizontalList.vue +1 -1
- package/src/components/display/live/LiveItem.vue +2 -2
- package/src/components/display/live/LiveList.vue +1 -1
- package/src/components/display/organisation/OrganisationChooser.vue +1 -1
- package/src/components/display/organisation/OrganisationChooserLight.vue +2 -2
- package/src/components/display/participant/ParticipantItem.vue +1 -1
- package/src/components/display/participant/ParticipantList.vue +1 -1
- package/src/components/display/playlist/PlaylistItem.vue +1 -1
- package/src/components/display/playlist/PlaylistList.vue +1 -1
- package/src/components/display/playlist/PodcastList.vue +2 -2
- package/src/components/display/podcasts/AnimatorsItem.vue +1 -1
- package/src/components/display/podcasts/ParticipantDescription.vue +2 -2
- package/src/components/display/podcasts/PodcastFilterList.vue +2 -2
- package/src/components/display/podcasts/PodcastImage.vue +2 -2
- package/src/components/display/podcasts/PodcastInlineList.vue +2 -2
- package/src/components/display/podcasts/PodcastItem.vue +2 -2
- package/src/components/display/podcasts/PodcastList.vue +2 -2
- package/src/components/display/podcasts/PodcastModuleBox.vue +2 -2
- package/src/components/display/podcasts/TagList.vue +1 -2
- package/src/components/display/rubriques/RubriqueChooser.vue +1 -1
- package/src/components/display/rubriques/RubriqueList.vue +4 -4
- package/src/components/display/sharing/PlayerParameters.vue +7 -58
- package/src/components/display/sharing/ShareButtons.vue +4 -3
- package/src/components/display/sharing/ShareDistribution.vue +1 -1
- package/src/components/display/sharing/SharePlayer.vue +37 -72
- package/src/components/display/sharing/SharePlayerColors.vue +4 -49
- package/src/components/display/sharing/SharePlayerTypes.vue +12 -15
- package/src/components/display/sharing/SubscribeButtons.vue +1 -1
- package/src/components/misc/Footer.vue +2 -2
- package/src/components/misc/LeftMenu.vue +3 -3
- package/src/components/misc/Player.vue +2 -2
- package/src/components/misc/PlayerButtons.vue +2 -2
- package/src/components/misc/PlayerClockAndTimeline.vue +1 -1
- package/src/components/misc/PlayerProgressBar.vue +1 -1
- package/src/components/misc/Popover.vue +8 -3
- package/src/components/misc/TopBar.vue +2 -2
- package/src/components/misc/modal/ClipboardModal.vue +1 -1
- package/src/components/misc/modal/NewsletterModal.vue +2 -2
- package/src/components/misc/modal/QrCodeModal.vue +2 -2
- package/src/components/misc/modal/ShareModalPlayer.vue +1 -1
- package/src/components/mixins/init.ts +1 -1
- package/src/components/mixins/organisationFilter.ts +1 -1
- package/src/components/pages/Category.vue +1 -1
- package/src/components/pages/Emission.vue +1 -1
- package/src/components/pages/Emissions.vue +2 -2
- package/src/components/pages/Home.vue +4 -4
- package/src/components/pages/Lives.vue +2 -2
- package/src/components/pages/Participant.vue +1 -1
- package/src/components/pages/Playlist.vue +1 -1
- package/src/components/pages/Podcast.vue +4 -4
- package/src/components/pages/Podcasts.vue +3 -3
- package/src/locale/en.ts +0 -1
- package/src/locale/fr.ts +0 -1
- package/src/store/class/{adserverConfig.ts → adserver/adserverConfig.ts} +0 -0
- package/src/store/class/adserver/adserverOtherEmission.ts +13 -0
- package/src/store/class/{adserverTiming.ts → adserver/adserverTiming.ts} +0 -0
- package/src/store/class/cartouchier/cartouche.ts +15 -0
- package/src/store/class/cartouchier/cartouchier.ts +9 -0
- package/src/store/class/conference/conference.ts +35 -0
- package/src/store/class/conference/conferenceMessage.ts +10 -0
- package/src/store/class/conference/conferenceParticipant.ts +18 -0
- package/src/store/class/conference/pad.ts +15 -0
- package/src/store/class/conference/studioCall.ts +7 -0
- package/src/store/class/contract/contract.ts +7 -0
- package/src/store/class/contract/contractOrganisation.ts +7 -0
- package/src/store/class/ftp/ftpEmission.ts +41 -0
- package/src/store/class/ftp/ftpParam.ts +12 -0
- package/src/store/class/ftp/testFtpEmission.ts +5 -0
- package/src/store/class/general/audioView.ts +21 -0
- package/src/store/class/{category.ts → general/category.ts} +1 -1
- package/src/store/class/general/comment.ts +16 -0
- package/src/store/class/general/customPlayer.ts +8 -0
- package/src/store/class/{emission.ts → general/emission.ts} +2 -2
- package/src/store/class/general/fetchParam.ts +33 -0
- package/src/store/class/general/initState.ts +25 -0
- package/src/store/class/general/ituneCategory.ts +5 -0
- package/src/store/class/general/media.ts +14 -0
- package/src/store/class/general/organisation.ts +19 -0
- package/src/store/class/general/pageable.ts +13 -0
- package/src/store/class/{participant.ts → general/participant.ts} +0 -0
- package/src/store/class/{player.ts → general/player.ts} +0 -0
- package/src/store/class/{playlist.ts → general/playlist.ts} +2 -2
- package/src/store/class/{podcast.ts → general/podcast.ts} +2 -1
- package/src/store/class/general/sortPageable.ts +5 -0
- package/src/store/class/general/soundcastCategory.ts +8 -0
- package/src/store/class/ouestFrance/ofTag.ts +36 -0
- package/src/store/class/ouestFrance/ofTagInfo.ts +9 -0
- package/src/store/class/ouestFrance/ofTagPage.ts +7 -0
- package/src/store/class/ouestFrance/ofTagSeo.ts +7 -0
- package/src/store/class/ouestFrance/ofTagVente.ts +6 -0
- package/src/store/class/ouestFrance/ofTagWithParents.ts +26 -0
- package/src/store/class/rss/aggregator.ts +28 -0
- package/src/store/class/rss/rssEmission.ts +14 -0
- package/src/store/class/rss/rssInfo.ts +8 -0
- package/src/store/class/{rubriquage.ts → rubrique/rubriquage.ts} +0 -0
- package/src/store/class/rubrique/rubriquageFilter.ts +6 -0
- package/src/store/class/rubrique/rubrique.ts +8 -0
- package/src/store/class/stat/statArrayIncome.ts +6 -0
- package/src/store/class/stat/statArrayObject.ts +34 -0
- package/src/store/class/stat/statGraph.ts +7 -0
- package/src/store/class/{person.ts → user/person.ts} +2 -2
- package/src/store/class/user/profile.ts +12 -0
- package/src/store/class/user/userKeycloak.ts +24 -0
- package/src/store/paramStore.ts +2 -4
- package/src/store/typeAppStore.ts +10 -10
- package/src/store/class/comment.ts +0 -16
- package/src/store/class/conference.ts +0 -31
- package/src/store/class/customPlayer.ts +0 -8
- package/src/store/class/fetchParam.ts +0 -33
- package/src/store/class/media.ts +0 -14
- package/src/store/class/organisation.ts +0 -19
- package/src/store/class/rubriquageFilter.ts +0 -6
- package/src/store/class/rubrique.ts +0 -9
|
@@ -70,7 +70,7 @@
|
|
|
70
70
|
import { selenium } from '../../mixins/functions';
|
|
71
71
|
//@ts-ignore
|
|
72
72
|
import VueMultiselect from 'vue-multiselect';
|
|
73
|
-
import { Rubrique } from '@/store/class/rubrique';
|
|
73
|
+
import { Rubrique } from '@/store/class/rubrique/rubrique';
|
|
74
74
|
const getDefaultRubrique = (defaultName: string) => {
|
|
75
75
|
if ('' === defaultName){
|
|
76
76
|
return undefined;
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
>
|
|
7
7
|
<select
|
|
8
8
|
v-model="rubriquage"
|
|
9
|
-
class="
|
|
9
|
+
class="c-hand mb-0"
|
|
10
10
|
@change="onRubriquageSelected"
|
|
11
11
|
>
|
|
12
12
|
<option
|
|
@@ -54,9 +54,9 @@
|
|
|
54
54
|
</template>
|
|
55
55
|
|
|
56
56
|
<script lang="ts">
|
|
57
|
-
import { Rubrique } from '@/store/class/rubrique';
|
|
58
|
-
import { Rubriquage } from '@/store/class/rubriquage';
|
|
59
|
-
import { RubriquageFilter } from '@/store/class/rubriquageFilter';
|
|
57
|
+
import { Rubrique } from '@/store/class/rubrique/rubrique';
|
|
58
|
+
import { Rubriquage } from '@/store/class/rubrique/rubriquage';
|
|
59
|
+
import { RubriquageFilter } from '@/store/class/rubrique/rubriquageFilter';
|
|
60
60
|
import { defineComponent } from 'vue'
|
|
61
61
|
export default defineComponent({
|
|
62
62
|
name: 'RubriqueList',
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
<template>
|
|
2
2
|
<div
|
|
3
|
-
v-if="!playlist"
|
|
4
3
|
id="accordionParameters"
|
|
5
4
|
class="accordion player-parameters mt-3"
|
|
6
5
|
>
|
|
@@ -28,13 +27,11 @@
|
|
|
28
27
|
>
|
|
29
28
|
<div class="accordion-body">
|
|
30
29
|
<div
|
|
31
|
-
v-if="
|
|
32
|
-
!podcast || isEmission || isLargeEmission || isLargeSuggestion
|
|
33
|
-
"
|
|
30
|
+
v-if="choseNumberEpisode"
|
|
34
31
|
class="d-flex flex-column flex-grow"
|
|
35
32
|
>
|
|
36
33
|
<div
|
|
37
|
-
v-if="
|
|
34
|
+
v-if="displayChoiceAllEpisodes"
|
|
38
35
|
class="d-flex align-items-center w-100 flex-wrap mt-1"
|
|
39
36
|
>
|
|
40
37
|
<input
|
|
@@ -48,10 +45,10 @@
|
|
|
48
45
|
</div>
|
|
49
46
|
<div
|
|
50
47
|
class="d-flex align-items-center flex-wrap"
|
|
51
|
-
:class="
|
|
48
|
+
:class="displayChoiceAllEpisodes ? '' : 'mt-3'"
|
|
52
49
|
>
|
|
53
50
|
<input
|
|
54
|
-
v-if="
|
|
51
|
+
v-if="displayChoiceAllEpisodes"
|
|
55
52
|
v-model="episodeNumbers"
|
|
56
53
|
class="form-check-input"
|
|
57
54
|
type="radio"
|
|
@@ -120,28 +117,6 @@
|
|
|
120
117
|
}}</label>
|
|
121
118
|
</div>
|
|
122
119
|
</div>
|
|
123
|
-
<!-- <div class="d-flex align-items-center flex-wrap" v-if="podcast && iFrameModel !== 'emission'">
|
|
124
|
-
<div>
|
|
125
|
-
<input type="checkbox" class="form-check-input" id="startTime" v-model="startTime">
|
|
126
|
-
<label class="form-check-label me-2" for="startTime">{{$t('Start at')}}</label>
|
|
127
|
-
</div>
|
|
128
|
-
<input
|
|
129
|
-
ref="minutesRef"
|
|
130
|
-
type="number"
|
|
131
|
-
:value="minutes"
|
|
132
|
-
min="0"
|
|
133
|
-
class="input-share-player input-no-outline"
|
|
134
|
-
@change="onDurationChange"/>
|
|
135
|
-
<div class="me-1 ms-1">:</div>
|
|
136
|
-
<input
|
|
137
|
-
ref="secondesRef"
|
|
138
|
-
type="number"
|
|
139
|
-
:value="secondes"
|
|
140
|
-
min="0"
|
|
141
|
-
max="59"
|
|
142
|
-
class="input-share-player input-no-outline"
|
|
143
|
-
@change="onDurationChange"/>
|
|
144
|
-
</div> -->
|
|
145
120
|
</div>
|
|
146
121
|
</div>
|
|
147
122
|
</div>
|
|
@@ -149,26 +124,20 @@
|
|
|
149
124
|
</template>
|
|
150
125
|
|
|
151
126
|
<script lang="ts">
|
|
152
|
-
import { Playlist } from '@/store/class/playlist';
|
|
153
|
-
import { Podcast } from '@/store/class/podcast';
|
|
154
127
|
import { defineComponent } from 'vue'
|
|
155
128
|
export default defineComponent({
|
|
156
129
|
props: {
|
|
157
|
-
podcast: { default: undefined, type: Object as ()=> Podcast},
|
|
158
|
-
playlist: { default: undefined, type: Object as ()=> Playlist},
|
|
159
|
-
iFrameModel: { default: undefined, type: String},
|
|
160
130
|
isVisible: { default: false, type: Boolean},
|
|
131
|
+
choseNumberEpisode: {default: false, type: Boolean},
|
|
132
|
+
displayChoiceAllEpisodes: {default: false, type: Boolean}
|
|
161
133
|
},
|
|
162
|
-
emits: ['
|
|
134
|
+
emits: ['episodeNumbers', 'proceedReading', 'isVisible', 'iFrameNumber', 'displayArticle'],
|
|
163
135
|
|
|
164
136
|
data() {
|
|
165
137
|
return {
|
|
166
138
|
proceedReading: true as boolean,
|
|
167
139
|
episodeNumbers: 'number' as string,
|
|
168
140
|
iFrameNumberPriv: '3' as string,
|
|
169
|
-
minutes: 0 as number,
|
|
170
|
-
secondes: 0 as number,
|
|
171
|
-
startTime: true as boolean,
|
|
172
141
|
isVisibleTemp: this.isVisible as boolean,
|
|
173
142
|
displayArticle: true as boolean,
|
|
174
143
|
};
|
|
@@ -185,15 +154,6 @@ export default defineComponent({
|
|
|
185
154
|
}
|
|
186
155
|
},
|
|
187
156
|
},
|
|
188
|
-
isEmission(): boolean {
|
|
189
|
-
return 'emission' === this.iFrameModel;
|
|
190
|
-
},
|
|
191
|
-
isLargeEmission(): boolean {
|
|
192
|
-
return 'largeEmission' === this.iFrameModel;
|
|
193
|
-
},
|
|
194
|
-
isLargeSuggestion(): boolean {
|
|
195
|
-
return 'largeSuggestion' === this.iFrameModel;
|
|
196
|
-
},
|
|
197
157
|
},
|
|
198
158
|
watch: {
|
|
199
159
|
episodeNumbers(): void {
|
|
@@ -215,17 +175,6 @@ export default defineComponent({
|
|
|
215
175
|
this.$emit('displayArticle', this.displayArticle);
|
|
216
176
|
}
|
|
217
177
|
},
|
|
218
|
-
methods: {
|
|
219
|
-
/* onDurationChange(): void {
|
|
220
|
-
if (this.startTime) {
|
|
221
|
-
const minutes = parseInt((this.$refs.minutesRef as any).value, 10);
|
|
222
|
-
const secondes = parseInt((this.$refs.secondesRef as any).value, 10);
|
|
223
|
-
this.$emit('startTime', minutes * 60 + secondes);
|
|
224
|
-
} else {
|
|
225
|
-
this.$emit('startTime', 0);
|
|
226
|
-
}
|
|
227
|
-
}, */
|
|
228
|
-
},
|
|
229
178
|
})
|
|
230
179
|
</script>
|
|
231
180
|
|
|
@@ -13,13 +13,14 @@
|
|
|
13
13
|
<span
|
|
14
14
|
v-if="authenticated"
|
|
15
15
|
id="popover-share-help"
|
|
16
|
+
role="button"
|
|
17
|
+
tabindex="-1"
|
|
16
18
|
class="saooti-help ml-2"
|
|
17
19
|
:aria-label="$t('Help')"
|
|
18
20
|
/>
|
|
19
21
|
<Popover
|
|
20
22
|
v-if="authenticated"
|
|
21
23
|
target="popover-share-help"
|
|
22
|
-
triggers="hover"
|
|
23
24
|
placement="right"
|
|
24
25
|
>
|
|
25
26
|
{{ $t('Share this page without edit and share blocks') }}
|
|
@@ -246,8 +247,8 @@
|
|
|
246
247
|
</template>
|
|
247
248
|
|
|
248
249
|
<script lang="ts">
|
|
249
|
-
import { Emission } from '@/store/class/emission';
|
|
250
|
-
import { Podcast } from '@/store/class/podcast';
|
|
250
|
+
import { Emission } from '@/store/class/general/emission';
|
|
251
|
+
import { Podcast } from '@/store/class/general/podcast';
|
|
251
252
|
import { state } from '../../../store/paramStore';
|
|
252
253
|
import Snackbar from '../../misc/Snackbar.vue';
|
|
253
254
|
import { displayMethods } from '../../mixins/functions';
|
|
@@ -113,7 +113,7 @@
|
|
|
113
113
|
import octopusApi from '@saooti/octopus-api';
|
|
114
114
|
import Snackbar from '../../misc/Snackbar.vue';
|
|
115
115
|
import { displayMethods } from '../../mixins/functions';
|
|
116
|
-
import { Emission } from '@/store/class/emission';
|
|
116
|
+
import { Emission } from '@/store/class/general/emission';
|
|
117
117
|
|
|
118
118
|
import { defineComponent, defineAsyncComponent } from 'vue';
|
|
119
119
|
import SnackbarVue from '../../misc/Snackbar.vue';
|
|
@@ -34,27 +34,12 @@
|
|
|
34
34
|
:emission="emission"
|
|
35
35
|
:playlist="playlist"
|
|
36
36
|
:custom-players="customPlayers"
|
|
37
|
-
:is-beta="isBeta"
|
|
38
37
|
/>
|
|
39
38
|
</div>
|
|
40
39
|
<SharePlayerColors
|
|
41
40
|
v-model:color="color"
|
|
42
41
|
v-model:theme="theme"
|
|
43
|
-
v-model:themeBeta="themeBeta"
|
|
44
|
-
:is-beta="isBeta"
|
|
45
42
|
/>
|
|
46
|
-
<div v-if="displayBetaChoice">
|
|
47
|
-
<input
|
|
48
|
-
id="isBetaCheckbox"
|
|
49
|
-
v-model="isBeta"
|
|
50
|
-
type="checkbox"
|
|
51
|
-
class="form-check-input"
|
|
52
|
-
>
|
|
53
|
-
<label
|
|
54
|
-
class="form-check-label me-2"
|
|
55
|
-
for="isBetaCheckbox"
|
|
56
|
-
>{{ $t('Use beta version') }}</label>
|
|
57
|
-
</div>
|
|
58
43
|
<div
|
|
59
44
|
v-if="isPodcastNotVisible || playlist"
|
|
60
45
|
class="d-flex align-items-center flex-wrap"
|
|
@@ -75,16 +60,14 @@
|
|
|
75
60
|
</div>
|
|
76
61
|
<PlayerParameters
|
|
77
62
|
v-if="isPlayerParameter"
|
|
78
|
-
:podcast="podcast"
|
|
79
|
-
:playlist="playlist"
|
|
80
|
-
:i-frame-model="iFrameModel"
|
|
81
63
|
:is-visible="isVisible"
|
|
64
|
+
:chose-number-episode="displayChoiceAllEpisodes|| isLargeSuggestion"
|
|
65
|
+
:display-choice-all-episodes="displayChoiceAllEpisodes"
|
|
82
66
|
@displayArticle="updateDisplayArticle"
|
|
83
67
|
@episodeNumbers="updateEpisodeNumber"
|
|
84
68
|
@proceedReading="updateProceedReading"
|
|
85
69
|
@isVisible="updateIsVisible"
|
|
86
70
|
@iFrameNumber="updateIframeNumber"
|
|
87
|
-
@startTime="updateStartTime"
|
|
88
71
|
/>
|
|
89
72
|
</template>
|
|
90
73
|
<div v-else-if="exclusive && authenticated">
|
|
@@ -107,10 +90,10 @@
|
|
|
107
90
|
<script lang="ts">
|
|
108
91
|
import { state } from '../../../store/paramStore';
|
|
109
92
|
import octopusApi from '@saooti/octopus-api';
|
|
110
|
-
import { Podcast } from '@/store/class/podcast';
|
|
111
|
-
import { Emission } from '@/store/class/emission';
|
|
112
|
-
import { Playlist } from '@/store/class/playlist';
|
|
113
|
-
import { CustomPlayer } from '@/store/class/customPlayer';
|
|
93
|
+
import { Podcast } from '@/store/class/general/podcast';
|
|
94
|
+
import { Emission } from '@/store/class/general/emission';
|
|
95
|
+
import { Playlist } from '@/store/class/general/playlist';
|
|
96
|
+
import { CustomPlayer } from '@/store/class/general/customPlayer';
|
|
114
97
|
import { defineComponent, defineAsyncComponent } from 'vue';
|
|
115
98
|
const ShareModalPlayer = defineAsyncComponent(() => import('../../misc/modal/ShareModalPlayer.vue'));
|
|
116
99
|
const PlayerParameters = defineAsyncComponent(() => import('./PlayerParameters.vue'));
|
|
@@ -140,32 +123,28 @@ export default defineComponent({
|
|
|
140
123
|
isShareModal: false as boolean,
|
|
141
124
|
color: '#40a372' as string,
|
|
142
125
|
theme: '#000000' as string,
|
|
143
|
-
themeBeta: '#000000' as string,
|
|
144
126
|
proceedReading: true as boolean,
|
|
145
127
|
episodeNumbers: 'number' as string,
|
|
146
128
|
iFrameNumber: '3' as string,
|
|
147
|
-
startTime: 0 as number,
|
|
148
129
|
isVisible: false as boolean,
|
|
149
130
|
displayArticle: true as boolean,
|
|
150
|
-
displayBetaChoice: false as boolean,
|
|
151
131
|
customPlayers: [] as Array<CustomPlayer>,
|
|
152
|
-
isBeta: false as boolean,
|
|
153
132
|
colors: ['#000000', '#ffffff'],
|
|
154
133
|
};
|
|
155
134
|
},
|
|
156
135
|
|
|
157
136
|
computed: {
|
|
137
|
+
displayChoiceAllEpisodes():boolean{
|
|
138
|
+
return !this.podcast || this.isEmission || this.isLargeEmission;
|
|
139
|
+
},
|
|
158
140
|
miniplayerBaseUrl(): string{
|
|
159
|
-
|
|
160
|
-
return (state.podcastPage.MiniplayerBetaUri as string);
|
|
161
|
-
}
|
|
162
|
-
return (state.podcastPage.MiniplayerUri as string);
|
|
141
|
+
return (state.podcastPage.MiniplayerUri as string);
|
|
163
142
|
},
|
|
164
143
|
isEmission(): boolean {
|
|
165
144
|
return 'emission' === this.iFrameModel;
|
|
166
145
|
},
|
|
167
146
|
isLargeEmission(): boolean {
|
|
168
|
-
return '
|
|
147
|
+
return 'emissionLarge' === this.iFrameModel;
|
|
169
148
|
},
|
|
170
149
|
isLargeSuggestion(): boolean {
|
|
171
150
|
return 'largeSuggestion' === this.iFrameModel;
|
|
@@ -202,10 +181,7 @@ export default defineComponent({
|
|
|
202
181
|
iFrameSrc(): string {
|
|
203
182
|
const url = [''];
|
|
204
183
|
let iFrameNumber = '/' + this.iFrameNumber;
|
|
205
|
-
if (
|
|
206
|
-
(!this.podcast || this.isEmission || this.isLargeEmission) &&
|
|
207
|
-
'all' === this.episodeNumbers
|
|
208
|
-
) {
|
|
184
|
+
if (this.displayChoiceAllEpisodes && 'all' === this.episodeNumbers) {
|
|
209
185
|
iFrameNumber = '/0';
|
|
210
186
|
}
|
|
211
187
|
if (!this.podcast && !this.playlist && this.emission) {
|
|
@@ -253,7 +229,7 @@ export default defineComponent({
|
|
|
253
229
|
}
|
|
254
230
|
}
|
|
255
231
|
url.push('?distributorId=' + this.organisationId);
|
|
256
|
-
const theme = this.
|
|
232
|
+
const theme = this.theme;
|
|
257
233
|
url.push(
|
|
258
234
|
'&color=' +
|
|
259
235
|
this.color.substring(1) +
|
|
@@ -266,7 +242,6 @@ export default defineComponent({
|
|
|
266
242
|
if(!this.displayArticle){
|
|
267
243
|
url.push('&article=false');
|
|
268
244
|
}
|
|
269
|
-
url.push('&time=' + this.startTime);
|
|
270
245
|
if (this.isVisible) {
|
|
271
246
|
url.push('&key=' + window.btoa(this.dataTitle.toString()));
|
|
272
247
|
}
|
|
@@ -280,38 +255,38 @@ export default defineComponent({
|
|
|
280
255
|
case 'large':
|
|
281
256
|
if (this.podcast) return '180px';
|
|
282
257
|
if ('number' === this.episodeNumbers) {
|
|
283
|
-
switch (this.iFrameNumber) {
|
|
258
|
+
switch (this.iFrameNumber.toString()) {
|
|
284
259
|
case '1':
|
|
285
|
-
return '
|
|
260
|
+
return '270px';
|
|
286
261
|
case '2':
|
|
287
|
-
return '
|
|
262
|
+
return '320px';
|
|
288
263
|
case '3':
|
|
289
|
-
return '
|
|
264
|
+
return '360px';
|
|
290
265
|
case '4':
|
|
291
|
-
return '
|
|
266
|
+
return '420px';
|
|
292
267
|
case '5':
|
|
293
|
-
return '
|
|
268
|
+
return '420px';
|
|
294
269
|
default:
|
|
295
|
-
return '
|
|
270
|
+
return '420px';
|
|
296
271
|
}
|
|
297
272
|
}
|
|
298
273
|
return '435px';
|
|
299
|
-
case '
|
|
274
|
+
case 'emissionLarge':
|
|
300
275
|
case 'largeSuggestion':
|
|
301
276
|
if ('number' !== this.episodeNumbers) return '510px';
|
|
302
|
-
switch (this.iFrameNumber) {
|
|
277
|
+
switch (this.iFrameNumber.toString()) {
|
|
303
278
|
case '1':
|
|
304
|
-
return '260px';
|
|
305
|
-
case '2':
|
|
306
279
|
return '315px';
|
|
307
|
-
case '
|
|
280
|
+
case '2':
|
|
308
281
|
return '365px';
|
|
309
|
-
case '
|
|
282
|
+
case '3':
|
|
310
283
|
return '420px';
|
|
284
|
+
case '4':
|
|
285
|
+
return '470px';
|
|
311
286
|
case '5':
|
|
312
|
-
return '
|
|
287
|
+
return '470px';
|
|
313
288
|
default:
|
|
314
|
-
return '
|
|
289
|
+
return '470px';
|
|
315
290
|
}
|
|
316
291
|
case 'emission':
|
|
317
292
|
return '530px';
|
|
@@ -337,7 +312,7 @@ export default defineComponent({
|
|
|
337
312
|
return 0;
|
|
338
313
|
},
|
|
339
314
|
isPlayerParameter(): boolean{
|
|
340
|
-
return !this.podcast || (this.podcast.article && 0 !== this.podcast.article.length) || this.isEmission || this.isLargeEmission || this.isLargeSuggestion;
|
|
315
|
+
return (!this.podcast || (this.podcast.article && 0 !== this.podcast.article.length) || this.isEmission || this.isLargeEmission || this.isLargeSuggestion) && !this.playlist;
|
|
341
316
|
}
|
|
342
317
|
},
|
|
343
318
|
async created() {
|
|
@@ -367,22 +342,15 @@ export default defineComponent({
|
|
|
367
342
|
} else {
|
|
368
343
|
this.theme = '#000000';
|
|
369
344
|
}
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
this.customPlayers = dataFetched.content;
|
|
377
|
-
|
|
378
|
-
let index = 1;
|
|
379
|
-
while (totalCount > this.customPlayers.length) {
|
|
380
|
-
dataFetched = await octopusApi.fetchCustomPlayer('customPlayer/organisation/'+ this.organisationId+'?start='+index);
|
|
381
|
-
this.customPlayers = this.customPlayers.concat(dataFetched.content);
|
|
382
|
-
++index;
|
|
383
|
-
}
|
|
345
|
+
let dataFetched = await octopusApi.fetchCustomPlayer('customPlayer/organisation/'+ this.organisationId);
|
|
346
|
+
this.customPlayers = dataFetched.content;
|
|
347
|
+
const totalCount = dataFetched.totalElements;
|
|
348
|
+
let index = 1;
|
|
349
|
+
while (totalCount > this.customPlayers.length) {
|
|
350
|
+
dataFetched = await octopusApi.fetchCustomPlayer('customPlayer/organisation/'+ this.organisationId+'?start='+index);
|
|
351
|
+
this.customPlayers = this.customPlayers.concat(dataFetched.content);
|
|
352
|
+
++index;
|
|
384
353
|
}
|
|
385
|
-
return;
|
|
386
354
|
},
|
|
387
355
|
updateEpisodeNumber(value: string): void {
|
|
388
356
|
this.episodeNumbers = value;
|
|
@@ -393,9 +361,6 @@ export default defineComponent({
|
|
|
393
361
|
updateIframeNumber(value: string): void {
|
|
394
362
|
this.iFrameNumber = value;
|
|
395
363
|
},
|
|
396
|
-
updateStartTime(value: number): void {
|
|
397
|
-
this.startTime = value;
|
|
398
|
-
},
|
|
399
364
|
updateIsVisible(value: boolean): void {
|
|
400
365
|
this.isVisible = value;
|
|
401
366
|
},
|
|
@@ -17,34 +17,7 @@
|
|
|
17
17
|
<div class="fw-600">
|
|
18
18
|
{{ $t('Choose theme') }}
|
|
19
19
|
</div>
|
|
20
|
-
<div
|
|
21
|
-
v-if="!isBeta"
|
|
22
|
-
class="d-flex"
|
|
23
|
-
>
|
|
24
|
-
<VSwatches
|
|
25
|
-
v-for="myColor in colors"
|
|
26
|
-
:key="myColor"
|
|
27
|
-
v-model="internTheme"
|
|
28
|
-
:data-theme="internTheme"
|
|
29
|
-
class="c-hand input-no-outline me-1"
|
|
30
|
-
:swatch-style="{
|
|
31
|
-
padding: '0px 0px',
|
|
32
|
-
marginRight: '0px',
|
|
33
|
-
marginBottom: '0px',
|
|
34
|
-
border: '1px gray solid',
|
|
35
|
-
}"
|
|
36
|
-
:wrapper-style="{
|
|
37
|
-
paddingTop: '0px',
|
|
38
|
-
paddingLeft: '0px',
|
|
39
|
-
paddingRight: '0px',
|
|
40
|
-
paddingBottom: '0px',
|
|
41
|
-
}"
|
|
42
|
-
:swatches="[myColor]"
|
|
43
|
-
inline
|
|
44
|
-
/>
|
|
45
|
-
</div>
|
|
46
20
|
<VSwatches
|
|
47
|
-
v-else
|
|
48
21
|
v-model="internTheme"
|
|
49
22
|
class="c-hand input-no-outline"
|
|
50
23
|
show-fallback
|
|
@@ -65,28 +38,18 @@ export default defineComponent({
|
|
|
65
38
|
},
|
|
66
39
|
|
|
67
40
|
props: {
|
|
68
|
-
isBeta: { default: false, type: Boolean},
|
|
69
41
|
color: { default: '#40a372', type: String},
|
|
70
42
|
theme: { default: '#000000', type: String},
|
|
71
|
-
themeBeta: { default: '#000000', type: String},
|
|
72
43
|
},
|
|
73
|
-
emits:['update:color', 'update:theme'
|
|
44
|
+
emits:['update:color', 'update:theme'],
|
|
74
45
|
|
|
75
46
|
data() {
|
|
76
47
|
return {
|
|
77
48
|
internColor:'#40a372' as string,
|
|
78
49
|
internTheme:'#000000' as string,
|
|
79
|
-
colors: ['#000000', '#ffffff'],
|
|
80
50
|
};
|
|
81
51
|
},
|
|
82
52
|
watch:{
|
|
83
|
-
isBeta(){
|
|
84
|
-
if(this.isBeta){
|
|
85
|
-
this.internTheme = this.themeBeta;
|
|
86
|
-
}else{
|
|
87
|
-
this.internTheme = this.theme;
|
|
88
|
-
}
|
|
89
|
-
},
|
|
90
53
|
color(){
|
|
91
54
|
if(this.color !== this.internColor){
|
|
92
55
|
this.internColor = this.color;
|
|
@@ -98,27 +61,19 @@ export default defineComponent({
|
|
|
98
61
|
}
|
|
99
62
|
},
|
|
100
63
|
theme(){
|
|
101
|
-
if(this.theme !== this.internTheme
|
|
64
|
+
if(this.theme !== this.internTheme){
|
|
102
65
|
this.internTheme = this.theme;
|
|
103
66
|
}
|
|
104
67
|
},
|
|
105
|
-
themeBeta(){
|
|
106
|
-
if(this.themeBeta !== this.internTheme && this.isBeta){
|
|
107
|
-
this.internTheme = this.themeBeta;
|
|
108
|
-
}
|
|
109
|
-
},
|
|
110
68
|
internTheme(){
|
|
111
|
-
if(this.theme !== this.internTheme
|
|
69
|
+
if(this.theme !== this.internTheme ){
|
|
112
70
|
this.$emit('update:theme', this.internTheme);
|
|
113
|
-
}else if(this.themeBeta !== this.internTheme && this.isBeta){
|
|
114
|
-
this.$emit('update:themeBeta', this.internTheme);
|
|
115
71
|
}
|
|
116
72
|
}
|
|
117
73
|
},
|
|
118
74
|
mounted(){
|
|
119
75
|
this.internColor= this.color;
|
|
120
|
-
this.internTheme= this.
|
|
76
|
+
this.internTheme= this.theme;
|
|
121
77
|
}
|
|
122
|
-
|
|
123
78
|
})
|
|
124
79
|
</script>
|
|
@@ -17,15 +17,13 @@
|
|
|
17
17
|
<option value="large">
|
|
18
18
|
{{ $t('Large version') }}
|
|
19
19
|
</option>
|
|
20
|
-
<
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
</option>
|
|
28
|
-
</template>
|
|
20
|
+
<option
|
|
21
|
+
v-for="player in customPlayersDisplay"
|
|
22
|
+
:key="player.customId"
|
|
23
|
+
:value="player.customId"
|
|
24
|
+
>
|
|
25
|
+
{{ $t('Custom version') + " «" +player.name+"»" }}
|
|
26
|
+
</option>
|
|
29
27
|
<option
|
|
30
28
|
v-if="podcast && podcast.podcastId"
|
|
31
29
|
value="emission"
|
|
@@ -36,7 +34,7 @@
|
|
|
36
34
|
</option>
|
|
37
35
|
<option
|
|
38
36
|
v-if="podcast && podcast.podcastId"
|
|
39
|
-
value="
|
|
37
|
+
value="emissionLarge"
|
|
40
38
|
>
|
|
41
39
|
{{ $t('Large emission version') }}
|
|
42
40
|
</option>
|
|
@@ -51,18 +49,17 @@
|
|
|
51
49
|
</template>
|
|
52
50
|
|
|
53
51
|
<script lang="ts">
|
|
54
|
-
import { Podcast } from '@/store/class/podcast';
|
|
55
|
-
import { CustomPlayer } from '@/store/class/customPlayer';
|
|
52
|
+
import { Podcast } from '@/store/class/general/podcast';
|
|
53
|
+
import { CustomPlayer } from '@/store/class/general/customPlayer';
|
|
56
54
|
import { defineComponent } from 'vue';
|
|
57
|
-
import { Emission } from '@/store/class/emission';
|
|
58
|
-
import { Playlist } from '@/store/class/playlist';
|
|
55
|
+
import { Emission } from '@/store/class/general/emission';
|
|
56
|
+
import { Playlist } from '@/store/class/general/playlist';
|
|
59
57
|
export default defineComponent({
|
|
60
58
|
props: {
|
|
61
59
|
podcast: { default: undefined, type: Object as ()=> Podcast},
|
|
62
60
|
emission: { default: undefined, type: Object as ()=> Emission},
|
|
63
61
|
playlist: { default: undefined, type: Object as ()=> Playlist},
|
|
64
62
|
customPlayers: { default: ()=>[], type: Array as ()=> Array<CustomPlayer>},
|
|
65
|
-
isBeta: { default: false, type: Boolean},
|
|
66
63
|
iFrameModel: { default: 'default', type: String},
|
|
67
64
|
},
|
|
68
65
|
emits:['update:iFrameModel'],
|
|
@@ -123,7 +123,7 @@
|
|
|
123
123
|
</template>
|
|
124
124
|
|
|
125
125
|
<script lang="ts">
|
|
126
|
-
import { Emission } from '@/store/class/emission';
|
|
126
|
+
import { Emission } from '@/store/class/general/emission';
|
|
127
127
|
import { defineComponent } from 'vue'
|
|
128
128
|
export default defineComponent({
|
|
129
129
|
props: {
|
|
@@ -140,8 +140,8 @@ import Player from './Player.vue';
|
|
|
140
140
|
import { state } from '../../store/paramStore';
|
|
141
141
|
import octopusApi from '@saooti/octopus-api';
|
|
142
142
|
import moment from 'moment';
|
|
143
|
-
import { Category } from '@/store/class/category';
|
|
144
|
-
import { RubriquageFilter } from '@/store/class/rubriquageFilter';
|
|
143
|
+
import { Category } from '@/store/class/general/category';
|
|
144
|
+
import { RubriquageFilter } from '@/store/class/rubrique/rubriquageFilter';
|
|
145
145
|
import { defineComponent } from 'vue'
|
|
146
146
|
export default defineComponent({
|
|
147
147
|
name: 'Footer',
|
|
@@ -117,10 +117,10 @@
|
|
|
117
117
|
<script lang="ts">
|
|
118
118
|
import { state } from '../../store/paramStore';
|
|
119
119
|
import { orgaFilter } from '../mixins/organisationFilter';
|
|
120
|
-
import { Category } from '@/store/class/category';
|
|
121
|
-
import { RubriquageFilter } from '@/store/class/rubriquageFilter';
|
|
120
|
+
import { Category } from '@/store/class/general/category';
|
|
121
|
+
import { RubriquageFilter } from '@/store/class/rubrique/rubriquageFilter';
|
|
122
122
|
import { defineComponent, defineAsyncComponent } from 'vue';
|
|
123
|
-
import { Organisation } from '@/store/class/organisation';
|
|
123
|
+
import { Organisation } from '@/store/class/general/organisation';
|
|
124
124
|
const OrganisationChooserLight = defineAsyncComponent(() => import('../display/organisation/OrganisationChooserLight.vue'));
|
|
125
125
|
export default defineComponent({
|
|
126
126
|
name: 'LeftMenu',
|
|
@@ -77,14 +77,14 @@ import octopusApi from '@saooti/octopus-api';
|
|
|
77
77
|
/* eslint-disable */
|
|
78
78
|
let Hls:any = null;
|
|
79
79
|
/* eslint-enable */
|
|
80
|
-
import { CommentPodcast } from '@/store/class/comment';
|
|
80
|
+
import { CommentPodcast } from '@/store/class/general/comment';
|
|
81
81
|
import { cookies } from '../mixins/functions';
|
|
82
82
|
import { StoreState } from '@/store/typeAppStore';
|
|
83
83
|
import PlayerProgressBar from './PlayerProgressBar.vue';
|
|
84
84
|
import PlayerButtons from './PlayerButtons.vue';
|
|
85
85
|
import PlayerClockAndTimeline from './PlayerClockAndTimeline.vue';
|
|
86
86
|
import { defineComponent } from 'vue';
|
|
87
|
-
import { FetchParam } from '@/store/class/fetchParam';
|
|
87
|
+
import { FetchParam } from '@/store/class/general/fetchParam';
|
|
88
88
|
export default defineComponent({
|
|
89
89
|
name: 'Player',
|
|
90
90
|
|
|
@@ -44,8 +44,8 @@
|
|
|
44
44
|
<script lang="ts">
|
|
45
45
|
import { state } from '../../store/paramStore';
|
|
46
46
|
import { defineComponent } from 'vue';
|
|
47
|
-
import { Media } from '@/store/class/media';
|
|
48
|
-
import { Podcast } from '@/store/class/podcast';
|
|
47
|
+
import { Media } from '@/store/class/general/media';
|
|
48
|
+
import { Podcast } from '@/store/class/general/podcast';
|
|
49
49
|
import { RouteLocationRaw } from 'vue-router';
|
|
50
50
|
export default defineComponent({
|
|
51
51
|
name: 'PlayerButtons',
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
import moment from 'moment';
|
|
24
24
|
import { state } from '../../store/paramStore';
|
|
25
25
|
import { defineComponent } from 'vue';
|
|
26
|
-
import { CommentPodcast } from '@/store/class/comment';
|
|
26
|
+
import { CommentPodcast } from '@/store/class/general/comment';
|
|
27
27
|
export default defineComponent({
|
|
28
28
|
name: 'PlayerClockAndTimeline',
|
|
29
29
|
|
|
@@ -58,7 +58,7 @@
|
|
|
58
58
|
<script lang="ts">
|
|
59
59
|
import { state } from '../../store/paramStore';
|
|
60
60
|
import DurationHelper from '../../helper/duration';
|
|
61
|
-
import { CommentPodcast } from '@/store/class/comment';
|
|
61
|
+
import { CommentPodcast } from '@/store/class/general/comment';
|
|
62
62
|
import { defineComponent, defineAsyncComponent } from 'vue';
|
|
63
63
|
const CommentPlayer = defineAsyncComponent(() => import('../display/comments/CommentPlayer.vue'));
|
|
64
64
|
export default defineComponent({
|