* N°3795 - Replace JS alert native calls with centralized informative modals
* N°3795 - Add constants for severity
* N°3795 - Fix success severity value wrongfully set to 'error'
* N°3795 - Add constants for severity
* N°3795 - Simplify API consumption
* N°3795 - Allows to pass more options when consuming API
* Rebase onto develop
* Use exit condition instead of englobing condition
* Add informative modals that can be called from modal toolbox
* Refactor "apply_modify" and "apply_new" into own controller, handle ajax requests with a json response and handle these responses in linkset creation/edition
* Fix merge issues
* Remove inverted condition
* Move linkset create button to a better place, still needs to fix duplicate "New" button caused by a refactor
* Handle "Cancel" button in modals
* Do not display relations when editing an object in a modal
* More elegant way to add "New" button to relations lists
* Factorize vertical highlights in alerts and modal in a single mixin
* Replace button name with dict entry code
* Change route name to snake case
* More elegant way to add "Create in modal" button to relations lists
* Replace triple if with in_array
* Move listener to body
* Rename variable to match boolean rules
* Rename event
* Rename extra param
* Add phpdoc
* Revert changes
* Check indirect linkset rights before allowing creation in modal
This specific query passes attcodes list to display to UI.php, but this endpoint doesn't handle it yet. Adding this enhancements would require too much time for now (datatables legacy code), hopefully a refactoring work will be done soon and we'll get back to it !
Note that dedicated ContextTag is renamed from Search to ObjectSearch
This is a way to solve problems when an object ref and id isn't equals : for example id=99 and ref = 100.
This could happen since iTop 2.7.0, see https://www.itophub.io/wiki/page?id=2_7_0%3Arelease%3A2_7_whats_new#ticket_ref_generation
Note that id parameter can be set to the object's friendlyname as a workaround, but this might not be enough for some objects where friendlyname contains more that the ref field (for example title, org, ...)
* Admin console : new UI.php URL parameters : attcode and attvalue.
Example URLs :
/pages/UI.php?operation=details&class=UserRequest&id=99
/pages/UI.php?operation=details&class=UserRequest&attcode=ref&attvalue=R-000100
An exception will be thrown if no object is found or multiple instances are.
* User portal
New route : /object/view/{sObjectClass}/{sObjectAttCode}/{sObjectAttValue}
For example :
/pages/exec.php/object/view/UserRequest/99?exec_module=itop-portal-base&exec_page=index.php&portal_id=itop-portal
/pages/exec.php/object/view/UserRequest/ref/R-000100?exec_module=itop-portal-base&exec_page=index.php&portal_id=itop-portal
On error we will get a 404 error page
* Restore prototypes of cmdbAbstractObject methods in which we added $sMode to preserve compatibility with existing extensions
* Rename cmdbAbstractObject::ENUM_OBJECT_MODE_XXX
* Add cmdbAbstractObject::ENUM_OBJECT_MODE_BULK_EDIT
* Refactor usage of $sDisplayMode in cmdbAbstractObject::DisplayModifyForm()