Příspěvekod michal » 03 bře 2021 13:58
Zareaguji na váš příspěvek. Možná trochu nesrozumitelně.
V jazykových souborech TNG jsou mj. dvě proměnné:
anglická verze:
$text['anniversaries'] = "Dates and Anniversaries";
$text['dates'] = "Dates";
český překlad:
$text['anniversaries'] = "Data a výročí";
$text['dates'] = "Data";
(jednotné číslo je datum, množné číslo je data).
Zapátral jsem, proč se vyskytuje v rolovacích nabídkách výraz "Dates (Data)", kdežto v nabídkách na úvodních stránkách šablon pro tutéž funkci výraz "Dates and Anniversaries (Data a výročí)".
Programový kód k rolovací nabídce se nachází v souboru genlib.php. Příslušná stať zní takto:
$menu[] = tngddrow(getURL( "surnames", 0 ), "surnames-icon", "", "surnames");
$menu[] = tngddrow(getURL( "firstnames", 0 ), "firstnames-icon", "", "firstnames");
$menu[] = tngddrow(getURL( "searchform", 0 ), "search-icon", "", "searchnames");
$menu[] = tngddrow(getURL( "famsearchform", 0 ), "fsearch-icon", "", "searchfams");
$menu[] = tngddrow(getURL( "searchsite", 0 ), "searchsite-icon", "", "searchsitemenu");
$menu[] = tngddrow(getURL( "places", 0 ), "places-icon", "", "places");
$menu[] = tngddrow(getURL( "anniversaries", 0 ), "dates-icon", "", "dates");
$tngmonth = date("m", time() + ( 3600 * intval($time_offset) ) );
$menu[] = tngddrow(getURL( "calendar", 1 ) . "m=$tngmonth", "calendar-icon", "", "calendar");
$menu[] = tngddrow(getURL( "cemeteries", 0 ), "cemeteries-icon", "", "cemeteries");
$menu[] = tngddrow(getURL( "bookmarks", 0 ), "bookmarks-icon", "", "bookmarks");
Je evidentní, že textová proměnná $text['dates'], která se v rolovacím menu zobrazuje, vznikne na jiném místě programu konstrukcí za pomoci výrazu "dates" jako posledního členu v závorce. Nahradím-li v závorce výraz "dates" výrazem "anniversaries", zobrazí se v rolovacím menu proměnná $text['anniversaries'], tedy v češtině "Data a výročí". Proč je to v programu takto, to nevím. Chce se mi napsat, že to tam autor zapomněl z nějakých dřevních dob TNG.
Jako nápravu tohoto stavu je podle mě vhodnější vytvořit jednoduchý opravný mód, pomocí něhož v souboru genlib.php nahradím řádek
$menu[] = tngddrow(getURL( "anniversaries", 0 ), "dates-icon", "", "dates");
řádkem
$menu[] = tngddrow(getURL( "anniversaries", 0 ), "dates-icon", "", "anniversaries");
Nahradím-li totiž v celém TNG proměnnou $text['dates'] = "Data"; výrazem $text['dates'] = "Výročí"; (pomocí souboru cust_text.php) riskuju, že se tato změna objeví i na jiném místě TNG a změní smysl něčeho jiného. Táž textová proměnná se totiž může objevit na různých místech TNG a někdy i v různém smyslu.
(Tento příspěvek jsem napsal podle stavu programového kódu ve verzi TNG 13.0.3)