From 75a2ac75e3e9f8806b1be987022d684113e758fc Mon Sep 17 00:00:00 2001 From: Carlo Date: Fri, 22 Sep 2017 16:26:41 +0200 Subject: [PATCH] TT#21848 Ngcp CSC - CallForwarding - Timeset/Timeperiod Creation Change-Id: Icf5ac61c708dbe91e6d50213377aae5a3cbecfd0 --- app/utils/locales.js | 3 ++ .../callforward/CallForwardController.js | 8 ++++ .../callforward/CallForwardTimesetGrid.js | 13 +++++- .../callforward/afterhours/AfterHours.js | 37 ++++++++++++----- .../callforward/companyhours/CompanyHours.js | 40 +++++++++++++------ 5 files changed, 76 insertions(+), 25 deletions(-) diff --git a/app/utils/locales.js b/app/utils/locales.js index 90dee743..518e6b32 100644 --- a/app/utils/locales.js +++ b/app/utils/locales.js @@ -777,6 +777,9 @@ Ext.define('Ngcp.csc.locales', { fr: 'CALL FORWARD', sp: 'CALL FORWARD' }, + add_new_period: { + en: 'ADD NEW PERIOD' + }, time_one: { en: 'Always', it: 'Always', diff --git a/classic/src/view/pages/callforward/CallForwardController.js b/classic/src/view/pages/callforward/CallForwardController.js index b20ce581..42cdbfaf 100644 --- a/classic/src/view/pages/callforward/CallForwardController.js +++ b/classic/src/view/pages/callforward/CallForwardController.js @@ -461,6 +461,7 @@ Ext.define('NgcpCsc.view.pages.callforward.CallForwardController', { }, cfTimesetBeforeSync: function(store, options) { + // TODO delete options['destroy']; delete options['create']; delete options['update']; @@ -1368,6 +1369,13 @@ Ext.define('NgcpCsc.view.pages.callforward.CallForwardController', { var storeName = el.id.split('-')[0] + '-Timeset'; var store = Ext.getStore(storeName); store.sync(); + }, + + addNewPeriod: function(btn){ + var grid = btn.up('[name=timesetCont]').down('grid'); + var store = grid.getStore(); + var newModel = Ext.create('NgcpCsc.model.CallForwardTimeset'); + store.add(newModel); } }); diff --git a/classic/src/view/pages/callforward/CallForwardTimesetGrid.js b/classic/src/view/pages/callforward/CallForwardTimesetGrid.js index 344d9033..dd2ee26f 100644 --- a/classic/src/view/pages/callforward/CallForwardTimesetGrid.js +++ b/classic/src/view/pages/callforward/CallForwardTimesetGrid.js @@ -16,7 +16,16 @@ Ext.define('NgcpCsc.view.pages.callforward.CallForwardTimesetGrid', { items: [{ text: Ngcp.csc.locales.common.day[localStorage.getItem('languageSelected')], dataIndex: 'day', - flex: 1 + xtype: 'widgetcolumn', + editable: true, + flex: 1, + widget: { + xtype: 'combo', + bind: { + value: '{record.day}' + }, + store: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'] + } }, { text: Ngcp.csc.locales.common.from[localStorage.getItem('languageSelected')], dataIndex: 'time_from', @@ -25,6 +34,7 @@ Ext.define('NgcpCsc.view.pages.callforward.CallForwardTimesetGrid', { flex: 1, widget: { xtype: 'timefield', + increment: 60, tooltip: Ngcp.csc.locales.callforward.tooltips.change_time_from[localStorage.getItem('languageSelected')], bind: { value: '{record.time_from}' @@ -38,6 +48,7 @@ Ext.define('NgcpCsc.view.pages.callforward.CallForwardTimesetGrid', { flex: 1, widget: { xtype: 'timefield', + increment: 60, tooltip: Ngcp.csc.locales.callforward.tooltips.change_time_to[localStorage.getItem('languageSelected')], bind: { value: '{record.time_to}' diff --git a/classic/src/view/pages/callforward/afterhours/AfterHours.js b/classic/src/view/pages/callforward/afterhours/AfterHours.js index 44ce289f..8bc93746 100644 --- a/classic/src/view/pages/callforward/afterhours/AfterHours.js +++ b/classic/src/view/pages/callforward/afterhours/AfterHours.js @@ -35,7 +35,8 @@ Ext.define('NgcpCsc.view.pages.callforward.afterhours.Afterhours', { xtype: 'container', items: [{ xtype: 'panel', - id: 'collapsePanel-afterHours', + name: 'timesetCont', + id: 'collapsePanel-afterhours', title: Ngcp.csc.locales.callforward.for_calls_during_after_hours[localStorage.getItem('languageSelected')], width: '100%', collapsible: true, @@ -56,18 +57,32 @@ Ext.define('NgcpCsc.view.pages.callforward.afterhours.Afterhours', { } }, callForwardAfterGrid, { - text: Ngcp.csc.locales.common.save_caps[localStorage.getItem('languageSelected')], - xtype: 'button', - cls: 'x-btn-left', - id: 'afterHours-saveButton', - width: 135, - margin: '10 0 10 623', - listeners: { - click: 'saveTimesetGrid' - }, + margin: '10 0 10 0', + layout: 'hbox', + width: '100%', bind: { hidden: '{!after_hours_exists_in_api}' - } + }, + items: [{ + flex: 6 + },{ + flex: 2, + margin: '0 5 0 0', + text: Ngcp.csc.locales.callforward.add_new_period[localStorage.getItem('languageSelected')], + xtype: 'button', + id: 'afterhours-addNewPeriodButton', + listeners: { + click: 'addNewPeriod' + }, + }, { + text: Ngcp.csc.locales.common.save_caps[localStorage.getItem('languageSelected')], + xtype: 'button', + cls: 'x-btn-left', + id: 'afterhours-saveButton', + listeners: { + click: 'saveTimesetGrid' + } + }] } ] }] diff --git a/classic/src/view/pages/callforward/companyhours/CompanyHours.js b/classic/src/view/pages/callforward/companyhours/CompanyHours.js index 54dc2ff6..185a3166 100644 --- a/classic/src/view/pages/callforward/companyhours/CompanyHours.js +++ b/classic/src/view/pages/callforward/companyhours/CompanyHours.js @@ -35,7 +35,8 @@ Ext.define('NgcpCsc.view.pages.callforward.companyhours.Companyhours', { xtype: 'container', items: [{ xtype: 'panel', - id: 'collapsePanel-companyHours', + name: 'timesetCont', + id: 'collapsePanel-companyhours', title: Ngcp.csc.locales.callforward.for_calls_during_company_hours[localStorage.getItem('languageSelected')], width: '100%', collapsible: true, @@ -55,20 +56,33 @@ Ext.define('NgcpCsc.view.pages.callforward.companyhours.Companyhours', { hidden: '{company_hours_exists_in_api}' } }, - callForwardCompanyGrid, - { - text: Ngcp.csc.locales.common.save_caps[localStorage.getItem('languageSelected')], - xtype: 'button', - cls: 'x-btn-left', - id: 'companyHours-saveButton', - width: 135, - margin: '10 0 10 585', - listeners: { - click: 'saveTimesetGrid' - }, + callForwardCompanyGrid, { + margin: '10 0 10 0', + layout: 'hbox', + width: '100%', bind: { hidden: '{!company_hours_exists_in_api}' - } + }, + items: [{ + flex: 6 + },{ + flex: 2, + margin: '0 5 0 0', + text: Ngcp.csc.locales.callforward.add_new_period[localStorage.getItem('languageSelected')], + xtype: 'button', + id: 'companyhours-addNewPeriodButton', + listeners: { + click: 'addNewPeriod' + }, + }, { + flex: 1, + text: Ngcp.csc.locales.common.save_caps[localStorage.getItem('languageSelected')], + xtype: 'button', + id: 'companyhours-saveButton', + listeners: { + click: 'saveTimesetGrid' + } + }] } ] }]