Commit 7611c4a4 authored by Stefan Busemann's avatar Stefan Busemann

Merge branch 'task/update-to-typo3-v9' into 'develop'

Update my.typo3.org to TYPO3 v9

See merge request !156
parents ebf98235 ee40970b
Pipeline #7053 passed with stages
in 4 minutes and 12 seconds
/vendor/
/var/
/public/
!/public/humans.txt
/private/
......
......@@ -26,22 +26,21 @@
"issues": "https://git-t3o.typo3.org/t3o/my/issues"
},
"require": {
"typo3/cms-redirects": "^9.5",
"helhum/typo3-console": "^5.0",
"dmitryd/typo3-realurl": "^2.1",
"t3o/t3olayout": "^3.0",
"in2code/femanager": "^4.0",
"in2code/userprofile": "^0.2",
"t3o/t3olayout": "dev-develop-v9",
"in2code/femanager": "^5.0",
"sjbr/static-info-tables": "^6.5",
"t3o/gitlab_api": "^1.0",
"gordalina/cachetool": "^3.2",
"gordalina/cachetool": "^4.0",
"t3o/t3omy": "@dev",
"t3o/t3o_slack": "@dev",
"t3o/t3o_ldap": "@dev",
"helhum/typo3-secure-web": "^0.2.8"
"in2code/userprofile": "^0.3"
},
"config": {
"platform": {
"php": "7.0.30"
"php": "7.2.11"
}
},
"extra": {
......
This source diff could not be displayed because it is too large. You can view the blob instead.
rootPageId: 1
base: 'https://my.typo3.org'
baseVariants:
-
base: 'http://my.typo3.org.ddev.local'
condition: 'applicationContext == "Development"'
-
base: 'https://my-stage.typo3.org'
condition: 'applicationContext == "Testing"'
languages:
-
title: English
enabled: true
languageId: '0'
base: /
typo3Language: default
locale: en_US.UTF-8
iso-639-1: en
navigationTitle: English
hreflang: en-US
direction: ''
flag: gb
errorHandling:
-
errorCode: '404'
errorHandler: Page
errorContentSource: 't3://page?uid=404'
routes:
-
route: robots.txt
type: staticText
content: "User-agent: *\r\nDisallow: /typo3/\r\nDisallow: /fileadmin/\r\nAllow: /typo3/sysext/frontend/Resources/Public/*"
......@@ -9,7 +9,7 @@
"extension"
],
"require": {
"typo3/cms-core": "^8.7"
"typo3/cms-core": "^8.7 || ^9.5"
},
"autoload": {
"psr-4": {
......
......@@ -21,7 +21,7 @@ $EM_CONF[$_EXTKEY] = [
'version' => '0.0.0',
'constraints' => [
'depends' => [
'typo3' => '8.7.0-8.99.99',
'typo3' => '8.7.0',
'php' => '7.0.0-7.99.99',
],
'conflicts' => [],
......
......@@ -13,8 +13,8 @@ namespace T3o\T3oLdap\Connectors;
* LICENSE.txt file that was distributed with this source code.
*/
use TYPO3\CMS\Core\Database\ConnectionPool;
use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Saltedpasswords\Utility\SaltedPasswordsUtility;
/**
* LDAP connector class to update accounts and passwords for LDAP user
......@@ -24,8 +24,9 @@ use TYPO3\CMS\Saltedpasswords\Utility\SaltedPasswordsUtility;
*
* @since 1.0.0
*/
class Ldap
class Ldap implements \Psr\Log\LoggerAwareInterface
{
use \Psr\Log\LoggerAwareTrait;
/**
* LDAP server as IP, hostname or complete URI
......@@ -101,7 +102,11 @@ class Ldap
putenv('LDAPTLS_REQCERT=never');
// TODO Move to TypoScript configuration object if more than one LDAP server is required per installation
$this->extensionConfiguration = unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['t3o_ldap']);
if (version_compare(TYPO3_version, '9.0', '<')) {
$this->extensionConfiguration = unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['t3o_ldap'] ?? '') ?? [];
} else {
$this->extensionConfiguration = $GLOBALS['TYPO3_CONF_VARS']['EXTENSIONS']['t3o_ldap'] ?? [];
}
$this->ldapServer = trim($this->extensionConfiguration['ldapServer']);
$this->ldapServerPort = intval($this->extensionConfiguration['ldapServerPort']);
$this->ldapProtocolVersion = intval($this->extensionConfiguration['ldapProtocolVersion']);
......@@ -109,6 +114,8 @@ class Ldap
$this->ldapBindPassword = $this->extensionConfiguration['ldapBindPassword'];
$this->ldapBaseDnForPasswordChanges = trim($this->extensionConfiguration['ldapBaseDnForPasswordChanges']);
$this->logger = GeneralUtility::makeInstance(\TYPO3\CMS\Core\Log\LogManager::class)->getLogger(__CLASS__);
// Connect and bind
try {
if ($this->createLdapConnection()) {
......@@ -140,11 +147,7 @@ class Ldap
$ret = true;
}
} else {
GeneralUtility::sysLog(
'Keine LDAP-Bind mit Nutzerdaten moeglich: ' . ldap_error($this->ldapConnection),
't3o_ldap',
GeneralUtility::SYSLOG_SEVERITY_ERROR
);
$this->logger->error('ldab_bind is not working with user data: ' . ldap_error($this->ldapConnection));
}
return $ret;
......@@ -174,25 +177,13 @@ class Ldap
// Finally try to update passwords
$result = $this->updateLdapAttribute($dn, 'userPassword', $values, true);
if ($result === false) {
GeneralUtility::sysLog(
ldap_error($this->ldapConnection),
't3o_ldap',
GeneralUtility::SYSLOG_SEVERITY_ERROR
);
$this->logger->error(ldap_error($this->ldapConnection));
}
} else {
GeneralUtility::sysLog(
'Unable to bind to LDAP using: ' . ldap_error($this->ldapConnection),
't3o_ldap',
GeneralUtility::SYSLOG_SEVERITY_ERROR
);
$this->logger->error('Unable to bind to LDAP using: ' . ldap_error($this->ldapConnection));
}
} else {
GeneralUtility::sysLog(
'No active LDAP connection available',
't3o_ldap',
GeneralUtility::SYSLOG_SEVERITY_ERROR
);
$this->logger->error('No active LDAP connection available');
}
return $ret;
......@@ -222,7 +213,7 @@ class Ldap
);
}
} catch (\RuntimeException $e) {
GeneralUtility::sysLog($e->getMessage(), 't3o_ldap', GeneralUtility::SYSLOG_SEVERITY_ERROR);
$this->logger->error($e->getMessage());
}
return $ret;
......@@ -289,7 +280,7 @@ class Ldap
);
}
} catch (\RuntimeException $e) {
GeneralUtility::sysLog($e->getMessage(), 't3o_ldap', GeneralUtility::SYSLOG_SEVERITY_ERROR);
$this->logger->error($e->getMessage());
}
return $ret;
......@@ -556,35 +547,32 @@ class Ldap
{
$ret = false;
if ($passwordString !== '') {
if (SaltedPasswordsUtility::isUsageEnabled('FE')) {
$objSalt = GeneralUtility::makeInstance(SaltedPasswordsUtility::getDefaultSaltingHashingMethod('FE'));
if (is_object($objSalt)) {
if ($objSalt->isValidSaltedPW($passwordString)) {
$ret = true;
}
$saltedHashingMethods = \TYPO3\CMS\Core\Crypto\PasswordHashing\PasswordHashFactory::getRegisteredSaltedHashingMethods();
foreach ($saltedHashingMethods as $saltedHashingMethod) {
/** @var \TYPO3\CMS\Core\Crypto\PasswordHashing\PasswordHashInterface $method */
$method = GeneralUtility::makeInstance($saltedHashingMethod);
if ($method->isAvailable() && $method->isValidSaltedPW($passwordString)) {
return true;
}
}
}
return $ret;
}
/**
* Update the last modified in LDAP timestamp of a user
*
* @todo Rebuild it with Doctrine DBAL
* @param $feUserUid
* @return mixed
*/
private function updateFeUserLastLdapUpdateTimestamp($feUserUid)
{
return $GLOBALS['TYPO3_DB']->exec_UPDATEquery(
'fe_users',
'uid = ' . intval($feUserUid),
[
'tx_t3oldap_lastupdate_ts' => $GLOBALS['EXEC_TIME']
]
);
return GeneralUtility::makeInstance(ConnectionPool::class)
->getConnectionForTable('fe_users')
->update(
'fe_users',
['tx_t3oldap_lastupdate_ts' => $GLOBALS['EXEC_TIME']],
['uid' => (int)$feUserUid]
);
}
/**
......@@ -604,7 +592,6 @@ class Ldap
}
/**
* @todo Rebuild it with Doctrine DBAL
* @param $countryName
* @return bool
*/
......@@ -612,27 +599,17 @@ class Ldap
{
$ret = false;
$whereClause = 'cn_short_en LIKE ' . $GLOBALS['TYPO3_DB']->fullQuoteStr($countryName, 'static_countries');
$selectFields = 'uid, cn_iso_2, cn_short_en';
$selectFields = ['uid', 'cn_iso_2', 'cn_short_en'];
$fromTable = 'static_countries';
$groupBy = '';
$orderBy = '';
$limit = '1';
$result = $GLOBALS['TYPO3_DB']->exec_SELECTquery(
$selectFields,
$fromTable,
$whereClause,
$groupBy,
$orderBy,
$limit
);
if ($result) {
if ($GLOBALS['TYPO3_DB']->sql_num_rows($result) == 1) {
$ret = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($result);
$GLOBALS['TYPO3_DB']->sql_free_result($result);
}
}
$queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable($fromTable);
$ret = $queryBuilder->select($selectFields)
->from($fromTable)
->where(
$queryBuilder->expr()->eq('cn_short_en', $queryBuilder->createNamedParameter($countryName))
)
->execute()
->fetch();
return $ret;
}
......@@ -643,7 +620,7 @@ class Ldap
public function __destruct()
{
if ($this->ldapConnection) {
ldap_close($this->ldapConnection);
ldap_unbind($this->ldapConnection);
}
}
}
......@@ -42,7 +42,11 @@ class DataHandlerHook
*/
public function processDatamap_afterAllOperations(\TYPO3\CMS\Core\DataHandling\DataHandler $dataHandler)
{
$extensionConfiguration = unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['t3o_ldap']);
if (version_compare(TYPO3_version, '9.0', '<')) {
$extensionConfiguration = unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['t3o_ldap'] ?? '') ?? [];
} else {
$extensionConfiguration = $GLOBALS['TYPO3_CONF_VARS']['EXTENSIONS']['t3o_ldap'] ?? [];
}
$enableLdapPasswordUpdates = (int)$extensionConfiguration['enableLdapPasswordUpdates'];
if ($enableLdapPasswordUpdates === 1) {
......
......@@ -17,8 +17,10 @@ use TYPO3\CMS\Core\Utility\GeneralUtility;
/**
* Password updating facility.
*/
class PasswordUpdate
class PasswordUpdate implements \Psr\Log\LoggerAwareInterface
{
use \Psr\Log\LoggerAwareTrait;
const PASSWORD_METHODS = ['md5', 'sha1', 'crypt'];
/**
......@@ -29,18 +31,19 @@ class PasswordUpdate
*/
public function updatePassword(string $username, string $clearTextPassword)
{
$extensionConfiguration = unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['t3o_ldap']);
if (version_compare(TYPO3_version, '9.0', '<')) {
$extensionConfiguration = unserialize($GLOBALS['TYPO3_CONF_VARS']['EXT']['extConf']['t3o_ldap'] ?? '') ?? [];
} else {
$extensionConfiguration = $GLOBALS['TYPO3_CONF_VARS']['EXTENSIONS']['t3o_ldap'] ?? [];
}
// Check if LDAP updates are enabled in extension configuration
if ((int)$extensionConfiguration['enableLdapPasswordUpdates'] === 1) {
/** @var \T3o\T3oLdap\Connectors\Ldap $ldap */
$ldap = GeneralUtility::makeInstance(\T3o\T3oLdap\Connectors\Ldap::class);
if ($ldap->setLdapPasswords($username, $this->getHashedPasswords($clearTextPassword))) {
GeneralUtility::sysLog(
'Password successfully updated (Mechanisms: ' . strtoupper(implode(', ', self::PASSWORD_METHODS)) . ')',
't3o_ldap',
GeneralUtility::SYSLOG_SEVERITY_INFO
);
$this->logger = GeneralUtility::makeInstance(\TYPO3\CMS\Core\Log\LogManager::class)->getLogger(__CLASS__);
$this->logger->info('Password successfully updated (Mechanisms: ' . strtoupper(implode(', ', self::PASSWORD_METHODS)) . ')');
}
}
}
......
......@@ -35,7 +35,7 @@ $EM_CONF[$_EXTKEY] = [
'constraints' => [
'depends' => [
'php' => '7.0.0-0.0.0',
'typo3' => '8.7.0-8.9.99',
'typo3' => '8.7.0',
'femanager' => '4.1.0-0.0.0'
],
'conflicts' => [
......
......@@ -33,8 +33,10 @@ use TYPO3\CMS\Extbase\Mvc\Controller\CommandController;
*
* This copyright notice MUST APPEAR in all copies of the script!
***************************************************************/
class SlackImportCommandController extends CommandController
class SlackImportCommandController extends CommandController implements \Psr\Log\LoggerAwareInterface
{
use \Psr\Log\LoggerAwareTrait;
/**
* @var \T3o\T3oSlack\Domain\Repository\SlackUserRepository
* @inject
......@@ -113,10 +115,8 @@ class SlackImportCommandController extends CommandController
}
} while ($cursor);
$GLOBALS['BE_USER']->simplelog(
'Import of Slack User sucessful - imported ' . $counter . ' users',
't3o_slack'
);
$this->logger = GeneralUtility::makeInstance(\TYPO3\CMS\Core\Log\LogManager::class)->getLogger(__CLASS__);
$this->logger->info('Import of Slack User sucessful - imported ' . $counter . ' users');
}
protected function getTSConfiguration()
......
......@@ -9,7 +9,7 @@
"issues": "https://github.com/TYPO3-typo3org/t3o_slack/issues"
},
"require": {
"typo3/cms-core": "8.5.0 - 8.9.99"
"typo3/cms-core": "^8.7 || ^9.5"
},
"autoload": {
"psr-4": {
......
......@@ -29,7 +29,7 @@ $EM_CONF[$_EXTKEY] = [
'version' => '1.1.4',
'constraints' => [
'depends' => [
'typo3' => '8.5.0-8.99.99',
'typo3' => '8.7.0',
],
'conflicts' => [],
'suggests' => [],
......
......@@ -27,7 +27,6 @@ namespace T3o\T3omy\Hooks;
* This copyright notice MUST APPEAR in all copies of the script!
***************************************************************/
use TYPO3\CMS\Backend\Utility\BackendUtility;
use TYPO3\CMS\Core\Imaging\IconFactory;
use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Extbase\SignalSlot\Dispatcher;
......@@ -102,7 +101,9 @@ class RecordListWorkflowFeUsers implements RecordListHookInterface
'id' => $row['pid']
];
$href = BackendUtility::getModuleUrl('web_list', $urlParameters);
$uriBuilder = GeneralUtility::makeInstance(\TYPO3\CMS\Backend\Routing\UriBuilder::class);
$href = $uriBuilder->buildUriFromRoute('web_list', $urlParameters);
$class = 'btn btn-default';
return '<a class="' . $class . '" href="' . $href . '">'
......
......@@ -27,7 +27,6 @@ namespace T3o\T3omy\Hooks;
* This copyright notice MUST APPEAR in all copies of the script!
***************************************************************/
use TYPO3\CMS\Backend\Utility\BackendUtility;
use TYPO3\CMS\Core\Imaging\IconFactory;
use TYPO3\CMS\Core\Utility\GeneralUtility;
use TYPO3\CMS\Extbase\SignalSlot\Dispatcher;
......@@ -101,7 +100,9 @@ class RecordListWorkflowOldUsers implements RecordListHookInterface
],
];
$href = BackendUtility::getModuleUrl('web_list', $urlParameters);
$uriBuilder = GeneralUtility::makeInstance(\TYPO3\CMS\Backend\Routing\UriBuilder::class);
$href = $uriBuilder->buildUriFromRoute('web_list', $urlParameters);
$class = 'btn btn-default';
return '<a class="' . $class . '" href="' . $href . '">'
......
......@@ -8,10 +8,10 @@ $EM_CONF[$_EXTKEY] = [
'category' => 'extension',
'constraints' => [
'depends' => [
'typo3' => '8.7.0-8.99.99',
'typo3' => '8.7.0',
't3olayout' => '0.1.0-',
't3o_slack' => '0.1.0-',
'fluid_styled_content' => '7.6.0-8.99.99',
'fluid_styled_content' => '8.7.0',
'userprofile' => '0.0.1-',
'femanager' => '4.0.0-'
],
......
......@@ -31,7 +31,7 @@ config.tx_extbase {
}
}
[applicationContext = Production/Live]
[applicationContext = Production]
config.additionalHeaders {
10.header = X-Powered-By: nothing
20.header = Content-Security-Policy: default-src 'self' *.typo3.org; script-src 'unsafe-inline' *.typo3.org; font-src 'self' fonts.googleapis.com fonts.gstatic.com; style-src 'self' 'unsafe-inline' fonts.googleapis.com; img-src 'self' data: *.typo3.org www.gravatar.com
......
......@@ -25,3 +25,4 @@ $GLOBALS['TYPO3_CONF_VARS']['MAIL'] = [
];
$GLOBALS['TYPO3_CONF_VARS']['BE']['installToolPassword'] = '$P$CZqeoYBTHC0kXKny4tpTvBSzzV5wVY0'; /* joh316 */
$GLOBALS['TYPO3_CONF_VARS']['SYS']['sitename'] = ' LOCAL: ' . $GLOBALS['TYPO3_CONF_VARS']['SYS']['sitename'];
......@@ -5,6 +5,10 @@ return [
'explicitADmode' => 'explicitAllow',
'installToolPassword' => '$pbkdf2-sha256$25000$oRS5QrY6LY0VQWgAxx5hcQ$mM7JqvMgnEfY1FtIW6Ngcj7mJqUNto4kBNJmRv0gUFk',
'loginSecurityLevel' => 'normal',
'passwordHashing' => [
'className' => 'TYPO3\\CMS\\Core\\Crypto\\PasswordHashing\\Argon2iPasswordHash',
'options' => [],
],
],
'DB' => [
'Connections' => [
......@@ -21,47 +25,101 @@ return [
],
'EXT' => [
'extConf' => [
'backend' => 'a:5:{s:9:"loginLogo";s:0:"";s:19:"loginHighlightColor";s:0:"";s:20:"loginBackgroundImage";s:0:"";s:11:"backendLogo";s:0:"";s:14:"backendFavicon";s:0:"";}',
'belog' => 'a:0:{}',
'beuser' => 'a:0:{}',
'documentation' => 'a:0:{}',
'backend' => 'a:6:{s:14:"backendFavicon";s:0:"";s:11:"backendLogo";s:0:"";s:20:"loginBackgroundImage";s:0:"";s:13:"loginFootnote";s:0:"";s:19:"loginHighlightColor";s:0:"";s:9:"loginLogo";s:0:"";}',
'extensionmanager' => 'a:2:{s:21:"automaticInstallation";s:1:"1";s:11:"offlineMode";s:1:"0";}',
'felogin' => 'a:0:{}',
'femanager' => 'a:4:{s:13:"disableModule";s:1:"0";s:24:"enableConfirmationModule";s:1:"1";s:10:"disableLog";s:1:"0";s:16:"setCookieOnLogin";s:1:"0";}',
'fluid_styled_content' => 'a:0:{}',
'form' => 'a:0:{}',
'gitlab_api' => 'a:0:{}',
'gridelements' => 'a:3:{s:20:"additionalStylesheet";s:0:"";s:19:"nestingInListModule";s:1:"0";s:26:"overlayShortcutTranslation";s:1:"0";}',
'ig_ldap_sso_auth' => 'a:18:{s:18:"checkConfiguration";s:1:"0";s:21:"throwExceptionAtLogin";s:1:"1";s:22:"forceLowerCaseUsername";s:1:"1";s:26:"enableBELDAPAuthentication";s:1:"0";s:17:"TYPO3BEGroupExist";s:1:"0";s:16:"TYPO3BEUserExist";s:1:"0";s:10:"BEfailsafe";s:1:"0";s:27:"TYPO3BEGroupsNotSynchronize";s:1:"0";s:12:"keepBEGroups";s:1:"0";s:11:"enableBESSO";s:1:"0";s:26:"enableFELDAPAuthentication";s:1:"1";s:31:"TYPO3FEDeleteUserIfNoLDAPGroups";s:1:"0";s:32:"TYPO3FEDeleteUserIfNoTYPO3Groups";s:1:"0";s:17:"TYPO3FEGroupExist";s:1:"0";s:16:"TYPO3FEUserExist";s:1:"0";s:27:"TYPO3FEGroupsNotSynchronize";s:1:"1";s:12:"keepFEGroups";s:1:"1";s:11:"enableFESSO";s:1:"0";}',
'info' => 'a:0:{}',
'info_pagetsconfig' => 'a:0:{}',
'realurl' => 'a:6:{s:10:"configFile";s:34:"typo3conf/RealurlConfiguration.php";s:14:"enableAutoConf";s:1:"0";s:14:"autoConfFormat";s:1:"0";s:17:"segTitleFieldList";s:0:"";s:12:"enableDevLog";s:1:"0";s:10:"moduleIcon";s:1:"0";}',
'recycler' => 'a:0:{}',
'rsaauth' => 'a:1:{s:18:"temporaryDirectory";s:0:"";}',
'rte_ckeditor' => 'a:0:{}',
'saltedpasswords' => 'a:2:{s:3:"BE.";a:4:{s:21:"saltedPWHashingMethod";s:41:"TYPO3\\CMS\\Saltedpasswords\\Salt\\Pbkdf2Salt";s:11:"forceSalted";i:0;s:15:"onlyAuthService";i:0;s:12:"updatePasswd";i:1;}s:3:"FE.";a:5:{s:7:"enabled";i:1;s:21:"saltedPWHashingMethod";s:41:"TYPO3\\CMS\\Saltedpasswords\\Salt\\Pbkdf2Salt";s:11:"forceSalted";i:0;s:15:"onlyAuthService";i:0;s:12:"updatePasswd";i:1;}}',
'scheduler' => 'a:4:{s:11:"maxLifetime";s:4:"1440";s:11:"enableBELog";s:1:"1";s:15:"showSampleTasks";s:1:"1";s:11:"useAtdaemon";s:1:"0";}',
'setup' => 'a:0:{}',
'gridelements' => 'a:6:{s:20:"additionalStylesheet";s:0:"";s:38:"disableAutomaticUnusedColumnCorrection";s:1:"0";s:25:"disableCopyFromPageButton";s:1:"0";s:19:"disableDragInWizard";s:1:"0";s:19:"nestingInListModule";s:1:"0";s:26:"overlayShortcutTranslation";s:1:"0";}',
'ig_ldap_sso_auth' => 'a:18:{s:10:"BEfailsafe";s:1:"0";s:17:"TYPO3BEGroupExist";s:1:"0";s:27:"TYPO3BEGroupsNotSynchronize";s:1:"0";s:16:"TYPO3BEUserExist";s:1:"0";s:31:"TYPO3FEDeleteUserIfNoLDAPGroups";s:1:"0";s:32:"TYPO3FEDeleteUserIfNoTYPO3Groups";s:1:"0";s:17:"TYPO3FEGroupExist";s:1:"0";s:27:"TYPO3FEGroupsNotSynchronize";s:1:"1";s:16:"TYPO3FEUserExist";s:1:"0";s:26:"enableBELDAPAuthentication";s:1:"0";s:11:"enableBESSO";s:1:"0";s:26:"enableFELDAPAuthentication";s:1:"1";s:11:"enableFESSO";s:1:"0";s:22:"forceLowerCaseUsername";s:1:"0";s:12:"keepBEGroups";s:1:"0";s:12:"keepFEGroups";s:1:"1";s:21:"throwExceptionAtLogin";s:1:"0";s:23:"useExtConfConfiguration";s:1:"0";}',
'scheduler' => 'a:2:{s:11:"maxLifetime";s:4:"1440";s:15:"showSampleTasks";s:1:"1";}',
'static_info_tables' => 'a:1:{s:13:"enableManager";s:1:"0";}',
't3o_ldap' => 'a:8:{s:29:"enableExternalPasswordUpdates";s:1:"0";s:25:"enableLdapPasswordUpdates";s:1:"0";s:10:"ldapServer";s:9:"127.0.0.1";s:14:"ldapServerPort";s:3:"389";s:19:"ldapProtocolVersion";s:1:"3";s:10:"ldapBindDn";s:0:"";s:16:"ldapBindPassword";s:0:"";s:28:"ldapBaseDnForPasswordChanges";s:0:"";}',
't3o_slack' => 'a:0:{}',
't3olayout' => 'a:0:{}',
't3omy' => 'a:0:{}',
'tstemplate' => 'a:0:{}',
'userprofile' => 'a:0:{}',
't3o_ldap' => 'a:8:{s:29:"enableExternalPasswordUpdates";s:1:"0";s:25:"enableLdapPasswordUpdates";s:1:"0";s:28:"ldapBaseDnForPasswordChanges";s:0:"";s:10:"ldapBindDn";s:0:"";s:16:"ldapBindPassword";s:0:"";s:19:"ldapProtocolVersion";s:1:"3";s:10:"ldapServer";s:9:"127.0.0.1";s:14:"ldapServerPort";s:3:"389";}',
],
],
'EXTCONF' => [
'helhum-typo3-console' => [
'initialUpgradeDone' => '9.5',
],
],
'EXTENSIONS' => [
'backend' => [
'backendFavicon' => '',
'backendLogo' => '',
'loginBackgroundImage' => '',
'loginFootnote' => '',
'loginHighlightColor' => '',
'loginLogo' => '',
],
'extensionmanager' => [
'automaticInstallation' => '1',
'offlineMode' => '0',
],
'femanager' => [
'disableLog' => '0',
'disableModule' => '0',
'enableConfirmationModule' => '1',
'setCookieOnLogin' => '0',
],
'gridelements' => [
'additionalStylesheet' => '',
'disableAutomaticUnusedColumnCorrection' => '0',
'disableCopyFromPageButton' => '0',
'disableDragInWizard' => '0',
'nestingInListModule' => '0',
'overlayShortcutTranslation' => '0',
],
'ig_ldap_sso_auth' => [
'BEfailsafe' => '0',
'TYPO3BEGroupExist' => '0',
'TYPO3BEGroupsNotSynchronize' => '0',
'TYPO3BEUserExist' => '0',
'TYPO3FEDeleteUserIfNoLDAPGroups' => '0',
'TYPO3FEDeleteUserIfNoTYPO3Groups' => '0',
'TYPO3FEGroupExist' => '0',
'TYPO3FEGroupsNotSynchronize' => '1',
'TYPO3FEUserExist' => '0',
'enableBELDAPAuthentication' => '0',
'enableBESSO' => '0',
'enableFELDAPAuthentication' => '1',
'enableFESSO' => '0',
'forceLowerCaseUsername' => '0',
'keepBEGroups' => '0',
'keepFEGroups' => '1',
'throwExceptionAtLogin' => '0',
'useExtConfConfiguration' => '0',
],
'scheduler' => [
'maxLifetime' => '1440',
'showSampleTasks' => '1',
],
'static_info_tables' => [
'enableManager' => '0',
],
't3o_ldap' => [
'enableExternalPasswordUpdates' => '0',
'enableLdapPasswordUpdates' => '0',
'ldapBaseDnForPasswordChanges' => '',
'ldapBindDn' => '',
'ldapBindPassword' => '',
'ldapProtocolVersion' => '3',
'ldapServer' => '127.0.0.1',
'ldapServerPort' => '389',
],
],
'FE' => [
'debug' => true,
'loginSecurityLevel' => 'normal',
'pageNotFound_handling' => '/index.php?id=404&no_cache=1',
'passwordHashing' => [
'className' => 'TYPO3\\CMS\\Core\\Crypto\\PasswordHashing\\Argon2iPasswordHash',
'options' => [],
],
],
'GFX' => [
'jpg_quality' => '80',
'processor' => 'ImageMagick',
'processor_allowTemporaryMasksAsPng' => false,
'processor_colorspace' => 'sRGB',
'processor_effects' => 1,
'processor_effects' => true,
'processor_enabled' => true,
'processor_path' => '/usr/bin/',
'processor_path_lzw' => '/usr/bin/',
......@@ -91,13 +149,9 @@ return [
],
'devIPmask' => '*',
'displayErrors' => 1,
'enableDeprecationLog' => 'file',
'encryptionKey' => 'db379ac7cd9a141040b6b9eca3fd574c0513c1200bdf1af600794d434a682b7ff170107496d1f0445d432d0e7d2a74f5',
'exceptionalErrors' => 28674,
'isInitialDatabaseImportDone' => true,
'isInitialInstallationInProgress' => false,
'exceptionalErrors' => 12290,
'sitename' => 'my.typo3.org',
'sqlDebug' => 1,
'systemLogLevel' => 0,
],
];