@saooti/octopus-sdk 36.0.2 → 36.0.3

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.
Files changed (85) hide show
  1. package/package.json +1 -1
  2. package/public/css/fonts/icomoon.eot +0 -0
  3. package/public/css/fonts/icomoon.svg +21 -12
  4. package/public/css/fonts/icomoon.ttf +0 -0
  5. package/public/css/fonts/icomoon.woff +0 -0
  6. package/public/css/fonts/style.css +32 -5
  7. package/public/img/header-emissions.webp +0 -0
  8. package/public/img/header-home.webp +0 -0
  9. package/public/img/header-intervenants.webp +0 -0
  10. package/public/img/header-playlists.webp +0 -0
  11. package/public/img/header-podcasts.webp +0 -0
  12. package/src/assets/bootstrap.scss +26 -12
  13. package/src/assets/form.scss +2 -2
  14. package/src/assets/general.scss +16 -26
  15. package/src/assets/live.scss +0 -18
  16. package/src/assets/multiselect.scss +15 -25
  17. package/src/assets/share.scss +47 -12
  18. package/src/components/display/categories/CategoryChooser.vue +1 -1
  19. package/src/components/display/categories/CategoryFilter.vue +109 -62
  20. package/src/components/display/categories/CategoryList.vue +9 -20
  21. package/src/components/display/emission/EmissionChooser.vue +1 -1
  22. package/src/components/display/emission/EmissionInlineList.vue +1 -1
  23. package/src/components/display/emission/EmissionItem.vue +5 -5
  24. package/src/components/display/emission/EmissionPlayerItem.vue +10 -7
  25. package/src/components/display/filter/MonetizableFilter.vue +1 -1
  26. package/src/components/display/filter/ProductorSearch.vue +1 -1
  27. package/src/components/display/filter/RubriqueChoice.vue +1 -1
  28. package/src/components/display/list/ListPaginate.vue +14 -25
  29. package/src/components/display/list/Paginate.vue +71 -104
  30. package/src/components/display/list/PaginateParams.vue +66 -0
  31. package/src/components/display/live/CountDown.vue +1 -1
  32. package/src/components/display/live/LiveItem.vue +0 -7
  33. package/src/components/display/organisation/OrganisationChooser.vue +1 -1
  34. package/src/components/display/participant/ParticipantItem.vue +6 -12
  35. package/src/components/display/participant/ParticipantList.vue +2 -24
  36. package/src/components/display/playlist/PlaylistItem.vue +10 -10
  37. package/src/components/display/podcasts/AnimatorsItem.vue +1 -2
  38. package/src/components/display/podcasts/ParticipantDescription.vue +0 -30
  39. package/src/components/display/podcasts/PodcastFilterList.vue +1 -1
  40. package/src/components/display/podcasts/PodcastImage.vue +19 -13
  41. package/src/components/display/podcasts/PodcastInlineListClassic.vue +1 -1
  42. package/src/components/display/podcasts/PodcastInlineListTemplate.vue +14 -12
  43. package/src/components/display/podcasts/PodcastItem.vue +15 -9
  44. package/src/components/display/podcasts/PodcastItemInfo.vue +18 -55
  45. package/src/components/display/podcasts/PodcastModuleBox.vue +52 -25
  46. package/src/components/display/podcasts/PodcastSwiperList.vue +20 -10
  47. package/src/components/display/podcasts/TagList.vue +7 -2
  48. package/src/components/display/rubriques/RubriqueChooser.vue +2 -2
  49. package/src/components/display/rubriques/RubriqueList.vue +11 -19
  50. package/src/components/display/sharing/PlayerParameters.vue +59 -75
  51. package/src/components/display/sharing/ShareButtons.vue +20 -37
  52. package/src/components/display/sharing/ShareButtonsIntern.vue +75 -83
  53. package/src/components/display/sharing/ShareDistribution.vue +3 -2
  54. package/src/components/display/sharing/SharePlayer.vue +50 -50
  55. package/src/components/display/sharing/SharePlayerColors.vue +4 -4
  56. package/src/components/display/sharing/SharePlayerTypes.vue +25 -27
  57. package/src/components/display/sharing/SubscribeButtons.vue +2 -2
  58. package/src/components/form/ClassicCheckbox.vue +1 -1
  59. package/src/components/form/ClassicSearch.vue +2 -1
  60. package/src/components/misc/Footer.vue +19 -15
  61. package/src/components/misc/HomeDropdown.vue +14 -14
  62. package/src/components/misc/Popover.vue +2 -1
  63. package/src/components/misc/ProgressBar.vue +1 -1
  64. package/src/components/misc/TopBar.vue +54 -44
  65. package/src/components/misc/modal/ClassicModal.vue +2 -2
  66. package/src/components/misc/modal/NewsletterModal.vue +0 -1
  67. package/src/components/misc/player/Player.vue +5 -14
  68. package/src/components/misc/player/PlayerCompact.vue +2 -1
  69. package/src/components/pages/Emission.vue +64 -62
  70. package/src/components/pages/Emissions.vue +0 -9
  71. package/src/components/pages/Participant.vue +13 -15
  72. package/src/components/pages/Participants.vue +0 -7
  73. package/src/components/pages/Playlist.vue +43 -37
  74. package/src/components/pages/Playlists.vue +0 -5
  75. package/src/components/pages/Podcast.vue +65 -100
  76. package/src/components/pages/Podcasts.vue +1 -37
  77. package/src/locale/de.ts +6 -1
  78. package/src/locale/en.ts +6 -1
  79. package/src/locale/es.ts +6 -1
  80. package/src/locale/fr.ts +6 -1
  81. package/src/locale/it.ts +6 -1
  82. package/src/locale/sl.ts +6 -1
  83. package/src/sass/_variables.scss +6 -1
  84. package/src/stores/ParamSdkStore.ts +14 -22
  85. package/src/stores/PlayerStore.ts +11 -0
