Index: typo3/sysext/cms/web_info/class.tx_cms_webinfo_lang.php =================================================================== --- typo3/sysext/cms/web_info/class.tx_cms_webinfo_lang.php (revision 5129) +++ typo3/sysext/cms/web_info/class.tx_cms_webinfo_lang.php (working copy) @@ -217,6 +217,9 @@ $tCells[] = ''.$info.''; $tCells[] = ''.$this->getContentElementCount($data['row']['uid'],0).''; + $modSharedTSconfig = t3lib_BEfunc::getModTSconfig($data['row']['uid'], 'mod.SHARED'); + $disableLanguages = isset($modSharedTSconfig['properties']['disableLanguages']) ? t3lib_div::trimExplode(',', $modSharedTSconfig['properties']['disableLanguages'], 1) : array(); + // Traverse system languages: foreach($languages as $langRow) { if ($this->pObj->MOD_SETTINGS['lang']==0 || (int)$this->pObj->MOD_SETTINGS['lang']===(int)$langRow['uid']) { @@ -257,14 +260,20 @@ $tCells[] = ''.$info.''; $tCells[] = ''.$this->getContentElementCount($data['row']['uid'],$langRow['uid']).''; } else { - $status = t3lib_div::hideIfNotTranslated($data['row']['l18n_cfg']) || $data['row']['l18n_cfg']&1 ? 'c-blocked' : 'c-fallback'; + if (in_array($langRow['uid'], $disableLanguages)) { + // Language has been disabled for this page + $status = 'c-blocked'; + $info = ''; + } else { + $status = t3lib_div::hideIfNotTranslated($data['row']['l18n_cfg']) || $data['row']['l18n_cfg']&1 ? 'c-blocked' : 'c-fallback'; + $info = ''; + $newOL_js[$langRow['uid']].= ' + +(document.webinfoForm[\'newOL['.$langRow['uid'].']['.$data['row']['uid'].']\'].checked ? \'&edit[pages_language_overlay]['.$data['row']['uid'].']=new\' : \'\') + '; + } + $tCells[] = ' '; $tCells[] = ' '; - - $info = ''; - $newOL_js[$langRow['uid']].= ' - +(document.webinfoForm[\'newOL['.$langRow['uid'].']['.$data['row']['uid'].']\'].checked ? \'&edit[pages_language_overlay]['.$data['row']['uid'].']=new\' : \'\') - '; $tCells[] = ''.$info.''; } } Index: typo3/sysext/cms/layout/class.tx_cms_layout.php =================================================================== --- typo3/sysext/cms/layout/class.tx_cms_layout.php (revision 5129) +++ typo3/sysext/cms/layout/class.tx_cms_layout.php (working copy) @@ -1961,7 +1961,8 @@ /** * Make selector box for creating new translation in a language - * Displays only languages which are not yet present for the current page. + * Displays only languages which are not yet present for the current page and + * that are not disabled with page TS. * * @param integer Page id for which to create a new language (pages_language_overlay record) * @return string