Gert wrote:Der letzte Versuch, die User zum bearbeiten von Core Dateien zu animieren, ging aber mächtig schief ... BOM
Da hast Du natürlich recht -- daran hatte ich nicht gedacht.
Gert wrote:Es gibt doch schon eine Routine für Subsites, die könnte auch für Zweitsprachen verwendet werden:
Das ist natürlich sowieso sinnvoll. Subsites und Zweitsprachen sind ja sowieso "das gleiche", warum also nicht gleich behandeln?
Allerdings ist REQUEST_URI normalerweise beim IIS nicht definiert, soweit ich weiß. Allerdings dürfte gelten:
Code: Select all
str_replace($_SERVER['QUERY_STRING'],'',$_SERVER['REQUEST_URI']) == $_SERVER['PHP_SELF']
Gert wrote:Da kann aber die Prüfung auf 2 Zeichen erhalten bleiben, um weiterem Missbrauch vorzubeugen.
Ja, das ist wohl besser. Am besten wie vorher, oder vielleicht noch richtiger per
Gert wrote:In den Ordner 2lang müsste dann eine cmsimplelanguage.htm, aber das ist bestimmt wieder doof ...
Wieso? Leere Dateien als Marker gibt es doch auch bei anderen Projekten. Man könnte aber überlegen, ob man die Dateien versteckt und vielleicht die Endung weglässt (HTML-Dateien sind es ja nicht wirklich; zumindest validieren sie nicht): also etwa .cmsimplesubsite und .cmsimplelanguage.
Also insgesamt vielleicht (statt cms.php Zeile 112-125):
Code: Select all
$temp = explode('/', $_SERVER['PHP_SELF']);
$temp = $temp[count($temp) - 2];
$sl = file_exists('./.cmsimplesubsite') || file_exists('./.cmsimplelanguage') && preg_match('/[a-z]{2}/i', $temp)
? $temp : $cf['language']['default'];
plus die Änderung in adm.php.