WBCE CMS Forum

WBCE CMS – Way Better Content Editing.

Du bist nicht angemeldet.

#1 07.03.2019 07:26:08

florian
Administrator

Multilingual: Deprecated-Meldung

Bei aktivierten PHP-Fehlern wird beim Installieren des Moduls sowie beim Zurücksetzen (Klick auf "Pagecode" in den Seiteneinstellungen) eine Deprecated-Meldung angezeigt.

Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /.../modules/mod_multilingual/update_keys.php on line 28

Nochmals die Frage: Ist das beabsichtigt, dass beim Anklicken von "Pagecode" - ohne Rückfrage! - komplett ALLE Pagecodes gelöscht werden und ALLE Seiten neu zugeordnet werden müssen?


Code allein macht nicht glücklich. Jetzt spenden!

Offline

#2 07.03.2019 10:56:28

bernd
Developer

Re: Multilingual: Deprecated-Meldung

Ohne tiefer drin rumzustochern, dem Kommentar im Quelltext nach ist das wohl das beabsichtigte Verhalten:

// fill page_code with menu_title for default_language

Das sollte man auf alle Fälle etwas besser kennzeichnen.
Ich hab nur eine Multilingual Installation im Live-Betrieb, da will ich nicht wirklich dran rumspielen  devil
Wenn ich dazu komme bau ich mir am Wochenende mal eine lokale Spielwiese ich denke mal sowas wie:
den Link vom Wort Pagecode entfernen und einen seperaten Link daneben "zurücksetzen" und da noch ein onclick confirm drauf basteln wäre vielleicht nicht verkehrt.


... nein in Europa verwenden wir beim Programmieren nicht € statt $ ...

Offline

Liked by:

stefanek

#3 07.03.2019 13:15:15

bernd
Developer

Re: Multilingual: Deprecated-Meldung

Ich hab da nochmal drüber nachgedacht.
So wie das momentan implementiert ist macht es eigentlich nicht wirklich Sinn. Zumindest erschließt sich mir der praktische Nutzen grade überhaupt nicht.
Beispiel: ich habe grade in mühsamer Kleinarbeit meine 200 EN-Seiten den 200 DE-Seiten zugeordnet, warum - um alles in der Welt - sollte ich jetzt alle Zuordnungen auf einen Schlag löschen wollen ?!?

Oder der Entwickler hat sich was ganz anderes dabei gedacht und irgendwo auf "halber Strecke" einen Denkfehler.
Warum wird z.B. die page_id an das Script übergeben die $_GET Variable auch brav abgeholt
Im weiteren Verlauf aber mit $temp_page_id nix gemacht?

Edit: Holzweg - die $temp_page_id wird für die Rückleitung nach dem speichern gebraucht

Beitrag geändert von bernd (08.03.2019 00:41:14)


... nein in Europa verwenden wir beim Programmieren nicht € statt $ ...

Offline

#4 07.03.2019 22:18:31

bernd
Developer

Re: Multilingual: Deprecated-Meldung

O.k. führe ich noch bischen Selbstgespräche  lol

Mal die generelle Frage:
Was wäre denn eigentlich ein erwartetes/gewünschtes Verhalten beim Klick auf den Link?
Das momentane Verhalten definitv nicht, da ziemlich sinnfrei, da drüber sind wir uns wohl einig.
Aber was anstatt? Mir fällt da grade wirklich kein Arbeits-Szenario ein.

Wenn ich schon dran rumbastel, könnte man es ja gleich richtig machen ...


... nein in Europa verwenden wir beim Programmieren nicht € statt $ ...

Offline

#5 07.03.2019 22:42:21

colinax
Developer

Re: Multilingual: Deprecated-Meldung

Hmm...  mal schauen

Multilingual dient zwei Zwecken:

  • Es erstellt ein Menu zum umstellen der Sprache.

  • Es verknüpft die jeweiligen Seiten der verschiedenen Sprachen miteinander.

