Thread Verfasser: Wanabo
Thread ID: 1397
Thread Info
Es gibt 6 Beiträge zu diesem Thema, und es wurde 1913 Mal angesehen.
 Thema drucken
Inoffizielles DE Updatepack
Wanabo
Ich habe erfolgreich den Inoffizielles DE Updatepack installiert und vergleiche jetzt die update mit dem Orginal dateien.
Gleich update ich auch die Niederlandische locale.

In includes\classes\UserFieldsInput.class.php treffe ich $locale['u210'] bis $locale['u212] an. Aber die gibt es nicht in den locale files, siewie beim full als update. Eben nicht in German locale dateien.
Ich glaube hier Fehlt etwas. Vielleicht fehlen auch die benötigde user felder files.

Code 

      if(IsSet($userdata['user_gender']) && $userdata['user_gender']!="" && IsSet($userdata['user_lastname']) && $userdata['user_lastname']!="") {
         if($userdata['user_gender']=='m') { $salutation = $locale['u211']." ".$userdata['user_lastname']; }
         elseif($userdata['user_gender']=='f') { $salutation = $locale['u212']." ".$userdata['user_lastname']; }
         else { $salutation = $locale['u210']." ".$userdata['username']; }
      }
      else {
            $salutation = $locale['u210']." ".$userdata['username'];
      }



Ich bin sehr Froh das es eine version gibt für PHP7. Gute Arbeit!
 
Systemweb
Das Updatepack befindet sich aktuell in Version 2.1, welche noch intern getestet wird vor Veröffentlichung.
Das Problem mit fehlenden locales schaue ich mir an. Durchaus möglich, dass es seinerzeit beim Zusammenstellen des Downloads vergessen bzw. vertauscht wurde.

Danke für deine Rückmeldung!

Zusammengefügt am 06. Januar 2018 um 06:58:23:
Habe mir das eben genauer angesehen:
user_salutation (generiert die Anrede "Herr" oder "Frau") aus der Angabe des Geschlechts und fügt den Nachnamen dahinter an.
Dieses Feature gehört eigentlich nicht in das Updatepack rein, da es für meine eigenen Zwecke (Shopsystem auf Basis von Fusion 7) erstellt wurde.
Der von dir zitierte Code führt aber zu keinem Fehler, da dieser nur bei aktivierten Userfields "user_gender" und "user_lastname" ausgeführt wird.
Ich werde den betreffenden Abschnitt aus der Class entfernen, der sollte dort für euch gar nicht vorhanden sein.
Allerdings kann ich das erst nach dem 15. Januar erledigen, da ich mich noch im Urlaub befinde.
Bearbeitet von Systemweb am 06.01.2018 um 05:58
 
Wanabo
Ok, Danke für das Ansehen. Noch ein schönes Urlaub gewuncht. Schaue nach 15 januar noch mal vorbei für das update.
 
Systemweb
Das hat mir keine Ruhe gelassen. Hab mal aiuf die schnelle diese Passage korrigiert und das ohnehin fertige Updatepack v1.3 zusammengestellt. Ich lade es in den nächsten Augenblicken hier im entspr. Bereich hoch.

Das neue Pack ist nun auch mit PHP 7.2 kompatibel, enthält aber nicht die neuen Features des noch nicht veröffentlichten v2 Packs.

So konnte ich meine Mittagsruhe im Urlaub auch mal sinnvoll verbringen... Wink
 
GUL-Sonic
Hinweis:
"Fehler" in der maincore.php

Nachdem ich nach Installation des Updatepacks auf einmal keine Termine mehr in meinen Kalender eintragen konnte (speichern ergab eine komplett weiße Seite) , habe ich nach langem Suchen herausgefunden, dass dies an der neu hinzugefügten mime_check Funktion liegt, wenn diese mit dem Wert 1 in der settings-Tabelle hinterlegt ist.

Ursache:

Code 

// Check file types of the uploaded file with known mime types list to prevent uploading unwanted files if enabled. Updated in DE NSS Update v2.2
if (array_key_exists('mime_check', $settings) && $settings['mime_check'] == "1") {
    if (isset($_FILES) && count($_FILES)) {
        require_once INCLUDES."mimetypes_include.php";
        $mime_types = mimeTypes();
        foreach ($_FILES as $each) {
            if (isset($each['name']) && strlen($each['tmp_name'])) {
                $file_info = pathinfo($each['name']);
                $extension = $file_info['extension'];
                if (array_key_exists($extension, $mime_types)) {
                    if (is_array($mime_types[$extension])) {
                        $valid_mimetype = FALSE;
                        foreach ($mime_types[$extension] as $each_mimetype) {
                            if ($each_mimetype == $each['type']) {
                                $valid_mimetype = TRUE;
                                break;
                            }
                        }
                        if (!$valid_mimetype) {
                            die('Prevented an unwanted file upload attempt!');
                        }
                        unset($valid_mimetype);
                    } else {
                        if ($mime_types[$extension] != $each['type']) {
                            die('Prevented an unwanted file upload attempt!');
                        }
                    }
                }
                unset($file_info, $extension);
            }
        }
        unset($mime_types);
    }
}



hier ist in Zeile 74 der maincore.php die Zeile:

Code 

 require_once INCLUDES."mimetypes_include.php";


angegeben.
Das Problem ist nur, dass "INCLUDES" erst in Zeile 134 definiert wird.

Code 

define("INCLUDES", BASEDIR."includes/");



Problembehebung:
  1. Möglichkeit 1 = Zeile 134 vor Zeile 74 verschieben.
  2. Möglichkeit 2 = aus

    Code 

    require_once INCLUDES."mimetypes_include.php";

    einfach

    Code 

    require_once BASEDIR."includes/mimetypes_include.php";

    machen


Nach der oben beschriebenen Änderung, funktionierte bei mir wieder alles einwandfrei.

Ich bitte höflichst um Fix in den kommenden Updates.

Danke.
M.f.G.
GUL-Sonic

Merke:
Wirklichkeit ist niemals so konsistent wie ein solider Wahn!
Wink
 
Systemweb
Etwas spät, aber ich möchte zumindest Bescheid geben, dass deine Rückmeldung nicht unbeachtet ist. Vielen Dank dafür.
Sobald ich etwas Luft habe werde ich das entsprechend ändern.
 
Springe ins Forum: