Backupscript 1.7-2.2 Kodierung (German / Deutsch)

by Irene König @, Monday, May 28, 2018, 10:43 (2131 days ago)

Hallo zusammen!

Ich überlege, mein Forum von der 1er- auf die 2er-Version umzustellen. Es läuft seit 2006 ohne Probleme und war von Anfang an UTF8 kodiert, da auch u.a. Russisch geschrieben wird. Das Script hatte ich dementsprechend angepasst. Ich bin in PHP allerdings nicht versiert, muss ich dazusagen.

Nun mein Problem: das Backupscript geht ja davon aus, dass das 1.7-Forum ISO-8859-1 kodiert ist und kodiert also in UTF8 um. Nicht nur, dass ich das nicht brauche, es zerschießt mir logischerweise die kyrillischen Buchstaben und ersetzt sie mit einem Fragezeichen.

Könnte mir bitte jemand einen Hinweis geben, wie ich die nicht benötigte Umkodierung "abschalten" kann? Ich poste unten den entsprechenden Code-Schnippsel aus dem Script.

Backup und Einspielen in die Version 2.2 hat ansonsten problemlos geklappt, danke dafür! Auf andere Fehler habe ich noch nicht geschaut, das Problem mit der unerwünschten Umkodierung ist vorrangig.

 
class Backup 
 {
  var $start_time;
  var $check_time;
  var $file;
  var $dump = '';
  var $queries = 0;
  var $max_queries = 300;
  var $errors = Array();
 
  function Backup()
   {
    @set_time_limit(30);
    $this->start_time = time();
    $this->check_time = $this->start_time;
   }
 
  function set_max_queries($max_queries)
   {
    $this->max_queries = $max_queries;
   }
 
  function set_file($file)
   {
    $this->file = $file;
   }
 
  function assign($data)
   {
    $this->dump .= utf8_encode($data);
    $this->queries++;
 
    $now = time();
    if(($now-25) >= $this->check_time)
     {
      $this->check_time = $now;
      @set_time_limit(30);
     }
 
    if($this->queries >= $this->max_queries)
     {
      // buffer:
      $this->save();
      $this->queries = 0;
     } 
   }
 
  function save()
   {
    if($this->dump != '')
     {
      if(empty($this->file))
       {
        $this->file = 'mlf_1.7_backup_'.date("YmdHis").'.sql';
       }
      if($handle = fopen($this->file, 'a+'))
       {
        #flock($fp, 2);
        fwrite($handle, $this->dump);
        #flock($fp, 3);
        fclose($handle);
        $this->dump = '';
       } 
      else
       {
        $this->errors[] = 'Could not write backup file!';
       }     
     }
    if(empty($errors))
     {
      return true;
     }
    else
     {
      return false;
     }
   }
 } 
 
 
Avatar

Backupscript 1.7-2.2 Kodierung

by Auge ⌂, Monday, May 28, 2018, 12:56 (2131 days ago) @ Irene König

Hallo Irene

Ich überlege, mein Forum von der 1er- auf die 2er-Version umzustellen. …

… mein Problem: das Backupscript geht ja davon aus, dass das 1.7-Forum ISO-8859-1 kodiert ist und kodiert also in UTF8 um. Nicht nur, dass ich das nicht brauche, es zerschießt mir logischerweise die kyrillischen Buchstaben und ersetzt sie mit einem Fragezeichen.

Verstehe ich den gezeigten Code richtig, wenn ich davon ausgehe, dass die Datenbank ausgelesen und ein Backup als Textdatei abgelegt wird, das dann händisch in die neue Datenbank eingespielt werden kann?

Könnte mir bitte jemand einen Hinweis geben, wie ich die nicht benötigte Umkodierung "abschalten" kann?

 
class Backup 
 {
 // irgendwelcher Code, dann
  function assign($data)
   {
    $this->dump .= utf8_encode($data);
    $this->queries++;
 
    $now = time();
    if(($now-25) >= $this->check_time)
     {
      $this->check_time = $now;
      @set_time_limit(30);
     }
 
    if($this->queries >= $this->max_queries)
     {
      // buffer:
      $this->save();
      $this->queries = 0;
     } 
   }
 // weiterer Code
 }
 

Die einzige Stelle in dem gezeigten Code, an der eine Umkodierung stattfindet, ist die Zeile $this->dump .= utf8_encode($data);, gleich zu Beginn der Funktion assign($data).

Bitte ersetze den Code der Zeile mit $this->dump .= $data;, der die Daten ohne die unnötige Umkodierung an den Dump anhängt. Schaue hernach in die Datei und teile uns bitte mit, ob die Änderung funktioniert hat.

Tschö, Auge

--
Trenne niemals Müll, denn er hat nur eine Silbe!

Backupscript 1.7-2.2 Kodierung

by Irene König @, Monday, May 28, 2018, 18:17 (2131 days ago) @ Auge

Hallo und danke, dass du dir das mal angeschaut hast. Der gezeigte Code stammt aus dem Backupscript von Alex, das ich mir vor Jahren abgespeichert hatte. Es ist auf seiner Website nicht mehr zu finden, aber noch über die Waybackmachine. https://web.archive.org/web/20100704060157/http://mylittleforum.net:80/documentation/update_from_version_1.7_to_2.2

Verstehe ich den gezeigten Code richtig, wenn ich davon ausgehe, dass die Datenbank ausgelesen und ein Backup als Textdatei abgelegt wird, das dann händisch in die neue Datenbank eingespielt werden kann?

Ja, mit Hilfe der backup.php wird die Datenbank der 1er-Version ausgelesen und der veränderten Datenbankstruktur der 2er Version angepaßt. Die ausgegeben SQL-Datei kann man dann in eine 2er-Installation einspielen, was ja auch funktioniert hat. Der für mich relevante Fehler mit der Umkodierung entsteht vorher.

Bitte ersetze den Code der Zeile mit $this->dump .= $data;, der die Daten ohne die unnötige Umkodierung an den Dump anhängt. Schaue hernach in die Datei und teile uns bitte mit, ob die Änderung funktioniert hat.

Ich habe es ausprobiert und es hat nicht das gewünschte Ergebnis erbracht. Leider erhalte ich nun im Ergebnis eine SQL-Datei, die in ANSI kodiert ist. Für mich nicht zu gebrauchen.

Irene

Avatar

Backupscript 1.7-2.2 Kodierung

by Auge ⌂, Monday, May 28, 2018, 19:41 (2131 days ago) @ Irene König

Hallo

Der gezeigte Code stammt aus dem Backupscript von Alex, das ich mir vor Jahren abgespeichert hatte. Es ist auf seiner Website nicht mehr zu finden, aber noch über die Waybackmachine. https://web.archive.org/web/20100704060157/http://mylittleforum.net:80/documentation/update_from_version_1.7_to_2.2

Ah ja, ich habe mir das Skript auch einmal heruntergeladen.

Verstehe ich den gezeigten Code richtig, wenn ich davon ausgehe, dass die Datenbank ausgelesen und ein Backup als Textdatei abgelegt wird, das dann händisch in die neue Datenbank eingespielt werden kann?


Ja, mit Hilfe der backup.php wird die Datenbank der 1er-Version ausgelesen und der veränderten Datenbankstruktur der 2er Version angepaßt. Die ausgegeben SQL-Datei kann man dann in eine 2er-Installation einspielen, was ja auch funktioniert hat. Der für mich relevante Fehler mit der Umkodierung entsteht vorher.

Ich habe mal über das Skript geschaut (ohne genaues Studium). Bei der Herstellung der Verbindung wird keine Kodierung ausgehandelt, was vermutlich der Grund dafür ist, dass die Ausgabe aus Grumpel besteht.

Bitte ersetze den Code der Zeile mit $this->dump .= $data;, der die Daten ohne die unnötige Umkodierung an den Dump anhängt. Schaue hernach in die Datei und teile uns bitte mit, ob die Änderung funktioniert hat.


Ich habe es ausprobiert und es hat nicht das gewünschte Ergebnis erbracht.

Schade, war ein Schuss ins Blaue.

Leider erhalte ich nun im Ergebnis eine SQL-Datei, die in ANSI kodiert ist. Für mich nicht zu gebrauchen.

Kannst du bitte mal ein Beispiel zeigen, wie ein Satz in kyrillischer Schrift aussehen soll und wie das kaputte Backup des gleichen Satzes aussieht? Danke.

Tschö, Auge

--
Trenne niemals Müll, denn er hat nur eine Silbe!

Backupscript 1.7-2.2 Kodierung

by Irene König @, Tuesday, May 29, 2018, 05:59 (2131 days ago) @ Auge

Bei der Herstellung der Verbindung wird keine Kodierung ausgehandelt, was vermutlich der Grund dafür ist, dass die Ausgabe aus Grumpel besteht.

Danke dir, genau das war's! :ok:
Ich habe jetzt in das Backup-Script bei der DB-Verbindung folgendes eingefügt:

@mysql_query('SET NAMES utf8');

Und siehe da, das SQL-Backup-File ist wie gewünscht UTF-8 kodiert. Die erste Hürde ist damit genommen und ich hoffe, die weiteren Updates laufen ohne Pannen.

Schönen Tag! Irene

Avatar

Backupscript 1.7-2.2 Kodierung

by Auge ⌂, Tuesday, May 29, 2018, 11:27 (2130 days ago) @ Irene König

Hallo

Bei der Herstellung der Verbindung wird keine Kodierung ausgehandelt …


Danke dir, genau das war's! :ok:

Schön. :-)

… siehe da, das SQL-Backup-File ist wie gewünscht UTF-8 kodiert. Die erste Hürde ist damit genommen und ich hoffe, die weiteren Updates laufen ohne Pannen.

Bitte berichte über deinen Umzug. Gerne auch über die Zwischenschritte, die du eventuell gehen musst(est).

Tschö, Auge

--
Trenne niemals Müll, denn er hat nur eine Silbe!

Fatal error beim Update 2.3 --> 2.3.1

by Irene König @, Tuesday, July 10, 2018, 21:23 (2088 days ago) @ Auge

Bitte berichte über deinen Umzug. Gerne auch über die Zwischenschritte, die du eventuell gehen musst(est).

Hallo,

mit etwas Verzögerung habe ich heute die Updates in Angriff genommen. Brav habe ich ab Version 2.2 jedes Update eingespielt. Das ging gut bis Version 2.3, nun gibt es ein Problem. Fehlermeldung:

Warning: include_once(/.../mlf2/modules/smarty/sysplugins/smarty_internal_templatebase.php): failed to open stream: No such file or directory in /www/htdocs/w00880a1/mlf2/modules/smarty/Smarty.class.php on line 96

Warning: include_once(): Failed opening '/.../mlf2/modules/smarty/sysplugins/smarty_internal_templatebase.php' for inclusion (include_path='.:/usr/share/php:..') in /www/htdocs/w00880a1/mlf2/modules/smarty/Smarty.class.php on line 96

