mirror of
https://github.com/Combodo/iTop.git
synced 2026-05-21 08:12:26 +02:00
N°1839 Update TriggerOnThresholdReached to select attribute from a set of valid attributes instead of typing it manually
This commit is contained in:
@@ -9170,6 +9170,8 @@ class AttributeClassAttCodeSet extends AttributeSet
|
|||||||
{
|
{
|
||||||
const SEARCH_WIDGET_TYPE = self::SEARCH_WIDGET_TYPE_STRING;
|
const SEARCH_WIDGET_TYPE = self::SEARCH_WIDGET_TYPE_STRING;
|
||||||
|
|
||||||
|
const DEFAULT_PARAM_INCLUDE_CHILD_CLASSES_ATTRIBUTES = false;
|
||||||
|
|
||||||
public function __construct($sCode, array $aParams)
|
public function __construct($sCode, array $aParams)
|
||||||
{
|
{
|
||||||
parent::__construct($sCode, $aParams);
|
parent::__construct($sCode, $aParams);
|
||||||
@@ -9186,69 +9188,111 @@ class AttributeClassAttCodeSet extends AttributeSet
|
|||||||
return max(255, 15 * $this->GetMaxItems());
|
return max(255, 15 * $this->GetMaxItems());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param array $aArgs
|
||||||
|
* @param string $sContains
|
||||||
|
*
|
||||||
|
* @return array|null
|
||||||
|
* @throws \CoreException
|
||||||
|
*/
|
||||||
public function GetAllowedValues($aArgs = array(), $sContains = '')
|
public function GetAllowedValues($aArgs = array(), $sContains = '')
|
||||||
{
|
{
|
||||||
if (isset($aArgs['this']))
|
if (!isset($aArgs['this']))
|
||||||
{
|
{
|
||||||
$oHostObj = $aArgs['this'];
|
return null;
|
||||||
$sTargetClass = $this->Get('class_field');
|
|
||||||
$sClass = $oHostObj->Get($sTargetClass);
|
|
||||||
|
|
||||||
$aAllowedAttributes = array();
|
|
||||||
if (empty($sClass))
|
|
||||||
{
|
|
||||||
$aAllAttributes = array();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
$aAllAttributes = MetaModel::GetAttributesList($sClass);
|
|
||||||
}
|
|
||||||
$sAttDefExclusionList = $this->Get('attribute_definition_exclusion_list');
|
|
||||||
$aExcludeDefs = array();
|
|
||||||
if (!empty($sAttDefExclusionList))
|
|
||||||
{
|
|
||||||
foreach(explode(',', $sAttDefExclusionList) as $sAttDefName)
|
|
||||||
{
|
|
||||||
$sAttDefName = trim($sAttDefName);
|
|
||||||
$aExcludeDefs[$sAttDefName] = $sAttDefName;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$sAttDefList = $this->Get('attribute_definition_list');
|
|
||||||
if (!empty($sAttDefList))
|
|
||||||
{
|
|
||||||
$aAllowedDefs = array();
|
|
||||||
foreach(explode(',', $sAttDefList) as $sAttDefName)
|
|
||||||
{
|
|
||||||
$sAttDefName = trim($sAttDefName);
|
|
||||||
$aAllowedDefs[$sAttDefName] = $sAttDefName;
|
|
||||||
}
|
|
||||||
foreach($aAllAttributes as $sAttCode)
|
|
||||||
{
|
|
||||||
$oAttDef = MetaModel::GetAttributeDef($sClass, $sAttCode);
|
|
||||||
$sAttDef = get_class($oAttDef);
|
|
||||||
if (isset($aAllowedDefs[$sAttDef]) && !isset($aExcludeDefs[$sAttDef]))
|
|
||||||
{
|
|
||||||
$aAllowedAttributes[$sAttCode] = $sAttCode.' ('.MetaModel::GetLabel($sClass, $sAttCode).')';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
foreach($aAllAttributes as $sAttCode)
|
|
||||||
{
|
|
||||||
$oAttDef = MetaModel::GetAttributeDef($sClass, $sAttCode);
|
|
||||||
$sAttDef = get_class($oAttDef);
|
|
||||||
if (!isset($aExcludeDefs[$sAttDef]))
|
|
||||||
{
|
|
||||||
$aAllowedAttributes[$sAttCode] = $sAttCode.' ('.MetaModel::GetLabel($sClass, $sAttCode).')';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return $aAllowedAttributes;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return null;
|
$oHostObj = $aArgs['this'];
|
||||||
|
$sTargetClass = $this->Get('class_field');
|
||||||
|
$sRootClass = $oHostObj->Get($sTargetClass);
|
||||||
|
$bIncludeChildClasses = $this->GetOptional('include_child_classes_attributes', static::DEFAULT_PARAM_INCLUDE_CHILD_CLASSES_ATTRIBUTES);
|
||||||
|
|
||||||
|
$aExcludeDefs = array();
|
||||||
|
$sAttDefExclusionList = $this->Get('attribute_definition_exclusion_list');
|
||||||
|
if (!empty($sAttDefExclusionList))
|
||||||
|
{
|
||||||
|
foreach(explode(',', $sAttDefExclusionList) as $sAttDefName)
|
||||||
|
{
|
||||||
|
$sAttDefName = trim($sAttDefName);
|
||||||
|
$aExcludeDefs[$sAttDefName] = $sAttDefName;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$aAllowedDefs = array();
|
||||||
|
$sAttDefList = $this->Get('attribute_definition_list');
|
||||||
|
if (!empty($sAttDefList))
|
||||||
|
{
|
||||||
|
foreach(explode(',', $sAttDefList) as $sAttDefName)
|
||||||
|
{
|
||||||
|
$sAttDefName = trim($sAttDefName);
|
||||||
|
$aAllowedDefs[$sAttDefName] = $sAttDefName;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$aAllAttributes = array();
|
||||||
|
if (!empty($sRootClass))
|
||||||
|
{
|
||||||
|
$aClasses = array($sRootClass);
|
||||||
|
if($bIncludeChildClasses === true)
|
||||||
|
{
|
||||||
|
$aClasses = $aClasses + MetaModel::EnumChildClasses($sRootClass, ENUM_CHILD_CLASSES_EXCLUDETOP);
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach($aClasses as $sClass)
|
||||||
|
{
|
||||||
|
foreach(MetaModel::GetAttributesList($sClass) as $sAttCode)
|
||||||
|
{
|
||||||
|
// Add attribute only if not already there (can be in leaf classes but not the root)
|
||||||
|
if(!array_key_exists($sAttCode, $aAllAttributes))
|
||||||
|
{
|
||||||
|
$oAttDef = MetaModel::GetAttributeDef($sClass, $sAttCode);
|
||||||
|
$sAttDefClass = get_class($oAttDef);
|
||||||
|
|
||||||
|
// Skip excluded attdefs
|
||||||
|
if(isset($aExcludeDefs[$sAttDefClass]))
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
// Skip not allowed attdefs only if list specified
|
||||||
|
if(!empty($aAllowedDefs) && !isset($aAllowedDefs[$sAttDefClass]))
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
$aAllAttributes[$sAttCode] = array(
|
||||||
|
'classes' => array($sClass),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$aAllAttributes[$sAttCode]['classes'][] = $sClass;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$aAllowedAttributes = array();
|
||||||
|
foreach($aAllAttributes as $sAttCode => $aAttData)
|
||||||
|
{
|
||||||
|
$iAttClassesCount = count($aAttData['classes']);
|
||||||
|
$sAttFirstClass = $aAttData['classes'][0];
|
||||||
|
$sAttLabel = MetaModel::GetLabel($sAttFirstClass, $sAttCode);
|
||||||
|
|
||||||
|
if($sAttFirstClass === $sRootClass)
|
||||||
|
{
|
||||||
|
$sLabel = Dict::Format('Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass', $sAttCode, $sAttLabel);
|
||||||
|
}
|
||||||
|
elseif($iAttClassesCount === 1)
|
||||||
|
{
|
||||||
|
$sLabel = Dict::Format('Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass', $sAttCode, $sAttLabel, MetaModel::GetName($sAttFirstClass));
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$sLabel = Dict::Format('Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses', $sAttCode, $sAttLabel);
|
||||||
|
}
|
||||||
|
$aAllowedAttributes[$sAttCode] = $sLabel;
|
||||||
|
}
|
||||||
|
return $aAllowedAttributes;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -9338,7 +9382,19 @@ class AttributeClassAttCodeSet extends AttributeSet
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
$aLocalizedValues[] = '<span class="attribute-set-item" data-code="'.$sAttCode.'" data-label="'.MetaModel::GetLabel($sClass, $sAttCode)." ($sAttCode)".'" data-description="">'.$sAttCode.'</span>';
|
$sAttClass = $sClass;
|
||||||
|
|
||||||
|
// Look for the first class (current or children) that have this attcode
|
||||||
|
foreach(MetaModel::EnumChildClasses($sClass, ENUM_CHILD_CLASSES_ALL) as $sChildClass)
|
||||||
|
{
|
||||||
|
if(MetaModel::IsValidAttCode($sChildClass, $sAttCode))
|
||||||
|
{
|
||||||
|
$sAttClass = $sChildClass;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$aLocalizedValues[] = '<span class="attribute-set-item" data-code="'.$sAttCode.'" data-label="'.MetaModel::GetLabel($sAttClass, $sAttCode)." ($sAttCode)".'" data-description="">'.$sAttCode.'</span>';
|
||||||
} catch (Exception $e)
|
} catch (Exception $e)
|
||||||
{
|
{
|
||||||
// Ignore bad values
|
// Ignore bad values
|
||||||
|
|||||||
@@ -595,7 +595,7 @@ class TriggerOnThresholdReached extends TriggerOnObject
|
|||||||
MetaModel::Init_Params($aParams);
|
MetaModel::Init_Params($aParams);
|
||||||
MetaModel::Init_InheritAttributes();
|
MetaModel::Init_InheritAttributes();
|
||||||
|
|
||||||
MetaModel::Init_AddAttribute(new AttributeString("stop_watch_code", array("allowed_values" => null, "sql" => "stop_watch_code", "default_value" => null, "is_null_allowed" => false, "depends_on" => array())));
|
MetaModel::Init_AddAttribute(new AttributeClassAttCodeSet('stop_watch_code', array("allowed_values" => null, "class_field" => "target_class", "sql" => "stop_watch_code", "default_value" => null, "is_null_allowed" => false, "max_items" => 1, "min_items" => 1, "attribute_definition_exclusion_list" => null, "attribute_definition_list" => "AttributeStopWatch", "include_child_classes_attributes" => true, "depends_on" => array('target_class'))));
|
||||||
MetaModel::Init_AddAttribute(new AttributeString("threshold_index", array("allowed_values" => null, "sql" => "threshold_index", "default_value" => null, "is_null_allowed" => false, "depends_on" => array())));
|
MetaModel::Init_AddAttribute(new AttributeString("threshold_index", array("allowed_values" => null, "sql" => "threshold_index", "default_value" => null, "is_null_allowed" => false, "depends_on" => array())));
|
||||||
|
|
||||||
// Display lists
|
// Display lists
|
||||||
@@ -606,5 +606,3 @@ class TriggerOnThresholdReached extends TriggerOnObject
|
|||||||
// MetaModel::Init_SetZListItems('advanced_search', array('name')); // Criteria of the advanced search form
|
// MetaModel::Init_SetZListItems('advanced_search', array('name')); // Criteria of the advanced search form
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
?>
|
|
||||||
|
|||||||
@@ -47,6 +47,9 @@ Dict::Add('CS CZ', 'Czech', 'Čeština', array(
|
|||||||
'Core:AttributeTagSet' => 'List of tags~~',
|
'Core:AttributeTagSet' => 'List of tags~~',
|
||||||
'Core:AttributeTagSet+' => '~~',
|
'Core:AttributeTagSet+' => '~~',
|
||||||
'Core:AttributeSet:placeholder' => 'click to add~~',
|
'Core:AttributeSet:placeholder' => 'click to add~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass' => '%1$s (%2$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass' => '%1$s (%2$s from %3$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses' => '%1$s (%2$s from child classes)~~',
|
||||||
|
|
||||||
'Core:AttributeCaseLog' => 'Log~~',
|
'Core:AttributeCaseLog' => 'Log~~',
|
||||||
'Core:AttributeCaseLog+' => '~~',
|
'Core:AttributeCaseLog+' => '~~',
|
||||||
|
|||||||
@@ -45,6 +45,9 @@ Dict::Add('DA DA', 'Danish', 'Dansk', array(
|
|||||||
'Core:AttributeTagSet' => 'List of tags~~',
|
'Core:AttributeTagSet' => 'List of tags~~',
|
||||||
'Core:AttributeTagSet+' => '~~',
|
'Core:AttributeTagSet+' => '~~',
|
||||||
'Core:AttributeSet:placeholder' => 'click to add~~',
|
'Core:AttributeSet:placeholder' => 'click to add~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass' => '%1$s (%2$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass' => '%1$s (%2$s from %3$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses' => '%1$s (%2$s from child classes)~~',
|
||||||
|
|
||||||
'Core:AttributeCaseLog' => 'Log~~',
|
'Core:AttributeCaseLog' => 'Log~~',
|
||||||
'Core:AttributeCaseLog+' => '~~',
|
'Core:AttributeCaseLog+' => '~~',
|
||||||
|
|||||||
@@ -44,6 +44,9 @@ Dict::Add('DE DE', 'German', 'Deutsch', array(
|
|||||||
'Core:AttributeTagSet' => 'Liste von Tags',
|
'Core:AttributeTagSet' => 'Liste von Tags',
|
||||||
'Core:AttributeTagSet+' => 'List von Tags',
|
'Core:AttributeTagSet+' => 'List von Tags',
|
||||||
'Core:AttributeSet:placeholder' => 'Zum Hinzufügen klicken',
|
'Core:AttributeSet:placeholder' => 'Zum Hinzufügen klicken',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass' => '%1$s (%2$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass' => '%1$s (%2$s from %3$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses' => '%1$s (%2$s from child classes)~~',
|
||||||
|
|
||||||
'Core:AttributeCaseLog' => 'Log',
|
'Core:AttributeCaseLog' => 'Log',
|
||||||
'Core:AttributeCaseLog+' => '',
|
'Core:AttributeCaseLog+' => '',
|
||||||
|
|||||||
@@ -45,6 +45,9 @@ Dict::Add('EN US', 'English', 'English', array(
|
|||||||
'Core:AttributeTagSet' => 'List of tags',
|
'Core:AttributeTagSet' => 'List of tags',
|
||||||
'Core:AttributeTagSet+' => '',
|
'Core:AttributeTagSet+' => '',
|
||||||
'Core:AttributeSet:placeholder' => 'click to add',
|
'Core:AttributeSet:placeholder' => 'click to add',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass' => '%1$s (%2$s)',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass' => '%1$s (%2$s from %3$s)',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses' => '%1$s (%2$s from child classes)',
|
||||||
|
|
||||||
'Core:AttributeCaseLog' => 'Log',
|
'Core:AttributeCaseLog' => 'Log',
|
||||||
'Core:AttributeCaseLog+' => '',
|
'Core:AttributeCaseLog+' => '',
|
||||||
|
|||||||
@@ -45,6 +45,9 @@ Dict::Add('ES CR', 'Spanish', 'Español, Castellaño', array(
|
|||||||
'Core:AttributeTagSet' => 'List of tags~~',
|
'Core:AttributeTagSet' => 'List of tags~~',
|
||||||
'Core:AttributeTagSet+' => '~~',
|
'Core:AttributeTagSet+' => '~~',
|
||||||
'Core:AttributeSet:placeholder' => 'click to add~~',
|
'Core:AttributeSet:placeholder' => 'click to add~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass' => '%1$s (%2$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass' => '%1$s (%2$s from %3$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses' => '%1$s (%2$s from child classes)~~',
|
||||||
|
|
||||||
'Core:AttributeCaseLog' => 'Log~~',
|
'Core:AttributeCaseLog' => 'Log~~',
|
||||||
'Core:AttributeCaseLog+' => '~~',
|
'Core:AttributeCaseLog+' => '~~',
|
||||||
|
|||||||
@@ -43,6 +43,9 @@ Dict::Add('FR FR', 'French', 'Français', array(
|
|||||||
'Core:AttributeTagSet' => 'Liste d\'étiquettes',
|
'Core:AttributeTagSet' => 'Liste d\'étiquettes',
|
||||||
'Core:AttributeTagSet+' => '',
|
'Core:AttributeTagSet+' => '',
|
||||||
'Core:AttributeSet:placeholder' => 'cliquer pour ajouter',
|
'Core:AttributeSet:placeholder' => 'cliquer pour ajouter',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass' => '%1$s (%2$s)',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass' => '%1$s (%2$s de la classe %3$s)',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses' => '%1$s (%2$s from child classes)~~',
|
||||||
|
|
||||||
'Core:AttributeCaseLog' => 'Log~~',
|
'Core:AttributeCaseLog' => 'Log~~',
|
||||||
'Core:AttributeCaseLog+' => '~~',
|
'Core:AttributeCaseLog+' => '~~',
|
||||||
|
|||||||
@@ -43,6 +43,9 @@ Dict::Add('HU HU', 'Hungarian', 'Magyar', array(
|
|||||||
'Core:AttributeTagSet' => 'List of tags~~',
|
'Core:AttributeTagSet' => 'List of tags~~',
|
||||||
'Core:AttributeTagSet+' => '~~',
|
'Core:AttributeTagSet+' => '~~',
|
||||||
'Core:AttributeSet:placeholder' => 'click to add~~',
|
'Core:AttributeSet:placeholder' => 'click to add~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass' => '%1$s (%2$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass' => '%1$s (%2$s from %3$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses' => '%1$s (%2$s from child classes)~~',
|
||||||
|
|
||||||
'Core:AttributeCaseLog' => 'Log~~',
|
'Core:AttributeCaseLog' => 'Log~~',
|
||||||
'Core:AttributeCaseLog+' => '~~',
|
'Core:AttributeCaseLog+' => '~~',
|
||||||
|
|||||||
@@ -45,6 +45,9 @@ Dict::Add('IT IT', 'Italian', 'Italiano', array(
|
|||||||
'Core:AttributeTagSet' => 'List of tags~~',
|
'Core:AttributeTagSet' => 'List of tags~~',
|
||||||
'Core:AttributeTagSet+' => '~~',
|
'Core:AttributeTagSet+' => '~~',
|
||||||
'Core:AttributeSet:placeholder' => 'click to add~~',
|
'Core:AttributeSet:placeholder' => 'click to add~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass' => '%1$s (%2$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass' => '%1$s (%2$s from %3$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses' => '%1$s (%2$s from child classes)~~',
|
||||||
|
|
||||||
'Core:AttributeCaseLog' => 'Log~~',
|
'Core:AttributeCaseLog' => 'Log~~',
|
||||||
'Core:AttributeCaseLog+' => '~~',
|
'Core:AttributeCaseLog+' => '~~',
|
||||||
|
|||||||
@@ -43,6 +43,9 @@ Dict::Add('JA JP', 'Japanese', '日本語', array(
|
|||||||
'Core:AttributeTagSet' => 'List of tags~~',
|
'Core:AttributeTagSet' => 'List of tags~~',
|
||||||
'Core:AttributeTagSet+' => '~~',
|
'Core:AttributeTagSet+' => '~~',
|
||||||
'Core:AttributeSet:placeholder' => 'click to add~~',
|
'Core:AttributeSet:placeholder' => 'click to add~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass' => '%1$s (%2$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass' => '%1$s (%2$s from %3$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses' => '%1$s (%2$s from child classes)~~',
|
||||||
|
|
||||||
'Core:AttributeCaseLog' => 'Log~~',
|
'Core:AttributeCaseLog' => 'Log~~',
|
||||||
'Core:AttributeCaseLog+' => '~~',
|
'Core:AttributeCaseLog+' => '~~',
|
||||||
|
|||||||
@@ -51,6 +51,9 @@ Dict::Add('NL NL', 'Dutch', 'Nederlands', array(
|
|||||||
'Core:AttributeTagSet' => 'Lijst van tags',
|
'Core:AttributeTagSet' => 'Lijst van tags',
|
||||||
'Core:AttributeTagSet+' => '',
|
'Core:AttributeTagSet+' => '',
|
||||||
'Core:AttributeSet:placeholder' => 'klik om toe te voegen',
|
'Core:AttributeSet:placeholder' => 'klik om toe te voegen',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass' => '%1$s (%2$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass' => '%1$s (%2$s from %3$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses' => '%1$s (%2$s from child classes)~~',
|
||||||
|
|
||||||
'Core:AttributeCaseLog' => 'Log',
|
'Core:AttributeCaseLog' => 'Log',
|
||||||
'Core:AttributeCaseLog+' => '',
|
'Core:AttributeCaseLog+' => '',
|
||||||
|
|||||||
@@ -45,6 +45,9 @@ Dict::Add('PT BR', 'Brazilian', 'Brazilian', array(
|
|||||||
'Core:AttributeTagSet' => 'List of tags~~',
|
'Core:AttributeTagSet' => 'List of tags~~',
|
||||||
'Core:AttributeTagSet+' => '~~',
|
'Core:AttributeTagSet+' => '~~',
|
||||||
'Core:AttributeSet:placeholder' => 'click to add~~',
|
'Core:AttributeSet:placeholder' => 'click to add~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass' => '%1$s (%2$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass' => '%1$s (%2$s from %3$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses' => '%1$s (%2$s from child classes)~~',
|
||||||
|
|
||||||
'Core:AttributeCaseLog' => 'Log~~',
|
'Core:AttributeCaseLog' => 'Log~~',
|
||||||
'Core:AttributeCaseLog+' => '~~',
|
'Core:AttributeCaseLog+' => '~~',
|
||||||
|
|||||||
@@ -32,6 +32,9 @@ Dict::Add('RU RU', 'Russian', 'Русский', array(
|
|||||||
'Core:AttributeTagSet' => 'Список тегов',
|
'Core:AttributeTagSet' => 'Список тегов',
|
||||||
'Core:AttributeTagSet+' => '',
|
'Core:AttributeTagSet+' => '',
|
||||||
'Core:AttributeSet:placeholder' => 'нажмите, чтобы добавить',
|
'Core:AttributeSet:placeholder' => 'нажмите, чтобы добавить',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass' => '%1$s (%2$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass' => '%1$s (%2$s from %3$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses' => '%1$s (%2$s from child classes)~~',
|
||||||
|
|
||||||
'Core:AttributeCaseLog' => 'Журнал',
|
'Core:AttributeCaseLog' => 'Журнал',
|
||||||
'Core:AttributeCaseLog+' => '',
|
'Core:AttributeCaseLog+' => '',
|
||||||
|
|||||||
@@ -53,6 +53,9 @@ Dict::Add('TR TR', 'Turkish', 'Türkçe', array(
|
|||||||
'Core:AttributeTagSet' => 'List of tags~~',
|
'Core:AttributeTagSet' => 'List of tags~~',
|
||||||
'Core:AttributeTagSet+' => '~~',
|
'Core:AttributeTagSet+' => '~~',
|
||||||
'Core:AttributeSet:placeholder' => 'click to add~~',
|
'Core:AttributeSet:placeholder' => 'click to add~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass' => '%1$s (%2$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass' => '%1$s (%2$s from %3$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses' => '%1$s (%2$s from child classes)~~',
|
||||||
|
|
||||||
'Core:AttributeCaseLog' => 'Log~~',
|
'Core:AttributeCaseLog' => 'Log~~',
|
||||||
'Core:AttributeCaseLog+' => '~~',
|
'Core:AttributeCaseLog+' => '~~',
|
||||||
|
|||||||
@@ -45,6 +45,9 @@ Dict::Add('ZH CN', 'Chinese', '简体中文', array(
|
|||||||
'Core:AttributeTagSet' => 'List of tags~~',
|
'Core:AttributeTagSet' => 'List of tags~~',
|
||||||
'Core:AttributeTagSet+' => '~~',
|
'Core:AttributeTagSet+' => '~~',
|
||||||
'Core:AttributeSet:placeholder' => 'click to add~~',
|
'Core:AttributeSet:placeholder' => 'click to add~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromClass' => '%1$s (%2$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromOneChildClass' => '%1$s (%2$s from %3$s)~~',
|
||||||
|
'Core:AttributeClassAttCodeSet:ItemLabel:AttributeFromSeveralChildClasses' => '%1$s (%2$s from child classes)~~',
|
||||||
|
|
||||||
'Core:AttributeCaseLog' => 'Log~~',
|
'Core:AttributeCaseLog' => 'Log~~',
|
||||||
'Core:AttributeCaseLog+' => '~~',
|
'Core:AttributeCaseLog+' => '~~',
|
||||||
|
|||||||
Reference in New Issue
Block a user