@@ -1,11 +1,30 @@
1
1
  <template>
2
2
  <div class="page-box">
3
- <div
4
- v-if="loaded && !error"
5
- >
6
- <h1>{{ $t('Emission') }}</h1>
7
- <div class="d-flex">
8
- <div class="d-flex flex-column flex-grow-1">
3
+ <template v-if="loaded && !error" >
4
+ <div class="page-element-title-container">
5
+ <div class="page-element-title">
6
+ <h1>{{ $t('Emission') }}</h1>
7
+ </div>
8
+ <div class="page-element-bg" :style="backgroundDisplay"></div>
9
+ </div>
10
+ <div class="d-flex flex-column page-element">
11
+ <div class="module-box">
12
+ <div class="mb-5 descriptionText">
13
+ <img
14
+ v-lazy="proxyImageUrl(imageUrl, '330')"
15
+ width="330"
16
+ height="330"
17
+ :alt="$t('Emission name image', { name: name })"
18
+ class="img-box float-start me-3 mb-3"
19
+ >
20
+ <h2>{{ name }}</h2>
21
+ <!-- eslint-disable vue/no-v-html -->
22
+ <p
23
+ class="html-wysiwyg-content"
24
+ v-html="urlify(description)"
25
+ />
26
+ <!-- eslint-enable -->
27
+ </div>
9
28
  <EditBox
10
29
  v-if="editRight && pageParameters.isEditBox"
11
30
  :emission="emission"
@@ -13,67 +32,44 @@
13
32
  :ftp-emission="ftpEmission"
14
33
  @isUpdated="getEmissionDetails"
15
34
  />
16
- <div class="module-box">
17
- <h2>
18
- {{ name }}
19
- </h2>
20
- <div class="mb-5 mt-3 descriptionText">
21
- <img
22
- v-lazy="proxyImageUrl(imageUrl, '260')"
23
- width="260"
24
- height="260"
25
- :alt="$t('Emission name image', { name: name })"
26
- class="img-box shadow-element float-start me-3 mb-3"
27
- >
28
- <!-- eslint-disable vue/no-v-html -->
29
- <p
30
- class="html-wysiwyg-content"
31
- v-html="urlify(description)"
32
- />
33
- <!-- eslint-enable -->
34
- </div>
35
- </div>
36
- <SubscribeButtons
37
- v-if="pageParameters.isShareButtons && countLink >= 1"
38
- :emission="emission"
39
- />
40
35
  </div>