Warning: include(/.../mlf2/modules/smarty/sysplugins/smarty_internal_templatebase.php): failed to open stream: No such file or directory in /www/htdocs/w00880a1/mlf2/modules/smarty/Smarty.class.php on line 1516

Warning: include(): Failed opening '/.../mlf2/modules/smarty/sysplugins/smarty_internal_templatebase.php' for inclusion (include_path='.:/usr/share/php:..') in /.../mlf2/modules/smarty/Smarty.class.php on line 1516

Fatal error: Class 'Smarty_Internal_TemplateBase' not found in /.../mlf2/modules/smarty/sysplugins/smarty_internal_template.php on line 22

Das Script sucht nach der smarty_internal_templatebase.php, die Datei ist aber tatsächlich in dieser Version nicht vorhanden. Ich bin gerade etwas ratlos, da ich aktuell keinen Zugriff auf das Forum und die Updatefunktion habe. Hat jemand einen Tipp für mich?

Hier scheint schon einmal jemand diese Fehlermeldung gesehen zu haben:
https://mylittleforum.net/forum/index.php?id=7459

Gruß, Irene

neue Quelle 2.3.1

by Irene König @, Wednesday, July 11, 2018, 06:58 (2088 days ago) @ Irene König

Problem gelöst (hoffe ich). Nachdem ich im im Quellcode der update.php (stammt aus der obigen Quelle) eine ganz andere Download-URL entdeckt habe, habe ich die Version 2.3.1 von dort geladen und diese enthielt alle notwendigen Dateien für Smarty:

http://downloads.sourceforge.net/mylittleforum/my_little_forum_2.3.1.zip

Worin liegt der Sinn, zwei verschiedene Downloadquellen anzubieten? Zumal die Dateien ja nicht identisch sind.

Gruß, Irene

Avatar

neue Quelle 2.3.1

by Auge ⌂, Wednesday, July 11, 2018, 07:36 (2088 days ago) @ Irene König

Hallo

Problem gelöst (hoffe ich).

http://downloads.sourceforge.net/mylittleforum/my_little_forum_2.3.1.zip

Worin liegt der Sinn, zwei verschiedene Downloadquellen anzubieten? Zumal die Dateien ja nicht identisch sind.

Der Download von Sourceforge ist die Originalquelle für diese alten Versionen. Der Umzug zu Github erfolgte nach dieser Version. Die erste dort veröffentlichte Version war die 2.3.5. Ich habe (viel) später (irgendwann um 2.3.7 herum) den Verlauf der Versionen bis hinunter zur Version 2.2 rekonstruiert, um die Historie mit den Veröffentlichungen auf Sourceforge so weit es geht synchron zu halten (noch ältere Versionen fehlen auf Github ja gänzlich).

Ganz offensichtlich habe ich das Tag 2.3.1 dabei an die falsche Stelle gesetzt. Alex hatte wohl nach der von mir als dem finalen Commit identifizierten Änderung noch weitere Änderungen für diese Version eingepflegt. Es tut mir leid, dass du in diese quasi uralte Falle getreten bist. Ich bin nicht davon ausgegangen, dass diese alten Versionen abseits der Dokumentation der zeitlichen Entwicklung der Software noch einmal relevant würden.

Tschö, Auge

--
Trenne niemals Müll, denn er hat nur eine Silbe!

Avatar

Fatal error beim Update 2.3 --> 2.3.1

by Auge ⌂, Wednesday, July 11, 2018, 07:23 (2088 days ago) @ Irene König

Hallo

Bitte berichte über deinen Umzug. Gerne auch über die Zwischenschritte, die du eventuell gehen musst(est).


mit etwas Verzögerung habe ich heute die Updates in Angriff genommen. Brav habe ich ab Version 2.2 jedes Update eingespielt. Das ging gut bis Version 2.3, nun gibt es ein Problem. Fehlermeldung:


Warning: include_once(/.../mlf2/modules/smarty/sysplugins/smarty_internal_templatebase.php): failed to open stream: No such file or directory in /www/htdocs/w00880a1/mlf2/modules/smarty/Smarty.class.php on line 96
...

Den Fehler sehe ich zum ersten Mal. Dein Link zu einem früheren Posting zeigt aber, dass du mit dem Problem nicht alleine bist/warst.

Das Script sucht nach der smarty_internal_templatebase.php, die Datei ist aber tatsächlich in dieser Version nicht vorhanden. Ich bin gerade etwas ratlos, da ich aktuell keinen Zugriff auf das Forum und die Updatefunktion habe. Hat jemand einen Tipp für mich?

Normalerweise würde ich empfehlen, die höchstmögliche Version (hier 2.3.5) drüberzubügeln. Da du aber so überhaupt keinen Zugriff auf dein Forum hast, musst du erst einmal ermitteln, wo der Updateprozess hingeführt hat.

Vermutlich hat der erste Schritt des Updates funktioniert, was bedeutet, dass alle Änderungen an und in der Datenbank erfolgt sind (einschließlich Anpassung der Versionsnummer). Das Updateskript der Version 2.3.4 vor Augen, kann ich aber sagen, dass es nach dem Sprung auf 2.3(.0) bis auf die Versionnummer in der Datenbank keine weiteren Änderungen gegeben hat. Du solltest also in phpMyAdmin in der Einstellungstabelle für den Schlüssel version den Wert "2.3.1" finden.

