TYPO3 CMS  TYPO3_6-2
TYPO3\CMS\Lang\LanguageService Class Reference
Inheritance diagram for TYPO3\CMS\Lang\LanguageService:
language

Public Member Functions

 getParserFactory ()
 
 addModuleLabels ($arr, $prefix)
 
 makeEntities ($str)
 
 JScharCode ($str)
 
 debugLL ($value)
 
 getLL ($index, $hsc=FALSE)
 
 getLLL ($index, $localLanguage, $hsc=FALSE)
 
 sL ($input, $hsc=FALSE)
 
 loadSingleTableDescription ($table)
 
 includeLLFile ($fileRef, $setGlobal=TRUE, $mergeLocalOntoDefault=FALSE)
 
 overrideLL ($index, $value, $overrideDefault=TRUE)
 

Public Attributes

 $lang = 'default'
 
 $charSet = 'utf-8'
 
 $charSetArray = array()
 
 $typo3_help_url = 'http://typo3.org/documentation/document-library/'
 
 $debugKey = FALSE
 
 $moduleLabels = array()
 
 $LL_files_cache = array()
 
 $LL_labels_cache = array()
 
 $csConvObj
 
 $parserFactory
 

Protected Member Functions

 readLLfile ($fileRef)
 
 localizedFileRef ($fileRef)
 

Protected Attributes

 $languageDependencies = array()
 

Detailed Description

Contains the TYPO3 Backend Language class For detailed information about how localization is handled, please refer to the 'Inside TYPO3' document which describes this. This class is normally instantiated as the global variable $GLOBALS['LANG'] It's only available in the backend and under certain circumstances in the frontend

Author
Kasper Skårhøj kaspe.nosp@m.rYYY.nosp@m.Y@typ.nosp@m.o3.c.nosp@m.om
See also

Definition at line 29 of file LanguageService.php.

Member Function Documentation

◆ addModuleLabels()

TYPO3\CMS\Lang\LanguageService::addModuleLabels (   $arr,
  $prefix 
)

Adds labels and image references from the backend modules to the internal moduleLabels array

Parameters
array$arrArray with references to module labels, keys: ['labels']['table'],
string$prefixModule name prefix
Returns
void
See also

Definition at line 163 of file LanguageService.php.

◆ debugLL()

TYPO3\CMS\Lang\LanguageService::debugLL (   $value)

Debugs localization key.

Parameters
string$valuevalue to debug
Returns
string

Definition at line 221 of file LanguageService.php.

Referenced by TYPO3\CMS\Lang\LanguageService\getLL(), TYPO3\CMS\Lang\LanguageService\getLLL(), and TYPO3\CMS\Lang\LanguageService\sL().

◆ getLL()

TYPO3\CMS\Lang\LanguageService::getLL (   $index,
  $hsc = FALSE 
)

Returns the label with key $index form the globally loaded $LOCAL_LANG array. Mostly used from modules with only one LOCAL_LANG file loaded into the global space.

Parameters
string$indexLabel key
boolean$hscIf set, the return value is htmlspecialchar'ed
Returns
string

Definition at line 233 of file LanguageService.php.

References $GLOBALS, TYPO3\CMS\Lang\LanguageService\$lang, and TYPO3\CMS\Lang\LanguageService\debugLL().

◆ getLLL()

TYPO3\CMS\Lang\LanguageService::getLLL (   $index,
  $localLanguage,
  $hsc = FALSE 
)

Works like ->getLL() but takes the $LOCAL_LANG array used as the second argument instead of using the global array.

Parameters
string$indexLabel key
array$localLanguage$LOCAL_LANG array to get label key from
boolean$hscIf set, the return value is htmlspecialchar'ed
Returns
string

Definition at line 255 of file LanguageService.php.

References TYPO3\CMS\Lang\LanguageService\$lang, and TYPO3\CMS\Lang\LanguageService\debugLL().

Referenced by TYPO3\CMS\Lang\LanguageService\sL().

◆ getParserFactory()

TYPO3\CMS\Lang\LanguageService::getParserFactory ( )

Gets the parser factory.

Returns

Definition at line 151 of file LanguageService.php.

References TYPO3\CMS\Lang\LanguageService\$parserFactory.

◆ includeLLFile()

TYPO3\CMS\Lang\LanguageService::includeLLFile (   $fileRef,
  $setGlobal = TRUE,
  $mergeLocalOntoDefault = FALSE 
)

Includes locallang file (and possibly additional localized version if configured for) Read language labels will be merged with $LOCAL_LANG (if $setGlobal = TRUE).

Parameters
string$fileRef$fileRef is a file-reference
boolean$setGlobalSetting in global variable $LOCAL_LANG (or returning the variable)
boolean$mergeLocalOntoDefault
Returns
mixed if $setGlobal===TRUE, LL-files set $LOCAL_LANG in global scope, or array is returned from function

Definition at line 395 of file LanguageService.php.

References $GLOBALS, TYPO3\CMS\Lang\LanguageService\localizedFileRef(), TYPO3\CMS\Core\Utility\ArrayUtility\mergeRecursiveWithOverrule(), and TYPO3\CMS\Lang\LanguageService\readLLfile().

Referenced by TYPO3\CMS\Lang\LanguageService\loadSingleTableDescription().

◆ JScharCode()

TYPO3\CMS\Lang\LanguageService::JScharCode (   $str)

Converts the input string to a JavaScript function returning the same string, but charset-safe. Used for confirm and alert boxes where we must make sure that any string content does not break the script AND want to make sure the charset is preserved. Originally I used the JS function unescape() in combination with PHP function rawurlencode() in order to pass strings in a safe way. This could still be done for iso-8859-1 charsets but now I have applied the same method here for all charsets.