41
- <div class="d-flex flex-column flex-grow-mobile">
42
- <SharePlayer
43
- v-if="pageParameters.isSharePlayer && (authenticated || notExclusive)"
44
- :emission="emission"
45
- :exclusive="exclusive"
46
- :not-exclusive="notExclusive"
47
- :organisation-id="myOrganisationId"
48
- :is-education="isEducation"
49
- />
50
- <ShareButtons
51
- v-if="pageParameters.isShareButtons"
52
- :emission="emission"
53
- :is-vertical="!authenticated && !notExclusive"
54
- />
55
- </div>
56
- </div>
57
- <div v-if="editRight">
58
- <ShareDistribution
59
- v-if="pageParameters.isShareDistribution"
60
- :emission-id="emissionId"
36
+ <SharePlayer
37
+ v-if="pageParameters.isSharePlayer && (authenticated || notExclusive)"
38
+ :emission="emission"
39
+ :exclusive="exclusive"
40
+ :not-exclusive="notExclusive"
41
+ :organisation-id="myOrganisationId"
42
+ :is-education="isEducation"
61
43
  />
62
- </div>
63
- <template v-if="pageParameters.isDisplayPodcasts">
64
- <LiveHorizontalList
65
- v-if="!isPodcastmaker"
66
- :emission-id="emissionId"
44
+ <ShareButtons
45
+ v-if="pageParameters.isShareButtons"
46
+ :emission="emission"
47
+ />
48
+ <SubscribeButtons
49
+ v-if="pageParameters.isShareButtons && countLink >= 1"
50
+ :emission="emission"
67
51
  />
68
- <PodcastFilterList
69
- :show-count="true"
52
+ <ShareDistribution
53
+ v-if="editRight && pageParameters.isShareDistribution"
70
54
  :emission-id="emissionId"
71
- :category-filter="false"
72
- :edit-right="editRight"
73
- :productor-id="emission.orga.id"
74
55
  />
75
- </template>
76
- </div>
56
+ <template v-if="pageParameters.isDisplayPodcasts">
57
+ <LiveHorizontalList
58
+ v-if="!isPodcastmaker"
59
+ class="mx-2"
60
+ :emission-id="emissionId"
61
+ />
62
+ <PodcastFilterList
63
+ class="mx-2"
64
+ :show-count="true"
65
+ :emission-id="emissionId"
66
+ :category-filter="false"
67
+ :edit-right="editRight"
68
+ :productor-id="emission.orga.id"
69
+ />
70
+ </template>
71
+ </div>
72
+ </template>
77
73
  <ClassicLoading
78
74
  :loading-text="!loaded?$t('Loading content ...'):undefined"
79
75
  :error-text="error?$t(`Emission doesn't exist`):undefined"
@@ -169,6 +165,12 @@ export default defineComponent({
169
165
  }
170
166
  return count;
171
167
  },
168
+ backgroundDisplay():string{
169
+ if(!this.emission){
170
+ return "";
171
+ }
172
+ return `background-image: url('${this.emission.imageUrl}');`;
173
+ },
172
174
  },