Das wiederum heißt, dass – abgesehen von der allfälligen Anpassung der Versionsnummer – von der Version 2.3(.0) bis einschließlich zur Version 2.3.4 ausschließlich Dateien aktualisiert werden. Du kannst dir also die Version 2.3.4 herunterladen, auspacken und die Dateien in das Verzeichnis des Forums hochladen, um das Forum wieder lauffähig zu bekommen. Danach müsstest du nur noch in die erweiterten Einstellungen gehen, um im Schlüssel version die dann aktuelle Versionnummer (2.3.4) nachzutragen.

Viel Erfolg!

Tschö, Auge

--
Trenne niemals Müll, denn er hat nur eine Silbe!

Fatal error beim Update 2.3 --> 2.3.1 (gelöst)

by Irene König @, Wednesday, July 11, 2018, 07:36 (2088 days ago) @ Auge

Danke. Du hast wahrscheinlich an deiner Antwort geschrieben, während ich meine Lösung gepostet habe. Ja, ich hätte die fehlenden Dateien wahrscheinlich aus der nächsthöheren Version ziehen können, 2.3.1. war laut Datenbank installiert.

Ich bekam dann zunächst eine (fast) leere Forum-Seite angezeigt. Verbindung zur Datenbank war aber definitiv vorhanden, es wurden nur keine Beiträge angezeigt. Der Fehler lag bei meinem FTP-Programm WinSCP: es zeigte mir den Ordner templates_c stets leer an. Erst, als ich die DUMMY-Datei erneut hochlud, wurden die Dateien angezeigt und ich konnte sie löschen --> Forum wieder da. Darauf muss man erstmal kommen.

Gruß, Irene

Avatar

Fatal error beim Update 2.3 --> 2.3.1 (gelöst)

by Auge ⌂, Wednesday, July 11, 2018, 08:07 (2088 days ago) @ Irene König

Hallo

Danke. Du hast wahrscheinlich an deiner Antwort geschrieben, während ich meine Lösung gepostet habe.

Ja, mit dem herunterladen der 2.3.4 und dem Studium der update.php und dem, was ich sonst auf Arbeit noch zu tun habe, hat es bei mir einige Zeit gebraucht. Das Posting mit deiner Lösung habe ich erst hinterher bemerkt.

Ja, ich hätte die fehlenden Dateien wahrscheinlich aus der nächsthöheren Version ziehen können, 2.3.1. war laut Datenbank installiert.

Da es bis Version 2.3.4 keine Änderungen in der Datenbank gibt, kannst du nun die zwei dazwischenliegenden Versionen überspringen.

Ich bekam dann zunächst eine (fast) leere Forum-Seite angezeigt. Verbindung zur Datenbank war aber definitiv vorhanden, es wurden nur keine Beiträge angezeigt. Der Fehler lag bei meinem FTP-Programm WinSCP: es zeigte mir den Ordner templates_c stets leer an. Erst, als ich die DUMMY-Datei erneut hochlud, wurden die Dateien angezeigt und ich konnte sie löschen --> Forum wieder da.

Ich bin, wenn ich denn unter Windows arbeiten muss, recht zufrieden mit WinSCP. Allerdings bin auch ich schon diverse Male in die Falle mit anscheinend nicht vorhandenen Systemdateien gestolpert. Nach ewigem suchen habe ich dann die gut versteckte Stelle, an der ich die Anzeige dieser Dateien aktivieren kann, gefunden. Es ist "Einstellungen ([STRG]+[ALT]+[P])" => "Listenfenster" => "Versteckte Dateien anzeigen ([STRG]+[ALT]+[H])". Das hat mir geholfen. Die vorkompilierten PHP-Dateien in templates_c werden mir allerdings ganz normal angezeigt. … komisch …

Darauf muss man erstmal kommen.

Verschiedentlich wurde hier schon auf die Möglichkeit hingewiesen, dass es notwendig sein kann, den Dateicache in templates_c zu löschen. Da du von My Little Forum 1.x kommst, wo so ein Cache nicht existierte, ist es natürlich sehr wahrscheinlich, dass du das nicht weißt.

Ich denke, ein Hinweis im Updateskript an den Admin der das Update durchführt, wäre angezeigt. Je nach Zugriffsrechten der PHP-Benutzers könnte, im Rahmen des Updates, sogar ein automatisches Löschen der PHP-Dateien in templates_c erfolgen. Mal sehen, was sich machen lässt.

Tschö, Auge

--
Trenne niemals Müll, denn er hat nur eine Silbe!

Fatal error beim Update 2.3 --> 2.3.1 (gelöst)

by Irene König @, Wednesday, July 11, 2018, 08:27 (2087 days ago) @ Auge

Ich denke, ein Hinweis im Updateskript an den Admin der das Update durchführt, wäre angezeigt.

Der Hinweis, den Dateicache in templates_c zu löschen, ist ja da. Ich habe auch jedes Mal in den Ordner geschaut, aber nur beim Update von 2.2 auf 2.2.1 lagen dort Dateien, die ich löschen konnte. Erst danach habe ich keine mehr sehen können. "Versteckte Dateien anzeigen" habe ich bei WinSCP jetzt mal aktiviert, danke für den Tipp!

Gruß, Irene

Avatar

Fatal error beim Update 2.3 --> 2.3.1 (gelöst)

by Auge ⌂, Wednesday, July 11, 2018, 08:34 (2087 days ago) @ Irene König

Hallo

Ich denke, ein Hinweis im Updateskript an den Admin der das Update durchführt, wäre angezeigt.


Der Hinweis, den Dateicache in templates_c zu löschen, ist ja da.

Siehste‽ So selbstverständlich nimmt man das Selbstverständliche, dass man es nicht einmal mehr bemerkt. :-)

Über das automatische Löschen des Caches, so es denn möglich ist, denke ich trotzdem nach. Das würde für manchen den Hinweis obsolet machen. Gegen vorhandene, aber nicht sichtbare Dateien hilft das natürlich nicht.

Tschö, Auge

--
Trenne niemals Müll, denn er hat nur eine Silbe!

Update 1.7 ---> 2.4.11

by Irene König @, Wednesday, July 11, 2018, 15:43 (2087 days ago) @ Auge

Bitte berichte über deinen Umzug. Gerne auch über die Zwischenschritte, die du eventuell gehen musst(est).

Hallo,

das Update ist soweit abgeschlossen, es gab keine weiteren Probleme (bzw. ist mir nichts aufgefallen). Vielleicht hätte ich die eine oder andere Version überspringen können, aber ich war mir nicht sicher. Die 2.4.12 habe ich noch liegenlassen, weil von einem Bug die Rede ist.

2.3.2 -> 2.3.3 -> 2.3.4 -> 2.3.5 -> 2.3.6.1 -> 2.3.7 -> 2.4 -> 2.4.11

Es scheint soweit alles zu laufen. Mods und Admins habe ich Farben verpasst, weil wir so daran gewöhnt sind vom 1.7er Forum. Veränderungen am Layout werde ich vielleicht später angehen, zunächst geht es nur um die Funktionalität.

Ein kleines Problem habe ich mit der Datenschutzerklärung (für Unregistrierte). Während die Nutzungsbedingungen in einem kleinen separaten Fenster geöffnet werden, passiert das bei der Datenschutzerklärung nicht. Dort gelangt man direkt zur Seite und ist damit weg vom Posting-Formular. Je nach Browser und Einstellungen könnte es passieren, dass beim Zurückgehen zum Formular der bereits geschriebene Text weg ist, was ärgerlich wäre. Daher meine Bitte, die Datenschutzerklärung in derselben Weise zu verlinken wie die Nutzungsbedingungen.

Ich würde das natürlich selber machen, aber da ich von der 1.7er Version komme, bei der ich vieles angepasst habe, bin ich mit der Struktur der jetzigen Version noch nicht vertraut.

Gruß, Irene

Avatar

Update 1.7 ---> 2.4.11

by Auge ⌂, Thursday, July 12, 2018, 07:03 (2087 days ago) @ Irene König

Hallo

das Update ist soweit abgeschlossen, es gab keine weiteren Probleme (bzw. ist mir nichts aufgefallen).

Schön. Danke für die Rückmeldungen. Die helfen uns schließlich, etwaige Unstimmigkeiten und Fehler zu finden.

Ein kleines Problem habe ich mit der Datenschutzerklärung (für Unregistrierte). Während die Nutzungsbedingungen in einem kleinen separaten Fenster geöffnet werden, passiert das bei der Datenschutzerklärung nicht.

Das schaue ich mir an. Danke für den Hinweis.

Tschö, Auge

--
Trenne niemals Müll, denn er hat nur eine Silbe!

Avatar

Update 1.7 ---> 2.4.11

by Auge ⌂, Thursday, July 12, 2018, 19:41 (2086 days ago) @ Irene König

Hallo

Ein kleines Problem habe ich mit der Datenschutzerklärung (für Unregistrierte). Während die Nutzungsbedingungen in einem kleinen separaten Fenster geöffnet werden, passiert das bei der Datenschutzerklärung nicht.

Ich habe in meiner Testinstanz ein wenig herumprobiert. Tatsächlich wird die Seite mit den Nutzungsbedingungen in einem JavaScript-Popup geöffnet und die Datenschutzerklärung per HTML-Link. Um das Verhalten in Richtung Popup zu vereinheitlichen, muss der JS-Code (lies JS als JavaScript) angepasst werden. Eine solche Bekanntmachung für einen Link, der per Popup angezeigt werden soll, stünde wohl bei jedem betroffenen neuen Link an.

@Milo: Wo muss ich suchen, um die Datenschutzerklärung für nicht registrierte Besucher im Popup anzeigen zu lassen?

Interessanterweise sind die Nutzungsbedingungen mit abgeschaltetem JS für mich überhaupt nicht erreichbar. Ich vermute, dass das irgendwie damit zusammenhängt, dass die Beschriftung für die Checkbox deren Label ist (man kann also den Text anklicken, um die Checkbox zu (de)-aktivieren) und der ja tatsächlich in dem Label vorhandene Link ohne JS quasi deaktiviert ("hinter" dem Label verborgen) ist. Die Datenschutzerklärung ist hingegen ohne JS zugänglich (was allerdings meiner Vermutung widerspricht), auch wenn der HTML-Quelltext strukturell dem der Checkbox für die Nutzungsbedingungen entspricht.

<p>
<input id="terms_of_use_agree" tabindex="8" type="checkbox" name="terms_of_use_agree" value="1" />&nbsp;<label for="terms_of_use_agree">Ich bin mit den <a id="terms_of_use" href="https://www.projekt-mlf.de/data-privacy-statement.php">Nutzungsbedingungen</a> einverstanden</label>
</p>
<p>
<input id="data_privacy_statement_agree" tabindex="9" type="checkbox" name="data_privacy_statement_agree" value="1" />&nbsp;<label for="data_privacy_statement_agree">Ich akzeptiere die <a id="data_privacy_statement" href="https://www.projekt-mlf.de/data-privacy-statement.php">Datenschutzerklärung</a></label>
</p>

