function uc_extra_fields_pane_ucxf_field in Extra Fields Checkout Pane 6.2
Same name and namespace in other branches
- 7 uc_extra_fields_pane.module \uc_extra_fields_pane_ucxf_field()
Implementation of hook_ucxf_field(). Update translation of field label and description Update also translation of option labels of select fields
Parameters
UCXF_Field $field:
string $op:
Return value
void
1 call to uc_extra_fields_pane_ucxf_field()
- uc_extra_fields_pane_locale_refresh in ./
uc_extra_fields_pane.module - Refresh all strings at once Callback for i18n.
File
- ./
uc_extra_fields_pane.module, line 1200 - Module: uc_extra_fields_pane.module
Code
function uc_extra_fields_pane_ucxf_field($field, $op) {
if (function_exists('i18nstrings_update')) {
switch ($op) {
case 'insert':
case 'update':
case 'locale_refresh':
i18nstrings_update('ucxf:field:' . $field->db_name . ':label', $field->label);
i18nstrings_update('ucxf:field:' . $field->db_name . ':description', $field->description);
switch ($field->value_type) {
// Make labels of options in select fields translatable
case UCXF_Field::UCXF_WIDGET_TYPE_SELECT:
case UCXF_Field::UCXF_WIDGET_TYPE_PHP_SELECT:
// Generate the options, but do not translate these.
$values = $field
->generate_value(FALSE);
foreach ($values as $key => $label) {
i18nstrings_update('ucxf:field:' . $field->db_name . ':value:' . $key, $label);
}
break;
// Make default values translatable
case UCXF_Field::UCXF_WIDGET_TYPE_TEXTFIELD:
case UCXF_Field::UCXF_WIDGET_TYPE_PHP:
case UCXF_Field::UCXF_WIDGET_TYPE_CONSTANT:
// Generate the string, but do not translate it.
$value = $field
->generate_value(FALSE);
if (!empty($value)) {
i18nstrings_update('ucxf:field:' . $field->db_name . ':value', $value);
}
break;
}
break;
}
}
}