* Flatten and use declarative style to refactor feature code creation
* Fix incorrect path to get/set feature code
* Remove unnecessary feature code defaults and callback
* feature codes configured as patterns instead of single numbers
* Update feature codes patterns
* Code style
* Verify if needed pattern is given by feature codes
* Fix wrong pattern
* Remove this
* Update add user modal to show labels instead of icons
* Fill brand field on add device section
* add device form
* Save user device
* Binding form events from single function
* Add extra button Create User and Add Device
* Code style
* Create user and device form based on mockup
* Handling form validation
* Create User and Add another button
* Revert "Remove this"
This reverts commit 7102cf9b4a.
* Styled notification email
* Use single chosen field to select device model
* improvements
* Improve form validation message
* Delete unused template
* Code style improvements
* Fix typo on lodash flatMap statement
Device family as argument
* code style improvements
* Create function to render add user modal
* Handle error on user creation to prevent form buttons state
* Render users list without auto scroll when save and new btn is clicked
* Fix device data validation
* Rename view for vm_to_email feature
* Modify feature dialog to display vmbox and vm-to-email functionalities
* Refactor save function for user's vmbox feature
* Change voicemail feature headline and title
* Create function to add main VMBox to user + other helpers
* Improve functions related to get formatted user numbers data
* Complete function to add vmbox to user
* Add function to delete user VMBox
* Remove old usersRenderVMBox code
* Extract form validation from `monster.waterfall`
* Use vmbox data from feature load function
* Get user's VMBox on feature save
* Handle VMBox feature
* Add missing self variable
* Get main user vmbox, match user list with vmboxes, and code refactor
* Code and logic fixes
* Set vm-to-email disabled if vmbox is not created for new user
* Add delete_after_notify to new voicemail box, and related TO-DOs
* Update ID and class related to vm_to_email_enabled option in vmbox view
* Reorganized new functions
* Get full main vmbox for user on feature load, and patch vmbox function
* Add parameters to JSDoc comments for patch functions
* Reduce API requests when adding vmbox to user
* Remove double check at usersGetMainCallflow
* Code fixes
* Remove translations that are no longer needed
* Use object instead of parameter list for function usersDeleteDialog
* Refactor user deletion methods, and subscribe to new user deletion event
* Remove user deletion and related unused functions
* Use common event to delete user
* Remove user deleteDialog and related data
* Rename deleteSmartUser dialog event
* revert this
* Revert "revert this"
This reverts commit b30c9c9c8d.
* Update base and ring group on group update
* Update ring and base group only if the group title was changed
* Add translations keys
Use string template instead of simple strings
Add new function for patch update
* Refactor patch update
* Improve group update
* Add reset button for incoming call handling strategy
* Delete menus and callflows for call strategy
* Fix code mistakes
* Re-create default call strategy after delete
* Add missing self variable on delete functions
* Small fixes
* Refactor code at strategyGetMainCallflows
* Refactor to use existing callflow functions
* Extract create menu API call to separate function
* Get hangup cause label from active lang
use capitalize instead of lowercase on css
* CR: remove unused statement and text display improvements
* Styling hangup cause only
* CSS indentation
* prevent cell content overflow
* Add checkbox to create vmbox on user creation form
* Use waterfall flow for user creation
* Extract user create api call to new function
* Create vmbox only if requested
* Rename view data property to create vmbox
* Fix waterfall callbacks for user creation flow
* Add translations
* Refactor code and remove vmbox from callflow
* Do not show VMBox row field if there is none for user
* Do not create VMBox at usersSmartUpdateVMBox, if user has none
* Add gittatributes to use default line ending behavior
* Apply suggestions according to code review
* Code refactor according to review
* Restructure feature popup header to handle string of different lengths
* Apply new feature popup header structure to call recording
* Apply new feature popup header structure to caller ID
* Apply new feature popup header structure to conferencing
* Apply new feature popup header structure to do not disturbe
* Apply new feature popup header structure to faxbox
* Apply new feature popup header structure to Find Me Follow Me
* Apply new feature popup header structure to Hotdesking
* Apply new feature popup header structure to Music On Hold
* Apply new feature popup header structure to Voicemail to Email
* Clean up remaining feature popup specific styling
* Apply new feature popup header structure to groups features
* Add assign to template
* Get users for the template
* Add translations
* Load in assignTo template
* Handle no owner case
* Fix translation reference
* Adhere to linter
* Clean up code
* Fix code style
* Update translation to be in devices.popupSettings
* Get user list in devicesGetEditData
* Fix templating
* Add default value to dropdown
* Remove error from listUsers call
* Rename usersData to users
* Ensure deviceData.users is not save to device
* Move users field to extra
* Move delete statements
* Move translations to popupsettings
* Conditionally show the buy numbers action for groups
* Conditionally show the buy numbers action for users
* Conditionally show the buy numbers action for strategy
* Only allow user type update if different from original
* Clean up user type assignment on user update
* Clean-up user type assignment on user creation
* Fix linting error + use lodash#oderBy to sort descendingly
* Check if service plan exists before user count increment
* See if user types are available when sorting users
* Move sub-module templates in their own `views` folder
By using `getTemplate()` we can specify which sub-module a template is
related to, enabling this behavior.
The templates names were shortened by stripping the name of their
sub-module from it since they are stored under their sub-module folder.
String templates are created using `getTemplate()` instead of
`monster.template()` that we are trying to depreciate.
* Only use `getTemplate()` for both regular and string templates
When creating groups on SmartPBX, the app automatically generates
baseGroup/userGroup callflows depending on which users are part of the
group. On the other end, the Callflows app only creates a group without
any callflow.
Since SmartPBX is listing all groups, an error was raised when trying to
view the details of group created through the Callflows app since an
associated callflow does not exist.