This question has been answered by achterbahn. See the first response.
<?php
if($modx->context->get('key') != "mgr"){
$host = $modx->getOption('http_host');
$ck = $_REQUEST['cultureKey'];
switch ($host) {
case ($host == 'www.domain1.tld:80' && !$ck):
case ($host == 'www.domain1.tld' && !$ck ):
// if the http_host is of a specific domain, switch the context
$modx->switchContext('context1');
break;
case ($host == 'www.domain1.tld:80' && $ck == 'en'):
case ($host == 'www.domain1.tld' && $ck == 'en'):
// if the http_host is of a specific domain, switch the context
$modx->switchContext('context2');
break;
case ($host == 'www.domain2.tld:80' && $ck == 'de'):
case ($host == 'www.domain2.tld' && $ck == 'de'):
// if the http_host is of a specific domain, switch the context
$modx->switchContext('web');
break;
case ($host == 'www.domain2.tld:80' && $ck == 'en'):
case ($host == 'www.domain2.tld' && $ck == 'en'):
// if the http_host is of a specific domain, switch the context
$modx->switchContext('context3');
break;
default:
// fallback, go to main context
$modx->initialize('web');
break;
}
/* unset GET var to # Special for Babel Multilanguage Site (MODX Extra)
# redirect all requests to /de/favicon.ico and /nl/favicon.ico
# to /favicon.ico
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(de|en)/favicon.ico$ modx/favicon.ico [L,QSA]
# redirect all requests to /de/assets* and /nl/assets* to /assets*
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(de|en)/assets(.*)$ assets$2 [L,QSA]
# redirect all other requests to /de/* and /nl/*
# to index.php and set the cultureKey parameter
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(de|en)?/?(.*)$ index.php?cultureKey=$1&q=$2 [L,QSA]