Die beiden Blöcke sind doch strukturell gleich, oder sehe ich aus Betriebsblindheit einen relevanten Unterschied nicht?

Allerdings ist dazu zu sagen, dass die Checkbox für die Datenschutzerklärung bei jedem Klick auf den im Label enthaltenen Link umschaltet, woraufhin die Seite mit der Datenschutzerklärung geladen wird, während bei den Nutzungsbedingungen ein Klick auf den Link im Label die Checkbox aktiviert und beim loslassen der Maustaste sofort wieder deaktiviert (und die Nutzungsbedingungen nicht geladen werden).

Komisch.

Das Konzept funktioniert also in Gänze nicht. Benutzer, bei denen – aus welchen Gründen auch immer – JavaScript nicht ausgeführt werden kann, haben – ebenfalls aus welchen Gründen auch immer – ohne Handstände keinen Zugriff auf die Nutzungsbedingungen (mit Rechtsklick auf den Link und "kopieren der Link-Adresse" oder "öffnen in neuem Tab" geht's im Firefox).

Dort gelangt man direkt zur Seite und ist damit weg vom Posting-Formular. Je nach Browser und Einstellungen könnte es passieren, dass beim Zurückgehen zum Formular der bereits geschriebene Text weg ist, was ärgerlich wäre.

Das ist grundsätzllich verständlich.

Daher meine Bitte, die Datenschutzerklärung in derselben Weise zu verlinken wie die Nutzungsbedingungen.

Ich halte es im Gegenteil für sinnvoll, die JS-Popups, die ja auch an anderen Stellen verwendet werden, generell infrage zu stellen. Dazu müssten wir das Default-Template allerdings stark überarbeiten und das ist ein großes Fass.

Tschö, Auge

--
Trenne niemals Müll, denn er hat nur eine Silbe!

Avatar

Update 1.7 ---> 2.4.11

by Micha ⌂, Thursday, July 12, 2018, 20:13 (2086 days ago) @ Auge

Hi,

@Milo: Wo muss ich suchen, um die Datenschutzerklärung für nicht registrierte Besucher im Popup anzeigen zu lassen?

Ich hoffe, ich habe die Frage korrekt verstanden und Du suchst diesen Codeteil.

/Micha

--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences

Avatar

Update 1.7 ---> 2.4.11

by Auge ⌂, Wednesday, July 18, 2018, 17:27 (2080 days ago) @ Micha

Hallo

@Milo: Wo muss ich suchen, um die Datenschutzerklärung für nicht registrierte Besucher im Popup anzeigen zu lassen?


Ich hoffe, ich habe die Frage korrekt verstanden und Du suchst diesen Codeteil.

Es sieht auf den ersten Blick so aus, als hättest du mich richtig verstanden. Ich habe der Variable els einen weiteren Eintrag (Objekt?) für die Datenschutzerklärung hinzugefügt und es wurde das Popup geöffnet.

var els = [[document.getElementById("terms_of_use") || false, settings["terms_of_use_popup_width"], settings["terms_of_use_popup_height"]],
  [document.getElementById("data_privacy_statement") || false, settings["terms_of_use_popup_width"], settings["terms_of_use_popup_height"]],
  [document.getElementById("edit_avatar") || false, settings["avatar_popup_width"], settings["avatar_popup_height"]]];

Ist das wirklich schon alles?

Tschö, Auge

--
Trenne niemals Müll, denn er hat nur eine Silbe!

Avatar

Update 1.7 ---> 2.4.11

by Micha ⌂, Thursday, July 19, 2018, 19:38 (2079 days ago) @ Auge

Hallo,

Ist das wirklich schon alles?

Ich vermute ja. Da Du auch geschrieben hast, dass es funktioniert hat, würde ich im Moment nicht vom Gegenteil ausgehen.

/Micha

--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences

Avatar

Update 1.7 ---> 2.4.11

by Auge ⌂, Wednesday, July 18, 2018, 17:59 (2080 days ago) @ Micha

Hallo

@Milo: Wo muss ich suchen, um die Datenschutzerklärung für nicht registrierte Besucher im Popup anzeigen zu lassen?


Ich hoffe, ich habe die Frage korrekt verstanden und Du suchst diesen Codeteil.

Ich habe ein Problem beim minifizieren des JS-Codes. Der im Kopf angegebene YUI-Instanz (ganquan.info/yui/) existiert offensichtlich nicht mehr. Jedenfalls wird beim Aufruf der URL statt der Seite die Telekom-eigene Suche angezeigt (URL unbekannt). Kannst du das bestätigen? Du hast ja schließlich erst vor Kurzem am JavaScript gearbeitet.

Ich habe den Code ersatzweise mit UglifyJS eingedampft. Aus der main.js mit 51.8kB macht UglifyJS eine Datei mit 24.5kB. Die YUI komprimierte Datei, ohne meine Änderung von zusätzlichen 145 Bytes, hat eine Größe von 26.4kB.

Reminder: Wenn wir den Kompressor wechselten, müsste der Link zum Kompressor in den unkomprimierten Quellen auch geändert werden. Falls es gewünscht ist und eine Alternative benannt wird, kann ich das aber auch lassen.

Tschö, Auge

--
Trenne niemals Müll, denn er hat nur eine Silbe!

Avatar

Update 1.7 ---> 2.4.11

by Micha ⌂, Thursday, July 19, 2018, 19:46 (2079 days ago) @ Auge

Hallo,

Der im Kopf angegebene YUI-Instanz (ganquan.info/yui/) existiert offensichtlich nicht mehr.

Ich nutze den im Prinzip nicht. YUI ist aber eine Java-Anwendung, soweit ich weiß. Die kann man auch noch herunterladen. Es scheint auch noch Dienste zu geben, die diesen verwenden z.B.: http://refresh-sf.com

Ich habe den Code ersatzweise mit UglifyJS eingedampft. Aus der main.js mit 51.8kB macht UglifyJS eine Datei mit 24.5kB. Die YUI komprimierte Datei, ohne meine Änderung von zusätzlichen 145 Bytes, hat eine Größe von 26.4kB.

Man muss aufpassen, was beim komprimieren passiert. In JS (wie auch in PHP) ist ein Kommentar /* ... */. Beim Komprimieren werden diese Inhalte idR. dann entfernt. In unserem JS gibt es aber die Zeile /*@cc_on!@*/ für den IE, die in jedem Fall erhalten bleiben muss. Wenn Du also einen anderen Dienst nutzt, musst Du sicherstellen, dass der _diesen_ Kommentar nicht löscht.

müsste der Link zum Kompressor in den unkomprimierten Quellen auch geändert werden.

Die hatte wir afaik dort hinterlegt, weil wir beim letzten mal auch schon danach suche mussten. Scheint also keine nachhaltige Idee zu sein. Entferne die URI also einfach.

Ich komprimiere meist einfach per hand. Die mini-Datei ist ja immer noch lesbar und somit kann ich dort auch die kleinen Änderungen direkt einpflegen. So habe ich das die letzten mal auch gemacht.

/Micha

--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences

Avatar

Update 1.7 ---> 2.4.11

by Auge ⌂, Thursday, July 19, 2018, 20:24 (2079 days ago) @ Micha

Hallo

Der im Kopf angegebene YUI-Instanz (ganquan.info/yui/) existiert offensichtlich nicht mehr.


Ich nutze den im Prinzip nicht. YUI ist aber eine Java-Anwendung, soweit ich weiß. Die kann man auch noch herunterladen.

Ja, aber ehrlich gesagt will ich mir das für die ein- oder zweimal im Jahr nicht antun. Ich weiß nicht einmal, ob bei mir überhaupt eine Java-Runtime installiert ist. :-)

