What has been done
1. Handle read and write rendering of all non-number destination
types, parsing sip-uri values from API to human readable types
2. Implement ability to add new destinations, also non-number types
3. Move "first ring" section to grid
4. Implement persistent reordering of destinations in grid, handling
both changes in termination status, priority order and
destinationset
5. Implement color indication of what destinations are terminated
(inactive/active) and not
6. Implement logic for handling Ajax PATCH request based on
destinationset
7. Some cleanup/refactoring, including change names for CallForward
store and models, clean up models, defaultValue added where needed
8. Render combinations of destination types and timeouts correctly
9. Implement cft/cfu rules. Currently you can't reposition it
10. Implement dynamic handling of labels in grid
Change-Id: I9f9252412d5ae921b8a4160a51b0acec8e8ea179
What has been done:
1. Implement successful write of destinations on store.sync(), using
beforesync event and custom ajax requests based on id of
destinationsets
B. Investigate PATCH method for updating items with use of curl
(will use this to base building of model in options["update"] on)
A. Make sure we are able to fire beforesync event
D. Add all necessary values to store for "add new destination"
button controller logic ("announcement_id", "destination",
"priority":, "simple_destination": "timeout" at least)
D1. If store.last is undefined, create a new destinationset
D2. Else if store.last is undefined, use store.last to get values for
new model
E. Create the "meat" for this cfStoreBeforeSync function
1G. Make sure removing destination works with the API properly
3A. Sourceset grid write data to API
3B. Sourceset write after adding source to empty grid
6. Disable ability to change titleset name for now, as we don't
have specs for how to handle this. Currently, changing the name of
the sourceset would mean that it would disappear in next reload,
and as we can't rely on localStorage for persistence of
sourceset_1 (List A), for example, we have no way of handling this
unless we change the logic here. I've proposed to handle this as
part of #17651, documented my concerns in ticket, and will discuss
in next sync-up
7. Cleanup and last changes and testing
Change-Id: Ic5eed663c032f38b5cf5c34effd86af32550ddde
What has been done:
1. Update endpoints mapping, as callforwards has sources and times,
but no sourceset or timeset names. Need to perform an ajax
request in controller to get sourceset name for current cf type
for subscriber
+--------------+---------------+------+-------------------------+
| Submodule | Grid | CRUD | Endpoint |
+--------------+---------------+------+-------------------------+
| Alw/Aft/Comp | Timeset | RU | /api/cftimesets/ |
| Alw/Aft/Comp | Sourceset | RU | /api/cfsourcesets/ |
| Alw/Aft/Comp | Onl/Offl/Busy | CRUD | /api/cfmappings/ |
| Alw/Aft/Comp | Onl/Offl/Busy | CR | /api/cfsourcesets/ |
| Alw/Aft/Comp | Onl/Offl/Busy | CR | /api/cftimesets/ |
| Alw/Aft/Comp | Onl/Offl/Busy | CRUD | /api/cfdestinationsets/ |
+--------------+---------------+------+-------------------------+
(timeset/sourceset in onl/off/busy CRUD depends on UI implementation)
2. Implement main store, proxy and controller for destination grids
3a. implement into view for displaying data based on requested data
3b. BUG fix. Duplicate destinations when loading several submodules
4. CANCEL button text does not get reverted back to ADD NEW
DESTINATION after adding new from empty list, fix
5. Make timeout field editable
6. For busy and offline, don't display "first ring" section
7a. Read and display sourceset and timeset API data
7b. BUG fix. List A grid is not showing
8. Fix "Voicemail" rendering
9. BUG fix. emptyText not showing for CallForwardMainGrid.js grids
10. Added box-shadow for core-container and cards
Change-Id: I1112969673296150e20a3add427fce81473d7060
What was done:
1. Change timeset grid column title from "Closed" to "Full Day"
2. Implement "save" and "close" buttons for timeset grid, and
controller (controllers fire msg for now)
3. Copy "For calls during after hours..." to panel title (keep it
in both places)
4. Implement changes to tabs and timeset appearance, see wireframe
in balsamiq
5. Change "Sourceset title" to "Title"
6. Implement Sourceset grid save button in row, and editor field
slightly less wide to make room for button
7. Make sourceset title input field full width
8. Change color for "move icon" to same color as "trash icon"
9. Implement tooltips in grids
10. Fix titles to "Call Forward - Always", and remove "For calls
during always..." in always submodule
11. Move the loadingBar
12. Local storage for persistent state of collapsable panel
13. Full width timeset grid, and place inside panel so it can be
properly collapsed
14. Locales all the things
15. Adjust width of sourceset grid to 100% as well, and move buttons
to right align
Change-Id: Id31fe3f34cb0009fa24068acc242daaa2b4bb481
Implement ngcp-csc sourceset widget with functionality for editing
and adding sources in the form of numbers or buddies. Only contains
a generic row named "Phone" for now. Also refactored some code in
controller.
Change-Id: I5c7167dbdc92ade2aa2d9a2f471c66473afc8609