Parameters
string$strInput string, encoded with UTF-8
Returns
string Output string, a JavaScript function: "String.fromCharCode(......) since 6.2 - will be removed two versions later; use GeneralUtility::quoteJSvalue() instead

Definition at line 207 of file LanguageService.php.

References TYPO3\CMS\Core\Utility\GeneralUtility\logDeprecatedFunction().

◆ loadSingleTableDescription()

TYPO3\CMS\Lang\LanguageService::loadSingleTableDescription (   $table)

Loading $TCA_DESCR[$table]['columns'] with content from locallang files as defined in $TCA_DESCR[$table]['refs'] $TCA_DESCR is a global var

Parameters
string$tableTable name found as key in global array $TCA_DESCR
Returns
void

Definition at line 330 of file LanguageService.php.

References $GLOBALS, and TYPO3\CMS\Lang\LanguageService\includeLLFile().

◆ localizedFileRef()

TYPO3\CMS\Lang\LanguageService::localizedFileRef (   $fileRef)
protected

Returns localized fileRef (.[langkey].php)

Parameters
string$fileRefFilename/path of a 'locallang.php' file
Returns
string Input filename with a '.[lang-key].php' ending added if $this->lang is not 'default'

Definition at line 464 of file LanguageService.php.

Referenced by TYPO3\CMS\Lang\LanguageService\includeLLFile(), and TYPO3\CMS\Lang\LanguageService\sL().

◆ makeEntities()

TYPO3\CMS\Lang\LanguageService::makeEntities (   $str)

Will convert the input strings special chars (all above 127) to entities. The string is expected to be encoded in UTF-8 This function is used to create strings that can be used in the Click Menu (Context Sensitive Menus). The reason is that the values that are dynamically written into the

layer is decoded as iso-8859-1 no matter what charset is used in the document otherwise (only MSIE, Mozilla is OK). So by converting we by-pass this problem.
Parameters
string$strInput string
Returns
string Output string

Definition at line 190 of file LanguageService.php.

◆ overrideLL()

TYPO3\CMS\Lang\LanguageService::overrideLL (   $index,
  $value,
  $overrideDefault = TRUE 
)

Overrides a label.

Parameters
string$index
string$value
boolean$overrideDefaultOverrides default language
Returns
void

Definition at line 480 of file LanguageService.php.

References $GLOBALS, and TYPO3\CMS\Lang\LanguageService\$lang.

◆ readLLfile()

TYPO3\CMS\Lang\LanguageService::readLLfile (   $fileRef)
protected

Includes a locallang file and returns the $LOCAL_LANG array found inside.

Parameters
string$fileRefInput is a file-reference to be a 'local_lang' file containing a $LOCAL_LANG array
Returns
array value of $LOCAL_LANG found in the included file, empty if non found

Definition at line 436 of file LanguageService.php.

References TYPO3\CMS\Lang\LanguageService\$lang, and TYPO3\CMS\Core\Utility\ArrayUtility\mergeRecursiveWithOverrule().

Referenced by TYPO3\CMS\Lang\LanguageService\includeLLFile(), and TYPO3\CMS\Lang\LanguageService\sL().

◆ sL()

TYPO3\CMS\Lang\LanguageService::sL (   $input,
  $hsc = FALSE 
)

splitLabel function

All translations are based on $LOCAL_LANG variables. 'language-splitted' labels can therefore refer to a local-lang file + index. Refer to 'Inside TYPO3' for more details

Parameters
string$inputLabel key/reference
boolean$hscIf set, the return value is htmlspecialchar'ed
Returns
string

Definition at line 284 of file LanguageService.php.

References TYPO3\CMS\Lang\LanguageService\$debugKey, TYPO3\CMS\Lang\LanguageService\$lang, TYPO3\CMS\Lang\LanguageService\debugLL(), TYPO3\CMS\Lang\LanguageService\getLLL(), TYPO3\CMS\Lang\LanguageService\localizedFileRef(), and TYPO3\CMS\Lang\LanguageService\readLLfile().

Member Data Documentation

◆ $charSet

TYPO3\CMS\Lang\LanguageService::$charSet = 'utf-8'

Definition at line 43 of file LanguageService.php.

◆ $charSetArray

TYPO3\CMS\Lang\LanguageService::$charSetArray = array()

Definition at line 51 of file LanguageService.php.

◆ $csConvObj

TYPO3\CMS\Lang\LanguageService::$csConvObj

Definition at line 94 of file LanguageService.php.

◆ $debugKey

TYPO3\CMS\Lang\LanguageService::$debugKey = FALSE

Definition at line 65 of file LanguageService.php.

Referenced by TYPO3\CMS\Lang\LanguageService\sL().

◆ $lang

◆ $languageDependencies

TYPO3\CMS\Lang\LanguageService::$languageDependencies = array()
protected

Definition at line 109 of file LanguageService.php.

◆ $LL_files_cache

TYPO3\CMS\Lang\LanguageService::$LL_files_cache = array()

Definition at line 80 of file LanguageService.php.

◆ $LL_labels_cache

TYPO3\CMS\Lang\LanguageService::$LL_labels_cache = array()

Definition at line 87 of file LanguageService.php.

◆ $moduleLabels

TYPO3\CMS\Lang\LanguageService::$moduleLabels = array()

Definition at line 73 of file LanguageService.php.

◆ $parserFactory

TYPO3\CMS\Lang\LanguageService::$parserFactory

◆ $typo3_help_url

TYPO3\CMS\Lang\LanguageService::$typo3_help_url = 'http://typo3.org/documentation/document-library/'

Definition at line 58 of file LanguageService.php.