Es scheint auch noch Dienste zu geben, die diesen verwenden z.B.: http://refresh-sf.com

Aj ja. Die URL ist bei der Suche auch an mir vorbeigeflogen. Die hab' ich irgendwie nicht ernst genommen.

Ich habe den Code ersatzweise mit UglifyJS eingedampft.


Man muss aufpassen, was beim komprimieren passiert. In JS (wie auch in PHP) ist ein Kommentar /* ... */. Beim Komprimieren werden diese Inhalte idR. dann entfernt. In unserem JS gibt es aber die Zeile /*@cc_on!@*/ für den IE, die in jedem Fall erhalten bleiben muss. Wenn Du also einen anderen Dienst nutzt, musst Du sicherstellen, dass der _diesen_ Kommentar nicht löscht.

Mist! Auf soetwas habe ich natürlich nicht geachtet. Und natürlich, das einzige Vorkommen in der Funktion FullSizeImage wurde wegoptimiert. :-(

Aber, mal ehrlich. Code zur Berücksichtigung von IE <= 8? Ich hoffe, wir schleppen nicht irgendwo noch Fragmente für den Netscape Navigator mit uns herum. ;-)

müsste der Link zum Kompressor in den unkomprimierten Quellen auch geändert werden.

Die hatte wir afaik dort hinterlegt, weil wir beim letzten mal auch schon danach suche mussten.

Ja, ich kann mich daran erinnern.

Scheint also keine nachhaltige Idee zu sein. Entferne die URI also einfach.

Mache ich, wenn ich mit den Korrekturen fertig bin.

Ich komprimiere meist einfach per hand. Die mini-Datei ist ja immer noch lesbar und somit kann ich dort auch die kleinen Änderungen direkt einpflegen. So habe ich das die letzten mal auch gemacht.

Ach? Wie geht das mit der händischen Komprimierung? Soweit ich die Quellen studiert habe (was bei den minifizierten Skripten ja alles andere als einfach ist), sind die Variablennamen vorwiegend (?) einbuchstabig. Das machst du doch nicht händisch, oder?

Tschö, Auge

--
Trenne niemals Müll, denn er hat nur eine Silbe!

Avatar

Update 1.7 ---> 2.4.11

by Micha ⌂, Thursday, July 19, 2018, 21:02 (2079 days ago) @ Auge

Hi,

Ach? Wie geht das mit der händischen Komprimierung? Soweit ich die Quellen studiert habe (was bei den minifizierten Skripten ja alles andere als einfach ist), sind die Variablennamen vorwiegend (?) einbuchstabig. Das machst du doch nicht händisch, oder?

Für das, was Du geschrieben hast, ist das nicht wichtig. Die Array-Schlüssel sind ja identisch bzw. bleiben erhalten. Also die von Dir zu modifizierende Stelle wäre doch in der min-version:

var A=[[document.getElementById("terms_of_use")||false,settings.terms_of_use_popup_width,settings.terms_of_use_popup_height],[document.getElementById("edit_avatar")||false,settings.avatar_popup_width,settings.avatar_popup_height]];

Die jetzt noch zu erweitern halte ich für problemlos möglich.

/Micha

