You are here

public static function LocalizeFields::localize in Localize Fields 7

Establish whether we should translate labels at all.

Also works as (very light) init method, if deciding that that label translation should be done.

Return value

integer Values 0|1; interprete as boolean.

8 calls to LocalizeFields::localize()
LocalizeFields::context in ./LocalizeFields.inc
Get translation context.
LocalizeFields::dateComboProcessAlter in ./LocalizeFields.inc
Translates Date fields' 'Field-name Start date' and 'Field-name End date' labels.
LocalizeFields::fieldAttachValidate in ./LocalizeFields.inc
Translates error messages created by implementations of hook_field_validate().
LocalizeFields::fieldAttachViewAlter in ./LocalizeFields.inc
Translates field view labels, and corrects decimal separator of decimals/floats.
LocalizeFields::fieldWidgetFormAlter in ./LocalizeFields.inc
Translates fields' labels, descriptions etc.

... See full list

File

./LocalizeFields.inc, line 127
Drupal Localize Fields module

Class

LocalizeFields
@file Drupal Localize Fields module

Code

public static function localize() {
  if (($localize = self::$localize) == -1) {
    $localize = 1;
    if (!empty($GLOBALS['language']->language)) {
      $userLanguage = $GLOBALS['language']->language;
    }
    elseif (!empty($GLOBALS['user']->language)) {
      $userLanguage = $GLOBALS['user']->language;
    }
    elseif (!($userLanguage = language_default('language'))) {
      $userLanguage = 'en';
    }

    // Establish source language by variable; fall back on English.
    if (!self::SOURCE_LANGUAGE_FALLBACK_FIRST_LANGUAGE) {
      $sourceLang = variable_get('i18n_string_source_language', 'en');
    }
    elseif (!($sourceLang = variable_get('i18n_string_source_language'))) {
      $languages = language_list();
      $sourceLang = '';

      // Assume that source language has to be enabled(?).
      foreach ($languages as $langCode => $props) {
        if ($props->enabled) {
          $sourceLang = $langCode;
          break;
        }
      }
    }
    if (!$sourceLang || $userLanguage == $sourceLang) {
      $localize = 0;
    }
    else {
      self::$useContext = variable_get('localize_fields_usecontext', LocalizeFields::USE_CONTEXT_NONCONTEXT);
      self::$entitiesEncoded = variable_get('localize_fields_entsencoded', array(
        '"',
        ''',
      ));
      self::$tentative = variable_get('localize_fields_tentative', 0);
    }
    self::$localize = $localize;
  }
  return $localize;
}