diff --git a/core/cmdbsource.class.inc.php b/core/cmdbsource.class.inc.php index 21702a68a..6a1127ea0 100644 --- a/core/cmdbsource.class.inc.php +++ b/core/cmdbsource.class.inc.php @@ -375,6 +375,11 @@ class CMDBSource return mysqli_num_rows($result); } + public static function AffectedRows() + { + return mysqli_affected_rows(self::$m_resDBLink); + } + public static function FetchArray($result) { return mysqli_fetch_array($result, MYSQLI_ASSOC); diff --git a/datamodels/2.x/installation.xml b/datamodels/2.x/installation.xml index 67b88f346..0ed3a59ba 100755 --- a/datamodels/2.x/installation.xml +++ b/datamodels/2.x/installation.xml @@ -147,7 +147,7 @@ Additional ITIL tickets - Pick from the list below the additional ITIl processes that are to be implemented in iTop.]]> + Pick from the list below the additional ITIL processes that are to be implemented in iTop.]]> ./itop-knownerror-mgmt/images/known-error.png diff --git a/datamodels/2.x/itop-config-mgmt/data.sample.dbserver.xml b/datamodels/2.x/itop-config-mgmt/data.sample.dbserver.xml index 5496f8aaa..35216440d 100755 --- a/datamodels/2.x/itop-config-mgmt/data.sample.dbserver.xml +++ b/datamodels/2.x/itop-config-mgmt/data.sample.dbserver.xml @@ -1,6 +1,6 @@ - + Oracle 2 @@ -11,5 +11,5 @@ 0 - + diff --git a/datamodels/2.x/itop-config-mgmt/data.sample.model.xml b/datamodels/2.x/itop-config-mgmt/data.sample.model.xml index fc0b0021c..8c934e7c5 100755 --- a/datamodels/2.x/itop-config-mgmt/data.sample.model.xml +++ b/datamodels/2.x/itop-config-mgmt/data.sample.model.xml @@ -3,16 +3,16 @@ Cisco 6500 10 -NetworkDevice +NetworkDevice DL380 1 -Server +Server Procurve 2450 1 -NetworkDevice +NetworkDevice diff --git a/datamodels/2.x/itop-config-mgmt/data.sample.osfamily.xml b/datamodels/2.x/itop-config-mgmt/data.sample.osfamily.xml index e2dbb6cc8..ed48e4f80 100755 --- a/datamodels/2.x/itop-config-mgmt/data.sample.osfamily.xml +++ b/datamodels/2.x/itop-config-mgmt/data.sample.osfamily.xml @@ -1,9 +1,9 @@ - + Linux - - + + Windows - + diff --git a/datamodels/2.x/itop-config-mgmt/data.sample.osversion.xml b/datamodels/2.x/itop-config-mgmt/data.sample.osversion.xml index 12beb170b..37e851d37 100755 --- a/datamodels/2.x/itop-config-mgmt/data.sample.osversion.xml +++ b/datamodels/2.x/itop-config-mgmt/data.sample.osversion.xml @@ -1,11 +1,11 @@ - + Unbuntu 11.10 7 - - + + Windows 2008 Server 3 - + diff --git a/datamodels/2.x/itop-config-mgmt/data.sample.software.xml b/datamodels/2.x/itop-config-mgmt/data.sample.software.xml index da8079184..9dc808217 100755 --- a/datamodels/2.x/itop-config-mgmt/data.sample.software.xml +++ b/datamodels/2.x/itop-config-mgmt/data.sample.software.xml @@ -4,12 +4,12 @@ MySql Oracle 5.3 -DBserver +DBServer Oracle DB engine Oracle 11i -DBserver +DBServer diff --git a/datamodels/2.x/itop-config-mgmt/data.sample.webserver.xml b/datamodels/2.x/itop-config-mgmt/data.sample.webserver.xml index b8978cc10..8e81a4590 100755 --- a/datamodels/2.x/itop-config-mgmt/data.sample.webserver.xml +++ b/datamodels/2.x/itop-config-mgmt/data.sample.webserver.xml @@ -1,6 +1,6 @@ - + IIS 2 @@ -11,5 +11,5 @@ 0 active - + diff --git a/datamodels/2.x/itop-config-mgmt/datamodel.itop-config-mgmt.xml b/datamodels/2.x/itop-config-mgmt/datamodel.itop-config-mgmt.xml index f8ac580a3..a1c8ee82e 100755 --- a/datamodels/2.x/itop-config-mgmt/datamodel.itop-config-mgmt.xml +++ b/datamodels/2.x/itop-config-mgmt/datamodel.itop-config-mgmt.xml @@ -1523,7 +1523,7 @@ name - brand_id AND Type=:this->finalclass]]> + brand_id AND type=:this->finalclass]]> @@ -2201,7 +2201,7 @@ iosversion_id - IOSversion + IOSVersion true DEL_MANUAL @@ -2466,7 +2466,7 @@ osfamily_id - OSfamily + OSFamily true DEL_MANUAL @@ -2475,12 +2475,12 @@ name - osfamily_id]]> + osfamily_id]]> osversion_id - OSversion + OSVersion true DEL_MANUAL @@ -2489,12 +2489,12 @@ name - osversion_id]]> + osversion_id]]> oslicence_id - OsLicence + OSLicence true DEL_MANUAL @@ -3404,7 +3404,7 @@ - + SoftwareInstance bizmodel,searchable @@ -3560,7 +3560,7 @@ - + SoftwareInstance bizmodel,searchable @@ -4118,7 +4118,7 @@ dbserver_id - DBserver + DBServer false DEL_MANUAL @@ -4144,7 +4144,7 @@ case 'depends on': $aRels = array( - "DBserver" => array("sQuery"=>"SELECT DBserver WHERE id = :this->dbserver_id", "bPropagate"=>true, "iDistance"=>10), + "DBServer" => array("sQuery"=>"SELECT DBServer WHERE id = :this->dbserver_id", "bPropagate"=>true, "iDistance"=>10), ); return array_merge($aRels, parent::GetRelationQueries($sRelCode)); @@ -4256,7 +4256,7 @@ webserver_id - Webserver + WebServer false DEL_MANUAL @@ -4288,7 +4288,7 @@ case 'depends on': $aRels = array( - "Webserver" => array("sQuery"=>"SELECT Webserver WHERE id = :this->webserver_id", "bPropagate"=>true, "iDistance"=>10), + "WebServer" => array("sQuery"=>"SELECT WebServer WHERE id = :this->webserver_id", "bPropagate"=>true, "iDistance"=>10), ); return array_merge($aRels, parent::GetRelationQueries($sRelCode)); @@ -4426,10 +4426,10 @@ Middleware - DBserver + DBServer PCSoftware OtherSoftware - Webserver + WebServer type @@ -4596,7 +4596,7 @@ - + Patch bizmodel,searchable @@ -4621,7 +4621,7 @@ - lnkFunctionalCIToOSpatch + lnkFunctionalCIToOSPatch ospatch_id 0 0 @@ -4630,7 +4630,7 @@ osversion_id - OSversion + OSVersion false DEL_MANUAL @@ -4922,7 +4922,7 @@ - + Licence bizmodel,searchable @@ -4950,7 +4950,7 @@ osversion_id - OSversion + OSVersion false DEL_MANUAL @@ -5317,7 +5317,7 @@ - + Typology bizmodel,searchable @@ -5345,7 +5345,7 @@ osfamily_id - OSfamily + OSFamily false DEL_MANUAL @@ -5385,7 +5385,7 @@ - + Typology bizmodel,searchable @@ -5615,7 +5615,7 @@ - + @@ -5630,11 +5630,11 @@ brand_id name - + NetworkDevice Server - SANswitch + SANSwitch StorageSystem Rack Enclosure @@ -5646,7 +5646,7 @@ DiskArray NAS TapeLibrary - IpPhone + IPPhone Peripheral PowerSource PDU @@ -5675,7 +5675,7 @@ 20 - + 30 @@ -5688,7 +5688,7 @@ 10 - + 20 @@ -5701,7 +5701,7 @@ 20 - + 30 @@ -5769,7 +5769,7 @@ - + Typology bizmodel,searchable @@ -6002,7 +6002,7 @@ - + cmdbAbstractObject 1 @@ -6031,7 +6031,7 @@ ospatch_id - OSpatch + OSPatch false DEL_AUTO @@ -6408,7 +6408,7 @@ $oPage->p(Dict::Format('Class:Subnet/Tab:IPUsage-explain', $sIPMin, $sIPMax)); - $oIfFilter = DBObjectSearch::FromOQL("SELECT IPinterface AS if WHERE INET_ATON(if.ipaddress) >= INET_ATON('$sIPMin') AND INET_ATON(if.ipaddress) <= INET_ATON('$sIPMax')"); + $oIfFilter = DBObjectSearch::FromOQL("SELECT IPInterface AS if WHERE INET_ATON(if.ipaddress) >= INET_ATON('$sIPMin') AND INET_ATON(if.ipaddress) <= INET_ATON('$sIPMax')"); $oIfSet = new CMDBObjectSet($oIfFilter); $oBlock = new DisplayBlock($oIfFilter, 'list', false); $oBlock->Display($oPage, 'nwif', array('menu' => false)); @@ -6547,7 +6547,7 @@ - + NetworkInterface bizmodel,searchable @@ -6678,7 +6678,7 @@ - IPinterface + IPInterface bizmodel,searchable false @@ -7659,11 +7659,11 @@ 2 - DBserver + DBServer 3 - Webserver + WebServer 4 @@ -7825,15 +7825,15 @@ 3 - OSfamily + OSFamily 4 - OSversion + OSVersion 5 - IOSversion + IOSVersion 6 diff --git a/datamodels/2.x/itop-config-mgmt/de.dict.itop-config-mgmt.php b/datamodels/2.x/itop-config-mgmt/de.dict.itop-config-mgmt.php index 53c8649a8..16fd5d297 100755 --- a/datamodels/2.x/itop-config-mgmt/de.dict.itop-config-mgmt.php +++ b/datamodels/2.x/itop-config-mgmt/de.dict.itop-config-mgmt.php @@ -327,7 +327,7 @@ Dict::Add('DE DE', 'German', 'Deutsch', array( Dict::Add('DE DE', 'German', 'Deutsch', array( 'Class:ExternalDoc' => 'Externes Dokument', - 'Class:ExternalDoc+' => 'Das Dokument ist auf einem anderen Webserver verfügbar', + 'Class:ExternalDoc+' => 'Das Dokument ist auf einem anderen WebServer verfügbar', 'Class:ExternalDoc/Attribute:url' => 'URL', 'Class:ExternalDoc/Attribute:url+' => '', )); diff --git a/datamodels/2.x/itop-config-mgmt/en.dict.itop-config-mgmt.php b/datamodels/2.x/itop-config-mgmt/en.dict.itop-config-mgmt.php index a0deb04f7..1c75b7aac 100755 --- a/datamodels/2.x/itop-config-mgmt/en.dict.itop-config-mgmt.php +++ b/datamodels/2.x/itop-config-mgmt/en.dict.itop-config-mgmt.php @@ -415,12 +415,12 @@ Dict::Add('EN US', 'English', 'English', array( )); // -// Class: IpPhone +// Class: IPPhone // Dict::Add('EN US', 'English', 'English', array( - 'Class:IpPhone' => 'IP Phone', - 'Class:IpPhone+' => '', + 'Class:IPPhone' => 'IP Phone', + 'Class:IPPhone+' => '', )); // @@ -746,25 +746,25 @@ Dict::Add('EN US', 'English', 'English', array( )); // -// Class: DBserver +// Class: DBServer // Dict::Add('EN US', 'English', 'English', array( - 'Class:DBserver' => 'DB server', - 'Class:DBserver+' => '', - 'Class:DBserver/Attribute:dbschema_list' => 'DB schemas', - 'Class:DBserver/Attribute:dbschema_list+' => '', + 'Class:DBServer' => 'DB Server', + 'Class:DBServer+' => '', + 'Class:DBServer/Attribute:dbschema_list' => 'DB schemas', + 'Class:DBServer/Attribute:dbschema_list+' => '', )); // -// Class: Webserver +// Class: WebServer // Dict::Add('EN US', 'English', 'English', array( - 'Class:Webserver' => 'Web server', - 'Class:Webserver+' => '', - 'Class:Webserver/Attribute:webapp_list' => 'Web applications', - 'Class:Webserver/Attribute:webapp_list+' => '', + 'Class:WebServer' => 'Web server', + 'Class:WebServer+' => '', + 'Class:WebServer/Attribute:webapp_list' => 'Web applications', + 'Class:WebServer/Attribute:webapp_list+' => '', )); // @@ -772,7 +772,7 @@ Dict::Add('EN US', 'English', 'English', array( // Dict::Add('EN US', 'English', 'English', array( - 'Class:PCSoftware' => 'PC software', + 'Class:PCSoftware' => 'PC Software', 'Class:PCSoftware+' => '', )); @@ -987,7 +987,7 @@ Dict::Add('EN US', 'English', 'English', array( // Dict::Add('EN US', 'English', 'English', array( - 'Class:lnkSanToDatacenterDevice' => 'Link San/ Datacenter Device', + 'Class:lnkSanToDatacenterDevice' => 'Link SAN / Datacenter Device', 'Class:lnkSanToDatacenterDevice+' => '', 'Class:lnkSanToDatacenterDevice/Attribute:san_id' => 'SAN switch', 'Class:lnkSanToDatacenterDevice/Attribute:san_id+' => '', @@ -1023,24 +1023,24 @@ Dict::Add('EN US', 'English', 'English', array( )); // -// Class: NasFileSystem +// Class: NASFileSystem // Dict::Add('EN US', 'English', 'English', array( - 'Class:NasFileSystem' => 'NAS FileSystem', - 'Class:NasFileSystem+' => '', - 'Class:NasFileSystem/Attribute:name' => 'Name', - 'Class:NasFileSystem/Attribute:name+' => '', - 'Class:NasFileSystem/Attribute:description' => 'Description', - 'Class:NasFileSystem/Attribute:description+' => '', - 'Class:NasFileSystem/Attribute:raid_level' => 'Raid level', - 'Class:NasFileSystem/Attribute:raid_level+' => '', - 'Class:NasFileSystem/Attribute:size' => 'Size', - 'Class:NasFileSystem/Attribute:size+' => '', - 'Class:NasFileSystem/Attribute:nas_id' => 'NAS', - 'Class:NasFileSystem/Attribute:nas_id+' => '', - 'Class:NasFileSystem/Attribute:nas_name' => 'NAS name', - 'Class:NasFileSystem/Attribute:nas_name+' => '', + 'Class:NASFileSystem' => 'NAS File System', + 'Class:NASFileSystem+' => '', + 'Class:NASFileSystem/Attribute:name' => 'Name', + 'Class:NASFileSystem/Attribute:name+' => '', + 'Class:NASFileSystem/Attribute:description' => 'Description', + 'Class:NASFileSystem/Attribute:description+' => '', + 'Class:NASFileSystem/Attribute:raid_level' => 'Raid level', + 'Class:NASFileSystem/Attribute:raid_level+' => '', + 'Class:NASFileSystem/Attribute:size' => 'Size', + 'Class:NASFileSystem/Attribute:size+' => '', + 'Class:NASFileSystem/Attribute:nas_id' => 'NAS', + 'Class:NASFileSystem/Attribute:nas_id+' => '', + 'Class:NASFileSystem/Attribute:nas_name' => 'NAS name', + 'Class:NASFileSystem/Attribute:nas_name+' => '', )); // @@ -1060,21 +1060,21 @@ Dict::Add('EN US', 'English', 'English', array( 'Class:Software/Attribute:documents_list+' => '', 'Class:Software/Attribute:type' => 'Type', 'Class:Software/Attribute:type+' => '', - 'Class:Software/Attribute:type/Value:DBserver' => 'DB server', - 'Class:Software/Attribute:type/Value:DBserver+' => 'DB server', + 'Class:Software/Attribute:type/Value:DBServer' => 'DB Server', + 'Class:Software/Attribute:type/Value:DBServer+' => 'DB Server', 'Class:Software/Attribute:type/Value:Middleware' => 'Middleware', 'Class:Software/Attribute:type/Value:Middleware+' => 'Middleware', 'Class:Software/Attribute:type/Value:OtherSoftware' => 'Other Software', 'Class:Software/Attribute:type/Value:OtherSoftware+' => 'Other Software', - 'Class:Software/Attribute:type/Value:PCSoftware' => 'PC software', - 'Class:Software/Attribute:type/Value:PCSoftware+' => 'PC software', - 'Class:Software/Attribute:type/Value:Webserver' => 'Web server', - 'Class:Software/Attribute:type/Value:Webserver+' => 'Web server', - 'Class:Software/Attribute:softwareinstance_list' => 'Software instances', + 'Class:Software/Attribute:type/Value:PCSoftware' => 'PC Software', + 'Class:Software/Attribute:type/Value:PCSoftware+' => 'PC Software', + 'Class:Software/Attribute:type/Value:WebServer' => 'Web Server', + 'Class:Software/Attribute:type/Value:WebServer+' => 'Web Server', + 'Class:Software/Attribute:softwareinstance_list' => 'Software Instances', 'Class:Software/Attribute:softwareinstance_list+' => '', - 'Class:Software/Attribute:softwarepatch_list' => 'Software patches', + 'Class:Software/Attribute:softwarepatch_list' => 'Software Patches', 'Class:Software/Attribute:softwarepatch_list+' => '', - 'Class:Software/Attribute:softwarelicence_list' => 'Software licences', + 'Class:Software/Attribute:softwarelicence_list' => 'Software Licences', 'Class:Software/Attribute:softwarelicence_list+' => '', )); @@ -1096,18 +1096,18 @@ Dict::Add('EN US', 'English', 'English', array( )); // -// Class: OSpatch +// Class: OSPatch // Dict::Add('EN US', 'English', 'English', array( - 'Class:OSpatch' => 'OS patch', - 'Class:OSpatch+' => '', - 'Class:OSpatch/Attribute:functionalcis_list' => 'Devices', - 'Class:OSpatch/Attribute:functionalcis_list+' => '', - 'Class:OSpatch/Attribute:osversion_id' => 'OS version', - 'Class:OSpatch/Attribute:osversion_id+' => '', - 'Class:OSpatch/Attribute:osversion_name' => 'OS version name', - 'Class:OSpatch/Attribute:osversion_name+' => '', + 'Class:OSPatch' => 'OS Patch', + 'Class:OSPatch+' => '', + 'Class:OSPatch/Attribute:functionalcis_list' => 'Devices', + 'Class:OSPatch/Attribute:functionalcis_list+' => '', + 'Class:OSPatch/Attribute:osversion_id' => 'OS version', + 'Class:OSPatch/Attribute:osversion_id+' => '', + 'Class:OSPatch/Attribute:osversion_name' => 'OS version name', + 'Class:OSPatch/Attribute:osversion_name+' => '', )); // @@ -1155,20 +1155,20 @@ Dict::Add('EN US', 'English', 'English', array( )); // -// Class: OsLicence +// Class: OSLicence // Dict::Add('EN US', 'English', 'English', array( - 'Class:OsLicence' => 'OS Licence', - 'Class:OsLicence+' => '', - 'Class:OsLicence/Attribute:osversion_id' => 'OS version', - 'Class:OsLicence/Attribute:osversion_id+' => '', - 'Class:OsLicence/Attribute:osversion_name' => 'OS version name', - 'Class:OsLicence/Attribute:osversion_name+' => '', - 'Class:OsLicence/Attribute:virtualmachines_list' => 'Virtual machines', - 'Class:OsLicence/Attribute:virtualmachines_list+' => '', - 'Class:OsLicence/Attribute:servers_list' => 'servers', - 'Class:OsLicence/Attribute:servers_list+' => '', + 'Class:OSLicence' => 'OS Licence', + 'Class:OSLicence+' => '', + 'Class:OSLicence/Attribute:osversion_id' => 'OS version', + 'Class:OSLicence/Attribute:osversion_id+' => '', + 'Class:OSLicence/Attribute:osversion_name' => 'OS version name', + 'Class:OSLicence/Attribute:osversion_name+' => '', + 'Class:OSLicence/Attribute:virtualmachines_list' => 'Virtual machines', + 'Class:OSLicence/Attribute:virtualmachines_list+' => '', + 'Class:OSLicence/Attribute:servers_list' => 'servers', + 'Class:OSLicence/Attribute:servers_list+' => '', )); // @@ -1217,25 +1217,25 @@ Dict::Add('EN US', 'English', 'English', array( )); // -// Class: OSversion +// Class: OSVersion // Dict::Add('EN US', 'English', 'English', array( - 'Class:OSversion' => 'OS version', - 'Class:OSversion+' => '', - 'Class:OSversion/Attribute:osfamily_id' => 'OS family', - 'Class:OSversion/Attribute:osfamily_id+' => '', - 'Class:OSversion/Attribute:osfamily_name' => 'OS family name', - 'Class:OSversion/Attribute:osfamily_name+' => '', + 'Class:OSVersion' => 'OS Version', + 'Class:OSVersion+' => '', + 'Class:OSVersion/Attribute:osfamily_id' => 'OS family', + 'Class:OSVersion/Attribute:osfamily_id+' => '', + 'Class:OSVersion/Attribute:osfamily_name' => 'OS family name', + 'Class:OSVersion/Attribute:osfamily_name+' => '', )); // -// Class: OSfamily +// Class: OSFamily // Dict::Add('EN US', 'English', 'English', array( - 'Class:OSfamily' => 'OS family', - 'Class:OSfamily+' => '', + 'Class:OSFamily' => 'OS Family', + 'Class:OSFamily+' => '', )); // @@ -1278,44 +1278,44 @@ Dict::Add('EN US', 'English', 'English', array( 'Class:Model/Attribute:brand_id+' => '', 'Class:Model/Attribute:brand_name' => 'Brand name', 'Class:Model/Attribute:brand_name+' => '', - 'Class:Model/Attribute:Type' => 'Device type', - 'Class:Model/Attribute:Type+' => '', - 'Class:Model/Attribute:Type/Value:PowerSource' => 'Power Source', - 'Class:Model/Attribute:Type/Value:PowerSource+' => 'Power Source', - 'Class:Model/Attribute:Type/Value:DiskArray' => 'Disk Array', - 'Class:Model/Attribute:Type/Value:DiskArray+' => 'Disk Array', - 'Class:Model/Attribute:Type/Value:Enclosure' => 'Enclosure', - 'Class:Model/Attribute:Type/Value:Enclosure+' => 'Enclosure', - 'Class:Model/Attribute:Type/Value:IpPhone' => 'Ip Phone', - 'Class:Model/Attribute:Type/Value:IpPhone+' => 'Ip Phone', - 'Class:Model/Attribute:Type/Value:MobilePhone' => 'Mobile Phone', - 'Class:Model/Attribute:Type/Value:MobilePhone+' => 'Mobile Phone', - 'Class:Model/Attribute:Type/Value:NAS' => 'NAS', - 'Class:Model/Attribute:Type/Value:NAS+' => 'NAS', - 'Class:Model/Attribute:Type/Value:NetworkDevice' => 'Network Device', - 'Class:Model/Attribute:Type/Value:NetworkDevice+' => 'Network Device', - 'Class:Model/Attribute:Type/Value:PC' => 'PC', - 'Class:Model/Attribute:Type/Value:PC+' => 'PC', - 'Class:Model/Attribute:Type/Value:PDU' => 'PDU', - 'Class:Model/Attribute:Type/Value:PDU+' => 'PDU', - 'Class:Model/Attribute:Type/Value:Peripheral' => 'Peripheral', - 'Class:Model/Attribute:Type/Value:Peripheral+' => 'Peripheral', - 'Class:Model/Attribute:Type/Value:Printer' => 'Printer', - 'Class:Model/Attribute:Type/Value:Printer+' => 'Printer', - 'Class:Model/Attribute:Type/Value:Rack' => 'Rack', - 'Class:Model/Attribute:Type/Value:Rack+' => 'Rack', - 'Class:Model/Attribute:Type/Value:SANswitch' => 'SAN switch', - 'Class:Model/Attribute:Type/Value:SANswitch+' => 'SAN switch', - 'Class:Model/Attribute:Type/Value:Server' => 'Server', - 'Class:Model/Attribute:Type/Value:Server+' => 'Server', - 'Class:Model/Attribute:Type/Value:StorageSystem' => 'Storage System', - 'Class:Model/Attribute:Type/Value:StorageSystem+' => 'Storage System', - 'Class:Model/Attribute:Type/Value:Tablet' => 'Tablet', - 'Class:Model/Attribute:Type/Value:Tablet+' => 'Tablet', - 'Class:Model/Attribute:Type/Value:TapeLibrary' => 'Tape Library', - 'Class:Model/Attribute:Type/Value:TapeLibrary+' => 'Tape Library', - 'Class:Model/Attribute:Type/Value:Telephone' => 'Telephone', - 'Class:Model/Attribute:Type/Value:Telephone+' => 'Telephone', + 'Class:Model/Attribute:type' => 'Device type', + 'Class:Model/Attribute:type+' => '', + 'Class:Model/Attribute:type/Value:PowerSource' => 'Power Source', + 'Class:Model/Attribute:type/Value:PowerSource+' => 'Power Source', + 'Class:Model/Attribute:type/Value:DiskArray' => 'Disk Array', + 'Class:Model/Attribute:type/Value:DiskArray+' => 'Disk Array', + 'Class:Model/Attribute:type/Value:Enclosure' => 'Enclosure', + 'Class:Model/Attribute:type/Value:Enclosure+' => 'Enclosure', + 'Class:Model/Attribute:type/Value:IPPhone' => 'IP Phone', + 'Class:Model/Attribute:type/Value:IPPhone+' => 'IP Phone', + 'Class:Model/Attribute:type/Value:MobilePhone' => 'Mobile Phone', + 'Class:Model/Attribute:type/Value:MobilePhone+' => 'Mobile Phone', + 'Class:Model/Attribute:type/Value:NAS' => 'NAS', + 'Class:Model/Attribute:type/Value:NAS+' => 'NAS', + 'Class:Model/Attribute:type/Value:NetworkDevice' => 'Network Device', + 'Class:Model/Attribute:type/Value:NetworkDevice+' => 'Network Device', + 'Class:Model/Attribute:type/Value:PC' => 'PC', + 'Class:Model/Attribute:type/Value:PC+' => 'PC', + 'Class:Model/Attribute:type/Value:PDU' => 'PDU', + 'Class:Model/Attribute:type/Value:PDU+' => 'PDU', + 'Class:Model/Attribute:type/Value:Peripheral' => 'Peripheral', + 'Class:Model/Attribute:type/Value:Peripheral+' => 'Peripheral', + 'Class:Model/Attribute:type/Value:Printer' => 'Printer', + 'Class:Model/Attribute:type/Value:Printer+' => 'Printer', + 'Class:Model/Attribute:type/Value:Rack' => 'Rack', + 'Class:Model/Attribute:type/Value:Rack+' => 'Rack', + 'Class:Model/Attribute:type/Value:SANSwitch' => 'SAN switch', + 'Class:Model/Attribute:type/Value:SANSwitch+' => 'SAN switch', + 'Class:Model/Attribute:type/Value:Server' => 'Server', + 'Class:Model/Attribute:type/Value:Server+' => 'Server', + 'Class:Model/Attribute:type/Value:StorageSystem' => 'Storage System', + 'Class:Model/Attribute:type/Value:StorageSystem+' => 'Storage System', + 'Class:Model/Attribute:type/Value:Tablet' => 'Tablet', + 'Class:Model/Attribute:type/Value:Tablet+' => 'Tablet', + 'Class:Model/Attribute:type/Value:TapeLibrary' => 'Tape Library', + 'Class:Model/Attribute:type/Value:TapeLibrary+' => 'Tape Library', + 'Class:Model/Attribute:type/Value:Telephone' => 'Telephone', + 'Class:Model/Attribute:type/Value:Telephone+' => 'Telephone', 'Class:Model/Attribute:physicaldevices_list' => 'Physical devices', 'Class:Model/Attribute:physicaldevices_list+' => '', )); @@ -1332,16 +1332,16 @@ Dict::Add('EN US', 'English', 'English', array( )); // -// Class: IOSversion +// Class: IOSVersion // Dict::Add('EN US', 'English', 'English', array( - 'Class:IOSversion' => 'IOS version', - 'Class:IOSversion+' => '', - 'Class:IOSversion/Attribute:brand_id' => 'Brand', - 'Class:IOSversion/Attribute:brand_id+' => '', - 'Class:IOSversion/Attribute:brand_name' => 'Brand name', - 'Class:IOSversion/Attribute:brand_name+' => '', + 'Class:IOSVersion' => 'IOS Version', + 'Class:IOSVersion+' => '', + 'Class:IOSVersion/Attribute:brand_id' => 'Brand', + 'Class:IOSVersion/Attribute:brand_id+' => '', + 'Class:IOSVersion/Attribute:brand_name' => 'Brand name', + 'Class:IOSVersion/Attribute:brand_name+' => '', )); // @@ -1379,20 +1379,20 @@ Dict::Add('EN US', 'English', 'English', array( )); // -// Class: lnkFunctionalCIToOSpatch +// Class: lnkFunctionalCIToOSPatch // Dict::Add('EN US', 'English', 'English', array( - 'Class:lnkFunctionalCIToOSpatch' => 'Link FunctionalCI / OS patch', - 'Class:lnkFunctionalCIToOSpatch+' => '', - 'Class:lnkFunctionalCIToOSpatch/Attribute:ospatch_id' => 'OS patch', - 'Class:lnkFunctionalCIToOSpatch/Attribute:ospatch_id+' => '', - 'Class:lnkFunctionalCIToOSpatch/Attribute:ospatch_name' => 'OS patch name', - 'Class:lnkFunctionalCIToOSpatch/Attribute:ospatch_name+' => '', - 'Class:lnkFunctionalCIToOSpatch/Attribute:functionalci_id' => 'Functionalci', - 'Class:lnkFunctionalCIToOSpatch/Attribute:functionalci_id+' => '', - 'Class:lnkFunctionalCIToOSpatch/Attribute:functionalci_name' => 'Functionalci name', - 'Class:lnkFunctionalCIToOSpatch/Attribute:functionalci_name+' => '', + 'Class:lnkFunctionalCIToOSPatch' => 'Link FunctionalCI / OS patch', + 'Class:lnkFunctionalCIToOSPatch+' => '', + 'Class:lnkFunctionalCIToOSPatch/Attribute:ospatch_id' => 'OS patch', + 'Class:lnkFunctionalCIToOSPatch/Attribute:ospatch_id+' => '', + 'Class:lnkFunctionalCIToOSPatch/Attribute:ospatch_name' => 'OS patch name', + 'Class:lnkFunctionalCIToOSPatch/Attribute:ospatch_name+' => '', + 'Class:lnkFunctionalCIToOSPatch/Attribute:functionalci_id' => 'Functionalci', + 'Class:lnkFunctionalCIToOSPatch/Attribute:functionalci_id+' => '', + 'Class:lnkFunctionalCIToOSPatch/Attribute:functionalci_name' => 'Functionalci name', + 'Class:lnkFunctionalCIToOSPatch/Attribute:functionalci_name+' => '', )); // @@ -1479,24 +1479,24 @@ Dict::Add('EN US', 'English', 'English', array( )); // -// Class: IPinterface +// Class: IPInterface // Dict::Add('EN US', 'English', 'English', array( - 'Class:IPinterface' => 'IP interface', - 'Class:IPinterface+' => '', - 'Class:IPinterface/Attribute:ipaddress' => 'IP address', - 'Class:IPinterface/Attribute:ipaddress+' => '', - 'Class:IPinterface/Attribute:macaddress' => 'MAC address', - 'Class:IPinterface/Attribute:macaddress+' => '', - 'Class:IPinterface/Attribute:comment' => 'Comment', - 'Class:IPinterface/Attribute:coment+' => '', - 'Class:IPinterface/Attribute:ipgateway' => 'IP gateway', - 'Class:IPinterface/Attribute:ipgateway+' => '', - 'Class:IPinterface/Attribute:ipmask' => 'IP mask', - 'Class:IPinterface/Attribute:ipmask+' => '', - 'Class:IPinterface/Attribute:speed' => 'Speed', - 'Class:IPinterface/Attribute:speed+' => '', + 'Class:IPInterface' => 'IP Interface', + 'Class:IPInterface+' => '', + 'Class:IPInterface/Attribute:ipaddress' => 'IP address', + 'Class:IPInterface/Attribute:ipaddress+' => '', + 'Class:IPInterface/Attribute:macaddress' => 'MAC address', + 'Class:IPInterface/Attribute:macaddress+' => '', + 'Class:IPInterface/Attribute:comment' => 'Comment', + 'Class:IPInterface/Attribute:coment+' => '', + 'Class:IPInterface/Attribute:ipgateway' => 'IP gateway', + 'Class:IPInterface/Attribute:ipgateway+' => '', + 'Class:IPInterface/Attribute:ipmask' => 'IP mask', + 'Class:IPInterface/Attribute:ipmask+' => '', + 'Class:IPInterface/Attribute:speed' => 'Speed', + 'Class:IPInterface/Attribute:speed+' => '', )); // @@ -1757,8 +1757,8 @@ Dict::Add('EN US', 'English', 'English', array( 'Menu:ConfigManagement:AllContacts' => 'All contacts: %1$d', 'Menu:Typology' => 'Typology configuration', 'Menu:Typology+' => 'Typology configuration', -'Menu:OSversion' => 'OS Versions', -'Menu:OSversion+' => '', +'Menu:OSVersion' => 'OS Versions', +'Menu:OSVersion+' => '', 'Menu:Software' => 'Software catalog', 'Menu:Software+' => 'Software catalog', 'UI_WelcomeMenu_AllConfigItems' => 'Summary', diff --git a/datamodels/2.x/itop-config-mgmt/fr.dict.itop-config-mgmt.php b/datamodels/2.x/itop-config-mgmt/fr.dict.itop-config-mgmt.php index 6e14f31af..4ad270f0f 100755 --- a/datamodels/2.x/itop-config-mgmt/fr.dict.itop-config-mgmt.php +++ b/datamodels/2.x/itop-config-mgmt/fr.dict.itop-config-mgmt.php @@ -366,12 +366,12 @@ Dict::Add('FR FR', 'French', 'Français', array( )); // -// Class: IpPhone +// Class: IPPhone // Dict::Add('FR FR', 'French', 'Français', array( - 'Class:IpPhone' => 'Téléphone IP', - 'Class:IpPhone+' => '', + 'Class:IPPhone' => 'Téléphone IP', + 'Class:IPPhone+' => '', )); // @@ -697,25 +697,25 @@ Dict::Add('FR FR', 'French', 'Français', array( )); // -// Class: DBserver +// Class: DBServer // Dict::Add('FR FR', 'French', 'Français', array( - 'Class:DBserver' => 'Serveur de base de données', - 'Class:DBserver+' => '', - 'Class:DBserver/Attribute:dbschema_list' => 'Instances de base de données', - 'Class:DBserver/Attribute:dbschema_list+' => '', + 'Class:DBServer' => 'Serveur de base de données', + 'Class:DBServer+' => '', + 'Class:DBServer/Attribute:dbschema_list' => 'Instances de base de données', + 'Class:DBServer/Attribute:dbschema_list+' => '', )); // -// Class: Webserver +// Class: WebServer // Dict::Add('FR FR', 'French', 'Français', array( - 'Class:Webserver' => 'Serveur Web', - 'Class:Webserver+' => '', - 'Class:Webserver/Attribute:webapp_list' => 'Application Web', - 'Class:Webserver/Attribute:webapp_list+' => '', + 'Class:WebServer' => 'Serveur Web', + 'Class:WebServer+' => '', + 'Class:WebServer/Attribute:webapp_list' => 'Application Web', + 'Class:WebServer/Attribute:webapp_list+' => '', )); // @@ -723,7 +723,7 @@ Dict::Add('FR FR', 'French', 'Français', array( // Dict::Add('FR FR', 'French', 'Français', array( - 'Class:PCSoftware' => 'Logicel PC', + 'Class:PCSoftware' => 'Logiciel PC', 'Class:PCsoftware+' => '', )); @@ -974,24 +974,24 @@ Dict::Add('FR FR', 'French', 'Français', array( )); // -// Class: NasFileSystem +// Class: NASFileSystem // Dict::Add('FR FR', 'French', 'Français', array( - 'Class:NasFileSystem' => 'Système de fichier NAS', - 'Class:NasFileSystem+' => '', - 'Class:NasFileSystem/Attribute:name' => 'Nom', - 'Class:NasFileSystem/Attribute:name+' => '', - 'Class:NasFileSystem/Attribute:description' => 'Description', - 'Class:NasFileSystem/Attribute:description+' => '', - 'Class:NasFileSystem/Attribute:raid_level' => 'Niveau RAID', - 'Class:NasFileSystem/Attribute:raid_level+' => '', - 'Class:NasFileSystem/Attribute:size' => 'Taille', - 'Class:NasFileSystem/Attribute:size+' => '', - 'Class:NasFileSystem/Attribute:nas_id' => 'NAS', - 'Class:NasFileSystem/Attribute:nas_id+' => '', - 'Class:NasFileSystem/Attribute:nas_name' => 'Nom NAS', - 'Class:NasFileSystem/Attribute:nas_name+' => '', + 'Class:NASFileSystem' => 'Système de fichier NAS', + 'Class:NASFileSystem+' => '', + 'Class:NASFileSystem/Attribute:name' => 'Nom', + 'Class:NASFileSystem/Attribute:name+' => '', + 'Class:NASFileSystem/Attribute:description' => 'Description', + 'Class:NASFileSystem/Attribute:description+' => '', + 'Class:NASFileSystem/Attribute:raid_level' => 'Niveau RAID', + 'Class:NASFileSystem/Attribute:raid_level+' => '', + 'Class:NASFileSystem/Attribute:size' => 'Taille', + 'Class:NASFileSystem/Attribute:size+' => '', + 'Class:NASFileSystem/Attribute:nas_id' => 'NAS', + 'Class:NASFileSystem/Attribute:nas_id+' => '', + 'Class:NASFileSystem/Attribute:nas_name' => 'Nom NAS', + 'Class:NASFileSystem/Attribute:nas_name+' => '', )); // @@ -1011,16 +1011,16 @@ Dict::Add('FR FR', 'French', 'Français', array( 'Class:Software/Attribute:documents_list+' => '', 'Class:Software/Attribute:type' => 'Type', 'Class:Software/Attribute:type+' => '', - 'Class:Software/Attribute:type/Value:DBserver' => 'Serveur de base de données', - 'Class:Software/Attribute:type/Value:DBserver+' => 'Serveur de base de données', + 'Class:Software/Attribute:type/Value:DBServer' => 'Serveur de base de données', + 'Class:Software/Attribute:type/Value:DBServer+' => 'Serveur de base de données', 'Class:Software/Attribute:type/Value:Middleware' => 'Middleware', 'Class:Software/Attribute:type/Value:Middleware+' => 'Middleware', 'Class:Software/Attribute:type/Value:OtherSoftware' => 'Autre logiciel', 'Class:Software/Attribute:type/Value:OtherSoftware+' => 'Autre logiciel', 'Class:Software/Attribute:type/Value:PCSoftware' => 'Logiciel PC', 'Class:Software/Attribute:type/Value:PCSoftware+' => 'Logiciel PC', - 'Class:Software/Attribute:type/Value:Webserver' => 'Serveur Web', - 'Class:Software/Attribute:type/Value:Webserver+' => 'Serveur Web', + 'Class:Software/Attribute:type/Value:WebServer' => 'Serveur Web', + 'Class:Software/Attribute:type/Value:WebServer+' => 'Serveur Web', 'Class:Software/Attribute:softwareinstance_list' => 'Instances logiciels', 'Class:Software/Attribute:softwareinstance_list+' => '', 'Class:Software/Attribute:softwarepatch_list' => 'Patchs logiciels', @@ -1047,18 +1047,18 @@ Dict::Add('FR FR', 'French', 'Français', array( )); // -// Class: OSpatch +// Class: OSPatch // Dict::Add('FR FR', 'French', 'Français', array( - 'Class:OSpatch' => 'Patch OS', - 'Class:OSpatch+' => '', - 'Class:OSpatch/Attribute:functionalcis_list' => 'Systèmes', - 'Class:OSpatch/Attribute:functionalcis_list+' => '', - 'Class:OSpatch/Attribute:osversion_id' => 'Version OS', - 'Class:OSpatch/Attribute:osversion_id+' => '', - 'Class:OSpatch/Attribute:osversion_name' => 'Nom Version OS', - 'Class:OSpatch/Attribute:osversion_name+' => '', + 'Class:OSPatch' => 'Patch OS', + 'Class:OSPatch+' => '', + 'Class:OSPatch/Attribute:functionalcis_list' => 'Systèmes', + 'Class:OSPatch/Attribute:functionalcis_list+' => '', + 'Class:OSPatch/Attribute:osversion_id' => 'Version OS', + 'Class:OSPatch/Attribute:osversion_id+' => '', + 'Class:OSPatch/Attribute:osversion_name' => 'Nom Version OS', + 'Class:OSPatch/Attribute:osversion_name+' => '', )); // @@ -1106,20 +1106,20 @@ Dict::Add('FR FR', 'French', 'Français', array( )); // -// Class: OsLicence +// Class: OSLicence // Dict::Add('FR FR', 'French', 'Français', array( - 'Class:OsLicence' => 'Licence OS', - 'Class:OsLicence+' => '', - 'Class:OsLicence/Attribute:osversion_id' => 'Version OS', - 'Class:OsLicence/Attribute:osversion_id+' => '', - 'Class:OsLicence/Attribute:osversion_name' => 'Nom Version OS', - 'Class:OsLicence/Attribute:osversion_name+' => '', - 'Class:OsLicence/Attribute:virtualmachines_list' => 'Machines virtuelles', - 'Class:OsLicence/Attribute:virtualmachines_list+' => '', - 'Class:OsLicence/Attribute:servers_list' => 'Serveurs', - 'Class:OsLicence/Attribute:servers_list+' => '', + 'Class:OSLicence' => 'Licence OS', + 'Class:OSLicence+' => '', + 'Class:OSLicence/Attribute:osversion_id' => 'Version OS', + 'Class:OSLicence/Attribute:osversion_id+' => '', + 'Class:OSLicence/Attribute:osversion_name' => 'Nom Version OS', + 'Class:OSLicence/Attribute:osversion_name+' => '', + 'Class:OSLicence/Attribute:virtualmachines_list' => 'Machines virtuelles', + 'Class:OSLicence/Attribute:virtualmachines_list+' => '', + 'Class:OSLicence/Attribute:servers_list' => 'Serveurs', + 'Class:OSLicence/Attribute:servers_list+' => '', )); // @@ -1168,25 +1168,25 @@ Dict::Add('FR FR', 'French', 'Français', array( )); // -// Class: OSversion +// Class: OSVersion // Dict::Add('FR FR', 'French', 'Français', array( - 'Class:OSversion' => 'Version OS', - 'Class:OSversion+' => '', - 'Class:OSversion/Attribute:osfamily_id' => 'Famille OS', - 'Class:OSversion/Attribute:osfamily_id+' => '', - 'Class:OSversion/Attribute:osfamily_name' => 'Nom Famille OS', - 'Class:OSversion/Attribute:osfamily_name+' => '', + 'Class:OSVersion' => 'Version OS', + 'Class:OSVersion+' => '', + 'Class:OSVersion/Attribute:osfamily_id' => 'Famille OS', + 'Class:OSVersion/Attribute:osfamily_id+' => '', + 'Class:OSVersion/Attribute:osfamily_name' => 'Nom Famille OS', + 'Class:OSVersion/Attribute:osfamily_name+' => '', )); // -// Class: OSfamily +// Class: OSFamily // Dict::Add('FR FR', 'French', 'Français', array( - 'Class:OSfamily' => 'Famille OS', - 'Class:OSfamily+' => '', + 'Class:OSFamily' => 'Famille OS', + 'Class:OSFamily+' => '', )); // @@ -1229,42 +1229,42 @@ Dict::Add('FR FR', 'French', 'Français', array( 'Class:Model/Attribute:brand_id+' => '', 'Class:Model/Attribute:brand_name' => 'Nom marque', 'Class:Model/Attribute:brand_name+' => '', - 'Class:Model/Attribute:Type' => 'Type de matériel', - 'Class:Model/Attribute:Type+' => '', - 'Class:Model/Attribute:Type/Value:PowerSource' => 'Arrivée électrique', - 'Class:Model/Attribute:Type/Value:PowerSource+' => 'Arrivée électrique', - 'Class:Model/Attribute:Type/Value:Enclosure' => 'Chassis', - 'Class:Model/Attribute:Type/Value:Enclosure+' => 'Chassis', - 'Class:Model/Attribute:Type/Value:IpPhone' => 'Téléphone IP', - 'Class:Model/Attribute:Type/Value:IpPhone+' => 'Téléphone IP', - 'Class:Model/Attribute:Type/Value:MobilePhone' => 'Téléphone mobile', - 'Class:Model/Attribute:Type/Value:MobilePhone+' => 'Téléphone mobile', - 'Class:Model/Attribute:Type/Value:NAS' => 'NAS', - 'Class:Model/Attribute:Type/Value:NAS+' => 'NAS', - 'Class:Model/Attribute:Type/Value:NetworkDevice' => 'Equipement réseau', - 'Class:Model/Attribute:Type/Value:NetworkDevice+' => 'Equipement réseau', - 'Class:Model/Attribute:Type/Value:PC' => 'PC', - 'Class:Model/Attribute:Type/Value:PC+' => 'PC', - 'Class:Model/Attribute:Type/Value:PDU' => 'PDU', - 'Class:Model/Attribute:Type/Value:PDU+' => 'PDU', - 'Class:Model/Attribute:Type/Value:Peripheral' => 'Périphérique', - 'Class:Model/Attribute:Type/Value:Peripheral+' => 'Périphérique', - 'Class:Model/Attribute:Type/Value:Printer' => 'Imprimante', - 'Class:Model/Attribute:Type/Value:Printer+' => 'Imprimante', - 'Class:Model/Attribute:Type/Value:Rack' => 'Rack', - 'Class:Model/Attribute:Type/Value:Rack+' => 'Rack', - 'Class:Model/Attribute:Type/Value:SANswitch' => 'Switch SAN', - 'Class:Model/Attribute:Type/Value:SANswitch+' => 'Switch SAN', - 'Class:Model/Attribute:Type/Value:Server' => 'Serveur', - 'Class:Model/Attribute:Type/Value:Server+' => 'Serveur', - 'Class:Model/Attribute:Type/Value:StorageSystem' => 'Système de stockage', - 'Class:Model/Attribute:Type/Value:StorageSystem+' => 'SSystème de stockage', - 'Class:Model/Attribute:Type/Value:Tablet' => 'Tablette', - 'Class:Model/Attribute:Type/Value:Tablet+' => 'Tablette', - 'Class:Model/Attribute:Type/Value:TapeLibrary' => 'Bandothèque', - 'Class:Model/Attribute:Type/Value:TapeLibrary+' => 'Bandothèque', - 'Class:Model/Attribute:Type/Value:Telephone' => 'Téléphone', - 'Class:Model/Attribute:Type/Value:Telephone+' => 'Téléphone', + 'Class:Model/Attribute:type' => 'Type de matériel', + 'Class:Model/Attribute:type+' => '', + 'Class:Model/Attribute:type/Value:PowerSource' => 'Arrivée électrique', + 'Class:Model/Attribute:type/Value:PowerSource+' => 'Arrivée électrique', + 'Class:Model/Attribute:type/Value:Enclosure' => 'Chassis', + 'Class:Model/Attribute:type/Value:Enclosure+' => 'Chassis', + 'Class:Model/Attribute:type/Value:IPPhone' => 'Téléphone IP', + 'Class:Model/Attribute:type/Value:IPPhone+' => 'Téléphone IP', + 'Class:Model/Attribute:type/Value:MobilePhone' => 'Téléphone mobile', + 'Class:Model/Attribute:type/Value:MobilePhone+' => 'Téléphone mobile', + 'Class:Model/Attribute:type/Value:NAS' => 'NAS', + 'Class:Model/Attribute:type/Value:NAS+' => 'NAS', + 'Class:Model/Attribute:type/Value:NetworkDevice' => 'Equipement réseau', + 'Class:Model/Attribute:type/Value:NetworkDevice+' => 'Equipement réseau', + 'Class:Model/Attribute:type/Value:PC' => 'PC', + 'Class:Model/Attribute:type/Value:PC+' => 'PC', + 'Class:Model/Attribute:type/Value:PDU' => 'PDU', + 'Class:Model/Attribute:type/Value:PDU+' => 'PDU', + 'Class:Model/Attribute:type/Value:Peripheral' => 'Périphérique', + 'Class:Model/Attribute:type/Value:Peripheral+' => 'Périphérique', + 'Class:Model/Attribute:type/Value:Printer' => 'Imprimante', + 'Class:Model/Attribute:type/Value:Printer+' => 'Imprimante', + 'Class:Model/Attribute:type/Value:Rack' => 'Rack', + 'Class:Model/Attribute:type/Value:Rack+' => 'Rack', + 'Class:Model/Attribute:type/Value:SANSwitch' => 'Switch SAN', + 'Class:Model/Attribute:type/Value:SANSwitch+' => 'Switch SAN', + 'Class:Model/Attribute:type/Value:Server' => 'Serveur', + 'Class:Model/Attribute:type/Value:Server+' => 'Serveur', + 'Class:Model/Attribute:type/Value:StorageSystem' => 'Système de stockage', + 'Class:Model/Attribute:type/Value:StorageSystem+' => 'SSystème de stockage', + 'Class:Model/Attribute:type/Value:Tablet' => 'Tablette', + 'Class:Model/Attribute:type/Value:Tablet+' => 'Tablette', + 'Class:Model/Attribute:type/Value:TapeLibrary' => 'Bandothèque', + 'Class:Model/Attribute:type/Value:TapeLibrary+' => 'Bandothèque', + 'Class:Model/Attribute:type/Value:Telephone' => 'Téléphone', + 'Class:Model/Attribute:type/Value:Telephone+' => 'Téléphone', 'Class:Model/Attribute:physicaldevices_list' => 'Matériels', 'Class:Model/Attribute:physicaldevices_list+' => '', )); @@ -1281,16 +1281,16 @@ Dict::Add('FR FR', 'French', 'Français', array( )); // -// Class: IOSversion +// Class: IOSVersion // Dict::Add('FR FR', 'French', 'Français', array( - 'Class:IOSversion' => 'Version IOS', - 'Class:IOSversion+' => '', - 'Class:IOSversion/Attribute:brand_id' => 'Marque', - 'Class:IOSversion/Attribute:brand_id+' => '', - 'Class:IOSversion/Attribute:brand_name' => 'Nom Marque', - 'Class:IOSversion/Attribute:brand_name+' => '', + 'Class:IOSVersion' => 'Version IOS', + 'Class:IOSVersion+' => '', + 'Class:IOSVersion/Attribute:brand_id' => 'Marque', + 'Class:IOSVersion/Attribute:brand_id+' => '', + 'Class:IOSVersion/Attribute:brand_name' => 'Nom Marque', + 'Class:IOSVersion/Attribute:brand_name+' => '', )); // @@ -1328,20 +1328,20 @@ Dict::Add('FR FR', 'French', 'Français', array( )); // -// Class: lnkFunctionalCIToOSpatch +// Class: lnkFunctionalCIToOSPatch // Dict::Add('FR FR', 'French', 'Français', array( - 'Class:lnkFunctionalCIToOSpatch' => 'Lien CI Fonctionel / Patch OS', - 'Class:lnkFunctionalCIToOSpatch+' => '', - 'Class:lnkFunctionalCIToOSpatch/Attribute:ospatch_id' => 'Patch OS', - 'Class:lnkFunctionalCIToOSpatch/Attribute:ospatch_id+' => '', - 'Class:lnkFunctionalCIToOSpatch/Attribute:ospatch_name' => 'Nom Patch OS', - 'Class:lnkFunctionalCIToOSpatch/Attribute:ospatch_name+' => '', - 'Class:lnkFunctionalCIToOSpatch/Attribute:functionalci_id' => 'CI', - 'Class:lnkFunctionalCIToOSpatch/Attribute:functionalci_id+' => '', - 'Class:lnkFunctionalCIToOSpatch/Attribute:functionalci_name' => 'Nom CI', - 'Class:lnkFunctionalCIToOSpatch/Attribute:functionalci_name+' => '', + 'Class:lnkFunctionalCIToOSPatch' => 'Lien CI Fonctionel / Patch OS', + 'Class:lnkFunctionalCIToOSPatch+' => '', + 'Class:lnkFunctionalCIToOSPatch/Attribute:ospatch_id' => 'Patch OS', + 'Class:lnkFunctionalCIToOSPatch/Attribute:ospatch_id+' => '', + 'Class:lnkFunctionalCIToOSPatch/Attribute:ospatch_name' => 'Nom Patch OS', + 'Class:lnkFunctionalCIToOSPatch/Attribute:ospatch_name+' => '', + 'Class:lnkFunctionalCIToOSPatch/Attribute:functionalci_id' => 'CI', + 'Class:lnkFunctionalCIToOSPatch/Attribute:functionalci_id+' => '', + 'Class:lnkFunctionalCIToOSPatch/Attribute:functionalci_name' => 'Nom CI', + 'Class:lnkFunctionalCIToOSPatch/Attribute:functionalci_name+' => '', )); // @@ -1428,24 +1428,24 @@ Dict::Add('FR FR', 'French', 'Français', array( )); // -// Class: IPinterface +// Class: IPInterface // Dict::Add('FR FR', 'French', 'Français', array( - 'Class:IPinterface' => 'Interface IP', - 'Class:IPinterface+' => '', - 'Class:IPinterface/Attribute:ipaddress' => 'Adresse IP', - 'Class:IPinterface/Attribute:ipaddress+' => '', - 'Class:IPinterface/Attribute:macaddress' => 'Adresse MAC', - 'Class:IPinterface/Attribute:macaddress+' => '', - 'Class:IPinterface/Attribute:coment' => 'Commentaire', - 'Class:IPinterface/Attribute:coment+' => '', - 'Class:IPinterface/Attribute:ipgateway' => 'Passerelle', - 'Class:IPinterface/Attribute:ipgateway+' => '', - 'Class:IPinterface/Attribute:ipmask' => 'Masque de sous réseau', - 'Class:IPinterface/Attribute:ipmask+' => '', - 'Class:IPinterface/Attribute:speed' => 'Vitesse', - 'Class:IPinterface/Attribute:speed+' => '', + 'Class:IPInterface' => 'Interface IP', + 'Class:IPInterface+' => '', + 'Class:IPInterface/Attribute:ipaddress' => 'Adresse IP', + 'Class:IPInterface/Attribute:ipaddress+' => '', + 'Class:IPInterface/Attribute:macaddress' => 'Adresse MAC', + 'Class:IPInterface/Attribute:macaddress+' => '', + 'Class:IPInterface/Attribute:coment' => 'Commentaire', + 'Class:IPInterface/Attribute:coment+' => '', + 'Class:IPInterface/Attribute:ipgateway' => 'Passerelle', + 'Class:IPInterface/Attribute:ipgateway+' => '', + 'Class:IPInterface/Attribute:ipmask' => 'Masque de sous réseau', + 'Class:IPInterface/Attribute:ipmask+' => '', + 'Class:IPInterface/Attribute:speed' => 'Vitesse', + 'Class:IPInterface/Attribute:speed+' => '', )); // @@ -1728,8 +1728,8 @@ Dict::Add('FR FR', 'French', 'Français', array( 'Menu:NetworkType+' => '', 'Menu:Typology' => 'Typologie configuration', 'Menu:Typology+' => 'Typologie configuration', - 'Menu:OSversion' => 'Versions d\'OS', - 'Menu:OSversion+' => '', + 'Menu:OSVersion' => 'Versions d\'OS', + 'Menu:OSVersion+' => '', 'Menu:ContactType' => 'Types de contact', 'Menu:ContactType+' => '', 'Menu:LicenceType' => 'Types de licence', diff --git a/datamodels/2.x/itop-config-mgmt/module.itop-config-mgmt.php b/datamodels/2.x/itop-config-mgmt/module.itop-config-mgmt.php index 8250417de..48828f7f3 100755 --- a/datamodels/2.x/itop-config-mgmt/module.itop-config-mgmt.php +++ b/datamodels/2.x/itop-config-mgmt/module.itop-config-mgmt.php @@ -16,6 +16,7 @@ SetupWebPage::AddModule( ), 'mandatory' => true, 'visible' => true, + 'installer' => 'ConfigMgmtInstaller', // Components // @@ -61,4 +62,55 @@ SetupWebPage::AddModule( ) ); -?> +if (!class_exists('ConfigMgmtInstaller')) +{ + // Module installation handler + // + class ConfigMgmtInstaller extends ModuleInstallerAPI + { + public static function BeforeWritingConfig(Config $oConfiguration) + { + // If you want to override/force some configuration values, do it here + return $oConfiguration; + } + + /** + * Handler called before creating or upgrading the database schema + * @param $oConfiguration Config The new configuration of the application + * @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install) + * @param $sCurrentVersion string Current version number of the module + */ + public static function BeforeDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) + { + if (strlen($sPreviousVersion) > 0) + { + // If you want to migrate data from one format to another, do it here + self::RenameEnumValueInDB('Software', 'type', 'DBserver', 'DBServer'); + self::RenameEnumValueInDB('Software', 'type', 'Webserver', 'WebServer'); + self::RenameEnumValueInDB('Model', 'type', 'SANswitch', 'SANSwitch'); + self::RenameEnumValueInDB('Model', 'type', 'IpPhone', 'IPPhone'); + self::RenameClassInDB('DBserver', 'DBServer'); + self::RenameClassInDB('OSfamily', 'OSFamily'); + self::RenameClassInDB('OSversion', 'OSVersion'); + self::RenameClassInDB('Webserver', 'WebServer'); + self::RenameClassInDB('OSpatch', 'OSPatch'); + self::RenameClassInDB('lnkFunctionalCIToOSpatch', 'lnkFunctionalCIToOSPatch'); + self::RenameClassInDB('OsLicence', 'OSLicence'); + self::RenameClassInDB('IOSversion', 'IOSVersion'); + self::RenameClassInDB('IPinterface', 'IPInterface'); + } + } + + /** + * Handler called after the creation/update of the database schema + * @param $oConfiguration Config The new configuration of the application + * @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install) + * @param $sCurrentVersion string Current version number of the module + */ + public static function AfterDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) + { + } + } +} + +?> \ No newline at end of file diff --git a/datamodels/2.x/itop-endusers-devices/datamodel.itop-enduser-devices.xml b/datamodels/2.x/itop-endusers-devices/datamodel.itop-enduser-devices.xml index 4f9a91d72..05fdfc6e5 100644 --- a/datamodels/2.x/itop-endusers-devices/datamodel.itop-enduser-devices.xml +++ b/datamodels/2.x/itop-endusers-devices/datamodel.itop-enduser-devices.xml @@ -489,7 +489,7 @@ - + TelephonyCI bizmodel,searchable @@ -826,7 +826,7 @@ osfamily_id - OSfamily + OSFamily true DEL_MANUAL @@ -835,12 +835,12 @@ name - osfamily_id]]> + osfamily_id]]> osversion_id - OSversion + OSVersion true DEL_MANUAL @@ -1416,7 +1416,7 @@ 3 - IpPhone + IPPhone 4 diff --git a/datamodels/2.x/itop-endusers-devices/module.itop-endusers-devices.php b/datamodels/2.x/itop-endusers-devices/module.itop-endusers-devices.php index 82b38a2e3..070de8f9f 100644 --- a/datamodels/2.x/itop-endusers-devices/module.itop-endusers-devices.php +++ b/datamodels/2.x/itop-endusers-devices/module.itop-endusers-devices.php @@ -30,6 +30,7 @@ SetupWebPage::AddModule( ), 'mandatory' => false, 'visible' => true, + 'installer' => 'EndUserMgmtInstaller', // Components // @@ -59,5 +60,43 @@ SetupWebPage::AddModule( ) ); +if (!class_exists('EndUserMgmtInstaller')) +{ + // Module installation handler + // + class EndUserMgmtInstaller extends ModuleInstallerAPI + { + public static function BeforeWritingConfig(Config $oConfiguration) + { + // If you want to override/force some configuration values, do it here + return $oConfiguration; + } + + /** + * Handler called before creating or upgrading the database schema + * @param $oConfiguration Config The new configuration of the application + * @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install) + * @param $sCurrentVersion string Current version number of the module + */ + public static function BeforeDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) + { + if (strlen($sPreviousVersion) > 0) + { + // If you want to migrate data from one format to another, do it here + self::RenameClassInDB('IpPhone', 'IPPhone'); + } + } + + /** + * Handler called after the creation/update of the database schema + * @param $oConfiguration Config The new configuration of the application + * @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install) + * @param $sCurrentVersion string Current version number of the module + */ + public static function AfterDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) + { + } + } +} ?> diff --git a/datamodels/2.x/itop-incident-mgmt-itil/en.dict.itop-incident-mgmt-itil.php b/datamodels/2.x/itop-incident-mgmt-itil/en.dict.itop-incident-mgmt-itil.php index f56fd86f0..e3917c5b5 100755 --- a/datamodels/2.x/itop-incident-mgmt-itil/en.dict.itop-incident-mgmt-itil.php +++ b/datamodels/2.x/itop-incident-mgmt-itil/en.dict.itop-incident-mgmt-itil.php @@ -132,9 +132,9 @@ Dict::Add('EN US', 'English', 'English', array( 'Class:Incident/Attribute:service_id+' => '', 'Class:Incident/Attribute:service_name' => 'Service name', 'Class:Incident/Attribute:service_name+' => '', - 'Class:Incident/Attribute:servicesubcategory_id' => 'Service sub category', + 'Class:Incident/Attribute:servicesubcategory_id' => 'Service subcategory', 'Class:Incident/Attribute:servicesubcategory_id+' => '', - 'Class:Incident/Attribute:servicesubcategory_name' => 'Service sub category name', + 'Class:Incident/Attribute:servicesubcategory_name' => 'Service subcategory name', 'Class:Incident/Attribute:servicesubcategory_name+' => '', 'Class:Incident/Attribute:escalation_flag' => 'Hot Flag', 'Class:Incident/Attribute:escalation_flag+' => '', diff --git a/datamodels/2.x/itop-knownerror-mgmt/datamodel.itop-knownerror-mgmt.xml b/datamodels/2.x/itop-knownerror-mgmt/datamodel.itop-knownerror-mgmt.xml index 861246788..d1715fd3a 100755 --- a/datamodels/2.x/itop-knownerror-mgmt/datamodel.itop-knownerror-mgmt.xml +++ b/datamodels/2.x/itop-knownerror-mgmt/datamodel.itop-knownerror-mgmt.xml @@ -430,7 +430,7 @@ category_id - FAQcategory + FAQCategory false DEL_MANUAL @@ -507,7 +507,7 @@ - + cmdbAbstractObject bizmodel,searchable,knownerrormgmt @@ -594,7 +594,7 @@ 4.5 Problem:Shortcuts - SELECT FAQcategory + SELECT FAQCategory 1 diff --git a/datamodels/2.x/itop-knownerror-mgmt/en.dict.itop-knownerror-mgmt.php b/datamodels/2.x/itop-knownerror-mgmt/en.dict.itop-knownerror-mgmt.php index ac3edaaa0..4649a1d6a 100755 --- a/datamodels/2.x/itop-knownerror-mgmt/en.dict.itop-knownerror-mgmt.php +++ b/datamodels/2.x/itop-knownerror-mgmt/en.dict.itop-knownerror-mgmt.php @@ -160,16 +160,16 @@ Dict::Add('EN US', 'English', 'English', array( )); // -// Class: FAQcategory +// Class: FAQCategory // Dict::Add('EN US', 'English', 'English', array( - 'Class:FAQcategory' => 'FAQ Category', - 'Class:FAQcategory+' => 'Category for FAQ', - 'Class:FAQcategory/Attribute:name' => 'Name', - 'Class:FAQcategory/Attribute:name+' => '', - 'Class:FAQcategory/Attribute:faq_list' => 'FAQs', - 'Class:FAQcategory/Attribute:faq_list+' => '', + 'Class:FAQCategory' => 'FAQ Category', + 'Class:FAQCategory+' => 'Category for FAQ', + 'Class:FAQCategory/Attribute:name' => 'Name', + 'Class:FAQCategory/Attribute:name+' => '', + 'Class:FAQCategory/Attribute:faq_list' => 'FAQs', + 'Class:FAQCategory/Attribute:faq_list+' => '', )); Dict::Add('EN US', 'English', 'English', array( 'Menu:NewError' => 'New Known Error', diff --git a/datamodels/2.x/itop-knownerror-mgmt/fr.dict.itop-knownerror-mgmt.php b/datamodels/2.x/itop-knownerror-mgmt/fr.dict.itop-knownerror-mgmt.php index b4b0520f5..46ea49b03 100755 --- a/datamodels/2.x/itop-knownerror-mgmt/fr.dict.itop-knownerror-mgmt.php +++ b/datamodels/2.x/itop-knownerror-mgmt/fr.dict.itop-knownerror-mgmt.php @@ -132,16 +132,16 @@ Dict::Add('FR FR', 'French', 'Français', array( )); // -// Class: FAQcategory +// Class: FAQCategory // Dict::Add('FR FR', 'French', 'Français', array( - 'Class:FAQcategory' => 'Catégorie de FAQ', - 'Class:FAQcategory+' => 'Catégorie de FAQ', - 'Class:FAQcategory/Attribute:name' => 'Nom', - 'Class:FAQcategory/Attribute:name+' => '', - 'Class:FAQcategory/Attribute:faq_list' => 'FAQs', - 'Class:FAQcategory/Attribute:faq_list+' => '', + 'Class:FAQCategory' => 'Catégorie de FAQ', + 'Class:FAQCategory+' => 'Catégorie de FAQ', + 'Class:FAQCategory/Attribute:name' => 'Nom', + 'Class:FAQCategory/Attribute:name+' => '', + 'Class:FAQCategory/Attribute:faq_list' => 'FAQs', + 'Class:FAQCategory/Attribute:faq_list+' => '', )); Dict::Add('EN US', 'English', 'English', array( diff --git a/datamodels/2.x/itop-knownerror-mgmt/module.itop-knownerror-mgmt.php b/datamodels/2.x/itop-knownerror-mgmt/module.itop-knownerror-mgmt.php index 6d423d684..53b3ae5ee 100755 --- a/datamodels/2.x/itop-knownerror-mgmt/module.itop-knownerror-mgmt.php +++ b/datamodels/2.x/itop-knownerror-mgmt/module.itop-knownerror-mgmt.php @@ -18,6 +18,7 @@ SetupWebPage::AddModule( ), 'mandatory' => false, 'visible' => true, + 'installer' => 'KnownErrorMgmtInstaller', // Components // @@ -43,4 +44,43 @@ SetupWebPage::AddModule( ) ); +if (!class_exists('KnownErrorMgmtInstaller')) +{ + // Module installation handler + // + class KnownErrorMgmtInstaller extends ModuleInstallerAPI + { + public static function BeforeWritingConfig(Config $oConfiguration) + { + // If you want to override/force some configuration values, do it here + return $oConfiguration; + } + + /** + * Handler called before creating or upgrading the database schema + * @param $oConfiguration Config The new configuration of the application + * @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install) + * @param $sCurrentVersion string Current version number of the module + */ + public static function BeforeDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) + { + if (strlen($sPreviousVersion) > 0) + { + // If you want to migrate data from one format to another, do it here + self::RenameClassInDB('FAQcategory', 'FAQCategory'); + } + } + + /** + * Handler called after the creation/update of the database schema + * @param $oConfiguration Config The new configuration of the application + * @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install) + * @param $sCurrentVersion string Current version number of the module + */ + public static function AfterDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) + { + } + } +} + ?> diff --git a/datamodels/2.x/itop-problem-mgmt/en.dict.itop-problem-mgmt.php b/datamodels/2.x/itop-problem-mgmt/en.dict.itop-problem-mgmt.php index 553025714..26d90b5e4 100755 --- a/datamodels/2.x/itop-problem-mgmt/en.dict.itop-problem-mgmt.php +++ b/datamodels/2.x/itop-problem-mgmt/en.dict.itop-problem-mgmt.php @@ -97,9 +97,9 @@ Dict::Add('EN US', 'English', 'English', array( 'Class:Problem/Attribute:service_id+' => '', 'Class:Problem/Attribute:service_name' => 'Service name', 'Class:Problem/Attribute:service_name+' => '', - 'Class:Problem/Attribute:servicesubcategory_id' => 'Service sub category', + 'Class:Problem/Attribute:servicesubcategory_id' => 'Service subcategory', 'Class:Problem/Attribute:servicesubcategory_id+' => '', - 'Class:Problem/Attribute:servicesubcategory_name' => 'Service sub category', + 'Class:Problem/Attribute:servicesubcategory_name' => 'Service subcategory', 'Class:Problem/Attribute:servicesubcategory_name+' => '', 'Class:Problem/Attribute:product' => 'Product', 'Class:Problem/Attribute:product+' => '', diff --git a/datamodels/2.x/itop-profiles-itil/datamodel.itop-profiles-itil.xml b/datamodels/2.x/itop-profiles-itil/datamodel.itop-profiles-itil.xml index 12adb1193..c2a57273b 100755 --- a/datamodels/2.x/itop-profiles-itil/datamodel.itop-profiles-itil.xml +++ b/datamodels/2.x/itop-profiles-itil/datamodel.itop-profiles-itil.xml @@ -50,7 +50,7 @@ - + @@ -61,7 +61,7 @@ - + @@ -130,10 +130,10 @@ - + - + @@ -159,7 +159,7 @@ - + diff --git a/datamodels/2.x/itop-request-mgmt-itil/en.dict.itop-request-mgmt-itil.php b/datamodels/2.x/itop-request-mgmt-itil/en.dict.itop-request-mgmt-itil.php index 2815aaf8c..e2dd50217 100755 --- a/datamodels/2.x/itop-request-mgmt-itil/en.dict.itop-request-mgmt-itil.php +++ b/datamodels/2.x/itop-request-mgmt-itil/en.dict.itop-request-mgmt-itil.php @@ -148,9 +148,9 @@ Dict::Add('EN US', 'English', 'English', array( 'Class:UserRequest/Attribute:service_id+' => '', 'Class:UserRequest/Attribute:service_name' => 'Service name', 'Class:UserRequest/Attribute:service_name+' => '', - 'Class:UserRequest/Attribute:servicesubcategory_id' => 'Service sub category', + 'Class:UserRequest/Attribute:servicesubcategory_id' => 'Service subcategory', 'Class:UserRequest/Attribute:servicesubcategory_id+' => '', - 'Class:UserRequest/Attribute:servicesubcategory_name' => 'Service sub category name', + 'Class:UserRequest/Attribute:servicesubcategory_name' => 'Service subcategory name', 'Class:UserRequest/Attribute:servicesubcategory_name+' => '', 'Class:UserRequest/Attribute:escalation_flag' => 'Hot Flag', 'Class:UserRequest/Attribute:escalation_flag+' => '', diff --git a/datamodels/2.x/itop-request-mgmt/en.dict.itop-request-mgmt.php b/datamodels/2.x/itop-request-mgmt/en.dict.itop-request-mgmt.php index f8c759af0..2bcb46d0f 100755 --- a/datamodels/2.x/itop-request-mgmt/en.dict.itop-request-mgmt.php +++ b/datamodels/2.x/itop-request-mgmt/en.dict.itop-request-mgmt.php @@ -153,9 +153,9 @@ Dict::Add('EN US', 'English', 'English', array( 'Class:UserRequest/Attribute:service_id+' => '', 'Class:UserRequest/Attribute:service_name' => 'Service name', 'Class:UserRequest/Attribute:service_name+' => '', - 'Class:UserRequest/Attribute:servicesubcategory_id' => 'Service sub category', + 'Class:UserRequest/Attribute:servicesubcategory_id' => 'Service subcategory', 'Class:UserRequest/Attribute:servicesubcategory_id+' => '', - 'Class:UserRequest/Attribute:servicesubcategory_name' => 'Service sub category name', + 'Class:UserRequest/Attribute:servicesubcategory_name' => 'Service subcategory name', 'Class:UserRequest/Attribute:servicesubcategory_name+' => '', 'Class:UserRequest/Attribute:escalation_flag' => 'Hot Flag', 'Class:UserRequest/Attribute:escalation_flag+' => '', diff --git a/datamodels/2.x/itop-service-mgmt-provider/datamodel.itop-service-mgmt-provider.xml b/datamodels/2.x/itop-service-mgmt-provider/datamodel.itop-service-mgmt-provider.xml index 0bc641190..6aeadf725 100755 --- a/datamodels/2.x/itop-service-mgmt-provider/datamodel.itop-service-mgmt-provider.xml +++ b/datamodels/2.x/itop-service-mgmt-provider/datamodel.itop-service-mgmt-provider.xml @@ -890,7 +890,7 @@ - + cmdbAbstractObject bizmodel,searchable diff --git a/datamodels/2.x/itop-service-mgmt-provider/en.dict.itop-service-mgmt-provider.php b/datamodels/2.x/itop-service-mgmt-provider/en.dict.itop-service-mgmt-provider.php index aa5325881..9194ecd0c 100755 --- a/datamodels/2.x/itop-service-mgmt-provider/en.dict.itop-service-mgmt-provider.php +++ b/datamodels/2.x/itop-service-mgmt-provider/en.dict.itop-service-mgmt-provider.php @@ -223,14 +223,14 @@ Dict::Add('EN US', 'English', 'English', array( )); // -// Class: ServiceFamilly +// Class: ServiceFamily // Dict::Add('EN US', 'English', 'English', array( - 'Class:ServiceFamilly' => 'Service Familly', - 'Class:ServiceFamilly+' => '', - 'Class:ServiceFamilly/Attribute:name' => 'Name', - 'Class:ServiceFamilly/Attribute:name+' => '', + 'Class:ServiceFamily' => 'Service Family', + 'Class:ServiceFamily+' => '', + 'Class:ServiceFamily/Attribute:name' => 'Name', + 'Class:ServiceFamily/Attribute:name+' => '', 'Class:ServiceFamily/Attribute:services_list' => 'Services', 'Class:ServiceFamily/Attribute:services_list+' => '', )); @@ -307,7 +307,7 @@ Dict::Add('EN US', 'English', 'English', array( // Dict::Add('EN US', 'English', 'English', array( - 'Class:ServiceSubcategory' => 'Service Sub category', + 'Class:ServiceSubcategory' => 'Service Subcategory', 'Class:ServiceSubcategory+' => '', 'Class:ServiceSubcategory/Attribute:name' => 'Name', 'Class:ServiceSubcategory/Attribute:name+' => '', diff --git a/datamodels/2.x/itop-service-mgmt-provider/fr.dict.itop-service-mgmt-provider.php b/datamodels/2.x/itop-service-mgmt-provider/fr.dict.itop-service-mgmt-provider.php index 2ef7560d5..bec102750 100755 --- a/datamodels/2.x/itop-service-mgmt-provider/fr.dict.itop-service-mgmt-provider.php +++ b/datamodels/2.x/itop-service-mgmt-provider/fr.dict.itop-service-mgmt-provider.php @@ -167,14 +167,14 @@ Dict::Add('FR FR', 'French', 'Français', array( )); // -// Class: ServiceFamilly +// Class: ServiceFamily // Dict::Add('FR FR', 'French', 'Français', array( - 'Class:ServiceFamilly' => 'Famille de service', - 'Class:ServiceFamilly+' => '', - 'Class:ServiceFamilly/Attribute:name' => 'Nom', - 'Class:ServiceFamilly/Attribute:name+' => '', + 'Class:ServiceFamily' => 'Famille de service', + 'Class:ServiceFamily+' => '', + 'Class:ServiceFamily/Attribute:name' => 'Nom', + 'Class:ServiceFamily/Attribute:name+' => '', 'Class:ServiceFamily/Attribute:services_list' => 'Services', 'Class:ServiceFamily/Attribute:services_list+' => '', )); diff --git a/datamodels/2.x/itop-service-mgmt-provider/module.itop-service-mgmt-provider.php b/datamodels/2.x/itop-service-mgmt-provider/module.itop-service-mgmt-provider.php index 2f6fee984..c8ff75205 100755 --- a/datamodels/2.x/itop-service-mgmt-provider/module.itop-service-mgmt-provider.php +++ b/datamodels/2.x/itop-service-mgmt-provider/module.itop-service-mgmt-provider.php @@ -17,6 +17,7 @@ SetupWebPage::AddModule( ), 'mandatory' => false, 'visible' => true, + 'installer' => 'ServiceMgmtInstaller', // Components // @@ -51,4 +52,43 @@ SetupWebPage::AddModule( ) ); +if (!class_exists('ServiceMgmtInstaller')) +{ + // Module installation handler + // + class ServiceMgmtInstaller extends ModuleInstallerAPI + { + public static function BeforeWritingConfig(Config $oConfiguration) + { + // If you want to override/force some configuration values, do it here + return $oConfiguration; + } + + /** + * Handler called before creating or upgrading the database schema + * @param $oConfiguration Config The new configuration of the application + * @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install) + * @param $sCurrentVersion string Current version number of the module + */ + public static function BeforeDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) + { + if (strlen($sPreviousVersion) > 0) + { + // If you want to migrate data from one format to another, do it here + self::RenameClassInDB('ServiceFamilly', 'ServiceFamily'); + } + } + + /** + * Handler called after the creation/update of the database schema + * @param $oConfiguration Config The new configuration of the application + * @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install) + * @param $sCurrentVersion string Current version number of the module + */ + public static function AfterDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) + { + } + } +} + ?> diff --git a/datamodels/2.x/itop-service-mgmt/en.dict.itop-service-mgmt.php b/datamodels/2.x/itop-service-mgmt/en.dict.itop-service-mgmt.php index 9613743e4..a09e621b3 100755 --- a/datamodels/2.x/itop-service-mgmt/en.dict.itop-service-mgmt.php +++ b/datamodels/2.x/itop-service-mgmt/en.dict.itop-service-mgmt.php @@ -223,7 +223,7 @@ Dict::Add('EN US', 'English', 'English', array( // Dict::Add('EN US', 'English', 'English', array( - 'Class:ServiceFamily' => 'Service Familly', + 'Class:ServiceFamily' => 'Service Family', 'Class:ServiceFamily+' => '', 'Class:ServiceFamily/Attribute:name' => 'Name', 'Class:ServiceFamily/Attribute:name+' => '', @@ -311,7 +311,7 @@ Dict::Add('EN US', 'English', 'English', array( // Dict::Add('EN US', 'English', 'English', array( - 'Class:ServiceSubcategory' => 'Service Sub category', + 'Class:ServiceSubcategory' => 'Service Subcategory', 'Class:ServiceSubcategory+' => '', 'Class:ServiceSubcategory/Attribute:name' => 'Name', 'Class:ServiceSubcategory/Attribute:name+' => '', diff --git a/datamodels/2.x/itop-storage-mgmt/datamodel.itop-storage-mgmt.xml b/datamodels/2.x/itop-storage-mgmt/datamodel.itop-storage-mgmt.xml index bb7046881..f5c73415c 100644 --- a/datamodels/2.x/itop-storage-mgmt/datamodel.itop-storage-mgmt.xml +++ b/datamodels/2.x/itop-storage-mgmt/datamodel.itop-storage-mgmt.xml @@ -766,7 +766,7 @@ - NasFileSystem + NASFileSystem nas_id in_place 0 @@ -784,7 +784,7 @@ { case "impacts": $aRels = array( - "nasfilesystem" => array("sQuery"=>"SELECT NasFileSystem WHERE nas_id = :this->id", "bPropagate"=>true, "iDistance"=>10), + "nasfilesystem" => array("sQuery"=>"SELECT NASFileSystem WHERE nas_id = :this->id", "bPropagate"=>true, "iDistance"=>10), ); return array_merge($aRels, parent::GetRelationQueries($sRelCode)); @@ -1103,7 +1103,7 @@ - + cmdbAbstractObject bizmodel,searchable,configmgmt diff --git a/datamodels/2.x/itop-storage-mgmt/module.itop-storage-mgmt.php b/datamodels/2.x/itop-storage-mgmt/module.itop-storage-mgmt.php index e949594d9..802af843d 100644 --- a/datamodels/2.x/itop-storage-mgmt/module.itop-storage-mgmt.php +++ b/datamodels/2.x/itop-storage-mgmt/module.itop-storage-mgmt.php @@ -30,6 +30,7 @@ SetupWebPage::AddModule( ), 'mandatory' => false, 'visible' => true, + 'installer' => 'StorageMgmtInstaller', // Components // @@ -59,5 +60,43 @@ SetupWebPage::AddModule( ) ); +if (!class_exists('StorageMgmtInstaller')) +{ + // Module installation handler + // + class StorageMgmtInstaller extends ModuleInstallerAPI + { + public static function BeforeWritingConfig(Config $oConfiguration) + { + // If you want to override/force some configuration values, do it here + return $oConfiguration; + } + + /** + * Handler called before creating or upgrading the database schema + * @param $oConfiguration Config The new configuration of the application + * @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install) + * @param $sCurrentVersion string Current version number of the module + */ + public static function BeforeDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) + { + if (strlen($sPreviousVersion) > 0) + { + // If you want to migrate data from one format to another, do it here + self::RenameClassInDB('NasFileSystem', 'NASFileSystem'); + } + } + + /** + * Handler called after the creation/update of the database schema + * @param $oConfiguration Config The new configuration of the application + * @param $sPreviousVersion string PRevious version number of the module (empty string in case of first install) + * @param $sCurrentVersion string Current version number of the module + */ + public static function AfterDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) + { + } + } +} ?> diff --git a/datamodels/2.x/itop-virtualization-mgmt/data.sample.dbserver.xml b/datamodels/2.x/itop-virtualization-mgmt/data.sample.dbserver.xml index 3c0200f43..45ee40262 100755 --- a/datamodels/2.x/itop-virtualization-mgmt/data.sample.dbserver.xml +++ b/datamodels/2.x/itop-virtualization-mgmt/data.sample.dbserver.xml @@ -1,6 +1,6 @@ - + MySQL 2 @@ -11,8 +11,8 @@ 0 - - + + Oracle 2 @@ -23,5 +23,5 @@ 0 - + diff --git a/datamodels/2.x/itop-virtualization-mgmt/data.sample.webserver.xml b/datamodels/2.x/itop-virtualization-mgmt/data.sample.webserver.xml index 0e43e7385..3318002a0 100755 --- a/datamodels/2.x/itop-virtualization-mgmt/data.sample.webserver.xml +++ b/datamodels/2.x/itop-virtualization-mgmt/data.sample.webserver.xml @@ -1,6 +1,6 @@ - + Apache 2 @@ -11,5 +11,5 @@ 0 - + diff --git a/datamodels/2.x/itop-virtualization-mgmt/datamodel.itop-virtualization-mgmt.xml b/datamodels/2.x/itop-virtualization-mgmt/datamodel.itop-virtualization-mgmt.xml index 99ba3ff85..a381f9c3a 100644 --- a/datamodels/2.x/itop-virtualization-mgmt/datamodel.itop-virtualization-mgmt.xml +++ b/datamodels/2.x/itop-virtualization-mgmt/datamodel.itop-virtualization-mgmt.xml @@ -593,7 +593,7 @@ osfamily_id - OSfamily + OSFamily true DEL_MANUAL @@ -602,12 +602,12 @@ name - osfamily_id]]> + osfamily_id]]> osversion_id - OSversion + OSVersion true DEL_MANUAL @@ -616,12 +616,12 @@ name - osversion_id]]> + osversion_id]]> oslicence_id - OsLicence + OSLicence true DEL_MANUAL @@ -802,7 +802,7 @@ - IPinterface + IPInterface bizmodel,searchable false diff --git a/setup/applicationinstaller.class.inc.php b/setup/applicationinstaller.class.inc.php index 7245430a9..dbdd07ed9 100644 --- a/setup/applicationinstaller.class.inc.php +++ b/setup/applicationinstaller.class.inc.php @@ -227,6 +227,7 @@ class ApplicationInstaller case 'db-schema': $sMode = $this->oParams->Get('mode'); + $aSelectedModules = $this->oParams->Get('selected_modules', array()); $sTargetEnvironment = $this->oParams->Get('target_env', ''); if ($sTargetEnvironment == '') { @@ -241,7 +242,7 @@ class ApplicationInstaller $sDBPrefix = $aDBParams['prefix']; $bOldAddon = $this->oParams->Get('old_addon', false); - self::DoUpdateDBSchema($sMode, $sTargetDir, $sDBServer, $sDBUser, $sDBPwd, $sDBName, $sDBPrefix, $sTargetEnvironment, $bOldAddon); + self::DoUpdateDBSchema($sMode, $aSelectedModules, $sTargetDir, $sDBServer, $sDBUser, $sDBPwd, $sDBName, $sDBPrefix, $sTargetEnvironment, $bOldAddon); $aResult = array( 'status' => self::OK, @@ -506,7 +507,7 @@ class ApplicationInstaller } } - protected static function DoUpdateDBSchema($sMode, $sModulesDir, $sDBServer, $sDBUser, $sDBPwd, $sDBName, $sDBPrefix, $sTargetEnvironment = '', $bOldAddon = false) + protected static function DoUpdateDBSchema($sMode, $aSelectedModules, $sModulesDir, $sDBServer, $sDBUser, $sDBPwd, $sDBName, $sDBPrefix, $sTargetEnvironment = '', $bOldAddon = false) { SetupPage::log_info("Update Database Schema for environment '$sTargetEnvironment'."); @@ -531,6 +532,21 @@ class ApplicationInstaller $oProductionEnv = new RunTimeEnvironment($sTargetEnvironment); $oProductionEnv->InitDataModel($oConfig, true); // load data model only + // Module specific actions (migrate the data) + // + $aAvailableModules = $oProductionEnv->AnalyzeInstallation(MetaModel::GetConfig(), APPROOT.$sModulesDir); + foreach($aAvailableModules as $sModuleId => $aModule) + { + if (($sModuleId != ROOT_MODULE) && in_array($sModuleId, $aSelectedModules) && + isset($aAvailableModules[$sModuleId]['installer']) ) + { + $sModuleInstallerClass = $aAvailableModules[$sModuleId]['installer']; + SetupPage::log_info("Calling Module Handler: $sModuleInstallerClass::BeforeDatabaseCreation(oConfig, {$aModule['version_db']}, {$aModule['version_code']})"); + $aCallSpec = array($sModuleInstallerClass, 'BeforeDatabaseCreation'); + call_user_func_array($aCallSpec, array(MetaModel::GetConfig(), $aModule['version_db'], $aModule['version_code'])); + } + } + if(!$oProductionEnv->CreateDatabaseStructure(MetaModel::GetConfig(), $sMode)) { throw new Exception("Failed to create/upgrade the database structure for environment '$sTargetEnvironment'"); diff --git a/setup/moduleinstaller.class.inc.php b/setup/moduleinstaller.class.inc.php index 90663c093..94c5100d0 100644 --- a/setup/moduleinstaller.class.inc.php +++ b/setup/moduleinstaller.class.inc.php @@ -17,6 +17,8 @@ // along with iTop. If not, see +require_once(APPROOT.'setup/setuppage.class.inc.php'); + /** * Class ModuleInstaller * Defines the API to implement module specific actions during the setup @@ -32,12 +34,124 @@ abstract class ModuleInstallerAPI return $oConfiguration; } + /** + * Handler called before creating or upgrading the database schema + * @param $oConfiguration Config The new configuration of the application + * @param $sPreviousVersion string Previous version number of the module (empty string in case of first install) + * @param $sCurrentVersion string Current version number of the module + */ public static function BeforeDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) { } + /** + * Handler called after the creation/update of the database schema + * @param $oConfiguration Config The new configuration of the application + * @param $sPreviousVersion string Previous version number of the module (empty string in case of first install) + * @param $sCurrentVersion string Current version number of the module + */ public static function AfterDatabaseCreation(Config $oConfiguration, $sPreviousVersion, $sCurrentVersion) { } + + /** + * Helper to complete the renaming of a class + * The renaming is made in the datamodel definition, but the name has to be changed in the DB as well + * Must be called after DB update, i.e within an implementation of AfterDatabaseCreation() + * + * @param string $sFrom Original name (already INVALID in the current datamodel) + * @param string $sTo New name (valid in the current datamodel) + * @return void + */ + public static function RenameClassInDB($sFrom, $sTo) + { + if (!MetaModel::IsStandaloneClass($sTo)) + { + $sRootClass = MetaModel::GetRootClass($sTo); + $sTableName = MetaModel::DBGetTable($sRootClass); + $sFinalClassCol = MetaModel::DBGetClassField($sRootClass); + $sRepair = "UPDATE `$sTableName` SET `$sFinalClassCol` = '$sTo' WHERE `$sFinalClassCol` = BINARY '$sFrom'"; + CMDBSource::Query($sRepair); + $iAffectedRows = CMDBSource::AffectedRows(); + SetupPage::log_info("Renaming class in DB - final class from '$sFrom' to '$sTo': $iAffectedRows rows affected"); + } + } + + /** + * Helper to modify an enum value + * The change is made in the datamodel definition, but the value has to be changed in the DB as well + * Must be called BEFORE DB update, i.e within an implementation of BeforeDatabaseCreation() + * + * @param string $sClass A valid class name + * @param string $sAttCode The enum attribute code + * @param string $sFrom Original value (already INVALID in the current datamodel) + * @param string $sTo New value (valid in the current datamodel) + * @return void + */ + public static function RenameEnumValueInDB($sClass, $sAttCode, $sFrom, $sTo) + { + $sOriginClass = MetaModel::GetAttributeOrigin($sClass, $sAttCode); + $sTableName = MetaModel::DBGetTable($sOriginClass); + + $oAttDef = MetaModel::GetAttributeDef($sOriginClass, $sAttCode); + if ($oAttDef instanceof AttributeEnum) + { + $oValDef = $oAttDef->GetValuesDef(); + if ($oValDef) + { + $aNewValues = array_keys($oValDef->GetValues(array(), "")); + if (in_array($sTo, $aNewValues)) + { + $aAllValues = $aNewValues; + $aAllValues[] = $sFrom; + if (!in_array($sFrom, $aNewValues)) + { + $sEnumCol = $oAttDef->Get("sql"); + $sNullSpec = $oAttDef->IsNullAllowed() ? 'NULL' : 'NOT NULL'; + + if (strtolower($sTo) == strtolower($sFrom)) + { + SetupPage::log_info("Changing enum in DB - $sClass::$sAttCode from '$sFrom' to '$sTo' (just a change in the case)"); + $sColumnDefinition = "ENUM(".implode(",", CMDBSource::Quote($aNewValues)).") $sNullSpec"; + $sRepair = "ALTER TABLE `$sTableName` MODIFY `$sEnumCol` $sColumnDefinition"; + CMDBSource::Query($sRepair); + } + else + { + // 1st - Allow both values in the column definition + // + SetupPage::log_info("Changing enum in DB - $sClass::$sAttCode from '$sFrom' to '$sTo'"); + $sColumnDefinition = "ENUM(".implode(",", CMDBSource::Quote($aAllValues)).") $sNullSpec"; + $sRepair = "ALTER TABLE `$sTableName` MODIFY `$sEnumCol` $sColumnDefinition"; + CMDBSource::Query($sRepair); + + // 2nd - Change the old value into the new value + // + $sRepair = "UPDATE `$sTableName` SET `$sEnumCol` = '$sTo' WHERE `$sEnumCol` = BINARY '$sFrom'"; + CMDBSource::Query($sRepair); + $iAffectedRows = CMDBSource::AffectedRows(); + SetupPage::log_info("Changing enum in DB - $iAffectedRows rows updated"); + + // 3rd - Remove the useless value from the column definition + // + $sColumnDefinition = "ENUM(".implode(",", CMDBSource::Quote($aNewValues)).") $sNullSpec"; + $sRepair = "ALTER TABLE `$sTableName` MODIFY `$sEnumCol` $sColumnDefinition"; + CMDBSource::Query($sRepair); + SetupPage::log_info("Changing enum in DB - removed useless value '$sFrom'"); + } + } + else + { + SetupPage::log_warning("Changing enum in DB - $sClass::$sAttCode - '$sFrom' is still a valid value (".implode(', ', $aNewValues).")"); + } + } + else + { + SetupPage::log_warning("Changing enum in DB - $sClass::$sAttCode - '$sTo' is not a known value (".implode(', ', $aNewValues).")"); + } + } + } + } + } ?>