diff --git a/core/metamodel.class.php b/core/metamodel.class.php
index b3a51bc9d..fa1e1eb47 100644
--- a/core/metamodel.class.php
+++ b/core/metamodel.class.php
@@ -3028,7 +3028,9 @@ abstract class MetaModel
public static function Startup($sConfigFile, $bAllowMissingDB = false)
{
self::LoadConfig($sConfigFile);
- if (self::DBExists())
+ //if (self::DBExists())
+// !!!! #@#
+ if (true)
{
CMDBSource::SelectDB(self::$m_sDBName);
diff --git a/modules/itop-change-mgmt-1.0.0/model.itop-change-mgmt.php b/modules/itop-change-mgmt-1.0.0/model.itop-change-mgmt.php
index 9e37ae4dd..94e06e231 100644
--- a/modules/itop-change-mgmt-1.0.0/model.itop-change-mgmt.php
+++ b/modules/itop-change-mgmt-1.0.0/model.itop-change-mgmt.php
@@ -71,6 +71,7 @@ abstract class Change extends Ticket
MetaModel::Init_AddAttribute(new AttributeExternalKey("manager_id", array("targetclass"=>"Person", "jointype"=>null, "allowed_values"=>null, "sql"=>"manager_id", "is_null_allowed"=>true, "on_target_delete"=>DEL_MANUAL, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeExternalField("manager_email", array("allowed_values"=>null, "extkey_attcode"=>"manager_id", "target_attcode"=>"email", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeBoolean("outage", array("allowed_values"=>null, "sql"=>"outage", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
+// MetaModel::Init_AddAttribute(new AttributeEnum("outage", array("allowed_values"=>new ValueSetEnum('yes,no'), "sql"=>"outage", "default_value"=>null, "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeText("change_request", array("allowed_values"=>null, "sql"=>"change_request", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeText("change_log", array("allowed_values"=>null, "sql"=>"change_log", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeText("fallback", array("allowed_values"=>null, "sql"=>"fallback", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
@@ -86,7 +87,13 @@ abstract class Change extends Ticket
array(
"attribute_inherit" => null,
"attribute_list" => array(
+ 'start_date' => OPT_ATT_HIDDEN,
+ 'ticket_log' => OPT_ATT_HIDDEN,
+ 'impact' => OPT_ATT_HIDDEN,
+ 'outage' => OPT_ATT_HIDDEN,
+ 'fallback' => OPT_ATT_HIDDEN,
'ref' => OPT_ATT_READONLY,
+ 'requestor_id' => OPT_ATT_MANDATORY,
'title' => OPT_ATT_MANDATORY,
'reason' => OPT_ATT_MANDATORY,
'workgroup_id' => OPT_ATT_HIDDEN,
@@ -109,7 +116,9 @@ abstract class Change extends Ticket
"attribute_list" => array(
'title' => OPT_ATT_READONLY,
'reason' => OPT_ATT_READONLY,
- 'workgroup_id' => OPT_ATT_MUSTCHANGE,
+ 'workgroup_id' => OPT_ATT_MANDATORY,
+ 'supervisor_group_id' => OPT_ATT_MANDATORY,
+ 'manager_group_id' => OPT_ATT_MANDATORY,
'change_request' => OPT_ATT_READONLY,
),
)
@@ -129,9 +138,7 @@ abstract class Change extends Ticket
"attribute_list" => array(
'workgroup_id' => OPT_ATT_MANDATORY,
'agent_id' => OPT_ATT_MUSTCHANGE,
- 'supervisor_group_id' => OPT_ATT_MUSTCHANGE,
'supervisor_id' => OPT_ATT_MUSTCHANGE,
- 'manager_group_id' => OPT_ATT_MUSTCHANGE,
'manager_id' => OPT_ATT_MUSTCHANGE,
),
)
@@ -141,6 +148,7 @@ abstract class Change extends Ticket
array(
"attribute_inherit" => 'assigned',
"attribute_list" => array(
+ 'ticket_log' => OPT_ATT_MANDATORY,
'requestor_id' => OPT_ATT_READONLY,
'customer_id' => OPT_ATT_READONLY,
'workgroup_id' => OPT_ATT_READONLY,
@@ -208,8 +216,9 @@ abstract class Change extends Ticket
MetaModel::Init_DefineState(
"closed",
array(
- "attribute_inherit" => 'implemented',
+ "attribute_inherit" => 'monitored',
"attribute_list" => array(
+ 'ticket_log' => OPT_ATT_READONLY,
'close_date' => OPT_ATT_READONLY,
),
)
@@ -319,11 +328,15 @@ abstract class ApprovedChange extends Change
MetaModel::Init_OverloadStateAttribute('new', 'approval_date', OPT_ATT_HIDDEN);
MetaModel::Init_OverloadStateAttribute('new', 'approval_comment', OPT_ATT_HIDDEN);
- MetaModel::Init_OverloadStateAttribute('approved', 'approval_date', OPT_ATT_MUSTCHANGE);
- MetaModel::Init_OverloadStateAttribute('approved', 'approval_comment', OPT_ATT_MUSTCHANGE);
+ MetaModel::Init_OverloadStateAttribute('approved', 'approval_date', OPT_ATT_MANDATORY);
+ MetaModel::Init_OverloadStateAttribute('approved', 'approval_comment', OPT_ATT_MANDATORY);
MetaModel::Init_OverloadStateAttribute('implemented', 'approval_date', OPT_ATT_READONLY);
MetaModel::Init_OverloadStateAttribute('implemented', 'approval_comment', OPT_ATT_READONLY);
+ MetaModel::Init_OverloadStateAttribute('monitored', 'approval_date', OPT_ATT_READONLY);
+ MetaModel::Init_OverloadStateAttribute('monitored', 'approval_comment', OPT_ATT_READONLY);
+ MetaModel::Init_OverloadStateAttribute('closed', 'approval_date', OPT_ATT_READONLY);
+ MetaModel::Init_OverloadStateAttribute('closed', 'approval_comment', OPT_ATT_READONLY);
}
}
@@ -358,11 +371,19 @@ class NormalChange extends ApprovedChange
MetaModel::Init_OverloadStateAttribute('new', 'acceptance_date', OPT_ATT_HIDDEN);
MetaModel::Init_OverloadStateAttribute('new', 'acceptance_comment', OPT_ATT_HIDDEN);
- MetaModel::Init_OverloadStateAttribute('validated', 'acceptance_date', OPT_ATT_MUSTCHANGE);
- MetaModel::Init_OverloadStateAttribute('validated', 'acceptance_comment', OPT_ATT_MUSTCHANGE);
+ MetaModel::Init_OverloadStateAttribute('validated', 'acceptance_date', OPT_ATT_MANDATORY);
+ MetaModel::Init_OverloadStateAttribute('validated', 'acceptance_comment', OPT_ATT_MANDATORY);
MetaModel::Init_OverloadStateAttribute('plannedschedule', 'acceptance_date', OPT_ATT_READONLY);
MetaModel::Init_OverloadStateAttribute('plannedschedule', 'acceptance_comment', OPT_ATT_READONLY);
+ MetaModel::Init_OverloadStateAttribute('approved', 'acceptance_date', OPT_ATT_READONLY);
+ MetaModel::Init_OverloadStateAttribute('approved', 'acceptance_comment', OPT_ATT_READONLY);
+ MetaModel::Init_OverloadStateAttribute('implemented', 'acceptance_date', OPT_ATT_READONLY);
+ MetaModel::Init_OverloadStateAttribute('implemented', 'acceptance_comment', OPT_ATT_READONLY);
+ MetaModel::Init_OverloadStateAttribute('monitored', 'acceptance_date', OPT_ATT_READONLY);
+ MetaModel::Init_OverloadStateAttribute('monitored', 'acceptance_comment', OPT_ATT_READONLY);
+ MetaModel::Init_OverloadStateAttribute('closed', 'acceptance_date', OPT_ATT_READONLY);
+ MetaModel::Init_OverloadStateAttribute('closed', 'acceptance_comment', OPT_ATT_READONLY);
MetaModel::Init_DefineTransition("new", "ev_validate", array("target_state"=>"validated", "actions"=>array('SetLastUpDate'), "user_restriction"=>null));
MetaModel::Init_DefineTransition("new", "ev_reject", array("target_state"=>"rejected", "actions"=>array('SetLastUpDate'), "user_restriction"=>null));
diff --git a/modules/itop-config-mgmt-1.0.0/data.sample.application.xml b/modules/itop-config-mgmt-1.0.0/data.sample.application.xml
index cec29c78b..41448ab28 100644
--- a/modules/itop-config-mgmt-1.0.0/data.sample.application.xml
+++ b/modules/itop-config-mgmt-1.0.0/data.sample.application.xml
@@ -11,39 +11,37 @@
Apache Web Server
production
-2
+2
medium
4
0
-2
+2
2.2
Apache 2.2 with PHP 5.3.4
MySQL 5 prod
production
-2
+2
medium
1
0
-1
+1
5.0.27
itop_beta
implementation
-2
+2
medium
2
-root
-
iTop beta test instance
iTop demo
production
-2
+2
high
Demo instance of iTop
@@ -57,4 +55,4 @@
3
itop beta instance
-
\ No newline at end of file
+
diff --git a/modules/itop-config-mgmt-1.0.0/data.sample.business.xml b/modules/itop-config-mgmt-1.0.0/data.sample.business.xml
index c9ed59031..208c1332f 100644
--- a/modules/itop-config-mgmt-1.0.0/data.sample.business.xml
+++ b/modules/itop-config-mgmt-1.0.0/data.sample.business.xml
@@ -3,7 +3,7 @@
iTop demonstration
production
-2
+2
medium
Demonstrating iTop on line
@@ -22,4 +22,4 @@
4
Support Specialist
-
\ No newline at end of file
+
diff --git a/modules/itop-config-mgmt-1.0.0/data.sample.server.xml b/modules/itop-config-mgmt-1.0.0/data.sample.server.xml
index 22b948e5b..617085252 100644
--- a/modules/itop-config-mgmt-1.0.0/data.sample.server.xml
+++ b/modules/itop-config-mgmt-1.0.0/data.sample.server.xml
@@ -3,7 +3,7 @@
dbserver1.demo.net
implementation
-2
+2
medium
Hewlett-Packard
Proliant DL380 G5
@@ -23,7 +23,7 @@
itop.demo.net
production
-2
+2
high
Hewlet-Packard
Proliant DL380 G5
@@ -40,4 +40,4 @@
Linux
Debian 5 (Lenny)
-
\ No newline at end of file
+
diff --git a/modules/itop-config-mgmt-1.0.0/en.dict.itop-config-mgmt.php b/modules/itop-config-mgmt-1.0.0/en.dict.itop-config-mgmt.php
index 4b33d0da4..915a10407 100644
--- a/modules/itop-config-mgmt-1.0.0/en.dict.itop-config-mgmt.php
+++ b/modules/itop-config-mgmt-1.0.0/en.dict.itop-config-mgmt.php
@@ -123,6 +123,10 @@ Dict::Add('EN US', 'English', 'English', array(
'Class:Location/Attribute:parent_id+' => '',
'Class:Location/Attribute:parent_name' => 'Parent name',
'Class:Location/Attribute:parent_name+' => '',
+ 'Class:Location/Attribute:contact_list' => 'Contacts',
+ 'Class:Location/Attribute:contact_list+' => 'Contacts located on this site',
+ 'Class:Location/Attribute:infra_list' => 'Infrastructure',
+ 'Class:Location/Attribute:infra_list+' => 'CIs located on this site',
));
//
@@ -199,10 +203,12 @@ Dict::Add('EN US', 'English', 'English', array(
'Class:lnkTeamToContact/Attribute:contact_id+' => '',
'Class:lnkTeamToContact/Attribute:contact_location_id' => 'Location',
'Class:lnkTeamToContact/Attribute:contact_location_id+' => '',
- 'Class:lnkTeamToContact/Attribute:contact_email' => 'eMail',
+ 'Class:lnkTeamToContact/Attribute:contact_email' => 'Email',
'Class:lnkTeamToContact/Attribute:contact_email+' => '',
'Class:lnkTeamToContact/Attribute:contact_phone' => 'Phone',
'Class:lnkTeamToContact/Attribute:contact_phone+' => '',
+ 'Class:lnkTeamToContact/Attribute:role' => 'Role',
+ 'Class:lnkTeamToContact/Attribute:role+' => '',
));
//
@@ -297,10 +303,14 @@ Dict::Add('EN US', 'English', 'English', array(
'Class:Licence/Attribute:start+' => '',
'Class:Licence/Attribute:end' => 'End date',
'Class:Licence/Attribute:end+' => '',
- 'Class:Licence/Attribute:key' => 'Key',
- 'Class:Licence/Attribute:key+' => '',
+ 'Class:Licence/Attribute:licence_key' => 'Key',
+ 'Class:Licence/Attribute:licence_key+' => '',
'Class:Licence/Attribute:scope' => 'Scope',
'Class:Licence/Attribute:scope+' => '',
+ 'Class:Licence/Attribute:usage_limit' => 'Usage limit',
+ 'Class:Licence/Attribute:usage_limit+' => '',
+ 'Class:Licence/Attribute:usage_list' => 'Usage',
+ 'Class:Licence/Attribute:usage_list+' => 'Application instances using this licence',
));
//
@@ -310,8 +320,10 @@ Dict::Add('EN US', 'English', 'English', array(
Dict::Add('EN US', 'English', 'English', array(
'Class:Subnet' => 'Subnet',
'Class:Subnet+' => '',
- 'Class:Subnet/Attribute:name' => 'Name',
- 'Class:Subnet/Attribute:name+' => '',
+ //'Class:Subnet/Attribute:name' => 'Name',
+ //'Class:Subnet/Attribute:name+' => '',
+ 'Class:Subnet/Attribute:org_id' => 'Owner organization',
+ 'Class:Subnet/Attribute:org_id+' => '',
'Class:Subnet/Attribute:description' => 'Description',
'Class:Subnet/Attribute:description+' => '',
'Class:Subnet/Attribute:ip' => 'IP',
@@ -329,14 +341,18 @@ Dict::Add('EN US', 'English', 'English', array(
'Class:Patch+' => '',
'Class:Patch/Attribute:name' => 'Name',
'Class:Patch/Attribute:name+' => '',
+ 'Class:Patch/Attribute:description' => 'Description',
+ 'Class:Patch/Attribute:description+' => '',
'Class:Patch/Attribute:target_sw' => 'Application scope',
'Class:Patch/Attribute:target_sw+' => 'Target software (OS or application)',
'Class:Patch/Attribute:version' => 'Version',
'Class:Patch/Attribute:version+' => '',
'Class:Patch/Attribute:type' => 'Type',
'Class:Patch/Attribute:type+' => '',
- 'Class:Patch/Attribute:type/Value:fix' => 'Fix',
- 'Class:Patch/Attribute:type/Value:fix+' => '',
+ 'Class:Patch/Attribute:type/Value:application' => 'Application',
+ 'Class:Patch/Attribute:type/Value:application+' => '',
+ 'Class:Patch/Attribute:type/Value:os' => 'OS',
+ 'Class:Patch/Attribute:type/Value:os+' => '',
'Class:Patch/Attribute:type/Value:security' => 'Security',
'Class:Patch/Attribute:type/Value:security+' => '',
'Class:Patch/Attribute:type/Value:servicepack' => 'Service Pack',
@@ -383,7 +399,7 @@ Dict::Add('EN US', 'English', 'English', array(
//
Dict::Add('EN US', 'English', 'English', array(
- 'Class:lnkPatchToCI' => 'lnkPatchToCI',
+ 'Class:lnkPatchToCI' => 'Patch usage',
'Class:lnkPatchToCI+' => '',
'Class:lnkPatchToCI/Attribute:patch_id' => 'Patch',
'Class:lnkPatchToCI/Attribute:patch_id+' => '',
@@ -414,11 +430,11 @@ Dict::Add('EN US', 'English', 'English', array(
'Class:FunctionalCI/Attribute:status/Value:obsolete+' => '',
'Class:FunctionalCI/Attribute:status/Value:production' => 'Production',
'Class:FunctionalCI/Attribute:status/Value:production+' => '',
- 'Class:FunctionalCI/Attribute:owner_id' => 'Owner organization',
- 'Class:FunctionalCI/Attribute:owner_id+' => '',
+ 'Class:FunctionalCI/Attribute:org_id' => 'Owner organization',
+ 'Class:FunctionalCI/Attribute:org_id+' => '',
'Class:FunctionalCI/Attribute:owner_name' => 'Owner organization',
'Class:FunctionalCI/Attribute:owner_name+' => '',
- 'Class:FunctionalCI/Attribute:importance' => 'Importance',
+ 'Class:FunctionalCI/Attribute:importance' => 'Business criticity',
'Class:FunctionalCI/Attribute:importance+' => '',
'Class:FunctionalCI/Attribute:importance/Value:high' => 'High',
'Class:FunctionalCI/Attribute:importance/Value:high+' => '',
@@ -430,35 +446,57 @@ Dict::Add('EN US', 'English', 'English', array(
'Class:FunctionalCI/Attribute:contact_list+' => 'Contacts for this CI',
'Class:FunctionalCI/Attribute:document_list' => 'Documents',
'Class:FunctionalCI/Attribute:document_list+' => 'Documentation for this CI',
- 'Class:FunctionalCI/Attribute:solution_list' => 'Solutions',
- 'Class:FunctionalCI/Attribute:solution_list+' => 'Solutions using this CI',
+ 'Class:FunctionalCI/Attribute:solution_list' => 'Application solutions',
+ 'Class:FunctionalCI/Attribute:solution_list+' => 'Application solutions using this CI',
+ 'Class:FunctionalCI/Attribute:contract_list' => 'Contracts',
+ 'Class:FunctionalCI/Attribute:contract_list+' => 'Contracts supporting this CI',
+ 'Class:FunctionalCI/Attribute:ticket_list' => 'Tickets',
+ 'Class:FunctionalCI/Attribute:ticket_list+' => 'Tickets related to the CI',
'Class:FunctionalCI/Attribute:finalclass' => 'finalclass',
'Class:FunctionalCI/Attribute:finalclass+' => '',
));
+//
+// Class: SoftwareInstance
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+ 'Class:SoftwareInstance' => 'Software Instance',
+ 'Class:SoftwareInstance+' => '',
+ 'Class:SoftwareInstance/Attribute:device_id' => 'Device',
+ 'Class:SoftwareInstance/Attribute:device_id+' => '',
+ 'Class:SoftwareInstance/Attribute:device_name' => 'Device',
+ 'Class:SoftwareInstance/Attribute:device_name+' => '',
+ 'Class:SoftwareInstance/Attribute:licence_id' => 'Licence',
+ 'Class:SoftwareInstance/Attribute:licence_id+' => '',
+ 'Class:SoftwareInstance/Attribute:licence_name' => 'Licence',
+ 'Class:SoftwareInstance/Attribute:licence_name+' => '',
+ 'Class:SoftwareInstance/Attribute:software_id' => 'Software',
+ 'Class:SoftwareInstance/Attribute:software_id+' => '',
+ 'Class:SoftwareInstance/Attribute:software_name' => 'Software',
+ 'Class:SoftwareInstance/Attribute:software_name+' => '',
+ 'Class:SoftwareInstance/Attribute:version' => 'Version',
+ 'Class:SoftwareInstance/Attribute:version+' => '',
+ 'Class:SoftwareInstance/Attribute:description' => 'Description',
+ 'Class:SoftwareInstance/Attribute:description+' => '',
+));
+
//
// Class: ApplicationInstance
//
Dict::Add('EN US', 'English', 'English', array(
- 'Class:ApplicationInstance' => 'Application Instance',
+ 'Class:ApplicationInstance' => 'Application instance',
'Class:ApplicationInstance+' => '',
- 'Class:ApplicationInstance/Attribute:device_id' => 'Device',
- 'Class:ApplicationInstance/Attribute:device_id+' => '',
- 'Class:ApplicationInstance/Attribute:device_name' => 'Device',
- 'Class:ApplicationInstance/Attribute:device_name+' => '',
- 'Class:ApplicationInstance/Attribute:licence_id' => 'Licence',
- 'Class:ApplicationInstance/Attribute:licence_id+' => '',
- 'Class:ApplicationInstance/Attribute:licence_name' => 'Licence',
- 'Class:ApplicationInstance/Attribute:licence_name+' => '',
- 'Class:ApplicationInstance/Attribute:application_id' => 'Application',
- 'Class:ApplicationInstance/Attribute:application_id+' => '',
- 'Class:ApplicationInstance/Attribute:application_name' => 'Application',
- 'Class:ApplicationInstance/Attribute:application_name+' => '',
- 'Class:ApplicationInstance/Attribute:version' => 'Version',
- 'Class:ApplicationInstance/Attribute:version+' => '',
- 'Class:ApplicationInstance/Attribute:description' => 'Description',
- 'Class:ApplicationInstance/Attribute:description+' => '',
+));
+
+//
+// Class: DBServerInstance
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+ 'Class:DBServerInstance' => 'DB Server instance',
+ 'Class:DBServerInstance+' => '',
));
//
@@ -472,12 +510,6 @@ Dict::Add('EN US', 'English', 'English', array(
'Class:DatabaseInstance/Attribute:db_server_instance_id+' => '',
'Class:DatabaseInstance/Attribute:db_server_instance_version' => 'Database version',
'Class:DatabaseInstance/Attribute:db_server_instance_version+' => '',
- 'Class:DatabaseInstance/Attribute:application_name' => 'Database software',
- 'Class:DatabaseInstance/Attribute:application_name+' => '',
- 'Class:DatabaseInstance/Attribute:admin_login' => 'Admin login',
- 'Class:DatabaseInstance/Attribute:admin_login+' => '',
- 'Class:DatabaseInstance/Attribute:admin_password' => 'Admin password',
- 'Class:DatabaseInstance/Attribute:admin_password+' => '',
'Class:DatabaseInstance/Attribute:description' => 'Description',
'Class:DatabaseInstance/Attribute:description+' => '',
));
@@ -493,7 +525,7 @@ Dict::Add('EN US', 'English', 'English', array(
'Class:ApplicationSolution/Attribute:description+' => '',
'Class:ApplicationSolution/Attribute:ci_list' => 'CIs',
'Class:ApplicationSolution/Attribute:ci_list+' => 'CIs composing the solution',
- 'Class:ApplicationSolution/Attribute:process_list' => 'Processes',
+ 'Class:ApplicationSolution/Attribute:process_list' => 'Business processes',
'Class:ApplicationSolution/Attribute:process_list+' => 'Business processes relying on the solution',
));
@@ -504,8 +536,8 @@ Dict::Add('EN US', 'English', 'English', array(
Dict::Add('EN US', 'English', 'English', array(
'Class:BusinessProcess' => 'Business Process',
'Class:BusinessProcess+' => '',
- 'Class:BusinessProcess/Attribute:solution_list' => 'Solutions',
- 'Class:BusinessProcess/Attribute:solution_list+' => 'Solutions the process is relying on',
+ 'Class:BusinessProcess/Attribute:solution_list' => 'Application solutions',
+ 'Class:BusinessProcess/Attribute:solution_list+' => 'Application solutions the process is relying on',
'Class:BusinessProcess/Attribute:description' => 'Description',
'Class:BusinessProcess/Attribute:description+' => '',
));
@@ -591,6 +623,8 @@ Dict::Add('EN US', 'English', 'English', array(
Dict::Add('EN US', 'English', 'English', array(
'Class:Device' => 'Device',
'Class:Device+' => '',
+ 'Class:Device/Attribute:nwinterface_list' => 'Network interfaces',
+ 'Class:Device/Attribute:nwinterface_list+' => '',
));
//
@@ -743,7 +777,7 @@ Dict::Add('EN US', 'English', 'English', array(
//
Dict::Add('EN US', 'English', 'English', array(
- 'Class:lnkCIToDoc' => 'lnkCItoDoc',
+ 'Class:lnkCIToDoc' => 'Doc/CI',
'Class:lnkCIToDoc+' => '',
'Class:lnkCIToDoc/Attribute:ci_id' => 'CI',
'Class:lnkCIToDoc/Attribute:ci_id+' => '',
@@ -766,7 +800,7 @@ Dict::Add('EN US', 'English', 'English', array(
//
Dict::Add('EN US', 'English', 'English', array(
- 'Class:lnkCIToContact' => 'lnkCIToContact',
+ 'Class:lnkCIToContact' => 'CI/Contact',
'Class:lnkCIToContact+' => '',
'Class:lnkCIToContact/Attribute:ci_id' => 'CI',
'Class:lnkCIToContact/Attribute:ci_id+' => '',
@@ -789,11 +823,11 @@ Dict::Add('EN US', 'English', 'English', array(
//
Dict::Add('EN US', 'English', 'English', array(
- 'Class:lnkSolutionToCI' => 'lnkSolutionToCI',
+ 'Class:lnkSolutionToCI' => 'CI/Solution',
'Class:lnkSolutionToCI+' => '',
- 'Class:lnkSolutionToCI/Attribute:solution_id' => 'Solution',
+ 'Class:lnkSolutionToCI/Attribute:solution_id' => 'Application solution',
'Class:lnkSolutionToCI/Attribute:solution_id+' => '',
- 'Class:lnkSolutionToCI/Attribute:solution_name' => 'Solution',
+ 'Class:lnkSolutionToCI/Attribute:solution_name' => 'Application solution',
'Class:lnkSolutionToCI/Attribute:solution_name+' => '',
'Class:lnkSolutionToCI/Attribute:ci_id' => 'CI',
'Class:lnkSolutionToCI/Attribute:ci_id+' => '',
@@ -810,11 +844,11 @@ Dict::Add('EN US', 'English', 'English', array(
//
Dict::Add('EN US', 'English', 'English', array(
- 'Class:lnkProcessToSolution' => 'lnkProcessToSolution',
+ 'Class:lnkProcessToSolution' => 'Business process/Solution',
'Class:lnkProcessToSolution+' => '',
- 'Class:lnkProcessToSolution/Attribute:solution_id' => 'Solution',
+ 'Class:lnkProcessToSolution/Attribute:solution_id' => 'Application solution',
'Class:lnkProcessToSolution/Attribute:solution_id+' => '',
- 'Class:lnkProcessToSolution/Attribute:solution_name' => 'Solution',
+ 'Class:lnkProcessToSolution/Attribute:solution_name' => 'Application solution',
'Class:lnkProcessToSolution/Attribute:solution_name+' => '',
'Class:lnkProcessToSolution/Attribute:process_id' => 'Process',
'Class:lnkProcessToSolution/Attribute:process_id+' => '',
@@ -876,16 +910,14 @@ Dict::Add('EN US', 'English', 'English', array(
'Menu:BusinessProcess+' => 'All Business Processes',
'Menu:ApplicationSolution' => 'Application Solutions',
'Menu:ApplicationSolution+' => 'All Application Solutions',
-'Menu:ConfigManagementSoftware' => 'Software',
+'Menu:ConfigManagementSoftware' => 'Application Management',
'Menu:Licence' => 'Licences',
'Menu:Licence+' => 'All Licences',
'Menu:Patch' => 'Patches',
-'Menu:Patch+' => 'ALl Patches',
+'Menu:Patch+' => 'All Patches',
'Menu:ApplicationInstance' => 'Installed Applications',
'Menu:ApplicationInstance+' => 'All Installed Applications',
-'Menu:DatabaseInstance' => 'Database Instances',
-'Menu:DatabaseInstance+' => 'All Database Instances',
-'Menu:ConfigManagementHardware' => 'Hardware',
+'Menu:ConfigManagementHardware' => 'Infrastructure Management',
'Menu:Subnet' => 'Subnets',
'Menu:Subnet+' => 'All Subnets',
'Menu:NetworkDevice' => 'Network Devices',
diff --git a/modules/itop-config-mgmt-1.0.0/model.itop-config-mgmt.php b/modules/itop-config-mgmt-1.0.0/model.itop-config-mgmt.php
index 007e61816..efcef85eb 100644
--- a/modules/itop-config-mgmt-1.0.0/model.itop-config-mgmt.php
+++ b/modules/itop-config-mgmt-1.0.0/model.itop-config-mgmt.php
@@ -91,7 +91,10 @@ class Location extends cmdbAbstractObject
MetaModel::Init_AddAttribute(new AttributeExternalKey("parent_id", array("targetclass"=>"Location", "jointype"=>null, "allowed_values"=>null, "sql"=>"parent_id", "is_null_allowed"=>true, "on_target_delete"=>DEL_MANUAL, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeExternalField("parent_name", array("allowed_values"=>null, "extkey_attcode"=>"parent_id", "target_attcode"=>"name", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'address', 'postal_code', 'city', 'country', 'parent_id'));
+ MetaModel::Init_AddAttribute(new AttributeLinkedSet("contact_list", array("linked_class"=>"Contact", "ext_key_to_me"=>"location_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeLinkedSet("infra_list", array("linked_class"=>"InfrastructureCI", "ext_key_to_me"=>"location_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
+
+ MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'address', 'postal_code', 'city', 'country', 'parent_id', 'contact_list', 'infra_list'));
MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'country'));
MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'city', 'country'));
MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'city', 'country'));
@@ -162,7 +165,7 @@ class Person extends Contact
MetaModel::Init_SetZListItems('details', array('first_name', 'name', 'org_id', 'status', 'location_id', 'email', 'phone', 'employee_id', 'contract_list', 'ticket_list', 'ci_list'));
MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'email', 'phone', 'location_id', 'first_name', 'employee_id'));
MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'email', 'phone', 'location_id', 'first_name', 'employee_id'));
- MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'email', 'phone', 'location_id', 'employee_id'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'email', 'phone', 'location_id'));
}
public function GetName()
@@ -210,7 +213,7 @@ class lnkTeamToContact extends cmdbAbstractObject
"name_attcode" => "team_id",
"state_attcode" => "",
"reconc_keys" => array("name"),
- "db_table" => "lnk",
+ "db_table" => "lnkteamtocontact",
"db_key_field" => "id",
"db_finalclass_field" => "",
"display_template" => "",
@@ -226,11 +229,12 @@ class lnkTeamToContact extends cmdbAbstractObject
MetaModel::Init_AddAttribute(new AttributeExternalField("contact_location_name", array("allowed_values"=>null, "extkey_attcode"=>"contact_id", "target_attcode"=>"location_name", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeExternalField("contact_email", array("allowed_values"=>null, "extkey_attcode"=>"contact_id", "target_attcode"=>"email", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeExternalField("contact_phone", array("allowed_values"=>null, "extkey_attcode"=>"contact_id", "target_attcode"=>"phone", "is_null_allowed"=>true, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeString("role", array("allowed_values"=>null, "sql"=>"role", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('team_id', 'contact_id'));
- MetaModel::Init_SetZListItems('advanced_search', array('team_id', 'contact_id'));
- MetaModel::Init_SetZListItems('standard_search', array('team_id', 'contact_id'));
- MetaModel::Init_SetZListItems('list', array('team_id', 'contact_id', 'contact_location_id', 'contact_email', 'contact_phone'));
+ MetaModel::Init_SetZListItems('details', array('team_id', 'contact_id', 'role'));
+ MetaModel::Init_SetZListItems('advanced_search', array('team_id', 'contact_id', 'role'));
+ MetaModel::Init_SetZListItems('standard_search', array('team_id', 'contact_id', 'role'));
+ MetaModel::Init_SetZListItems('list', array('team_id', 'contact_id', 'contact_location_id', 'contact_email', 'contact_phone', 'role'));
}
}
abstract class Document extends cmdbAbstractObject
@@ -376,7 +380,7 @@ class Licence extends cmdbAbstractObject
(
"category" => "bizmodel,searchable,configmgmt",
"key_type" => "autoincrement",
- "name_attcode" => "provider",
+ "name_attcode" => "name",
"state_attcode" => "",
"reconc_keys" => array("name"),
"db_table" => "licence",
@@ -392,13 +396,15 @@ class Licence extends cmdbAbstractObject
MetaModel::Init_AddAttribute(new AttributeString("name", array("allowed_values"=>null, "sql"=>"name", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeDate("start", array("allowed_values"=>null, "sql"=>"start", "default_value"=>null, "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeDate("end", array("allowed_values"=>null, "sql"=>"end", "default_value"=>null, "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributeString("key", array("allowed_values"=>null, "sql"=>"key", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeString("licence_key", array("allowed_values"=>null, "sql"=>"licence_key", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeText("scope", array("allowed_values"=>null, "sql"=>"scope", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeInteger("usage_limit", array("allowed_values"=>null, "sql"=>"usage_limit", "default_value"=>null, "is_null_allowed"=>true, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeLinkedSet("usage_list", array("linked_class"=>"SoftwareInstance", "ext_key_to_me"=>"licence_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('provider', 'product', 'name', 'start', 'end', 'key', 'scope'));
- MetaModel::Init_SetZListItems('advanced_search', array('provider', 'product', 'name', 'start', 'end', 'key', 'scope'));
- MetaModel::Init_SetZListItems('standard_search', array('provider', 'product', 'name', 'start', 'end', 'key', 'scope'));
- MetaModel::Init_SetZListItems('list', array('provider', 'product', 'name', 'start', 'end', 'key', 'scope'));
+ MetaModel::Init_SetZListItems('details', array('provider', 'product', 'name', 'start', 'end', 'licence_key', 'scope', 'usage_limit'));
+ MetaModel::Init_SetZListItems('advanced_search', array('provider', 'product', 'name', 'start', 'end', 'licence_key', 'scope'));
+ MetaModel::Init_SetZListItems('standard_search', array('provider', 'product', 'name', 'start', 'end', 'licence_key', 'scope'));
+ MetaModel::Init_SetZListItems('list', array('provider', 'product', 'name', 'start', 'end'));
}
}
class Subnet extends cmdbAbstractObject
@@ -410,9 +416,9 @@ class Subnet extends cmdbAbstractObject
(
"category" => "bizmodel,searchable,configmgmt",
"key_type" => "autoincrement",
- "name_attcode" => "name",
+ "name_attcode" => "ip",
"state_attcode" => "",
- "reconc_keys" => array("name"),
+ "reconc_keys" => array("ip", "ip_mask"),
"db_table" => "subnet",
"db_key_field" => "id",
"db_finalclass_field" => "",
@@ -421,21 +427,22 @@ class Subnet extends cmdbAbstractObject
MetaModel::Init_Params($aParams);
MetaModel::Init_InheritAttributes();
- MetaModel::Init_AddAttribute(new AttributeString("name", array("allowed_values"=>null, "sql"=>"name", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
+ //MetaModel::Init_AddAttribute(new AttributeString("name", array("allowed_values"=>null, "sql"=>"name", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeWikiText("description", array("allowed_values"=>null, "sql"=>"description", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeExternalKey("org_id", array("targetclass"=>"Organization", "jointype"=>null, "allowed_values"=>null, "sql"=>"org_id", "is_null_allowed"=>false, "on_target_delete"=>DEL_MANUAL, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeExternalField("org_name", array("allowed_values"=>null, "extkey_attcode"=>"org_id", "target_attcode"=>"name", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeIPAddress("ip", array("allowed_values"=>null, "sql"=>"ip", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeIPAddress("ip_mask", array("allowed_values"=>null, "sql"=>"ip_mask", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'description', 'ip', 'ip_mask'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'description', 'ip', 'ip_mask'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'description', 'ip', 'ip_mask'));
- MetaModel::Init_SetZListItems('list', array('description', 'ip', 'ip_mask'));
+ MetaModel::Init_SetZListItems('details', array('description', 'org_id', 'ip', 'ip_mask'));
+ MetaModel::Init_SetZListItems('advanced_search', array('description', 'org_id', 'ip', 'ip_mask'));
+ MetaModel::Init_SetZListItems('standard_search', array('description', 'org_id', 'ip', 'ip_mask'));
+ MetaModel::Init_SetZListItems('list', array('description', 'org_id', 'ip', 'ip_mask'));
}
- public function ComputeValues()
+ public function GetName()
{
- $sName = $this->Get('ip').'/'.$this->Get('ip_mask');
- $this->Set('name', $sName);
+ return $this->Get('ip').' / '.$this->Get('ip_mask');
}
function DisplayBareRelations(WebPage $oPage, $bEditMode = false)
@@ -508,20 +515,20 @@ class Patch extends cmdbAbstractObject
MetaModel::Init_InheritAttributes();
MetaModel::Init_AddAttribute(new AttributeString("name", array("allowed_values"=>null, "sql"=>"name", "default_value"=>"", "is_null_allowed"=>false, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeWikiText("description", array("allowed_values"=>null, "sql"=>"description", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeString("target_sw", array("allowed_values"=>null, "sql"=>"target_sw", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeString("version", array("allowed_values"=>null, "sql"=>"version", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributeEnum("type", array("allowed_values"=>new ValueSetEnum('security,servicepack,fix'), "sql"=>"type", "default_value"=>"fix", "is_null_allowed"=>true, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeEnum("type", array("allowed_values"=>new ValueSetEnum('application,os,security,servicepack'), "sql"=>"type", "default_value"=>"security", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeLinkedSetIndirect("ci_list", array("linked_class"=>"lnkPatchToCI", "ext_key_to_me"=>"patch_id", "ext_key_to_remote"=>"ci_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'target_sw', 'version', 'type', 'ci_list'));
+ MetaModel::Init_SetZListItems('details', array('name', 'description', 'target_sw', 'version', 'type', 'ci_list'));
MetaModel::Init_SetZListItems('advanced_search', array('name', 'target_sw', 'version', 'type'));
MetaModel::Init_SetZListItems('standard_search', array('name', 'target_sw', 'version', 'type'));
MetaModel::Init_SetZListItems('list', array('target_sw', 'version', 'type'));
}
}
-class Application extends cmdbAbstractObject
+abstract class Software extends cmdbAbstractObject
{
-
public static function Init()
{
$aParams = array
@@ -531,7 +538,7 @@ class Application extends cmdbAbstractObject
"name_attcode" => "name",
"state_attcode" => "",
"reconc_keys" => array("name"),
- "db_table" => "application",
+ "db_table" => "software",
"db_key_field" => "id",
"db_finalclass_field" => "",
"icon" => "../business/templates/software.png",
@@ -541,17 +548,15 @@ class Application extends cmdbAbstractObject
MetaModel::Init_AddAttribute(new AttributeString("name", array("allowed_values"=>null, "sql"=>"name", "default_value"=>"", "is_null_allowed"=>false, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeWikiText("description", array("allowed_values"=>null, "sql"=>"description", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributeLinkedSet("instance_list", array("linked_class"=>"ApplicationInstance", "ext_key_to_me"=>"application_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'description', 'instance_list'));
+ MetaModel::Init_SetZListItems('details', array('name', 'description'));
MetaModel::Init_SetZListItems('advanced_search', array('name', 'description'));
MetaModel::Init_SetZListItems('standard_search', array('name', 'description'));
MetaModel::Init_SetZListItems('list', array('description'));
}
}
-class DBServer extends Application
+class Application extends Software
{
-
public static function Init()
{
$aParams = array
@@ -561,7 +566,7 @@ class DBServer extends Application
"name_attcode" => "name",
"state_attcode" => "",
"reconc_keys" => array("name"),
- "db_table" => "application_db",
+ "db_table" => "software_app",
"db_key_field" => "id",
"db_finalclass_field" => "",
"icon" => "../business/templates/software.png",
@@ -569,13 +574,42 @@ class DBServer extends Application
MetaModel::Init_Params($aParams);
MetaModel::Init_InheritAttributes();
+ MetaModel::Init_AddAttribute(new AttributeLinkedSet("instance_list", array("linked_class"=>"ApplicationInstance", "ext_key_to_me"=>"software_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
+
MetaModel::Init_SetZListItems('details', array('name', 'description', 'instance_list'));
MetaModel::Init_SetZListItems('advanced_search', array('name', 'description'));
MetaModel::Init_SetZListItems('standard_search', array('name', 'description'));
MetaModel::Init_SetZListItems('list', array('description'));
}
}
-class OperatingSystem extends Application
+class DBServer extends Software
+{
+ public static function Init()
+ {
+ $aParams = array
+ (
+ "category" => "bizmodel,searchable,configmgmt",
+ "key_type" => "autoincrement",
+ "name_attcode" => "name",
+ "state_attcode" => "",
+ "reconc_keys" => array("name"),
+ "db_table" => "software_db",
+ "db_key_field" => "id",
+ "db_finalclass_field" => "",
+ "icon" => "../business/templates/software.png",
+ );
+ MetaModel::Init_Params($aParams);
+ MetaModel::Init_InheritAttributes();
+
+ MetaModel::Init_AddAttribute(new AttributeLinkedSet("instance_list", array("linked_class"=>"DBServerInstance", "ext_key_to_me"=>"software_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
+
+ MetaModel::Init_SetZListItems('details', array('name', 'description', 'instance_list'));
+ MetaModel::Init_SetZListItems('advanced_search', array('name', 'description'));
+ MetaModel::Init_SetZListItems('standard_search', array('name', 'description'));
+ MetaModel::Init_SetZListItems('list', array('description'));
+ }
+}
+class OperatingSystem extends Software
{
public static function Init()
@@ -587,7 +621,7 @@ class OperatingSystem extends Application
"name_attcode" => "name",
"state_attcode" => "",
"reconc_keys" => array("name"),
- "db_table" => "application_os",
+ "db_table" => "software_os",
"db_key_field" => "id",
"db_finalclass_field" => "",
"icon" => "../business/templates/software.png",
@@ -603,7 +637,6 @@ class OperatingSystem extends Application
}
class lnkPatchToCI extends cmdbAbstractObject
{
-
public static function Init()
{
$aParams = array
@@ -655,18 +688,20 @@ abstract class FunctionalCI extends cmdbAbstractObject
MetaModel::Init_AddAttribute(new AttributeString("name", array("allowed_values"=>null, "sql"=>"name", "default_value"=>"", "is_null_allowed"=>false, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeEnum("status", array("allowed_values"=>new ValueSetEnum('implementation,production,obsolete'), "sql"=>"status", "default_value"=>"implementation", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributeExternalKey("owner_id", array("targetclass"=>"Organization", "jointype"=>null, "allowed_values"=>null, "sql"=>"owner_id", "is_null_allowed"=>false, "on_target_delete"=>DEL_MANUAL, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributeExternalField("owner_name", array("allowed_values"=>null, "extkey_attcode"=>"owner_id", "target_attcode"=>"name", "is_null_allowed"=>true, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeExternalKey("org_id", array("targetclass"=>"Organization", "jointype"=>null, "allowed_values"=>null, "sql"=>"org_id", "is_null_allowed"=>false, "on_target_delete"=>DEL_MANUAL, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeExternalField("owner_name", array("allowed_values"=>null, "extkey_attcode"=>"org_id", "target_attcode"=>"name", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeEnum("importance", array("allowed_values"=>new ValueSetEnum('low,medium,high'), "sql"=>"importance", "default_value"=>"medium", "is_null_allowed"=>false, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeLinkedSetIndirect("contact_list", array("linked_class"=>"lnkCIToContact", "ext_key_to_me"=>"ci_id", "ext_key_to_remote"=>"contact_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeLinkedSetIndirect("document_list", array("linked_class"=>"lnkCIToDoc", "ext_key_to_me"=>"ci_id", "ext_key_to_remote"=>"document_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeLinkedSetIndirect("solution_list", array("linked_class"=>"lnkSolutionToCI", "ext_key_to_me"=>"ci_id", "ext_key_to_remote"=>"solution_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeLinkedSetIndirect("contract_list", array("linked_class"=>"lnkContractToCI", "ext_key_to_me"=>"ci_id", "ext_key_to_remote"=>"contract_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeLinkedSetIndirect("ticket_list", array("linked_class"=>"lnkTicketToCI", "ext_key_to_me"=>"ci_id", "ext_key_to_remote"=>"ticket_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'owner_id', 'importance', 'contact_list', 'document_list', 'solution_list'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'owner_id', 'importance'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'owner_id', 'importance'));
- MetaModel::Init_SetZListItems('list', array('status', 'owner_id', 'importance'));
+ MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'importance', 'contact_list', 'document_list', 'solution_list', 'contract_list', 'ticket_list'));
+ MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'importance'));
+ MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'importance'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance'));
}
public static function GetRelationQueries($sRelCode)
@@ -683,19 +718,18 @@ abstract class FunctionalCI extends cmdbAbstractObject
}
}
-class ApplicationInstance extends FunctionalCI
+abstract class SoftwareInstance extends FunctionalCI
{
-
public static function Init()
{
$aParams = array
(
"category" => "bizmodel,searchable,configmgmt",
"key_type" => "autoincrement",
- "name_attcode" => "name",
+ "name_attcode" => "software_name",
"state_attcode" => "",
- "reconc_keys" => array("name"),
- "db_table" => "applicationinstance",
+ "reconc_keys" => array("software_id", "device_id"),
+ "db_table" => "softwareinstance",
"db_key_field" => "id",
"db_finalclass_field" => "",
"icon" => "../business/templates/application.png",
@@ -707,15 +741,25 @@ class ApplicationInstance extends FunctionalCI
MetaModel::Init_AddAttribute(new AttributeExternalField("device_name", array("allowed_values"=>null, "extkey_attcode"=>"device_id", "target_attcode"=>"name", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeExternalKey("licence_id", array("targetclass"=>"Licence", "jointype"=>null, "allowed_values"=>null, "sql"=>"licence_id", "is_null_allowed"=>true, "on_target_delete"=>DEL_MANUAL, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeExternalField("licence_name", array("allowed_values"=>null, "extkey_attcode"=>"licence_id", "target_attcode"=>"name", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributeExternalKey("application_id", array("targetclass"=>"Application", "jointype"=>null, "allowed_values"=>null, "sql"=>"application_id", "is_null_allowed"=>true, "on_target_delete"=>DEL_MANUAL, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributeExternalField("application_name", array("allowed_values"=>null, "extkey_attcode"=>"application_id", "target_attcode"=>"name", "is_null_allowed"=>true, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeExternalKey("software_id", array("targetclass"=>"Software", "jointype"=>null, "allowed_values"=>null, "sql"=>"software_id", "is_null_allowed"=>false, "on_target_delete"=>DEL_MANUAL, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeExternalField("software_name", array("allowed_values"=>null, "extkey_attcode"=>"software_id", "target_attcode"=>"name", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeString("version", array("allowed_values"=>null, "sql"=>"version", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeWikiText("description", array("allowed_values"=>null, "sql"=>"description", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'owner_id', 'importance', 'device_id', 'licence_id', 'application_id', 'version', 'description'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'owner_id', 'importance', 'device_id', 'licence_id', 'application_id', 'version', 'description'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'owner_id', 'importance', 'device_id', 'licence_id', 'application_id', 'version', 'description'));
- MetaModel::Init_SetZListItems('list', array('status', 'owner_id', 'importance', 'device_id', 'licence_id', 'application_id', 'version', 'description'));
+ MetaModel::Init_SetZListItems('details', array('status', 'org_id', 'importance', 'device_id', 'licence_id', 'software_id', 'version', 'description'));
+ MetaModel::Init_SetZListItems('advanced_search', array('status', 'org_id', 'importance', 'device_id', 'licence_id', 'software_id', 'version'));
+ MetaModel::Init_SetZListItems('standard_search', array('status', 'org_id', 'importance', 'device_id', 'licence_id', 'software_id', 'version'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance', 'device_id', 'software_id', 'version'));
+ }
+
+ public function GetName()
+ {
+ return $this->Get('software_name').' - '.$this->Get('device_name');
+ }
+
+ public function ComputeValues()
+ {
+ return $this->Set('name', $this->GetName());
}
public static function GetRelationQueries($sRelCode)
@@ -724,13 +768,65 @@ class ApplicationInstance extends FunctionalCI
{
case "impacts":
$aRels = array(
- // Actually this should be limited to the ApplicationInstances based on a DBServer Application type...
+ // Actually this should be limited to the Software instances based on a DBServer Application type...
"db_instances" => array("sQuery"=>"SELECT DatabaseInstance AS db WHERE db.db_server_instance_id = :this->id", "bPropagate"=>true, "iDistance"=>5),
);
return array_merge($aRels, parent::GetRelationQueries($sRelCode));
}
}
}
+class DBServerInstance extends SoftwareInstance
+{
+ public static function Init()
+ {
+ $aParams = array
+ (
+ "category" => "bizmodel,searchable,configmgmt",
+ "key_type" => "autoincrement",
+ "name_attcode" => "software_name",
+ "state_attcode" => "",
+ "reconc_keys" => array("software_id", "device_id"),
+ "db_table" => "softwareinstance_dbserver",
+ "db_key_field" => "id",
+ "db_finalclass_field" => "",
+ "icon" => "../business/templates/application.png",
+ );
+ MetaModel::Init_Params($aParams);
+ MetaModel::Init_InheritAttributes();
+
+ MetaModel::Init_AddAttribute(new AttributeLinkedSet("dbinstance_list", array("linked_class"=>"DatabaseInstance", "ext_key_to_me"=>"db_server_instance_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
+
+ MetaModel::Init_SetZListItems('details', array('status', 'org_id', 'importance', 'device_id', 'licence_id', 'software_id', 'version', 'description', 'dbinstance_list'));
+ MetaModel::Init_SetZListItems('advanced_search', array('status', 'org_id', 'importance', 'device_id', 'licence_id', 'software_id', 'version'));
+ MetaModel::Init_SetZListItems('standard_search', array('status', 'org_id', 'importance', 'device_id', 'licence_id', 'software_id', 'version'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance', 'device_id', 'software_id', 'version'));
+ }
+}
+class ApplicationInstance extends SoftwareInstance
+{
+ public static function Init()
+ {
+ $aParams = array
+ (
+ "category" => "bizmodel,searchable,configmgmt",
+ "key_type" => "autoincrement",
+ "name_attcode" => "software_name",
+ "state_attcode" => "",
+ "reconc_keys" => array("software_id", "device_id"),
+ "db_table" => "softwareinstance_application",
+ "db_key_field" => "id",
+ "db_finalclass_field" => "",
+ "icon" => "../business/templates/application.png",
+ );
+ MetaModel::Init_Params($aParams);
+ MetaModel::Init_InheritAttributes();
+
+ MetaModel::Init_SetZListItems('details', array('status', 'org_id', 'importance', 'device_id', 'licence_id', 'software_id', 'version', 'description'));
+ MetaModel::Init_SetZListItems('advanced_search', array('status', 'org_id', 'importance', 'device_id', 'licence_id', 'software_id', 'version'));
+ MetaModel::Init_SetZListItems('standard_search', array('status', 'org_id', 'importance', 'device_id', 'licence_id', 'software_id', 'version'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance', 'device_id', 'software_id', 'version'));
+ }
+}
class DatabaseInstance extends FunctionalCI
{
@@ -752,17 +848,20 @@ class DatabaseInstance extends FunctionalCI
MetaModel::Init_Params($aParams);
MetaModel::Init_InheritAttributes();
- MetaModel::Init_AddAttribute(new AttributeExternalKey("db_server_instance_id", array("targetclass"=>"ApplicationInstance", "jointype"=>null, "allowed_values"=>new ValueSetObjects('SELECT ApplicationInstance AS DBSrvInstance JOIN DBServer AS DBServerSW ON DBSrvInstance.application_id = DBServerSW.id WHERE DBServerSW.finalclass=\'DBServer\''), "sql"=>"db_server_instance_id", "is_null_allowed"=>true, "on_target_delete"=>DEL_MANUAL, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeExternalKey("db_server_instance_id", array("targetclass"=>"DBServerInstance", "jointype"=>null, "allowed_values"=>null, "sql"=>"db_server_instance_id", "is_null_allowed"=>true, "on_target_delete"=>DEL_MANUAL, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeExternalField("db_server_instance_name", array("allowed_values"=>null, "extkey_attcode"=>"db_server_instance_id", "target_attcode"=>"name", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeExternalField("db_server_instance_version", array("allowed_values"=>null, "extkey_attcode"=>"db_server_instance_id", "target_attcode"=>"version", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributePassword("admin_login", array("allowed_values"=>null, "sql"=>"admin_login", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributePassword("admin_password", array("allowed_values"=>null, "sql"=>"admin_password", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeWikiText("description", array("allowed_values"=>null, "sql"=>"description", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'owner_id', 'importance', 'db_server_instance_id', 'db_server_instance_version', 'admin_login', 'admin_password', 'description'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'owner_id', 'importance', 'db_server_instance_id', 'db_server_instance_version', 'description'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'owner_id', 'importance', 'db_server_instance_id', 'db_server_instance_version', 'description'));
- MetaModel::Init_SetZListItems('list', array('status', 'owner_id', 'importance', 'db_server_instance_id', 'db_server_instance_version'));
+ MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'importance', 'db_server_instance_id', 'db_server_instance_version', 'description'));
+ MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'importance', 'db_server_instance_id', 'db_server_instance_version'));
+ MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'importance', 'db_server_instance_id', 'db_server_instance_version'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance', 'db_server_instance_id', 'db_server_instance_version'));
+ }
+
+ public function GetName()
+ {
+ return $this->Get('name').' - '.$this->Get('db_server_instance_name');
}
}
class ApplicationSolution extends FunctionalCI
@@ -789,10 +888,10 @@ class ApplicationSolution extends FunctionalCI
MetaModel::Init_AddAttribute(new AttributeLinkedSetIndirect("ci_list", array("linked_class"=>"lnkSolutionToCI", "ext_key_to_me"=>"solution_id", "ext_key_to_remote"=>"ci_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeLinkedSetIndirect("process_list", array("linked_class"=>"lnkProcessToSolution", "ext_key_to_me"=>"solution_id", "ext_key_to_remote"=>"process_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'owner_id', 'importance', 'description', 'ci_list', 'process_list'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'owner_id', 'importance', 'description'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'owner_id', 'importance', 'description'));
- MetaModel::Init_SetZListItems('list', array('status', 'owner_id', 'importance', 'description'));
+ MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'importance', 'description', 'ci_list', 'process_list'));
+ MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'importance'));
+ MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'importance'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance'));
}
public static function GetRelationQueries($sRelCode)
@@ -828,12 +927,12 @@ class BusinessProcess extends FunctionalCI
MetaModel::Init_InheritAttributes();
MetaModel::Init_AddAttribute(new AttributeWikiText("description", array("allowed_values"=>null, "sql"=>"description", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributeLinkedSetIndirect("solution_list", array("linked_class"=>"lnkProcessToSolution", "ext_key_to_me"=>"process_id", "ext_key_to_remote"=>"solution_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeLinkedSetIndirect("used_solution_list", array("linked_class"=>"lnkProcessToSolution", "ext_key_to_me"=>"process_id", "ext_key_to_remote"=>"solution_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'owner_id', 'importance', 'description', 'solution_list'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'owner_id', 'importance', 'description'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'owner_id', 'importance', 'description'));
- MetaModel::Init_SetZListItems('list', array('status', 'owner_id', 'importance', 'description'));
+ MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'importance', 'description', 'used_solution_list'));
+ MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'importance', 'description'));
+ MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'importance', 'description'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance', 'description'));
}
}
abstract class ConnectableCI extends FunctionalCI
@@ -861,10 +960,10 @@ abstract class ConnectableCI extends FunctionalCI
MetaModel::Init_AddAttribute(new AttributeString("serial_number", array("allowed_values"=>null, "sql"=>"serial_number", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeString("asset_ref", array("allowed_values"=>null, "sql"=>"asset_ref", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
- MetaModel::Init_SetZListItems('list', array('status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
+ MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
+ MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
+ MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
}
}
class NetworkInterface extends ConnectableCI
@@ -899,11 +998,17 @@ class NetworkInterface extends ConnectableCI
MetaModel::Init_AddAttribute(new AttributeExternalKey("connected_if", array("targetclass"=>"NetworkInterface", "jointype"=>null, "allowed_values"=>null, "sql"=>"connected_if", "is_null_allowed"=>true, "on_target_delete"=>DEL_AUTO, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeExternalField("connected_name", array("allowed_values"=>null, "extkey_attcode"=>"connected_if", "target_attcode"=>"name", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeExternalField("connected_if_device_id", array("allowed_values"=>null, "extkey_attcode"=>"connected_if", "target_attcode"=>"device_id", "is_null_allowed"=>true, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeExternalField("connected_if_device_id_name", array("allowed_values"=>null, "extkey_attcode"=>"connected_if", "target_attcode"=>"device_name", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'device_id', 'logical_type', 'physical_type', 'ip_address', 'ip_mask', 'mac_address', 'speed', 'duplex', 'connected_if', 'connected_if_device_id'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'device_id', 'logical_type', 'physical_type', 'ip_address', 'ip_mask', 'mac_address', 'speed', 'duplex', 'connected_if', 'connected_if_device_id'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'device_id', 'logical_type', 'physical_type', 'ip_address', 'ip_mask', 'mac_address', 'speed', 'duplex', 'connected_if', 'connected_if_device_id'));
- MetaModel::Init_SetZListItems('list', array('status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'device_id', 'logical_type', 'physical_type', 'ip_address', 'ip_mask', 'mac_address', 'speed', 'duplex', 'connected_if', 'connected_if_device_id'));
+ MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'device_id', 'logical_type', 'physical_type', 'ip_address', 'ip_mask', 'mac_address', 'speed', 'duplex', 'connected_if', 'connected_if_device_id'));
+ MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'device_id', 'logical_type', 'physical_type', 'ip_address', 'ip_mask', 'mac_address', 'speed', 'duplex', 'connected_if', 'connected_if_device_id'));
+ MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'device_id', 'logical_type', 'physical_type', 'ip_address', 'ip_mask', 'mac_address', 'speed', 'duplex', 'connected_if', 'connected_if_device_id'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance', 'device_id', 'logical_type', 'physical_type', 'connected_if'));
+ }
+
+ public function GetName()
+ {
+ return $this->Get('device_name').' - '.$this->Get('name');
}
}
abstract class Device extends ConnectableCI
@@ -926,10 +1031,12 @@ abstract class Device extends ConnectableCI
MetaModel::Init_Params($aParams);
MetaModel::Init_InheritAttributes();
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'application_list'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
- MetaModel::Init_SetZListItems('list', array('status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
+ MetaModel::Init_AddAttribute(new AttributeLinkedSet("nwinterface_list", array("linked_class"=>"NetworkInterface", "ext_key_to_me"=>"device_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
+
+ MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'application_list', 'nwinterface_list'));
+ MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
+ MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
}
public static function GetRelationQueries($sRelCode)
@@ -938,7 +1045,7 @@ abstract class Device extends ConnectableCI
{
case "impacts":
$aRels = array(
- "applications" => array("sQuery"=>"SELECT ApplicationInstance AS app WHERE app.device_id = :this->id", "bPropagate"=>true, "iDistance"=>5),
+ "applications" => array("sQuery"=>"SELECT SoftwareInstance AS app WHERE app.device_id = :this->id", "bPropagate"=>true, "iDistance"=>5),
);
return array_merge($aRels, parent::GetRelationQueries($sRelCode));
}
@@ -969,13 +1076,13 @@ class PC extends Device
MetaModel::Init_AddAttribute(new AttributeString("hdd", array("allowed_values"=>null, "sql"=>"hdd", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeString("os_family", array("allowed_values"=>null, "sql"=>"os_family", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeString("os_version", array("allowed_values"=>null, "sql"=>"os_version", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributeLinkedSet("application_list", array("linked_class"=>"ApplicationInstance", "ext_key_to_me"=>"device_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeLinkedSet("application_list", array("linked_class"=>"SoftwareInstance", "ext_key_to_me"=>"device_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeLinkedSetIndirect("patch_list", array("linked_class"=>"lnkPatchToCI", "ext_key_to_me"=>"ci_id", "ext_key_to_remote"=>"patch_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'cpu', 'ram', 'hdd', 'os_family', 'os_version', 'application_list', 'patch_list'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'cpu', 'ram', 'hdd', 'os_family', 'os_version'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'cpu', 'ram', 'hdd', 'os_family', 'os_version'));
- MetaModel::Init_SetZListItems('list', array('status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'cpu', 'ram', 'hdd', 'os_family', 'os_version'));
+ MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'cpu', 'ram', 'hdd', 'os_family', 'os_version', 'application_list', 'patch_list'));
+ MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'cpu', 'ram', 'hdd', 'os_family', 'os_version'));
+ MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'cpu', 'ram', 'hdd', 'os_family', 'os_version'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance', 'brand', 'model', 'os_family'));
}
}
abstract class MobileCI extends Device
@@ -999,10 +1106,10 @@ abstract class MobileCI extends Device
MetaModel::Init_InheritAttributes();
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
- MetaModel::Init_SetZListItems('list', array('status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
+ MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
+ MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
+ MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref'));
}
}
class MobilePhone extends MobileCI
@@ -1027,12 +1134,12 @@ class MobilePhone extends MobileCI
MetaModel::Init_AddAttribute(new AttributeString("number", array("allowed_values"=>null, "sql"=>"number", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeString("imei", array("allowed_values"=>null, "sql"=>"IMIE", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributePassword("hw_pin", array("allowed_values"=>null, "sql"=>"hw_pin", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeString("hw_pin", array("allowed_values"=>null, "sql"=>"hw_pin", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'number', 'imei', 'hw_pin'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'number', 'imei'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'number', 'imei'));
- MetaModel::Init_SetZListItems('list', array('status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'number', 'imei', 'hw_pin'));
+ MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'number', 'imei', 'hw_pin'));
+ MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'number', 'imei'));
+ MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'number', 'imei'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance', 'brand', 'model'));
}
}
abstract class InfrastructureCI extends Device
@@ -1056,16 +1163,16 @@ abstract class InfrastructureCI extends Device
MetaModel::Init_InheritAttributes();
MetaModel::Init_AddAttribute(new AttributeWikiText("description", array("allowed_values"=>null, "sql"=>"description", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributeExternalKey("location_id", array("targetclass"=>"Location", "jointype"=>null, "allowed_values"=>null, "sql"=>"location_id", "is_null_allowed"=>true, "on_target_delete"=>DEL_MANUAL, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeExternalKey("location_id", array("targetclass"=>"Location", "jointype"=>null, "allowed_values"=>new ValueSetObjects('SELECT Location AS l WHERE l.org_id = :this->org_id'), "sql"=>"location_id", "is_null_allowed"=>true, "on_target_delete"=>DEL_MANUAL, "depends_on"=>array("org_id"))));
MetaModel::Init_AddAttribute(new AttributeExternalField("location_name", array("allowed_values"=>null, "extkey_attcode"=>"location_id", "target_attcode"=>"name", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeText("location_details", array("allowed_values"=>null, "sql"=>"location_details", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeIPAddress("management_ip", array("allowed_values"=>null, "sql"=>"management_ip", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeString("default_gateway", array("allowed_values"=>null, "sql"=>"default_gateway", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway'));
- MetaModel::Init_SetZListItems('list', array('status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway'));
+ MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway'));
+ MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway'));
+ MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway'));
+ MetaModel::Init_SetZListItems('list', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'location_id'));
}
}
class NetworkDevice extends InfrastructureCI
@@ -1091,13 +1198,13 @@ class NetworkDevice extends InfrastructureCI
MetaModel::Init_AddAttribute(new AttributeEnum("type", array("allowed_values"=>new ValueSetEnum('wanaccelerator,firewall,hub,loadbalancer,router,switch'), "sql"=>"type", "default_value"=>"switch", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeString("ios_version", array("allowed_values"=>null, "sql"=>"ios_version", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeString("ram", array("allowed_values"=>null, "sql"=>"ram", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributePassword("snmp_read", array("allowed_values"=>null, "sql"=>"snmp_read", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributePassword("snmp_write", array("allowed_values"=>null, "sql"=>"snmp_write", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeString("snmp_read", array("allowed_values"=>null, "sql"=>"snmp_read", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeString("snmp_write", array("allowed_values"=>null, "sql"=>"snmp_write", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'type', 'ios_version', 'ram', 'snmp_read', 'snmp_write'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'type', 'ios_version', 'ram'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'type', 'ios_version', 'ram'));
- MetaModel::Init_SetZListItems('list', array('status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'type', 'ios_version', 'ram', 'snmp_read', 'snmp_write'));
+ MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'type', 'ios_version', 'ram', 'snmp_read', 'snmp_write'));
+ MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'type', 'ios_version', 'ram'));
+ MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'type', 'ios_version', 'ram'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance', 'brand', 'model', 'location_id', 'type'));
}
}
class Server extends InfrastructureCI
@@ -1125,13 +1232,13 @@ class Server extends InfrastructureCI
MetaModel::Init_AddAttribute(new AttributeString("hdd", array("allowed_values"=>null, "sql"=>"hdd", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeString("os_family", array("allowed_values"=>null, "sql"=>"os_family", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeString("os_version", array("allowed_values"=>null, "sql"=>"os_version", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_AddAttribute(new AttributeLinkedSet("application_list", array("linked_class"=>"ApplicationInstance", "ext_key_to_me"=>"device_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeLinkedSet("application_list", array("linked_class"=>"SoftwareInstance", "ext_key_to_me"=>"device_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeLinkedSetIndirect("patch_list", array("linked_class"=>"lnkPatchToCI", "ext_key_to_me"=>"ci_id", "ext_key_to_remote"=>"patch_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'cpu', 'ram', 'hdd', 'os_family', 'os_version', 'application_list', 'patch_list'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'cpu', 'ram', 'hdd', 'os_family', 'os_version'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'cpu', 'ram', 'hdd', 'os_family', 'os_version'));
- MetaModel::Init_SetZListItems('list', array('status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'cpu', 'ram', 'hdd', 'os_family', 'os_version'));
+ MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'cpu', 'ram', 'hdd', 'os_family', 'os_version', 'application_list', 'patch_list'));
+ MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'cpu', 'ram', 'hdd', 'os_family', 'os_version'));
+ MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'cpu', 'ram', 'hdd', 'os_family', 'os_version'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance', 'brand', 'model', 'location_id', 'os_family'));
}
}
class Printer extends InfrastructureCI
@@ -1157,10 +1264,10 @@ class Printer extends InfrastructureCI
MetaModel::Init_AddAttribute(new AttributeEnum("type", array("allowed_values"=>new ValueSetEnum('mopier,printer'), "sql"=>"type", "default_value"=>"printer", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeEnum("technology", array("allowed_values"=>new ValueSetEnum('laser,inkjet,tracer'), "sql"=>"technology", "default_value"=>"laser", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'type', 'technology'));
- MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'type', 'technology'));
- MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'type', 'technology'));
- MetaModel::Init_SetZListItems('list', array('status', 'owner_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'type', 'technology'));
+ MetaModel::Init_SetZListItems('details', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'type', 'technology'));
+ MetaModel::Init_SetZListItems('advanced_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'type', 'technology'));
+ MetaModel::Init_SetZListItems('standard_search', array('name', 'status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'type', 'technology'));
+ MetaModel::Init_SetZListItems('list', array('status', 'org_id', 'importance', 'brand', 'model', 'serial_number', 'asset_ref', 'description', 'location_id', 'location_details', 'management_ip', 'default_gateway', 'type', 'technology'));
}
}
class lnkCIToDoc extends cmdbAbstractObject
@@ -1345,8 +1452,9 @@ new OQLMenuNode('ApplicationSolution', 'SELECT ApplicationSolution', $oCINode->G
$oSWNode = new TemplateMenuNode('ConfigManagementSoftware', '', $oCINode->GetIndex(), 2 /* fRank */);
new OQLMenuNode('Licence', 'SELECT Licence', $oSWNode->GetIndex(), 0 /* fRank */);
new OQLMenuNode('Patch', 'SELECT Patch', $oSWNode->GetIndex(), 1 /* fRank */);
-new OQLMenuNode('ApplicationInstance', 'SELECT ApplicationInstance', $oSWNode->GetIndex(), 2 /* fRank */);
-new OQLMenuNode('DatabaseInstance', 'SELECT DatabaseInstance', $oSWNode->GetIndex(), 3 /* fRank */);
+new OQLMenuNode('ApplicationInstance', 'SELECT SoftwareInstance', $oSWNode->GetIndex(), 2 /* fRank */);
+new OQLMenuNode('vraieappliinstance', 'SELECT ApplicationInstance', $oSWNode->GetIndex(), 3 /* fRank */);
+new OQLMenuNode('DBServerInstance', 'SELECT DBServerInstance', $oSWNode->GetIndex(), 3 /* fRank */);
$oHWNode = new TemplateMenuNode('ConfigManagementHardware', '', $oCINode->GetIndex(), 3 /* fRank */);
new OQLMenuNode('Subnet', 'SELECT Subnet', $oHWNode->GetIndex(), 0 /* fRank */);
@@ -1356,5 +1464,4 @@ new OQLMenuNode('Printer', 'SELECT Printer', $oHWNode->GetIndex(), 3 /* fRank */
new OQLMenuNode('MobilePhone', 'SELECT MobilePhone', $oHWNode->GetIndex(), 4 /* fRank */);
new OQLMenuNode('PC', 'SELECT PC', $oHWNode->GetIndex(), 5 /* fRank */);
-
?>
diff --git a/modules/itop-incident-mgmt-1.0.0/model.itop-incident-mgmt.php b/modules/itop-incident-mgmt-1.0.0/model.itop-incident-mgmt.php
index 88b97683e..311944b35 100644
--- a/modules/itop-incident-mgmt-1.0.0/model.itop-incident-mgmt.php
+++ b/modules/itop-incident-mgmt-1.0.0/model.itop-incident-mgmt.php
@@ -42,15 +42,25 @@ class Incident extends ResponseTicket
MetaModel::Init_Params($aParams);
MetaModel::Init_InheritAttributes();
MetaModel::Init_InheritLifecycle();
+
+ MetaModel::Init_SetZListItems('details', array('ref', 'title', 'ticket_log', 'start_date', 'escalation_deadline', 'closure_deadline', 'document_list', 'ci_list', 'contact_list', 'status', 'caller_id', 'customer_id', 'service_id', 'servicesubcategory_id', 'product', 'impact', 'urgency', 'priority', 'workgroup_id', 'agent_id', 'agent_email', 'related_problem_id', 'related_change_id', 'closure_date', 'last_update', 'assignment_date', 'closure_deadline', 'resolution_code', 'solution', 'user_satisfaction', 'user_commment'));
+ MetaModel::Init_SetZListItems('advanced_search', array('ref', 'title', 'ticket_log', 'start_date', 'status', 'caller_id', 'customer_id', 'service_id', 'servicesubcategory_id', 'product', 'impact', 'urgency', 'priority', 'workgroup_id', 'agent_id', 'agent_email', 'related_problem_id', 'related_change_id', 'closure_date', 'last_update', 'assignment_date', 'escalation_deadline', 'closure_deadline', 'resolution_code', 'solution', 'user_satisfaction', 'user_commment'));
+ MetaModel::Init_SetZListItems('standard_search', array('ref', 'title', 'ticket_log', 'start_date', 'status', 'caller_id', 'customer_id', 'service_id', 'servicesubcategory_id', 'product', 'impact', 'urgency', 'priority', 'workgroup_id', 'agent_id', 'agent_email', 'related_problem_id', 'related_change_id', 'closure_date', 'last_update', 'assignment_date', 'escalation_deadline', 'closure_deadline', 'resolution_code', 'solution', 'user_satisfaction', 'user_commment'));
+ MetaModel::Init_SetZListItems('list', array('ref', 'title', 'ticket_log', 'start_date', 'status', 'caller_id', 'customer_id', 'service_id', 'servicesubcategory_id', 'product', 'impact', 'urgency', 'priority', 'workgroup_id', 'agent_id', 'agent_email', 'related_problem_id', 'related_change_id', 'closure_date', 'last_update', 'assignment_date', 'escalation_deadline', 'closure_deadline', 'resolution_code', 'solution', 'user_satisfaction', 'user_commment'));
}
}
$oMyMenuGroup = new MenuGroup('IncidentManagement', 1 /* fRank */);
// By default, one entry per class
-new OQLMenuNode('Incidents', 'SELECT Incident', $oMyMenuGroup->GetIndex(), 0 /* fRank */);
+//new TemplateMenuNode('MyIncidents', 'SELECT Incident', $oMyMenuGroup->GetIndex(), 0 /* fRank */);
+// incident dont je suis caller
+// incident dont je suis requester
new OQLMenuNode('OpenedIncidents', 'SELECT Incident WHERE status IN ("new", "assigned", "escalation")', $oMyMenuGroup->GetIndex(), 0 /* fRank */);
-new OQLMenuNode('ClosedIncidents', 'SELECT Incident WHERE status IN ("resolved", "closed")', $oMyMenuGroup->GetIndex(), 0 /* fRank */);
+//new OQLMenuNode('EscalatedIncidents', 'SELECT Incident WHERE status IN ("escalation")', $oMyMenuGroup->GetIndex(), 0 /* fRank */);
+//new TemplateMenuNode('IncidentOverview', 'SELECT Incident', $oMyMenuGroup->GetIndex(), 0 /* fRank */);
+
+
//new TemplateMenuNode('WelcomeMenuPage', '../business/templates/welcome_menu.html', $oWelcomeMenu->GetIndex() /* oParent */, 1 /* fRank */);
diff --git a/modules/itop-service-mgmt-1.0.0/model.itop-service-mgmt.php b/modules/itop-service-mgmt-1.0.0/model.itop-service-mgmt.php
index 82d297023..f392fd322 100644
--- a/modules/itop-service-mgmt-1.0.0/model.itop-service-mgmt.php
+++ b/modules/itop-service-mgmt-1.0.0/model.itop-service-mgmt.php
@@ -91,7 +91,7 @@ class ProviderContract extends Contract
MetaModel::Init_SetZListItems('details', array('name', 'description', 'start_date', 'end_date', 'cost', 'cost_currency', 'cost_unit', 'billing_frequency', 'contact_list', 'document_list', 'ci_list', 'provider_id', 'ola', 'coverage', 'customer_list'));
MetaModel::Init_SetZListItems('advanced_search', array('name', 'description', 'start_date', 'end_date', 'cost', 'cost_currency', 'cost_unit', 'billing_frequency', 'provider_id', 'ola', 'coverage'));
MetaModel::Init_SetZListItems('standard_search', array('name', 'description', 'start_date', 'end_date', 'cost', 'cost_currency', 'cost_unit', 'billing_frequency', 'provider_id', 'ola', 'coverage'));
- MetaModel::Init_SetZListItems('list', array('name', 'description', 'start_date', 'end_date', 'cost', 'cost_currency', 'cost_unit', 'billing_frequency', 'provider_id', 'ola', 'coverage'));
+ MetaModel::Init_SetZListItems('list', array('name', 'start_date', 'end_date', 'provider_id', 'ola', 'coverage'));
}
}
class CustomerContract extends Contract
@@ -124,7 +124,7 @@ class CustomerContract extends Contract
MetaModel::Init_SetZListItems('details', array('name', 'description', 'start_date', 'end_date', 'cost', 'cost_currency', 'cost_unit', 'billing_frequency', 'contact_list', 'document_list', 'ci_list', 'customer_id', 'support_team_id', 'provider_list', 'sla_list'));
MetaModel::Init_SetZListItems('advanced_search', array('name', 'description', 'start_date', 'end_date', 'cost', 'cost_currency', 'cost_unit', 'billing_frequency', 'customer_id', 'support_team_id'));
MetaModel::Init_SetZListItems('standard_search', array('name', 'description', 'start_date', 'end_date', 'cost', 'cost_currency', 'cost_unit', 'billing_frequency', 'customer_id', 'support_team_id'));
- MetaModel::Init_SetZListItems('list', array('name', 'description', 'start_date', 'end_date', 'cost', 'cost_currency', 'cost_unit', 'billing_frequency', 'customer_id', 'support_team_id'));
+ MetaModel::Init_SetZListItems('list', array('name', 'start_date', 'end_date', 'customer_id', 'support_team_id'));
}
}
class lnkProviderToCustomer extends cmdbAbstractObject
diff --git a/modules/itop-tickets-1.0.0/en.dict.itop-tickets.php b/modules/itop-tickets-1.0.0/en.dict.itop-tickets.php
index 9c571dd08..84c796ab2 100644
--- a/modules/itop-tickets-1.0.0/en.dict.itop-tickets.php
+++ b/modules/itop-tickets-1.0.0/en.dict.itop-tickets.php
@@ -64,7 +64,7 @@ Dict::Add('EN US', 'English', 'English', array(
//
Dict::Add('EN US', 'English', 'English', array(
- 'Class:lnkTicketToDoc' => 'lnkTicketToDoc',
+ 'Class:lnkTicketToDoc' => 'Ticket/Document',
'Class:lnkTicketToDoc+' => '',
'Class:lnkTicketToDoc/Attribute:ticket_id' => 'ticket_id',
'Class:lnkTicketToDoc/Attribute:ticket_id+' => '',
@@ -81,9 +81,9 @@ Dict::Add('EN US', 'English', 'English', array(
//
Dict::Add('EN US', 'English', 'English', array(
- 'Class:lnkTicketToContact' => 'lnkTicketToContact',
+ 'Class:lnkTicketToContact' => 'Ticket/Contact',
'Class:lnkTicketToContact+' => '',
- 'Class:lnkTicketToContact/Attribute:ticket_id' => 'ticket_id',
+ 'Class:lnkTicketToContact/Attribute:ticket_id' => 'Ticket',
'Class:lnkTicketToContact/Attribute:ticket_id+' => '',
'Class:lnkTicketToContact/Attribute:ticket_ref' => 'Ticket #',
'Class:lnkTicketToContact/Attribute:ticket_ref+' => '',
@@ -93,6 +93,8 @@ Dict::Add('EN US', 'English', 'English', array(
'Class:lnkTicketToContact/Attribute:contact_name+' => '',
'Class:lnkTicketToContact/Attribute:contact_email' => 'Email',
'Class:lnkTicketToContact/Attribute:contact_email+' => '',
+ 'Class:lnkTicketToContact/Attribute:role' => 'Role',
+ 'Class:lnkTicketToContact/Attribute:role+' => '',
));
//
@@ -100,9 +102,9 @@ Dict::Add('EN US', 'English', 'English', array(
//
Dict::Add('EN US', 'English', 'English', array(
- 'Class:lnkTicketToCI' => 'lnkTicketToCI',
+ 'Class:lnkTicketToCI' => 'Ticket/CI',
'Class:lnkTicketToCI+' => '',
- 'Class:lnkTicketToCI/Attribute:ticket_id' => 'ticket_id',
+ 'Class:lnkTicketToCI/Attribute:ticket_id' => 'Ticket',
'Class:lnkTicketToCI/Attribute:ticket_id+' => '',
'Class:lnkTicketToCI/Attribute:ticket_ref' => 'Ticket #',
'Class:lnkTicketToCI/Attribute:ticket_ref+' => '',
@@ -167,11 +169,11 @@ Dict::Add('EN US', 'English', 'English', array(
'Class:ResponseTicket/Attribute:urgency/Value:3+' => '',
'Class:ResponseTicket/Attribute:priority' => 'priority',
'Class:ResponseTicket/Attribute:priority+' => '',
- 'Class:ResponseTicket/Attribute:priority/Value:1' => 'Lowest',
+ 'Class:ResponseTicket/Attribute:priority/Value:1' => 'Low',
'Class:ResponseTicket/Attribute:priority/Value:1+' => '',
- 'Class:ResponseTicket/Attribute:priority/Value:2' => 'To be done',
+ 'Class:ResponseTicket/Attribute:priority/Value:2' => 'Medium',
'Class:ResponseTicket/Attribute:priority/Value:2+' => '',
- 'Class:ResponseTicket/Attribute:priority/Value:3' => 'Top priority',
+ 'Class:ResponseTicket/Attribute:priority/Value:3' => 'High',
'Class:ResponseTicket/Attribute:priority/Value:3+' => '',
'Class:ResponseTicket/Attribute:workgroup_id' => 'Workgroup',
'Class:ResponseTicket/Attribute:workgroup_id+' => '',
@@ -195,7 +197,7 @@ Dict::Add('EN US', 'English', 'English', array(
'Class:ResponseTicket/Attribute:escalation_deadline+' => '',
'Class:ResponseTicket/Attribute:closure_deadline' => 'Closure deadline',
'Class:ResponseTicket/Attribute:closure_deadline+' => '',
- 'Class:ResponseTicket/Attribute:resolution_code' => 'Resoluion code',
+ 'Class:ResponseTicket/Attribute:resolution_code' => 'Resolution code',
'Class:ResponseTicket/Attribute:resolution_code+' => '',
'Class:ResponseTicket/Attribute:resolution_code/Value:couldnotreproduce' => 'Could not be reproduced',
'Class:ResponseTicket/Attribute:resolution_code/Value:couldnotreproduce+' => '',
diff --git a/modules/itop-tickets-1.0.0/model.itop-tickets.php b/modules/itop-tickets-1.0.0/model.itop-tickets.php
index 65120f2f2..a9e8d0151 100644
--- a/modules/itop-tickets-1.0.0/model.itop-tickets.php
+++ b/modules/itop-tickets-1.0.0/model.itop-tickets.php
@@ -45,6 +45,7 @@ abstract class Ticket extends cmdbAbstractObject
MetaModel::Init_AddAttribute(new AttributeString("ref", array("allowed_values"=>null, "sql"=>"ref", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeString("title", array("allowed_values"=>null, "sql"=>"title", "default_value"=>"", "is_null_allowed"=>false, "depends_on"=>array())));
+// MetaModel::Init_AddAttribute(new AttributeText("description", array("allowed_values"=>null, "sql"=>"description", "default_value"=>"", "is_null_allowed"=>false, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeText("ticket_log", array("allowed_values"=>null, "sql"=>"ticket_log", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeDateTime("start_date", array("allowed_values"=>null, "sql"=>"start_date", "default_value"=>null, "is_null_allowed"=>false, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeLinkedSetIndirect("document_list", array("linked_class"=>"lnkTicketToDoc", "ext_key_to_me"=>"ticket_id", "ext_key_to_remote"=>"document_id", "allowed_values"=>null, "count_min"=>0, "count_max"=>0, "depends_on"=>array())));
@@ -113,11 +114,12 @@ class lnkTicketToContact extends cmdbAbstractObject
MetaModel::Init_AddAttribute(new AttributeExternalKey("contact_id", array("targetclass"=>"Contact", "jointype"=>null, "allowed_values"=>null, "sql"=>"contact_id", "is_null_allowed"=>false, "on_target_delete"=>DEL_AUTO, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeExternalField("contact_name", array("allowed_values"=>null, "extkey_attcode"=>"contact_id", "target_attcode"=>"name", "is_null_allowed"=>true, "depends_on"=>array())));
MetaModel::Init_AddAttribute(new AttributeExternalField("contact_email", array("allowed_values"=>null, "extkey_attcode"=>"contact_id", "target_attcode"=>"email", "is_null_allowed"=>true, "depends_on"=>array())));
+ MetaModel::Init_AddAttribute(new AttributeString("role", array("allowed_values"=>null, "sql"=>"role", "default_value"=>"", "is_null_allowed"=>true, "depends_on"=>array())));
- MetaModel::Init_SetZListItems('details', array('ticket_id', 'contact_id', 'contact_email'));
- MetaModel::Init_SetZListItems('advanced_search', array('ticket_id', 'contact_id', 'contact_email'));
- MetaModel::Init_SetZListItems('standard_search', array('ticket_id', 'contact_id', 'contact_email'));
- MetaModel::Init_SetZListItems('list', array('ticket_id', 'contact_id', 'contact_email'));
+ MetaModel::Init_SetZListItems('details', array('ticket_id', 'contact_id', 'contact_email', 'role'));
+ MetaModel::Init_SetZListItems('advanced_search', array('ticket_id', 'contact_id', 'contact_email', 'role'));
+ MetaModel::Init_SetZListItems('standard_search', array('ticket_id', 'contact_id', 'contact_email', 'role'));
+ MetaModel::Init_SetZListItems('list', array('ticket_id', 'contact_id', 'contact_email', 'role'));
}
}
class lnkTicketToCI extends cmdbAbstractObject
@@ -218,6 +220,8 @@ abstract class ResponseTicket extends Ticket
"attribute_inherit" => null,
"attribute_list" => array(
'ref' => OPT_ATT_READONLY,
+ 'ticket_log' => OPT_ATT_HIDDEN,
+ 'description' => OPT_ATT_MUSTCHANGE,
'contact_list' => OPT_ATT_READONLY,
'start_date' => OPT_ATT_READONLY,
'last_update' => OPT_ATT_READONLY,
@@ -234,8 +238,6 @@ abstract class ResponseTicket extends Ticket
'priority' => OPT_ATT_READONLY,
'workgroup_id' => OPT_ATT_MUSTCHANGE,
'agent_id' => OPT_ATT_HIDDEN,
- 'related_problem_id' => OPT_ATT_HIDDEN,
- 'related_change_id' => OPT_ATT_HIDDEN,
'resolution_code' => OPT_ATT_HIDDEN,
'solution' => OPT_ATT_HIDDEN,
'user_satisfaction' => OPT_ATT_HIDDEN,
@@ -256,9 +258,9 @@ abstract class ResponseTicket extends Ticket
array(
"attribute_inherit" => 'new',
"attribute_list" => array(
+ 'ticket_log' => OPT_ATT_NORMAL,
+ 'description' => OPT_ATT_READONLY,
'agent_id' => OPT_ATT_MANDATORY,
- 'related_problem_id' => OPT_ATT_NORMAL,
- 'related_change_id' => OPT_ATT_NORMAL,
'closure_deadline' => OPT_ATT_READONLY,
'escalation_deadline' => OPT_ATT_HIDDEN,
),
@@ -287,6 +289,7 @@ abstract class ResponseTicket extends Ticket
array(
"attribute_inherit" => 'resolved',
"attribute_list" => array(
+ 'ticket_log' => OPT_ATT_READONLY,
'user_satisfaction' => OPT_ATT_MUSTCHANGE,
'user_commment' => OPT_ATT_MUSTPROMPT,
),