47 protected $pluginButtons =
'lefttoright,righttoleft,language,showlanguagemarks';
50 'lefttoright' =>
'LeftToRight',
51 'righttoleft' =>
'RightToLeft',
52 'language' =>
'Language',
53 'showlanguagemarks' =>
'ShowLanguageMarks' 56 public function main($parentObject) {
60 return parent::main($parentObject);
71 $registerRTEinJavascriptString =
'';
72 if (!is_array($this->thisConfig[
'buttons.']) || !is_array($this->thisConfig[
'buttons.'][($button .
'.')])) {
73 $registerRTEinJavascriptString .=
' 74 RTEarea[' . $RTEcounter .
'].buttons.' . $button .
' = new Object();';
76 if ($this->htmlAreaRTE->is_FE()) {
77 $first =
$GLOBALS[
'TSFE']->getLLL(
'No language mark', $this->LOCAL_LANG);
79 $first =
$GLOBALS[
'LANG']->getLL(
'No language mark');
81 $languages = array(
'none' => $first);
82 $languages = array_flip(array_merge($languages, $this->
getLanguages()));
83 $languagesJSArray = array();
84 foreach ($languages as $key => $value) {
85 $languagesJSArray[] = array(
'text' => $key,
'value' => $value);
87 $languagesJSArray = json_encode(array(
'options' => $languagesJSArray));
88 $registerRTEinJavascriptString .=
' 89 RTEarea[' . $RTEcounter .
'].buttons.' . $button .
'.dataUrl = "' . ($this->htmlAreaRTE->is_FE() &&
$GLOBALS[
'TSFE']->absRefPrefix ?
$GLOBALS[
'TSFE']->absRefPrefix :
'') . $this->htmlAreaRTE->writeTemporaryFile(
'', ($button .
'_' . $this->htmlAreaRTE->contentLanguageUid),
'js', $languagesJSArray) .
'";';
90 return $registerRTEinJavascriptString;
103 $nameArray = array();
106 $table =
'static_languages';
107 $lang = \SJBR\StaticInfoTables\Utility\LocalizationUtility::getCurrentLanguage();
108 $titleFields = \SJBR\StaticInfoTables\Utility\LocalizationUtility::getLabelFields($table, $lang);
109 $prefixedTitleFields = array();
110 foreach ($titleFields as $titleField) {
111 $prefixedTitleFields[] = $table .
'.' . $titleField;
113 $labelFields = implode(
',', $prefixedTitleFields);
115 if (is_array($this->thisConfig[
'buttons.']) && is_array($this->thisConfig[
'buttons.'][
'language.']) && isset($this->thisConfig[
'buttons.'][
'language.'][
'restrictToItems'])) {
116 $languageList = implode(
'\',\
'', \
TYPO3\CMS\Core\Utility\
GeneralUtility::trimExplode(
',',
$GLOBALS[
'TYPO3_DB']->fullQuoteStr(strtoupper($this->thisConfig[
'buttons.'][
'language.'][
'restrictToItems']), $table)));
117 $where .=
' AND ' . $table .
'.lg_iso_2 IN (' . $languageList .
')';
120 $prefixLabelWithCode = (boolean)$this->thisConfig[
'buttons.'][
'language.'][
'prefixLabelWithCode'];
121 $postfixLabelWithCode = (boolean)$this->thisConfig[
'buttons.'][
'language.'][
'postfixLabelWithCode'];
122 while ($row =
$GLOBALS[
'TYPO3_DB']->sql_fetch_assoc($res)) {
123 $code = strtolower($row[
'lg_iso_2']) . ($row[
'lg_country_iso_2'] ?
'-' . strtoupper($row[
'lg_country_iso_2']) :
'');
124 foreach ($titleFields as $titleField) {
125 if ($row[$titleField]) {
126 $nameArray[$code] = $prefixLabelWithCode ? $code .
' - ' . $row[$titleField] : ($postfixLabelWithCode ? $row[$titleField] .
' - ' . $code : $row[$titleField]);
131 $GLOBALS[
'TYPO3_DB']->sql_free_result($res);
132 uasort($nameArray,
'strcoll');
145 return array_diff($show, array(
'language'));
applyToolbarConstraints($show)
static rmFromList($element, $list)
static trimExplode($delim, $string, $removeEmptyValues=FALSE, $limit=0)
$convertToolbarForHtmlAreaArray
static isLoaded($key, $exitOnError=FALSE)
$relativePathToLocallangFile
if(!defined('TYPO3_MODE')) $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_userauth.php']['logoff_pre_processing'][]
static BEenableFields($table, $inv=0)
static deleteClause($table, $tableAlias='')
buildJavascriptConfiguration($RTEcounter)