Refactor plugin_tracker_permission_process_update_tracker_permissions

In a few words:

  * Break the various cases in a chain of responsability:
    anonymous -> registered -> all groups

  * Use const instead of magic numbers where possible

  * Remove cases that were not possible (the code was dealing with registered
    or anonymous with "ASSIGNEE" permissions while the interface doesn't
    provide this possibility and, worst, it makes no sense for those special
    groups)

Change-Id: Ifed67adaa830d18aafe9ad913fdd09869115802c
Refactor display of "Manage Tracker Permissions" panel

Introduce controller and presenter
Centralize const and use them for both rendering and processing

Change-Id: Ia0b4bd5c127112043d72b256190000a038beb8e5
Extract permissions checking into dedicated class

Change-Id: I0da5e9b8f8a5c8e2c1fe724bd135db7b763d2f41
Implements SUBMITTER_ONLY permission

- Display the new value
- Check it if set
- Persist in DB

Major overhaul of DB persistance: Anonymous and Registered class now completly
handle the permission cascade.

Change-Id: Ibb9e5aa8fbaf251d53f867e2e9ec4b261538f0e1
Tracker admin and project admin can see all artifacts

Change-Id: I4483e3a178d328527cf2d884e9ee32963a00ffad
Take permissions into account in report

Change-Id: I3ce50e731bf1a0182b56dab01ca30fd2bce3ea8f
Only display items we can see in backlog

Change-Id: I797569425e74008cafcc16ec4a24087144c45122
Fix fatal error on GET /artifacts/:id route

Change-Id: I7ffc67f4d28173d8f057ba215aca4db91feebc0a
slight refactoring of method and classes involving permissions

Change-Id: I1fb8d08b434da21b44fe7091a3dda85858cf8b2b
Fix application of permission checking in report

SUBMITTED_ONLY will only apply if no other permission can override its
behaviour

Change-Id: I1b41bcecd9dd41b450dfda4945d3687c779d832b
Add error message when trying to set permission without contributor semantic

Change-Id: I7370df55711c6a5cc105db1be1c87ac903ae56e6
Project admins have full access to tracker without specific configuration

Change-Id: I029a94729bd178c004ff1ce97d9b98e9988f0022
Fix usage of permissions to use SUBMITTER_ONLY where it's needed

Fix XML import
Fix tracker duplicate

Change-Id: I787a38f97c02d3938a6dbdbd9fd40d5cd6b659c7
Fix bug: check field value exists before manipulating it(demeter)

Change-Id: I30aefc4f4bc7e0beda8657d52c093f22d40622e6
Merge remote-tracking branch 'gerrit/5331_tracker_permissions_self' into tuleap-stable-master

* gerrit/5331_tracker_permissions_self:
  Fix bug: check field value exists before manipulating it(demeter)
  Fix usage of permissions to use SUBMITTER_ONLY where it's needed
  Project admins have full access to tracker without specific configuration
  Add error message when trying to set permission without contributor semantic
  Fix application of permission checking in report
  slight refactoring of method and classes involving permissions
  Fix fatal error on GET /artifacts/:id route
  Only display items we can see in backlog
  Take permissions into account in report
  Tracker admin and project admin can see all artifacts
  Implements SUBMITTER_ONLY permission
  Extract permissions checking into dedicated class
  Refactor display of "Manage Tracker Permissions" panel
  Refactor plugin_tracker_permission_process_update_tracker_permissions

Conflicts:
	plugins/agiledashboard/include/autoload.php
	plugins/tracker/include/autoload.php

Change-Id: I4e47a5bb4de478db3f33be08e56b306be168558b
Tuleap 6.7.99.19

Change-Id: I4ce985b5c2b76cd38faf8c71372a0dadcf9320d6