Goal

Refers to this ticket #1596

Specify actions to be made when an asset is remplaced by another one

TODO
  • Add new right "Standard replacement"
  • Add an option to specify what kind of model it is : new model type (Uninstall / Replacement)
    • Change form display if it's replacement
    • Display a form of fields to copy :
      • General informations of itemtype (name, serial, otherserial)
      • Documents for itemtype in CFG_GLPI["doc_types"]
      • Contracts for itemtype in CFG_GLPI["contract_types"]
      • Infocoms for itemtype in CFG_GLPI["infocom_types"]
      • Reservations for itemtype in CFG_GLPI["reservation_types"]
      • Users for itemtype in CFG_GLPI["linkuser_types"]
      • Groups for itemptype in CFG_GLPI["linkgroup_types"]
      • Tickets for itemtype in CFG_GLPI["helpdesk_types"]
      • NetPorts for itemtype in $CFG_GLPI["netport_types"]
      • Direct connections for Computer
    • Display on option for each field to copy if system can overwrite information :
      • If overwrite is ON : each information from OLD asset are put in NEW asset regardless of whether it is already present
      • If overwrite is OFF : each information from OLD asset are put in NEW asset if is not already present
  • Add an option for choose what METHOD to use for Replace :
    • Purge : OLD asset is purged in database, and archived in CSV/PDF in attached document of the NEW asset.
    • Conserve : OLD asset is marked as "is_deleted" and add in comment field (for both) : "This object was replaced by name+serial+otherserial" and "This object is a replacement for object name+serial+otherserial"
  • Add "Date of replacement" in Comment and History in both (or just NEW) asset
  • Add new Pref field for choose PDF type (landscape / portrait)
  • User can specify new states for the new item
PDF Features
  • The PDF feature need "Plugin PDF" : it's good idea ?
    Walid :
    • PDF plugin already exports a computer and his linked items in a PDF. So it's a good idea to use it
    • Need to check if PDF plugin is installed and activated. If yes, then propose the option in the model's configuration page. If not, then hide the option (or just mark it as not editable and set to no by default)