Release Summary for 4.2.23
  Changes to 4.2 after version 4.2.22
  * Summary
      - The dashboard is trying to filter users by service plans when none are available
  * Commits
      - [UI-3121: Check if user types are available before trying to filter users by them (#76)
  * 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](https://github.com/2600hz/monster-ui-voip/commit/87c04acbaded1a906911737ef7c231eef7c0eb78) by Joris Tirado
  * Summary
      - As a FEE, I want a monster.ui helper to toast notification so that the toastr library is abstracted
  * Commits
      - [UI-3119: Use monster toast helper instead of Toastr directly (#74)](https://github.com/2600hz/monster-ui-voip/commit/64918cabc7663ee030524571e32d878e6f26dd5f) by Joris Tirado
  * Summary
      - As a FEE, I want sub-module templates to be in their own folder to improve modularity
  * Commits
      - [UI-3116: Move sub-module templates in their own folder (#73)
  * 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](https://github.com/2600hz/monster-ui-voip/commit/1b4f3e7b367ea11cf439339e8562ba927a09138e) by Joris Tirado
  * Summary
      - As an admin I want to be able to re-order device feature keys
  * Commits
      - [UI-3053: Added Smart PBX SIP Device feature key drag and drop reordering (#55)
  * UI-3053 Added Smart PBX SIP Device feature key drag and drop reordering
  * Removed extra function around feature key sortable code](https://github.com/2600hz/monster-ui-voip/commit/98a4c0788f10065ded19105d79b148ee219f4070) by Anthony Perish
  * Summary
      - As a developer, I want to expose the outbound privacy policy so that it can be set by users
  * Commits
      - [UI-3111: Refactor caller id privacy feature with better description (#71)
  * Refactor caller id privacy for the users submodule
  * Refactor caller id privacy for the  devices submodule](https://github.com/2600hz/monster-ui-voip/commit/f2d0785a6ca2a910e7ea66aead1edb0429a89a3e) by Joris Tirado
  * Summary
      - As a user, I want a description for feature codes so that I know what each one does
  * Commits
      - [UI-3067: Remove incorrect sentence from feature code description (#70)](https://github.com/2600hz/monster-ui-voip/commit/db17b896a95d45ab71fb69a2a90f9401b92fdcfb) by Joris Tirado
  * [UI-3110: Add German translation (#75)  * Add German translation    * Expose German language as a selectable option](https://github.com/2600hz/monster-ui-voip/commit/730bbba2edd3b8c929efb3ac8a3aa07d3adf9f9a) by Joris Tirado
  * [Add do not disturb user feature (#44)](https://github.com/2600hz/monster-ui-voip/commit/34342cd3e3d91d15fd871d3c820aeb42c09a4b96) by mira-t
  * [Toggle user caller id strategy (#48)  * Allow toggle via config between two caller id selection methods    This only affects caller ID for users. If  monster.config.whitelabel.allowAnyOwnedNumberAsCallerID is falsy, the  old way of assigning caller ID will be activated i.e. users can only  have their caller ID set to numbers assigned to them, otherwise the main  number is used. If monster.config.whitelabel.allowAnyOwnedNumberAsCallerID  is truthy, the user can also have any number owned by the account used as  their caller ID.    * Add automatic eslint fixes    * Eslint fix: make mixed user of &amp;&amp; and || tidier](https://github.com/2600hz/monster-ui-voip/commit/e372fe6b74f77b7a47999202b6420f8cba5eb0f0) by mira-t
 -- 2600Hz Official <packages@2600hz.com>  Tue, 31 Jul 2018 18:33:56 +0000