Wenn Sie das Modul installiert haben und in den Einstellungen Mehrsprachigkeit aktiviert haben, dann erscheint in den Seiteneinstellungen ein zusätzliche Feld in dem Sie die Verknüpfungen zwischen den Seiten einstellen können. Mit dieser Dropdownliste kann dann die jeweilige Seite mit einer Seite der der Standardsprache verknüpft werden. Damit weiß das System dann welche Seiten zusammen gehören.

Da der db_update_field_entry (update_keys.php) Befehl auch beim installieren ausgeführt wird glaube ich nicht dass es gelöscht werden sollte, sondern eher ein Button ist, für "Wenn Sie etwas faul sind können sie auch einfach den Sprachumschalter nutzen ohne das sie Verknüpfungen zwischen den Seiten definiert haben. (Der Schaltet dann natürlich immer auf die Startseite)" nur dass Vergessen wurde diesem Button einen Text hinzuzufügen.

Offline

#6 07.03.2019 22:56:09

bernd
Developer

Re: Multilingual: Deprecated-Meldung

Es geht ja nicht drum irgendeine Funktion zu löschen sondern da drum ob es so wie's momentan implementiert ist Sinn macht und wenn ja das man es bischen sicherer macht (och da kann man klicken! "click" - wusch Arbeit der letzten halben Stunde für den A****) oder ob da was ganz anderes angedacht war und es sich z.B. nur um einen copy&paste Fehler handelt bei dem schlicht vergessen wurde einen Paramter des Funktionsaufrufes anzupassen.

Aber gut, daß du die Installation erwähnt hast, in der install.php ist die gleiche each-Geschichte drin, die zur deprecated Meldung führt.


... nein in Europa verwenden wir beim Programmieren nicht € statt $ ...

Offline

#7 08.03.2019 00:54:08

bernd
Developer

Re: Multilingual: Deprecated-Meldung

Sodele,
zuerstmal die deprecated-Meldung:
in der update_keys.php die Zeile 28 ersetzen durch:

foreach ($entries as $page_id => $val)

das Gleiche in der install.php Zeile 36

Dann, wenn man das komplette Zurücksetzen der Pagecodes als Feature betrachtet (für komplett verhunzte Zuordnungen oder "och nö ich will doch keine Zuordnungen") dann sollte der Link als solcher bischen entschärft werden.
Das geht wohl nur direkt in der /admin/pages/settings.php da würde ich Zeile 271 ff so ändern:

$template->set_var( array(
    'DISPLAY_CODE_PAGE_LIST' => ' id="multi_lingual"',
    'TEXT_PAGE_CODE' => $TEXT['PAGE_CODE'].'&nbsp;[<a href="'.WB_URL.'/modules/mod_multilingual/update_keys.php?page_id='.$page_id.'" onclick="return confirm(\''.$TEXT['ARE_YOU_SURE'].'\');">Reset</a>]'
    )
);

... nein in Europa verwenden wir beim Programmieren nicht € statt $ ...

Offline

Liked by:

florian, stefanek

#8 15.03.2019 09:57:07

florian
Administrator

Re: Multilingual: Deprecated-Meldung

Ich habe die gefixte Version mal als 1.9.2 im Addon-Repo veröffentlicht.
Die Anpassung an der settings.php committe ich dann noch in den Master.


Code allein macht nicht glücklich. Jetzt spenden!

Offline

Liked by:

stefanek

#9 11.04.2019 15:12:03

bernd
Developer

Re: Multilingual: Deprecated-Meldung

Aus gegebenem Anlass (sprich: weil ich grade selber mal wieder drauf reingefallen bin):
Der Multilingaul-Switcher setzt ja logischerweise zwingend voraus das "Mehrsprachige Webseite" aktiviert ist.
Wäre es da nicht sinnvoll den  entsprechenden Eintrag in der settings-Tabelle gleich bei der Installation auf true zu setzen ?!?


... nein in Europa verwenden wir beim Programmieren nicht € statt $ ...

Offline

Fußzeile des Forums

up