Made some progress on config management

SVN:trunk[561]
This commit is contained in:
Romain Quetiez
2010-07-05 16:14:20 +00:00
parent d0ed8f624a
commit 899c532c6b
11 changed files with 391 additions and 216 deletions

View File

@@ -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);

View File

@@ -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));

View File

@@ -11,39 +11,37 @@
<ApplicationInstance alias="ApplicationInstance" id="5">
<name>Apache Web Server</name>
<status>production</status>
<owner_id>2</owner_id>
<org_id>2</org_id>
<importance>medium</importance>
<device_id>4</device_id>
<licence_id>0</licence_id>
<application_id>2</application_id>
<software_id>2</software_id>
<version>2.2</version>
<description>Apache 2.2 with PHP 5.3.4</description>
</ApplicationInstance>
<ApplicationInstance alias="ApplicationInstance" id="2">
<name>MySQL 5 prod</name>
<status>production</status>
<owner_id>2</owner_id>
<org_id>2</org_id>
<importance>medium</importance>
<device_id>1</device_id>
<licence_id>0</licence_id>
<application_id>1</application_id>
<software_id>1</software_id>
<version>5.0.27</version>
<description></description>
</ApplicationInstance>
<DatabaseInstance alias="DatabaseInstance" id="3">
<name>itop_beta</name>
<status>implementation</status>
<owner_id>2</owner_id>
<org_id>2</org_id>
<importance>medium</importance>
<db_server_instance_id>2</db_server_instance_id>
<admin_login>root</admin_login>
<admin_password></admin_password>
<description>iTop beta test instance</description>
</DatabaseInstance>
<ApplicationSolution alias="ApplicationSolution" id="6">
<name>iTop demo</name>
<status>production</status>
<owner_id>2</owner_id>
<org_id>2</org_id>
<importance>high</importance>
<description>Demo instance of iTop</description>
</ApplicationSolution>
@@ -57,4 +55,4 @@
<ci_id>3</ci_id>
<utility>itop beta instance</utility>
</lnkSolutionToCI>
</Set>
</Set>

View File

@@ -3,7 +3,7 @@
<BusinessProcess alias="BusinessProcess" id="7">
<name>iTop demonstration</name>
<status>production</status>
<owner_id>2</owner_id>
<org_id>2</org_id>
<importance>medium</importance>
<description>Demonstrating iTop on line</description>
</BusinessProcess>
@@ -22,4 +22,4 @@
<contact_id>4</contact_id>
<role>Support Specialist</role>
</lnkCIToContact>
</Set>
</Set>

View File

@@ -3,7 +3,7 @@
<Server alias="Server" id="1">
<name>dbserver1.demo.net</name>
<status>implementation</status>
<owner_id>2</owner_id>
<org_id>2</org_id>
<importance>medium</importance>
<brand>Hewlett-Packard</brand>
<model>Proliant DL380 G5</model>
@@ -23,7 +23,7 @@
<Server alias="Server" id="4">
<name>itop.demo.net</name>
<status>production</status>
<owner_id>2</owner_id>
<org_id>2</org_id>
<importance>high</importance>
<brand>Hewlet-Packard</brand>
<model>Proliant DL380 G5</model>
@@ -40,4 +40,4 @@
<os_family>Linux</os_family>
<os_version>Debian 5 (Lenny)</os_version>
</Server>
</Set>
</Set>

View File

@@ -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',

View File

@@ -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 */);
?>

View File

@@ -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 */);

View File

@@ -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

View File

@@ -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+' => '',

View File

@@ -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,
),