Переглянути джерело

Fixed issue with link set and enabled the dictionary for triggers/actions (english only)

git-svn-id: http://svn.code.sf.net/p/itop/code/trunk@599 a333f486-631f-4898-b8df-5754b55c2be0
romainq 15 роки тому
батько
коміт
a7ec9bdcd5

+ 1 - 1
core/config.class.inc.php

@@ -127,7 +127,7 @@ class Config
 		);
 		$this->m_aDictionaries = array(
 			// Default dictionaries, always present can be moved to an official iTop Module later if needed
-			//'../dictionaries/dictionary.itop.core.php',
+			'../dictionaries/dictionary.itop.core.php',
 			'../dictionaries/dictionary.itop.ui.php',		// Support for English
 			'../dictionaries/fr.dictionary.itop.ui.php',	// Support for French
 		);

+ 6 - 6
core/trigger.class.inc.php

@@ -64,7 +64,7 @@ class Trigger extends cmdbAbstractObject
 	public function DoActivate($aContextArgs)
 	{
 		// Find the related 
-		$oLinkedActions = $this->Get('linked_actions');
+		$oLinkedActions = $this->Get('action_list');
 		while ($oLink = $oLinkedActions->Fetch())
 		{
 			$iActionId = $oLink->Get('action_id');
@@ -98,7 +98,7 @@ class TriggerOnObject extends Trigger
 		MetaModel::Init_AddAttribute(new AttributeClass("target_class", array("class_category"=>"bizmodel", "more_values"=>null, "sql"=>"target_class", "default_value"=>null, "is_null_allowed"=>false, "depends_on"=>array())));
 
 		// Display lists
-		MetaModel::Init_SetZListItems('details', array('description', 'target_class')); // Attributes to be displayed for the complete details
+		MetaModel::Init_SetZListItems('details', array('description', 'target_class', 'action_list')); // Attributes to be displayed for the complete details
 		MetaModel::Init_SetZListItems('list', array('finalclass', 'target_class', 'description')); // Attributes to be displayed for a list
 		// Search criteria
 //		MetaModel::Init_SetZListItems('standard_search', array('name')); // Criteria of the std search form
@@ -127,7 +127,7 @@ class TriggerOnStateChange extends TriggerOnObject
 		MetaModel::Init_AddAttribute(new AttributeString("state", array("allowed_values"=>null, "sql"=>"state", "default_value"=>null, "is_null_allowed"=>false, "depends_on"=>array())));	
 
 		// Display lists
-		MetaModel::Init_SetZListItems('details', array('description', 'target_class', 'state')); // Attributes to be displayed for the complete details
+		MetaModel::Init_SetZListItems('details', array('description', 'target_class', 'state', 'action_list')); // Attributes to be displayed for the complete details
 		MetaModel::Init_SetZListItems('list', array('finalclass', 'target_class', 'state')); // Attributes to be displayed for a list
 		// Search criteria
 //		MetaModel::Init_SetZListItems('standard_search', array('name')); // Criteria of the std search form
@@ -155,7 +155,7 @@ class TriggerOnStateEnter extends TriggerOnStateChange
 		MetaModel::Init_InheritAttributes();
 
 		// Display lists
-		MetaModel::Init_SetZListItems('details', array('description', 'target_class', 'state')); // Attributes to be displayed for the complete details
+		MetaModel::Init_SetZListItems('details', array('description', 'target_class', 'state', 'action_list')); // Attributes to be displayed for the complete details
 		MetaModel::Init_SetZListItems('list', array('target_class', 'state')); // Attributes to be displayed for a list
 		// Search criteria
 //		MetaModel::Init_SetZListItems('standard_search', array('name')); // Criteria of the std search form
@@ -183,7 +183,7 @@ class TriggerOnStateLeave extends TriggerOnStateChange
 		MetaModel::Init_InheritAttributes();
 
 		// Display lists
-		MetaModel::Init_SetZListItems('details', array('description', 'target_class', 'state')); // Attributes to be displayed for the complete details
+		MetaModel::Init_SetZListItems('details', array('description', 'target_class', 'state', 'action_list')); // Attributes to be displayed for the complete details
 		MetaModel::Init_SetZListItems('list', array('target_class', 'state')); // Attributes to be displayed for a list
 		// Search criteria
 //		MetaModel::Init_SetZListItems('standard_search', array('')); // Criteria of the std search form
@@ -211,7 +211,7 @@ class TriggerOnObjectCreate extends TriggerOnObject
 		MetaModel::Init_InheritAttributes();
 
 		// Display lists
-		MetaModel::Init_SetZListItems('details', array('description', 'target_class')); // Attributes to be displayed for the complete details
+		MetaModel::Init_SetZListItems('details', array('description', 'target_class', 'action_list')); // Attributes to be displayed for the complete details
 		MetaModel::Init_SetZListItems('list', array('finalclass', 'target_class')); // Attributes to be displayed for a list
 		// Search criteria
 //		MetaModel::Init_SetZListItems('standard_search', array('name')); // Criteria of the std search form

+ 25 - 25
dictionaries/dictionary.itop.core.php

@@ -34,7 +34,7 @@
 //
 
 Dict::Add('EN US', 'English', 'English', array(
-	'Class:CMDBChange' => 'change',
+	'Class:CMDBChange' => 'Change',
 	'Class:CMDBChange+' => 'Changes tracking',
 	'Class:CMDBChange/Attribute:date' => 'date',
 	'Class:CMDBChange/Attribute:date+' => 'date and time at which the changes have been recorded',
@@ -47,7 +47,7 @@ Dict::Add('EN US', 'English', 'English', array(
 //
 
 Dict::Add('EN US', 'English', 'English', array(
-	'Class:CMDBChangeOp' => 'change operation',
+	'Class:CMDBChangeOp' => 'Change Operation',
 	'Class:CMDBChangeOp+' => 'Change operations tracking',
 	'Class:CMDBChangeOp/Attribute:change' => 'change',
 	'Class:CMDBChangeOp/Attribute:change+' => 'change',
@@ -229,12 +229,12 @@ Dict::Add('EN US', 'English', 'English', array(
 //
 
 Dict::Add('EN US', 'English', 'English', array(
-	'Class:Action' => 'action',
-	'Class:Action+' => 'Custom action',
+	'Class:Action' => 'Custom Action',
+	'Class:Action+' => 'User defined action',
 	'Class:Action/Attribute:name' => 'Name',
-	'Class:Action/Attribute:name+' => 'label',
+	'Class:Action/Attribute:name+' => '',
 	'Class:Action/Attribute:description' => 'Description',
-	'Class:Action/Attribute:description+' => 'one line description',
+	'Class:Action/Attribute:description+' => '',
 	'Class:Action/Attribute:status' => 'Status',
 	'Class:Action/Attribute:status+' => 'In production or ?',
 	'Class:Action/Attribute:status/Value:test' => 'Being tested',
@@ -254,7 +254,7 @@ Dict::Add('EN US', 'English', 'English', array(
 //
 
 Dict::Add('EN US', 'English', 'English', array(
-	'Class:ActionNotification' => 'notification',
+	'Class:ActionNotification' => 'Notification',
 	'Class:ActionNotification+' => 'Notification (abstract)',
 ));
 
@@ -263,8 +263,8 @@ Dict::Add('EN US', 'English', 'English', array(
 //
 
 Dict::Add('EN US', 'English', 'English', array(
-	'Class:ActionEmail' => 'email notification',
-	'Class:ActionEmail+' => 'Action: Email notification',
+	'Class:ActionEmail' => 'Email notification',
+	'Class:ActionEmail+' => '',
 	'Class:ActionEmail/Attribute:test_recipient' => 'Test recipient',
 	'Class:ActionEmail/Attribute:test_recipient+' => 'Detination in case status is set to "Test"',
 	'Class:ActionEmail/Attribute:from' => 'From',
@@ -296,12 +296,12 @@ Dict::Add('EN US', 'English', 'English', array(
 //
 
 Dict::Add('EN US', 'English', 'English', array(
-	'Class:Trigger' => 'trigger',
+	'Class:Trigger' => 'Trigger',
 	'Class:Trigger+' => 'Custom event handler',
 	'Class:Trigger/Attribute:description' => 'Description',
 	'Class:Trigger/Attribute:description+' => 'one line description',
-	'Class:Trigger/Attribute:linked_actions' => 'Triggered actions',
-	'Class:Trigger/Attribute:linked_actions+' => 'Actions performed when the trigger is activated',
+	'Class:Trigger/Attribute:action_list' => 'Triggered actions',
+	'Class:Trigger/Attribute:action_list+' => 'Actions performed when the trigger is activated',
 	'Class:Trigger/Attribute:finalclass' => 'Type',
 	'Class:Trigger/Attribute:finalclass+' => '',
 ));
@@ -311,10 +311,10 @@ Dict::Add('EN US', 'English', 'English', array(
 //
 
 Dict::Add('EN US', 'English', 'English', array(
-	'Class:TriggerOnObject' => 'Trigger on a class of objects',
+	'Class:TriggerOnObject' => 'Trigger (class dependent)',
 	'Class:TriggerOnObject+' => 'Trigger on a given class of objects',
 	'Class:TriggerOnObject/Attribute:target_class' => 'Target class',
-	'Class:TriggerOnObject/Attribute:target_class+' => 'label',
+	'Class:TriggerOnObject/Attribute:target_class+' => '',
 ));
 
 //
@@ -322,10 +322,10 @@ Dict::Add('EN US', 'English', 'English', array(
 //
 
 Dict::Add('EN US', 'English', 'English', array(
-	'Class:TriggerOnStateChange' => 'Trigger on object state change',
+	'Class:TriggerOnStateChange' => 'Trigger (on state change)',
 	'Class:TriggerOnStateChange+' => 'Trigger on object state change',
 	'Class:TriggerOnStateChange/Attribute:state' => 'State',
-	'Class:TriggerOnStateChange/Attribute:state+' => 'label',
+	'Class:TriggerOnStateChange/Attribute:state+' => '',
 ));
 
 //
@@ -333,7 +333,7 @@ Dict::Add('EN US', 'English', 'English', array(
 //
 
 Dict::Add('EN US', 'English', 'English', array(
-	'Class:TriggerOnStateEnter' => 'Trigger on object entering a state',
+	'Class:TriggerOnStateEnter' => 'Trigger (on entering a state)',
 	'Class:TriggerOnStateEnter+' => 'Trigger on object state change - entering',
 ));
 
@@ -342,7 +342,7 @@ Dict::Add('EN US', 'English', 'English', array(
 //
 
 Dict::Add('EN US', 'English', 'English', array(
-	'Class:TriggerOnStateLeave' => 'Trigger on object leaving a state',
+	'Class:TriggerOnStateLeave' => 'Trigger (on leaving a state)',
 	'Class:TriggerOnStateLeave+' => 'Trigger on object state change - leaving',
 ));
 
@@ -351,7 +351,7 @@ Dict::Add('EN US', 'English', 'English', array(
 //
 
 Dict::Add('EN US', 'English', 'English', array(
-	'Class:TriggerOnObjectCreate' => 'Trigger on object creation',
+	'Class:TriggerOnObjectCreate' => 'Trigger (on object creation)',
 	'Class:TriggerOnObjectCreate+' => 'Trigger on object creation of [a child class of] the given class',
 ));
 
@@ -360,16 +360,16 @@ Dict::Add('EN US', 'English', 'English', array(
 //
 
 Dict::Add('EN US', 'English', 'English', array(
-	'Class:lnkTriggerAction' => 'Actions-Trigger',
+	'Class:lnkTriggerAction' => 'Action/Trigger',
 	'Class:lnkTriggerAction+' => 'Link between a trigger and an action',
 	'Class:lnkTriggerAction/Attribute:action_id' => 'Action',
 	'Class:lnkTriggerAction/Attribute:action_id+' => 'The action to be executed',
-	'Class:lnkTriggerAction/Attribute:action_name' => 'Action Name',
-	'Class:lnkTriggerAction/Attribute:action_name+' => 'Name of the action',
+	'Class:lnkTriggerAction/Attribute:action_name' => 'Action',
+	'Class:lnkTriggerAction/Attribute:action_name+' => '',
 	'Class:lnkTriggerAction/Attribute:trigger_id' => 'Trigger',
-	'Class:lnkTriggerAction/Attribute:trigger_id+' => 'Trigger',
-	'Class:lnkTriggerAction/Attribute:trigger_name' => 'Trigger Name',
-	'Class:lnkTriggerAction/Attribute:trigger_name+' => 'Name of the trigger',
+	'Class:lnkTriggerAction/Attribute:trigger_id+' => '',
+	'Class:lnkTriggerAction/Attribute:trigger_name' => 'Trigger',
+	'Class:lnkTriggerAction/Attribute:trigger_name+' => '',
 	'Class:lnkTriggerAction/Attribute:order' => 'Order',
 	'Class:lnkTriggerAction/Attribute:order+' => 'Actions execution order',
 ));

+ 378 - 0
dictionaries/fr.dictionary.itop.core.php

@@ -0,0 +1,378 @@
+<?php
+// Copyright (C) 2010 Combodo SARL
+//
+//   This program is free software; you can redistribute it and/or modify
+//   it under the terms of the GNU General Public License as published by
+//   the Free Software Foundation; version 3 of the License.
+//
+//   This program is distributed in the hope that it will be useful,
+//   but WITHOUT ANY WARRANTY; without even the implied warranty of
+//   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+//   GNU General Public License for more details.
+//
+//   You should have received a copy of the GNU General Public License
+//   along with this program; if not, write to the Free Software
+//   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+
+/**
+ * Localized data
+ *
+ * @author      Erwan Taloc <erwan.taloc@combodo.com>
+ * @author      Romain Quetiez <romain.quetiez@combodo.com>
+ * @author      Denis Flaven <denis.flaven@combodo.com>
+ * @license     http://www.opensource.org/licenses/gpl-3.0.html LGPL
+ */
+
+
+//////////////////////////////////////////////////////////////////////
+// Classes in 'core/cmdb'
+//////////////////////////////////////////////////////////////////////
+//
+
+//
+// Class: CMDBChange
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:CMDBChange' => 'change',
+	'Class:CMDBChange+' => 'Changes tracking',
+	'Class:CMDBChange/Attribute:date' => 'date',
+	'Class:CMDBChange/Attribute:date+' => 'date and time at which the changes have been recorded',
+	'Class:CMDBChange/Attribute:userinfo' => 'misc. info',
+	'Class:CMDBChange/Attribute:userinfo+' => 'caller\'s defined information',
+));
+
+//
+// Class: CMDBChangeOp
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:CMDBChangeOp' => 'change operation',
+	'Class:CMDBChangeOp+' => 'Change operations tracking',
+	'Class:CMDBChangeOp/Attribute:change' => 'change',
+	'Class:CMDBChangeOp/Attribute:change+' => 'change',
+	'Class:CMDBChangeOp/Attribute:date' => 'date',
+	'Class:CMDBChangeOp/Attribute:date+' => 'date and time of the change',
+	'Class:CMDBChangeOp/Attribute:userinfo' => 'user',
+	'Class:CMDBChangeOp/Attribute:userinfo+' => 'who made this change',
+	'Class:CMDBChangeOp/Attribute:objclass' => 'object class',
+	'Class:CMDBChangeOp/Attribute:objclass+' => 'object class',
+	'Class:CMDBChangeOp/Attribute:objkey' => 'object id',
+	'Class:CMDBChangeOp/Attribute:objkey+' => 'object id',
+	'Class:CMDBChangeOp/Attribute:finalclass' => 'type',
+	'Class:CMDBChangeOp/Attribute:finalclass+' => '',
+));
+
+//
+// Class: CMDBChangeOpCreate
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:CMDBChangeOpCreate' => 'object creation',
+	'Class:CMDBChangeOpCreate+' => 'Object creation tracking',
+));
+
+//
+// Class: CMDBChangeOpDelete
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:CMDBChangeOpDelete' => 'object deletion',
+	'Class:CMDBChangeOpDelete+' => 'Object deletion tracking',
+));
+
+//
+// Class: CMDBChangeOpSetAttribute
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:CMDBChangeOpSetAttribute' => 'object change',
+	'Class:CMDBChangeOpSetAttribute+' => 'Object properties change tracking',
+	'Class:CMDBChangeOpSetAttribute/Attribute:attcode' => 'Attribute',
+	'Class:CMDBChangeOpSetAttribute/Attribute:attcode+' => 'code of the modified property',
+));
+
+//
+// Class: CMDBChangeOpSetAttributeScalar
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:CMDBChangeOpSetAttributeScalar' => 'property change',
+	'Class:CMDBChangeOpSetAttributeScalar+' => 'Object scalar properties change tracking',
+	'Class:CMDBChangeOpSetAttributeScalar/Attribute:oldvalue' => 'Previous value',
+	'Class:CMDBChangeOpSetAttributeScalar/Attribute:oldvalue+' => 'previous value of the attribute',
+	'Class:CMDBChangeOpSetAttributeScalar/Attribute:newvalue' => 'New value',
+	'Class:CMDBChangeOpSetAttributeScalar/Attribute:newvalue+' => 'new value of the attribute',
+));
+
+//
+// Class: CMDBChangeOpSetAttributeBlob
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:CMDBChangeOpSetAttributeBlob' => 'data change',
+	'Class:CMDBChangeOpSetAttributeBlob+' => 'data change tracking',
+	'Class:CMDBChangeOpSetAttributeBlob/Attribute:prevdata' => 'Previous data',
+	'Class:CMDBChangeOpSetAttributeBlob/Attribute:prevdata+' => 'previous contents of the attribute',
+));
+
+//
+// Class: CMDBChangeOpSetAttributeText
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:CMDBChangeOpSetAttributeText' => 'text change',
+	'Class:CMDBChangeOpSetAttributeText+' => 'text change tracking',
+	'Class:CMDBChangeOpSetAttributeText/Attribute:prevdata' => 'Previous data',
+	'Class:CMDBChangeOpSetAttributeText/Attribute:prevdata+' => 'previous contents of the attribute',
+));
+
+//
+// Class: Event
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:Event' => 'Log Event',
+	'Class:Event+' => 'An application internal event',
+	'Class:Event/Attribute:message' => 'message',
+	'Class:Event/Attribute:message+' => 'short description of the event',
+	'Class:Event/Attribute:date' => 'date',
+	'Class:Event/Attribute:date+' => 'date and time at which the changes have been recorded',
+	'Class:Event/Attribute:userinfo' => 'user info',
+	'Class:Event/Attribute:userinfo+' => 'identification of the user that was doing the action that triggered this event',
+	'Class:Event/Attribute:finalclass' => 'type',
+	'Class:Event/Attribute:finalclass+' => '',
+));
+
+//
+// Class: EventNotification
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:EventNotification' => 'Notification event',
+	'Class:EventNotification+' => 'Trace of a notification that has been sent',
+	'Class:EventNotification/Attribute:trigger_id' => 'Trigger',
+	'Class:EventNotification/Attribute:trigger_id+' => 'user account',
+	'Class:EventNotification/Attribute:action_id' => 'user',
+	'Class:EventNotification/Attribute:action_id+' => 'user account',
+	'Class:EventNotification/Attribute:object_id' => 'Object id',
+	'Class:EventNotification/Attribute:object_id+' => 'object id (class defined by the trigger ?)',
+));
+
+//
+// Class: EventNotificationEmail
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:EventNotificationEmail' => 'Email emission event',
+	'Class:EventNotificationEmail+' => 'Trace of an email that has been sent',
+	'Class:EventNotificationEmail/Attribute:to' => 'TO',
+	'Class:EventNotificationEmail/Attribute:to+' => 'TO',
+	'Class:EventNotificationEmail/Attribute:cc' => 'CC',
+	'Class:EventNotificationEmail/Attribute:cc+' => 'CC',
+	'Class:EventNotificationEmail/Attribute:bcc' => 'BCC',
+	'Class:EventNotificationEmail/Attribute:bcc+' => 'BCC',
+	'Class:EventNotificationEmail/Attribute:from' => 'From',
+	'Class:EventNotificationEmail/Attribute:from+' => 'Sender of the message',
+	'Class:EventNotificationEmail/Attribute:subject' => 'Subject',
+	'Class:EventNotificationEmail/Attribute:subject+' => 'Subject',
+	'Class:EventNotificationEmail/Attribute:body' => 'Body',
+	'Class:EventNotificationEmail/Attribute:body+' => 'Body',
+));
+
+//
+// Class: EventIssue
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:EventIssue' => 'Issue event',
+	'Class:EventIssue+' => 'Trace of an issue (warning, error, etc.)',
+	'Class:EventIssue/Attribute:issue' => 'Issue',
+	'Class:EventIssue/Attribute:issue+' => 'What happened',
+	'Class:EventIssue/Attribute:impact' => 'Impact',
+	'Class:EventIssue/Attribute:impact+' => 'What are the consequences',
+	'Class:EventIssue/Attribute:page' => 'Page',
+	'Class:EventIssue/Attribute:page+' => 'HTTP entry point',
+	'Class:EventIssue/Attribute:arguments_post' => 'Posted arguments',
+	'Class:EventIssue/Attribute:arguments_post+' => 'HTTP POST arguments',
+	'Class:EventIssue/Attribute:arguments_get' => 'URL arguments',
+	'Class:EventIssue/Attribute:arguments_get+' => 'HTTP GET arguments',
+	'Class:EventIssue/Attribute:callstack' => 'Callstack',
+	'Class:EventIssue/Attribute:callstack+' => 'Call stack',
+	'Class:EventIssue/Attribute:data' => 'Data',
+	'Class:EventIssue/Attribute:data+' => 'More information',
+));
+
+//
+// Class: EventWebService
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:EventWebService' => 'Web service event',
+	'Class:EventWebService+' => 'Trace of an web service call',
+	'Class:EventWebService/Attribute:verb' => 'Verb',
+	'Class:EventWebService/Attribute:verb+' => 'Name of the operation',
+	'Class:EventWebService/Attribute:result' => 'Result',
+	'Class:EventWebService/Attribute:result+' => 'Overall success/failure',
+	'Class:EventWebService/Attribute:log_info' => 'Info log',
+	'Class:EventWebService/Attribute:log_info+' => 'Result info log',
+	'Class:EventWebService/Attribute:log_warning' => 'Warning log',
+	'Class:EventWebService/Attribute:log_warning+' => 'Result warning log',
+	'Class:EventWebService/Attribute:log_error' => 'Error log',
+	'Class:EventWebService/Attribute:log_error+' => 'Result error log',
+	'Class:EventWebService/Attribute:data' => 'Data',
+	'Class:EventWebService/Attribute:data+' => 'Result data',
+));
+
+//
+// Class: Action
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:Action' => 'action',
+	'Class:Action+' => 'Custom action',
+	'Class:Action/Attribute:name' => 'Name',
+	'Class:Action/Attribute:name+' => 'label',
+	'Class:Action/Attribute:description' => 'Description',
+	'Class:Action/Attribute:description+' => 'one line description',
+	'Class:Action/Attribute:status' => 'Status',
+	'Class:Action/Attribute:status+' => 'In production or ?',
+	'Class:Action/Attribute:status/Value:test' => 'Being tested',
+	'Class:Action/Attribute:status/Value:test+' => 'Being tested',
+	'Class:Action/Attribute:status/Value:enabled' => 'In production',
+	'Class:Action/Attribute:status/Value:enabled+' => 'In production',
+	'Class:Action/Attribute:status/Value:disabled' => 'Inactive',
+	'Class:Action/Attribute:status/Value:disabled+' => 'Inactive',
+	'Class:Action/Attribute:trigger_list' => 'Related Triggers',
+	'Class:Action/Attribute:trigger_list+' => 'Triggers linked to this action',
+	'Class:Action/Attribute:finalclass' => 'Type',
+	'Class:Action/Attribute:finalclass+' => '',
+));
+
+//
+// Class: ActionNotification
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:ActionNotification' => 'notification',
+	'Class:ActionNotification+' => 'Notification (abstract)',
+));
+
+//
+// Class: ActionEmail
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:ActionEmail' => 'email notification',
+	'Class:ActionEmail+' => 'Action: Email notification',
+	'Class:ActionEmail/Attribute:test_recipient' => 'Test recipient',
+	'Class:ActionEmail/Attribute:test_recipient+' => 'Detination in case status is set to "Test"',
+	'Class:ActionEmail/Attribute:from' => 'From',
+	'Class:ActionEmail/Attribute:from+' => 'Will be sent into the email header',
+	'Class:ActionEmail/Attribute:reply_to' => 'Reply to',
+	'Class:ActionEmail/Attribute:reply_to+' => 'Will be sent into the email header',
+	'Class:ActionEmail/Attribute:to' => 'To',
+	'Class:ActionEmail/Attribute:to+' => 'Destination of the email',
+	'Class:ActionEmail/Attribute:cc' => 'Cc',
+	'Class:ActionEmail/Attribute:cc+' => 'Carbon Copy',
+	'Class:ActionEmail/Attribute:bcc' => 'bcc',
+	'Class:ActionEmail/Attribute:bcc+' => 'Blind Carbon Copy',
+	'Class:ActionEmail/Attribute:subject' => 'subject',
+	'Class:ActionEmail/Attribute:subject+' => 'Title of the email',
+	'Class:ActionEmail/Attribute:body' => 'body',
+	'Class:ActionEmail/Attribute:body+' => 'Contents of the email',
+	'Class:ActionEmail/Attribute:importance' => 'importance',
+	'Class:ActionEmail/Attribute:importance+' => 'Importance flag',
+	'Class:ActionEmail/Attribute:importance/Value:low' => 'low',
+	'Class:ActionEmail/Attribute:importance/Value:low+' => 'low',
+	'Class:ActionEmail/Attribute:importance/Value:normal' => 'normal',
+	'Class:ActionEmail/Attribute:importance/Value:normal+' => 'normal',
+	'Class:ActionEmail/Attribute:importance/Value:high' => 'high',
+	'Class:ActionEmail/Attribute:importance/Value:high+' => 'high',
+));
+
+//
+// Class: Trigger
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:Trigger' => 'trigger',
+	'Class:Trigger+' => 'Custom event handler',
+	'Class:Trigger/Attribute:description' => 'Description',
+	'Class:Trigger/Attribute:description+' => 'one line description',
+	'Class:Trigger/Attribute:action_list' => 'Triggered actions',
+	'Class:Trigger/Attribute:action_list+' => 'Actions performed when the trigger is activated',
+	'Class:Trigger/Attribute:finalclass' => 'Type',
+	'Class:Trigger/Attribute:finalclass+' => '',
+));
+
+//
+// Class: TriggerOnObject
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:TriggerOnObject' => 'Trigger on a class of objects',
+	'Class:TriggerOnObject+' => 'Trigger on a given class of objects',
+	'Class:TriggerOnObject/Attribute:target_class' => 'Target class',
+	'Class:TriggerOnObject/Attribute:target_class+' => 'label',
+));
+
+//
+// Class: TriggerOnStateChange
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:TriggerOnStateChange' => 'Trigger on object state change',
+	'Class:TriggerOnStateChange+' => 'Trigger on object state change',
+	'Class:TriggerOnStateChange/Attribute:state' => 'State',
+	'Class:TriggerOnStateChange/Attribute:state+' => 'label',
+));
+
+//
+// Class: TriggerOnStateEnter
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:TriggerOnStateEnter' => 'Trigger on object entering a state',
+	'Class:TriggerOnStateEnter+' => 'Trigger on object state change - entering',
+));
+
+//
+// Class: TriggerOnStateLeave
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:TriggerOnStateLeave' => 'Trigger on object leaving a state',
+	'Class:TriggerOnStateLeave+' => 'Trigger on object state change - leaving',
+));
+
+//
+// Class: TriggerOnObjectCreate
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:TriggerOnObjectCreate' => 'Trigger on object creation',
+	'Class:TriggerOnObjectCreate+' => 'Trigger on object creation of [a child class of] the given class',
+));
+
+//
+// Class: lnkTriggerAction
+//
+
+Dict::Add('EN US', 'English', 'English', array(
+	'Class:lnkTriggerAction' => 'Actions-Trigger',
+	'Class:lnkTriggerAction+' => 'Link between a trigger and an action',
+	'Class:lnkTriggerAction/Attribute:action_id' => 'Action',
+	'Class:lnkTriggerAction/Attribute:action_id+' => 'The action to be executed',
+	'Class:lnkTriggerAction/Attribute:action_name' => 'Action Name',
+	'Class:lnkTriggerAction/Attribute:action_name+' => 'Name of the action',
+	'Class:lnkTriggerAction/Attribute:trigger_id' => 'Trigger',
+	'Class:lnkTriggerAction/Attribute:trigger_id+' => 'Trigger',
+	'Class:lnkTriggerAction/Attribute:trigger_name' => 'Trigger Name',
+	'Class:lnkTriggerAction/Attribute:trigger_name+' => 'Name of the trigger',
+	'Class:lnkTriggerAction/Attribute:order' => 'Order',
+	'Class:lnkTriggerAction/Attribute:order+' => 'Actions execution order',
+));
+
+
+?>