IDragonfire / dzcp

repo for the final bugfree dzcp version ... please copy inc/mysql.php from your production dzcp system
www.dzcp.de
10 stars 16 forks source link

Richy: Sprachdefinitionen Verbesserung #193

Open IDragonfire opened 12 years ago

IDragonfire commented 12 years ago

[...] Des weiteren würde ich gern noch eine Kleinigkeit eingebaut haben. Damit kann man direkt Sprachdefinitionen in der index.html packen.

Beispiel: define(_sprache, 'Sprache');

In der index.html käme dann der Platzhalter [lng_sprache] rein.

Einbauanleitung:

bbcode.php in Zeile 2398, also nach...

//-> Navigation einbinden
include_once(basePath.'/inc/menu-functions/navi.php');

...mit einer neuen Zeile folgendes einfügen:

//-> Sprachdefinitionen in Index ausgeben
function fetchLanguage($lng) {
    @eval("$name = ".$lng.";");
    return defined($lng) ? $name : $lng;
}

bbcode.php in Zeile 2502 folgendes mit einer neuen Zeile einfügen:

elseif(strstr($pholder[$i], 'lng_')) eval("$arr[".$pholder[$i]."] = fetchLanguage('".substr($pholder[$i], 3)."');"); 

Am Ende sieht das ganze dann so aus:

if(strstr($pholder[$i], 'nav_')) eval("$arr[".$pholder[$i]."] = navi('".$pholder[$i]."');");
      elseif(strstr($pholder[$i], 'lang_')) eval("$arr[".$pholder[$i]."] = fetchLanguage('".substr($pholder[$i], 3)."');");    
            else {
        if(@file_exists(basePath.'/inc/menu-functions/'.$pholder[$i].'.php'))  include_once(basePath.'/inc/menu-functions/'.$pholder[$i].'.php');
              @eval("if(function_exists('".$pholder[$i]."')){$arr[".$pholder[$i]."] = ".$pholder[$i]."();}");
      }

Das erspart bei der mehrsprachigen Erstellung von Templates so einiges.

[...]

TimoStahl commented 12 years ago

i like

hammermaps commented 12 years ago

Nice, änliches hatte doch Hellbiz auch oder?

xDGeForcexD commented 12 years ago

@hammermaps ja hat er dies ist aber für alle Defins

aber ist bei dem nicht ein Fehler?

function fetchLanguage($lng) {
    @eval("$name = ".$lng.";");
    return defined($lng) ? $name : $lng;
}

was bringt @eval("$name = ".$lng.";"); ? er macht doch nur das lng in Name also sind beide gleiche? und müsste return defined($lng) ? $name : $lng; nicht so sein return defined($lng) ? constant($lng) : $lng; so kann man doch auch das eval weglassen

IDragonfire commented 12 years ago

man müsste sich auch einige ob man lang_myDefinition oder lng_myDefinition nimmt ...

hammermaps commented 12 years ago

lng_ meine Meinung

IDragonfire commented 12 years ago

ich bin für lang wenn xDGeForcexD sich nicht meldet nehmen wir lng ^^

hammermaps commented 12 years ago

ist mir auch eigendlich egal,^^ lang ist einfach zu verstehen was es macht, lng ist in der progammierung üblicher. Da es möglichst einfach bleiben sollte, können wir auch gerne lang_ nehmen

xDGeForcexD commented 12 years ago

wie @hammermaps sagt ist lang_ besser zu verstehen deshalb bin ich für lang

hammermaps commented 12 years ago

denke, damit ist die frage beantwortet.

hammermaps commented 12 years ago

ich packe es in einer meiner commits mit rein.

IDragonfire commented 12 years ago

k, danke

IDragonfire commented 11 years ago

73e622239b3d98ce54e53716cdc6c51a725c5ae7