173
175
  watch: {
174
176
  emissionId: {
@@ -1,8 +1,6 @@
1
1
  <template>
2
2
  <div class="page-box">
3
- <h1>{{ titleDisplay }}</h1>
4
3
  <ProductorSearch
5
- v-if="isProductorSearch"
6
4
  v-model:organisationId="organisationId"
7
5
  v-model:search-pattern="searchPattern"
8
6
  type="emission"
@@ -11,7 +9,6 @@
11
9
  :is-education="isEducation"
12
10
  :reset-rubriquage="resetRubriquage"
13
11
  :is-emission="true"
14
- :is-search-bar="isProductorSearch"
15
12
  :sort-criteria="sortEmission"
16
13
  :organisation-id="organisationId"
17
14
  :include-hidden="includeHidden"
@@ -85,12 +82,6 @@ export default defineComponent({
85
82
 
86
83
  computed: {
87
84
  ...mapState(useFilterStore, ['filterIab', 'filterRubrique']),
88
- titleDisplay(): string{
89
- return state.emissionsPage.titlePage??this.$t('All emissions');
90
- },
91
- isProductorSearch(): boolean{
92
- return (state.podcastsPage.ProductorSearch as boolean);
93
- },
94
85
  organisationRight(): boolean {
95
86
  return (true===this.authenticated && this.myOrganisationId === this.organisationId) ||
96
87
  true===state.generalParameters.isAdmin
@@ -15,7 +15,7 @@
15
15
  height="200"
16
16
  :title="$t('Animator image')"
17
17
  :alt="$t('Animator image')"
18
- class="img-box-circle mb-3"
18
+ class="img-box mb-3"
19
19
  >
20
20
  <h2 class="text-capitalize">
21
21
  {{ name }}
@@ -26,20 +26,18 @@
26
26
  v-html="urlify(description)"
27
27
  />
28
28
  <!-- eslint-enable -->
29
- <div class="d-flex mt-3">
30
- <EditBox
31
- v-if="editRight && pageParameters.isEditBox"
32
- :participant="participant"
33
- class="flex-grow-1"
34
- @participantUpdate="updateParticipant"
35
- />
36
- <ShareButtons
37
- v-if="pageParameters.isShareButtons"
38
- :participant-id="participantId"
39
- :organisation-id="participant.orga.id"
40
- :is-vertical="false"
41
- />
42
- </div>
29
+ <EditBox
30
+ v-if="editRight && pageParameters.isEditBox"
31
+ :participant="participant"
32
+ class="w-100"
33
+ @participantUpdate="updateParticipant"
34
+ />
35
+ <ShareButtons
36
+ v-if="pageParameters.isShareButtons"
37
+ class="w-100"
38
+ :participant-id="participantId"
39
+ :organisation-id="participant.orga.id"
40
+ />
43
41
  </div>
44
42
  <PodcastFilterList
45
43
  v-if="!pageParameters.lightStyle"
@@ -1,6 +1,5 @@
1
1
  <template>
2
2
  <div class="page-box">
3
- <h1>{{ titleDisplay }}</h1>
4
3
  <ProductorSearch
5
4
  v-model:organisation-id="organisationId"
6
5
  v-model:search-pattern="searchPattern"
@@ -20,7 +19,6 @@
20
19
  import { orgaComputed } from '../mixins/orgaComputed';
21
20
  import ParticipantList from '../display/participant/ParticipantList.vue';
22
21
  import ProductorSearch from '../display/filter/ProductorSearch.vue';
23
- import { state } from '../../stores/ParamSdkStore';
24
22
  import { defineComponent } from 'vue'
25
23
  export default defineComponent({
26
24
  components: {
@@ -39,11 +37,6 @@ export default defineComponent({
39
37
  organisationId: undefined as string | undefined,
40
38
  };
41
39
  },
42
- computed: {
43
- titleDisplay(): string{
44
- return state.intervenantsPage.titlePage ?? this.$t('All participants');
45
- },
46
- },
47
40
  created() {
48
41
  this.organisationId = this.productor ?this.productor: this.filterOrgaId;
49
42
  },
@@ -1,50 +1,50 @@
1
1
  <template>
2
2
  <div class="page-box">
3
- <div
3
+ <template
4
4
  v-if="loaded && !error"
5
5
  >
6
- <h1>{{ $t('Playlist') }}</h1>
7
- <div class="d-flex">
8
- <div class="d-flex flex-column flex-grow-1">
9
- <EditBox
10
- v-if="editRight && pageParameters.isEditBox"
11
- :playlist="playlist"
12
- />
13
- <div class="module-box">
6
+ <div class="page-element-title-container">
7
+ <div class="page-element-title">
8
+ <h1>{{ $t('Playlist') }}</h1>
9
+ </div>
10
+ <div class="page-element-bg" :style="backgroundDisplay"></div>
11
+ </div>
12
+ <div class="d-flex flex-column page-element">
13
+ <div class="module-box">
14
+ <div class="mb-5 mt-3 descriptionText">
15
+ <img
16
+ v-lazy="proxyImageUrl(imageUrl, '330')"
17
+ width="330"
18
+ height="330"
19
+ :alt="$t('Playlist name image', { name: name })"
20
+ class="img-box float-start me-3 mb-3"
21
+ >
14
22
  <h2>{{ name }}</h2>
15
- <div class="mb-5 mt-3 descriptionText">
16
- <img
17
- v-lazy="proxyImageUrl(imageUrl, '260')"
18
- width="260"
19
- height="260"
20
- :alt="$t('Playlist name image', { name: name })"
21
- class="img-box shadow-element float-start me-3 mb-3"
22
- >
23
- <!-- eslint-disable vue/no-v-html -->
24
- <p
25
- class="html-wysiwyg-content"
26
- v-html="urlify(description)"
27
- />
28
- <!-- eslint-enable -->
29
- </div>
23
+ <!-- eslint-disable vue/no-v-html -->
24
+ <p
25
+ class="html-wysiwyg-content"
26
+ v-html="urlify(description)"
27
+ />
28
+ <!-- eslint-enable -->
30
29
  </div>
31
- </div>
32
- <div class="d-flex flex-column flex-grow-mobile">
33
- <SharePlayer
34
- v-if="pageParameters.isSharePlayer && authenticated"
35
- :playlist="playlist"
36
- :organisation-id="myOrganisationId"
37
- :is-education="isEducation"
38
- />
39
- <ShareButtons
40
- v-if="pageParameters.isShareButtons"
30
+ <EditBox
31
+ v-if="editRight && pageParameters.isEditBox"
41
32
  :playlist="playlist"
42
- :is-vertical="!(pageParameters.isSharePlayer && authenticated)"
43
33
  />
44
34
  </div>
35
+ <SharePlayer
36
+ v-if="pageParameters.isSharePlayer && authenticated"
37
+ :playlist="playlist"
38
+ :organisation-id="myOrganisationId"
39
+ :is-education="isEducation"
40
+ />
41
+ <ShareButtons
42
+ v-if="pageParameters.isShareButtons"
43
+ :playlist="playlist"
44
+ />
45
+ <PodcastList :playlist="playlist" />
45
46
  </div>
46
- <PodcastList :playlist="playlist" />
47
- </div>
47
+ </template>
48
48
  <ClassicLoading
49
49
  :loading-text="!loaded?$t('Loading content ...'):undefined"
50
50
  :error-text="error?$t(`Playlist doesn't exist`):undefined"
@@ -112,6 +112,12 @@ export default defineComponent({
112
112
  this.myOrganisationId === this.playlist?.organisation?.id) ||
113
113
  true ===state.generalParameters.isAdmin
114
114
  },
115
+ backgroundDisplay():string{
116
+ if(!this.playlist){
117
+ return "";
118
+ }
119
+ return `background-image: url('${this.playlist.imageUrl}');`;
120
+ },
115
121
  },
116
122
  watch: {
117
123
  playlistId: {
@@ -1,6 +1,5 @@
1
1
  <template>
2
2
  <div class="page-box">
3
- <h1>{{ $t('All playlists') }}</h1>
4
3
  <router-link
5
4
  v-if="editRight && !isPodcastmaker"
6
5
  to="/main/priv/edit/playlist"
@@ -11,7 +10,6 @@
11
10
  </div>
12
11
  </router-link>
13
12
  <ProductorSearch
14
- v-if="isProductorSearch"
15
13
  v-model:organisationId="organisationId"
16
14
  v-model:search-pattern="searchPattern"
17
15
  type="playlist"
@@ -52,9 +50,6 @@ export default defineComponent({
52
50
  },
53
51
 
54
52
  computed: {
55
- isProductorSearch(): boolean {
56
- return (state.podcastsPage.ProductorSearch as boolean);
57
- },
58
53
  isPodcastmaker(): boolean {
59
54
  return (state.generalParameters.podcastmaker as boolean);
60
55
  },
@@ -1,88 +1,66 @@
1
1
  <template>
2
2
  <div class="page-box">
3
3
  <template v-if="loaded && !error">
4
- <div class="page-podcast-title">
5
- <h1>{{ titlePage }}</h1>
6
- <Countdown
7
- v-if="isCounter"
8
- :time-remaining="timeRemaining"
9
- />
10
- </div>
11
- <div class="d-flex page-podcast">
12
- <div class="d-flex flex-column flex-super-grow">
13
- <RecordingItemButton
14
- v-if="
15
- !!fetchConference &&
16
- isLiveReadyToRecord &&
17
- !isNotRecorded &&
18
- isOctopusAndAnimator
19
- "
20
- class="module-box text-center-mobile flex-grow-0"
21
- :podcast="podcast"
22
- :live="true"
23
- :recording="fetchConference"
24
- @deleteItem="removeDeleted"
25
- @validatePodcast="updatePodcast"
26
- />
27
- <EditBox
28
- v-else-if="editRight && pageParameters.isEditBox"
29
- :podcast="podcast"
30
- @validatePodcast="updatePodcast"
31
- />
32
- <PodcastModuleBox
33
- :playing-podcast="playingPodcast"
34
- :podcast="podcast"
35
- :fetch-conference="fetchConference"
36
- />
37
- <SubscribeButtons
38
- v-if="pageParameters.isShareButtons && countLink >= 1"
39
- :emission="podcast.emission"
40
- />
41
- </div>
42
- <div
43
- class="d-flex flex-column flex-grow-mobile"
44
- >
45
- <SharePlayer
46
- v-if="pageParameters.isSharePlayer && (authenticated || notExclusive)"
47
- :podcast="podcast"
48
- :emission="podcast.emission"
49
- :exclusive="exclusive"
50
- :not-exclusive="notExclusive"
51
- :organisation-id="myOrganisationId"
52
- :is-education="isEducation"
53
- />
54
- <ShareButtons
55
- v-if="pageParameters.isShareButtons"
56
- :podcast="podcast"
57
- :is-vertical="!authenticated && !notExclusive"
4
+ <div class="page-element-title-container">
5
+ <div class="page-element-title">
6
+ <h1>{{ titlePage }}</h1>
7
+ <Countdown
8
+ v-if="isCounter"
9
+ :time-remaining="timeRemaining"
58
10
  />
59
11
  </div>
12
+ <div class="page-element-bg" :style="backgroundDisplay"></div>
13
+ </div>
14
+ <div class="d-flex flex-column page-element">
15
+ <PodcastModuleBox
16
+ :playing-podcast="playingPodcast"
17
+ :podcast="podcast"
18
+ :fetch-conference="fetchConference"
19
+ @updatePodcast="updatePodcast"
20
+ />
21
+ <SharePlayer
22
+ v-if="pageParameters.isSharePlayer && (authenticated || notExclusive)"
23
+ :podcast="podcast"
24
+ :emission="podcast.emission"
25
+ :exclusive="exclusive"
26
+ :not-exclusive="notExclusive"
27
+ :organisation-id="myOrganisationId"
28
+ :is-education="isEducation"
29
+ />
30
+ <ShareButtons
31
+ v-if="pageParameters.isShareButtons"
32
+ :podcast="podcast"
33
+ />
34
+ <SubscribeButtons
35
+ v-if="pageParameters.isShareButtons && countLink >= 1"
36
+ :emission="podcast.emission"
37
+ />
38
+ <CommentSection
39
+ v-if="!isPodcastmaker"
40
+ ref="commentSection"
41
+ :podcast="podcast"
42
+ :fetch-conference="fetchConference"
43
+ />
44
+ <PodcastInlineList
45
+ class="mt-4"
46
+ :emission-id="podcast.emission.emissionId"
47
+ :href="'/main/pub/emission/' + podcast.emission.emissionId"
48
+ :title="$t('More episodes of this emission')"
49
+ :button-text="$t('All podcast emission button')"
50
+ />
51
+ <PodcastInlineList
52
+ :podcast-id="podcastId"
53
+ :title="$t('Suggested listening')"
54
+ />
55
+ <PodcastInlineList
56
+ v-for="c in categories"
57
+ :key="c.id"
58
+ :iab-id="c.id"
59
+ :href="'/main/pub/category/' + c.id"
60
+ :title="$t('More episodes of this category : ', { name: c.name })"
61
+ :button-text="$t('All podcast button', { name: c.name })"
62
+ />
60
63
  </div>
61
- <CommentSection
62
- v-if="!isPodcastmaker"
63
- ref="commentSection"
64
- :podcast="podcast"
65
- :fetch-conference="fetchConference"
66
- />
67
- <PodcastInlineList
68
- class="mt-4"
69
- :emission-id="podcast.emission.emissionId"
70
- :href="'/main/pub/emission/' + podcast.emission.emissionId"
71
- :title="$t('More episodes of this emission')"
72
- :button-text="$t('All podcast emission button')"
73
- />
74
- <PodcastInlineList
75
- :podcast-id="podcastId"
76
- :title="$t('Suggested listening')"
77
- />
78
- <PodcastInlineList
79
- v-for="c in categories"
80
- :key="c.id"
81
- :iab-id="c.id"
82
- :href="'/main/pub/category/' + c.id"
83
- :title="$t('More episodes of this category : ', { name: c.name })"
84
- :button-text="$t('All podcast button', { name: c.name })"
85
- />
86
64
  </template>
87
65
  <ClassicLoading
88
66
  :loading-text="!loaded?$t('Loading content ...'):undefined"
@@ -104,7 +82,6 @@ import { Podcast } from '@/stores/class/general/podcast';
104
82
  import { Conference } from '@/stores/class/conference/conference';
105
83
  import { handle403 } from '../mixins/handle403';
106
84
  import { defineComponent, defineAsyncComponent } from 'vue';
107
- import CommentSectionVue from '../display/comments/CommentSection.vue';
108
85
  import { CommentPodcast } from '@/stores/class/general/comment';
109
86
  import { Category } from '@/stores/class/general/category';
110
87
  import { useGeneralStore } from '@/stores/GeneralStore';
@@ -112,9 +89,7 @@ import { mapState } from 'pinia';
112
89
  import { AxiosError } from 'axios';
113
90
  const ShareButtons = defineAsyncComponent(() => import('../display/sharing/ShareButtons.vue'));
114
91
  const SharePlayer = defineAsyncComponent(() => import('../display/sharing/SharePlayer.vue'));
115
- const EditBox = defineAsyncComponent(() => import('@/components/display/edit/EditBox.vue'));
116
92
  const SubscribeButtons = defineAsyncComponent(() => import('../display/sharing/SubscribeButtons.vue'));
117
- const RecordingItemButton = defineAsyncComponent(() => import('@/components/display/studio/RecordingItemButton.vue'));
118
93
  const Countdown = defineAsyncComponent(() => import('../display/live/CountDown.vue'));
119
94
  const CommentSection = defineAsyncComponent(() => import('../display/comments/CommentSection.vue'));
120
95
  export default defineComponent({
@@ -123,9 +98,7 @@ export default defineComponent({
123
98
  PodcastInlineList,
124
99
  ShareButtons,
125
100
  SharePlayer,
126
- EditBox,
127
101
  SubscribeButtons,
128
- RecordingItemButton,
129
102
  Countdown,
130
103
  CommentSection,
131
104
  PodcastModuleBox,
@@ -156,12 +129,17 @@ export default defineComponent({
156
129
 
157
130
  computed: {
158
131
  ...mapState(useGeneralStore, ['storedCategories']),
132
+ backgroundDisplay():string{
133
+ if(!this.podcast){
134
+ return "";
135
+ }
136
+ return `background-image: url('${this.podcast.imageUrl}');`;
137
+ },
159
138
  isPodcastmaker(): boolean {
160
139
  return (state.generalParameters.podcastmaker as boolean);
161
140
  },
162
141
  pageParameters(){
163
142
  return {
164
- isEditBox : (state.podcastPage.EditBox as boolean),
165
143
  isShareButtons: (state.podcastPage.ShareButtons as boolean),
166
144
  isSharePlayer: (state.podcastPage.SharePlayer as boolean),
167
145
  };
@@ -212,13 +190,6 @@ export default defineComponent({
212
190
  'PENDING' === this.fetchConference.status)
213
191
  );
214
192
  },
215
- isNotRecorded(): boolean {
216
- return (
217
- this.isLiveReadyToRecord &&
218
- undefined!==this.fetchConference &&
219
- 'DEBRIEFING' === this.fetchConference.status
220
- );
221
- },
222
193
  isOctopusAndAnimator(): boolean {
223
194
  return (
224
195
  !this.isPodcastmaker &&
@@ -317,15 +288,9 @@ export default defineComponent({
317
288
  this.initError();
318
289
  }
319
290
  },
320
- removeDeleted(): void {
321
- if (window.history.length > 1) {
322
- this.$router.go(-1);
323
- } else {
324
- this.$router.push('/');
325
- }
326
- },
291
+
327
292
  receiveCommentEvent(event:{type: string; comment: CommentPodcast; oldStatus?:string } ): void {
328
- (this.$refs.commentSection as InstanceType<typeof CommentSectionVue>).receiveCommentEvent(event);
293
+ (this.$refs.commentSection as InstanceType<typeof CommentSection>).receiveCommentEvent(event);
329
294
  },
330
295
  },
331
296
  })