2016-04-28 10 views
1

Ich benutze TYPO3 4.5. Sie müssen den Text des TCA-Datensatzes in der Erweiterungsklasse abrufen. Ich benutze $ GLOBALS [ 'LANG'] -> sL ($ label). Als ich mich anmeldete war BE GLOBALS [ 'LANG'] Objekt ist alles ok. Aber wenn ausgeloggt, $ GLOBALS [ 'LANG'] = NULL in Rerult haben Fehler. Wie mache ich $ GLOBALS [ 'LANG'] = not null, wenn ich abmelde?

mein Code:

public function getСolumnValueTca($table,$column,$uid){ 

    if ($column && $table) { 
     $output = null; 
     //----------------------------------- 
     if ($uid){ 
      //Ищем нужную запись 
      foreach($TCA[$table]['columns'][$column]['config']['items'] as $key => $value){ 
       if($value['1'] == $uid){ 
        $label = $TCA[$table]['columns'] [$column]['config']['items'][$key]['0']; 
        break; 
       } 
      } 
      //------------------------------------------------------------------------------ 
      if(isset($label)){ 
       $output[$uid] = array(
        'value' => $GLOBALS['LANG']->sL($label) 
       ); 
      } else 
       $output = false; 
     } else { 
      //Вытаскиваем все возможные значения 
      foreach($TCA[$table]['columns'][$column]['config']['items'] as $key => $value){ 
       $label = $TCA[$table]['columns'][$column]['config']['items'][$key]['0']; 
       $output[$TCA[$table]['columns'][$column]['config']['items'][$key]['1']] = array(
        'value' => $GLOBALS['LANG']->sL($label) 
       ); 
      } 
      //---------------------------------------------------------------------------- 
     } 
    } else 
     $output = null; 
    return $output; 
} 

Antwort

1

Versuchen folgende:

$GLOBALS['TSFE']->sL('LLL:EXT:your_ext/pi1/locallang.xml:tx_yourext_pi1.label', 'altIfLabelNotFound'),