From 4387646c9a6d1f0bf295c879167eec5f6c41e15f Mon Sep 17 00:00:00 2001 From: Carlo Venusino Date: Wed, 23 Dec 2020 15:18:54 +0100 Subject: [PATCH] TT#104197 CF Custom Announcement basic functionalities Change-Id: I8364368fcb9f6880c3ce34d64ab3ffacc5e00aff --- .../call-forwarding/CscCfGroupItem.vue | 52 +++++++++++++++++-- .../call-forwarding/CscCfGroupTitle.vue | 9 ++++ src/pages/CscPageCf.vue | 4 +- src/store/call-forwarding/actions.js | 48 ++++++++++++++--- src/store/call-forwarding/getters.js | 4 ++ src/store/call-forwarding/mutations.js | 4 ++ src/store/call-forwarding/state.js | 3 +- 7 files changed, 111 insertions(+), 13 deletions(-) diff --git a/src/components/call-forwarding/CscCfGroupItem.vue b/src/components/call-forwarding/CscCfGroupItem.vue index b71e850e..c6c01236 100644 --- a/src/components/call-forwarding/CscCfGroupItem.vue +++ b/src/components/call-forwarding/CscCfGroupItem.vue @@ -132,6 +132,32 @@ /> {{ $t('Conference') }} + + + {{ announcement }} + + + + + 0 ? announcements.items.map(item => item.handle) : ['custom_announcement_0', 'custom_announcement_1', 'custom_announcement_2']) // TODO remove dummy data + } catch (err) { + commit('setAnnouncements', { + announcements: [] + }) + } +} + +export async function getAnnouncementById ({ dispatch, commit, rootGetters, state }, announcementId) { + try { + const announcement = await get({ + resource: 'soundhandles', + resourceId: announcementId + }) + return announcement.handle + } catch (err) { + return 'custom_announcement_0' // TODO remove + } +} + +export async function updateAnnouncement ({ dispatch, commit, rootGetters, state }, announcementId) { + // TODO +} diff --git a/src/store/call-forwarding/getters.js b/src/store/call-forwarding/getters.js index 0bdf1501..55338f14 100644 --- a/src/store/call-forwarding/getters.js +++ b/src/store/call-forwarding/getters.js @@ -17,3 +17,7 @@ export function groups (state) { export function ringTimeout (state) { return state.mappings.cft_ringtimeout } + +export function announcements (state) { + return state.announcements +} diff --git a/src/store/call-forwarding/mutations.js b/src/store/call-forwarding/mutations.js index a241b54a..a2608cb6 100644 --- a/src/store/call-forwarding/mutations.js +++ b/src/store/call-forwarding/mutations.js @@ -31,3 +31,7 @@ export function dataSucceeded (state, res) { export function popupShow (state, popupId) { state.popupCurrent = popupId } + +export function setAnnouncements (state, announcements) { + state.announcements = announcements +} diff --git a/src/store/call-forwarding/state.js b/src/store/call-forwarding/state.js index b0e3c8bf..fee24153 100644 --- a/src/store/call-forwarding/state.js +++ b/src/store/call-forwarding/state.js @@ -16,6 +16,7 @@ export default function () { sourceSetMap: {}, timeSets: null, timeSetMap: {}, - popupCurrent: null + popupCurrent: null, + announcements: [] } }