--
applied-geodesy.org - OpenSource Least-Squares Adjustment Software for Geodetic Sciences

Update 1.7 ---> 2.4.11

by Irene König @, Friday, July 13, 2018, 11:54 (2085 days ago) @ Auge

Hallo,

danke für's Drüberschauen und Testen. Einmal mehr wird mir klar, warum ich so lange beim 1er-Zweig von My Little Forum geblieben bin: klein und überschaubar, gut anzupassen auch für Laien wie mich - und das Ganze funktionierte ohne JavaScript :-D

Interessanterweise sind die Nutzungsbedingungen mit abgeschaltetem JS für mich überhaupt nicht erreichbar.

Kann ich nicht bestätigen, ich habs aber nur mit dem neuesten Firefox testen können (weil ich da weiß, wo man JS deaktiviert). Hier funktioniert es wie es soll: auch mit abgeschaltetem JS werden die Nutzungsbedingungen angezeigt.

Die beiden Blöcke sind doch strukturell gleich, oder sehe ich aus Betriebsblindheit einen relevanten Unterschied nicht?

An der Stelle war ich auch und habe ebenfalls keinen Unterschied gesehen. Ich werde wohl das Problem für mich jetzt dahingehend umschiffen, dass ich per simplem HTML mit target="_blank" die jeweilige Erklärung in einem neuen Fenster respektive Tab öffnen lasse.

Gruß, Irene

Update 1.7 ---> 2.4.13

by Irene König ⌂ @, Monday, September 24, 2018, 11:07 (2012 days ago) @ Auge

Bitte berichte über deinen Umzug. ...

Hallo Auge,

nach meinem Versuch in der Testumgebung habe ich nun das Update meines Forums abgeschlossen - nicht ohne ein oder zwei Fehler aus dem Testlauf zu wiederholen :-D

Danke für alle Unterstützung und für die Software ansich. Dein Theme Responsive habe ich mit installiert und werde es mit im Auge behalten. Dort fand ich u.a. die Lösung gut, den Avatar links neben den User-Namen zu positionieren - ganz rechts finde ich optisch eher suboptimal (auf großen Monitoren) und hätte dann wohl auf Avatare verzichtet. Was nicht tragisch wäre, denn die meisten posten bei uns als nicht registrierte User.

Den ganzen Umzug gab's ja nur wegen der neuen DSGVO. Dazu hätte ich noch eine Frage: wenn ich in dem Datenschutz-Dokument etwas ändere, müsste dann nicht ein angemeldeter User erneut zustimmen? Ich dachte, gelesen zu haben, dass dies so vorgesehen wäre, habe das Verhalten des Scripts aber so nicht bemerkt.

Gruß, Irene

Avatar

Update 1.7 ---> 2.4.13

by Auge ⌂, Monday, September 24, 2018, 12:26 (2012 days ago) @ Irene König

Hallo

nach meinem Versuch in der Testumgebung habe ich nun das Update meines Forums abgeschlossen - nicht ohne ein oder zwei Fehler aus dem Testlauf zu wiederholen :-D

Schön. :-)

Danke für alle Unterstützung und für die Software ansich. Dein Theme Responsive habe ich mit installiert und werde es mit im Auge behalten.

Bedenke bitte, dass das Theme aktuell nicht alle Features des Forums unterstützt. Ich habe dort mit den Klassennamen experimentiert, was ein paar Nebenwirkungen hat, die noch zu beseitigen sind.

Den ganzen Umzug gab's ja nur wegen der neuen DSGVO. Dazu hätte ich noch eine Frage: wenn ich in dem Datenschutz-Dokument etwas ändere, müsste dann nicht ein angemeldeter User erneut zustimmen? Ich dachte, gelesen zu haben, dass dies so vorgesehen wäre, habe das Verhalten des Scripts aber so nicht bemerkt.

Also: Grundsätzlich ist es möglich, den registrierten Benutzern eine neuerliche Zustimmung bei Änderungen an der Datenschutzerklärung oder den Nutzungsbedingungen abzuverlangen. Da die Version, die die DSGVO-Zustimmung einführte, dringend raus musste, weil sie eh schon zu spät war, habe ich dafür aber keine Benutzerschnittstelle (Formular(elemente)) eingebaut. Wenn du aktuell eine Änderung vornimmst und eine Zustimmung zu den geänderten Bedingungen erlangen willst, musst du das betreffende Feld tou_accepted (tou = Terms of Use, Nutzungsbsdingungen) oder dps_accepted (dps = Data Privacy Statement, Datenschutzerklärung) in der Benutzerdatentabelle zurücksetzen. Da das immer alle registrierten Benutzer betreffen dürfte, geht das ohne WHERE-Klausel.

Hier mal das Beispiel für die Datenschutzerklärung:

UPDATE mlf2_userdata SET dps_accepted = NULL;

Die Zustimmungserklärungen aller Benutzer werden so zurückgesetzt, als hätte es sie nie gegeben. Beim nächsten Login werden die Benutzer wieder aufgefordert, die Erklärung zu akzeptieren. Tun sie es, wird der Zeitstempel dieses Vorgangs gespeichert.

Rein theoretisch kann man so auch einzelne Nutzer ärgern, indem man den Zeitstempel nur in ihren Datensätzen wieder und wieder zurücksetzt. Aber das ist gemein.

Es ist aber geplant, dafür eine Benutzerschnittstelle im Adminpanel einzubauen.

Tschö, Auge

--
Trenne niemals Müll, denn er hat nur eine Silbe!

RSS Feed of thread