Extra Fields: Avoid using the ExtraField::translateDisplayName method to translate the options display name - refs BT#21533

pull/5832/head
Angel Fernando Quiroz Campos 10 months ago
parent 911dfc01ae
commit ffcdc3e4d8
No known key found for this signature in database
GPG Key ID: B284841AE3E562CD
  1. 4
      public/main/admin/statistics/index.php
  2. 2
      public/main/inc/ajax/statistics.ajax.php
  3. 24
      public/main/inc/lib/extra_field.lib.php
  4. 23
      public/main/inc/lib/extra_field_option.lib.php

@ -1000,7 +1000,7 @@ switch ($report) {
$count = $result['count'];
$usersFound += $count;
$option = $extraFieldOption->get($item['id'], true);
$option = $extraFieldOption->get($item['id']);
$item['display_text'] = $option['display_text'];
$all[$item['display_text']] = $count;
}
@ -1204,7 +1204,7 @@ switch ($report) {
$query = Database::query($sql);
$result = Database::fetch_array($query);
$count = $result['count'];
$option = $extraFieldOption->get($item['id'], true);
$option = $extraFieldOption->get($item['id']);
$item['display_text'] = $option['display_text'];
$all[$item['display_text']] = $count;
$usersFound += $count;

@ -362,7 +362,7 @@ switch ($action) {
$count = $result['count'];
$usersFound += $count;
$option = $extraFieldOption->get($item['id'], true);
$option = $extraFieldOption->get($item['id']);
$item['display_text'] = $option['display_text'];
$all[$item['display_text']] = $count;
}

@ -795,30 +795,6 @@ class ExtraField extends Model
return $extra;
}
/**
* Translate the display text for a extra field.
*
* @param string $variable
* @param string $defaultDisplayText
*
* @return string
*/
public static function translateDisplayName($variable, $defaultDisplayText): string
{
// 1st priority variable.
$translatedVariable = get_lang(api_underscore_to_camel_case($variable));
if (api_underscore_to_camel_case($variable) !== $translatedVariable) {
return $translatedVariable;
}
// 2nd priority display text.
$translatedDisplayText = get_lang($defaultDisplayText);
if ($defaultDisplayText !== $translatedDisplayText) {
return $translatedDisplayText;
}
return $defaultDisplayText;
}
/**
* Return an array of all the extra fields available for this item.
*

@ -535,8 +535,7 @@ class ExtraFieldOption extends Model
break;
}
$extraFieldOptionsRepo = Container::getExtraFieldOptionsRepository();
$result = $extraFieldOptionsRepo->findBy(['field' => $field_id], $orderBy);
$result = Container::getExtraFieldOptionsRepository()->findBy(['field' => $field_id], $orderBy);
if (!$result) {
return false;
@ -549,7 +548,7 @@ class ExtraFieldOption extends Model
'id' => $row->getId(),
'field_id' => $row->getField()->getId(),
'option_value' => $row->getValue(),
'display_text' => \ExtraField::translateDisplayName($row->getValue(), $row->getDisplayText()),
'display_text' => $row->getDisplayText(),
'priority' => $row->getPriority(),
'priority_message' => $row->getPriorityMessage(),
'option_order' => $row->getOptionOrder(),
@ -591,7 +590,7 @@ class ExtraFieldOption extends Model
'id' => $subOption->getId(),
'field_id' => $subOption->getField()->getId(),
'option_value' => $subOption->getValue(),
'display_text' => \ExtraField::translateDisplayName($subOption->getValue(), $subOption->getDisplayText()),
'display_text' => $subOption->getDisplayText(),
'priority' => $subOption->getPriority(),
'priority_message' => $subOption->getPriorityMessage(),
'option_order' => $subOption->getOptionOrder(),
@ -859,10 +858,13 @@ class ExtraFieldOption extends Model
{
$info = parent::get($id);
if ($info && $translateDisplayText) {
$extraFieldOptionsRepo = Container::getExtraFieldOptionsRepository();
$option = $extraFieldOptionsRepo->find($id);
$info['display_text'] = \ExtraField::translateDisplayName($option->getValue(), $option->getDisplayText());
if ($info) {
$option = Container::getExtraFieldOptionsRepository()->find($id);
if (!$translateDisplayText) {
$option->setLocale(Container::getParameter('locale'));
Database::getManager()->refresh($option);
}
$info['display_text'] = $option->getDisplayText();
}
return $info;
@ -873,9 +875,8 @@ class ExtraFieldOption extends Model
$result = parent::get_all($options);
foreach ($result as &$row) {
$extraFieldOptionsRepo = Container::getExtraFieldOptionsRepository();
$option = $extraFieldOptionsRepo->find($row['id']);
$row['display_text'] = \ExtraField::translateDisplayName($option->getValue(), $option->getDisplayText());
$option = Container::getExtraFieldOptionsRepository()->find($row['id']);
$row['display_text'] = $option->getDisplayText();
}
return $result;

Loading…
Cancel
Save