Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: MODUL: Elektronisches Widerrufsformular

    WayneTsun

    • Fördermitglied
    • Beiträge: 1.082
    • Geschlecht:
    Re: MODUL: Elektronisches Widerrufsformular
    Antwort #45 am: 12. Juni 2014, 14:42:56
    Hi wave!

    Schmeiß doch mal das ellenlange Zitat raus. Braucht doch keiner. Danke! :-)

    Beste Grüße,
    Wayne

    Safeterms.de

    • Neu im Forum
    • Beiträge: 27
    Re: MODUL: Elektronisches Widerrufsformular
    Antwort #46 am: 12. Juni 2014, 14:51:39
    Liebe modified Gemeinde,

    ich habe das Modul erneut geupdated.

    Download-Link: http://www.safeterms.de/download/Widerrufsformular_Safeterms_de.zip

    @Moderatoren
    Bitte Austauschen :-)

    @WayneTsun
    Fehler behoben!
    DANKE

    @babba
    Falsche PHP Version? ... PHP 5.3 wird benötigt

    @Wave
    Bin schon dabei, später mehr !

    mit freundlichen Grüßen

    Safeterms.de
    i.A. Matthias Werner

    [EDIT Tomcraft 12.06.2014: Modul in Beitrag 1 aktualisiert.]

    web0null

    • Experte
    • Beiträge: 1.998
    Re: MODUL: Elektronisches Widerrufsformular
    Antwort #47 am: 12. Juni 2014, 15:00:03
    Auch von mir mal ein Dank für dein Modul.

    ... aber es kommen so einige Fehlermeldungen beim testen.

    1. $order->getOrderData(); (kommt 2x vor)  für was steht das dort überhaupt, das bewirkt "so" nichts?
    2. die "foreach" der Attribute, müssen geprüft werden
    3. mktime wirft einen "deprecated", (und ist eigentlich überflüssig, schau dir die function strtotime() an, dann brauchst du den ganzen Block nicht.
    4. xtc_checkdate() braucht einen 3. Parameter

    wegen der $_POST überprüfung, würde auch das reichen
    Code: PHP  [Auswählen]
    if (isset($_POST)) {
     $_POST = xtc_db_prepare_input($_POST);
    }

    ... kleiner Hinweis bzw. bitte, wegen Code Formatierung, könntest du dich generell (natürlich wo geht) für einfache Anführungszeichen entscheiden, momentan ist es ja gemischt.

    ...die checkboxen würde ich defaultmäßig nicht anhacken, bei vielen Artikel ist es mühsam alle abzuwählen.

    Gruß

    Martin109

    • Fördermitglied
    • Beiträge: 280
    • Geschlecht:
    Re: MODUL: Elektronisches Widerrufsformular
    Antwort #48 am: 12. Juni 2014, 15:27:27
    Hallo,

    tolles Formular.

    Aber ich bekomme beim Aufruf des Formulars immer folgende Fehler Meldung:

    Code: PHP  [Auswählen]
    Parse error: syntax error, unexpected ':' in /home/martin/bay-tec-shop/widerruf.php on line 52

    Shop Version 1.06

    Weis da jemand eine Lösung für ??

    Danke.

    Gruß Martin

    www.bay-tec.de
     

    herrkuless

    • Neu im Forum
    • Beiträge: 36
    • Geschlecht:
    Re: MODUL: Elektronisches Widerrufsformular
    Antwort #49 am: 12. Juni 2014, 15:32:31
    Ebenfalls Lob für die Arbeit.

    Sofern ich das die Dateien in einen Shop intergriere, kommt nach dem abschließenden Betätigen von "Senden":

    "Message was not sent

    Mailer Error: SMTP Fehler: Die folgenden Empfänger sind nicht korrekt: ..."

    Hat jemand eine Idee? Bestellmails etc. und Kontakformular funktionieren einwandfrei ...

    Viol

    • Fördermitglied
    • Beiträge: 2.209
    Re: MODUL: Elektronisches Widerrufsformular
    Antwort #50 am: 12. Juni 2014, 15:43:56
    Hallo,
    zunächst einmal Dank für das Modul, funktioniert einwandfrei. Ich
    würde gerne an der Mehrsprachigkeit arbeiten. Ich bin gerade bei der widerruf.php und habe in der widerruf.php folgendes geändert:
    Code: PHP  [Auswählen]
    "Unter der von Ihnen angegebenen E-Mail-Adresse (".$_POST["email"].") ist uns die Bestellnummer <strong>".$_POST["order_id"]."</strong> nicht bekannt!"
    in (ERROR_UNKNOWN_EMAIL) geändert.
    in der german.php dann
    Code: PHP  [Auswählen]
    define('ERROR_UNKNOWN_EMAIL','Unter der von Ihnen angegebenen E-Mail-Adresse '.$_POST["email"].' ist uns die Bestellnummer <strong>'.$_POST["order_id"].'</strong> nicht bekannt!');
    eingefügt.
    Code: PHP  [Auswählen]
    "Bitte geben Sie das Datum an, an welchem Sie die Ware erhalten haben.<br />";
    in (DELIVERY_DATE) geändert und in der german.php:
    Code: PHP  [Auswählen]
    define('DELIVERY_DATE','Bitte geben Sie das Datum an, an welchem Sie die Ware erhalten haben.<br />');

    Code: PHP  [Auswählen]
    "Das angegebene Datum ist fehlerhaft. Achten Sie auf die richtige Eingabe (TT.MM.JJJJ)<br />";
    geändert in (WRONG_DATE)
    entsprechend in der german.php
    Code: PHP  [Auswählen]
    define('WRONG_DATE','Das angegebene Datum ist fehlerhaft. Achten Sie auf die richtige Eingabe (TT.MM.JJJJ)<br />');

    Code: PHP  [Auswählen]
    "Das angegebene Datum liegt vor dem Bestelldatum.<br />";
    durch
    (DATE_TOO_EARLY) ersetzt
    german.php:
    Code: PHP  [Auswählen]
    define('DATE_TOO_EARLY','Das angegebene Datum liegt vor dem Bestelldatum.<br />');

    Dies funktioniert alles perfekt nur bei der folgenden Variablen funktioniert nichts mehr:
    Code: PHP  [Auswählen]
    "Die R&uml;ckgabemenge f&uml;r das Produkt <strong>".$product_name."</strong> ist zuviel, Sie haben nur ".$product["qty"]." bestellt.<br />";
    Ich habe dies durch (TOO_MANY_PRODUCTS) ersetzt und in der german.php
    Code: PHP  [Auswählen]
    define('TOO_MANY_PRODUCTS','Die R&uuml;ckgabemenge f&uuml;r das Produkt <strong>'.$product_name.'</strong> ist zuviel, Sie haben nur '.$product["qty"].' bestellt.<br />');
    ersetzt.

    Ich würde gerne weitermachen, kann jemand helfen?

    web0null

    • Experte
    • Beiträge: 1.998
    Re: MODUL: Elektronisches Widerrufsformular
    Antwort #51 am: 12. Juni 2014, 15:52:31
    Das geht so nicht, das macht man folgendermaßen:

    define:

    Code: PHP  [Auswählen]
    define('ERROR_UNKNOWN_EMAIL','Unter der von Ihnen angegebenen E-Mail-Adresse (%s) ist uns die Bestellnummer <strong>%s</strong> nicht bekannt!');
    beachte die Platzhalter %s

    aufruf:
    Code: PHP  [Auswählen]
    sprintf(ERROR_UNKNOWN_EMAIL, $_POST["email"], $_POST["order_id"]);

    Beispiel:
    Code: PHP  [Auswählen]
    define('TEST','%s blabla %s blabla %s');
    sprintf(TEST, $erste, $zweite, $dritte);

    Es gibt auch verschiedene Typen von Platzhalter (php.net).

    Gruß

    Wave

    • Mitglied
    • Beiträge: 146
    Re: MODUL: Elektronisches Widerrufsformular
    Antwort #52 am: 12. Juni 2014, 16:11:28
    @WayneTsun
    Danke für den Hinweis. Wurde ja bereits entfernt.

    @ Safeterms.de
    Vielen Dank

    Viol

    • Fördermitglied
    • Beiträge: 2.209
    Re: MODUL: Elektronisches Widerrufsformular
    Antwort #53 am: 12. Juni 2014, 16:26:25
    Hallo,
    für die, bei denen die Mails nicht verschickt werden. Bei mir hilft es, wenn in den Mailvorlagen widerruf_safeterms_de.txt und widerruf_safeterms_de.html, allen in {} Variablen ein $ vorwegzustellen. Also aus {STORE_NAME_ADDRESS} {$STORE_NAME_ADDRESS} machen.
    Mein Errorlog lautete nämlich:
    Code: PHP  [Auswählen]
    [Thu Jun 12 15:47:29 2014] [error] PHP Fatal error:  Smarty error: /mail/german/widerruf_safeterms_de.html line 17]: syntax error: unrecognized tag 'STORE_NAME_ADDRESS' (Smarty_Compiler.class.php, line 583) in /www/includes/classes/Smarty_2.6.14/Smarty.class.php on line 1095, referer: /widerruf.php/action/process/XTCsid/
    Bitte Safeterms.de: mal überprüfen  :-?
    UPDATE: es wird zwar eine Mail versendet, aber alle Variablen sind in der Mail leer...

    japadi83

    • Mitglied
    • Beiträge: 111
    • Geschlecht:
    Re: MODUL: Elektronisches Widerrufsformular
    Antwort #54 am: 12. Juni 2014, 16:29:44
    @babba
    Falsche PHP Version? ... PHP 5.3 wird benötigt

    Vermutlich gibt es noch einige Shops die mit einer älteren Shopversion laufen, die nicht PHP 5.3 kompatibel ist. Gibt es hierfür eine Möglichkeit, die Funktionen 5.2 kompatibel umzuschreiben?

    Ein großes Dankeschön an dieser Stelle an Matthias Werner für das Bereitstellen diese Moduls!

    WayneTsun

    • Fördermitglied
    • Beiträge: 1.082
    • Geschlecht:
    Re: MODUL: Elektronisches Widerrufsformular
    Antwort #55 am: 12. Juni 2014, 16:44:22
    Zur Verwendung des Textes für das Widerrufsbelehrung muss in die /mail/widerruf_safeterms_de.html statt [Widerruf] an gleicher Stelle eingefügt werden:
    Code: PHP  [Auswählen]
    {$REVOCATION_HTML}

    Dann in der /widerruf.php Zeile ca.274:
    Code: PHP  [Auswählen]
      $email_html=new Smarty;

    Davor das hier einfügen:
    Code: PHP  [Auswählen]
      // BOF - Tomcraft - 2011-06-17 - Added revocation to email
      require_once(DIR_FS_INC.'get_lang_id_by_directory.inc.php');
      $lang_id=isset($order->info['languages_id'])?$order->info['languages_id']:get_lang_id_by_directory($order->info['language']);
      $shop_content_data=$main->getContentData(REVOCATION_ID,$lang_id);
      $revocation=$shop_content_data['content_text'];
    //  // EOF - Tomcraft - 2011-06-17 - Added revocation to email

    Und danach das hier einfügen:
    Code: PHP  [Auswählen]
      $email_html->assign('REVOCATION_HTML',$revocation);
      $email_html->assign('REVOCATION_TXT',$revocation);

    Um ein Logo in der Email zu verwenden in die /mail/widerruf_safeterms_de.html an passender Stelle einfügen:
    Code: PHP  [Auswählen]
    <img src="{$logo_path}logo.gif">

    und in der /widerruf.php nach:
    Code: PHP  [Auswählen]
      $email_html->assign('date_now',date("d.m.Y"));

    das einfügen:
    Code: PHP  [Auswählen]
      $email_html->assign('logo_path',HTTP_SERVER.DIR_WS_CATALOG.'templates/'.CURRENT_TEMPLATE.'/img/');

    Beste Grüße,
    Wayne

    Safeterms.de

    • Neu im Forum
    • Beiträge: 27
    Re: MODUL: Elektronisches Widerrufsformular
    Antwort #56 am: 12. Juni 2014, 17:32:17
    @web0null
    Danke für die Hinweise, bin schon am Code bereinigen

    @Martin109
    PHP Version falsch! ... muss 5.3 oder höher sein siehe @japadi83

    @Viol & web0null
    schöne Vorlage kümmere mich gerade darum

    @Viol zwecks smarty error
    Bitte die mail Vorlagen tauschen, in der aktuellen Datei waren Sie
    bereits richtig umgeschrieben ... nochmal prüfen

    @japadi83
    Mir ist keine .5.2 und auch leider kein Workaround bekannt, aber die
    goto Funktion bietet sich nahezu ideal für den Skriptverlauf an...
    Ich prüfe mal nach einen Workaround
    DANKE

    @WayneTsun
    Baue ich gerade ein... ERNEUT VIELEN VIELEN DANK

    mit freundlichen Grüßen

    Safeterms.de
    i.A. Matthias Werner

    vermillion

    • Neu im Forum
    • Beiträge: 10
    Re: MODUL: Elektronisches Widerrufsformular
    Antwort #57 am: 12. Juni 2014, 18:30:16
    Hallo,

    erstmal Danke für das Modul funktioniert alles wunderbar. Jedoch erhalte ich folgende Warnung nach dem ausführen des Widerrufs:

    Code: PHP  [Auswählen]
    Warning: Missing argument 3 for xtc_checkdate(), called in /homepages/43/d140528633/htdocs/widerruf.php on line 202 and defined in /homepages/43/d140528633/htdocs/inc/xtc_checkdate.inc.php on line 19

    Deprecated: mktime(): The is_dst parameter is deprecated in /homepages/43/d140528633/htdocs/widerruf.php on line 208

    Deprecated: mktime(): The is_dst parameter is deprecated in /homepages/43/d140528633/htdocs/widerruf.php on line 211

    was ist hierzu die Lösung?

    herrkuless

    • Neu im Forum
    • Beiträge: 36
    • Geschlecht:
    Re: MODUL: Elektronisches Widerrufsformular
    Antwort #58 am: 12. Juni 2014, 18:32:16
    Davor das hier einfügen:
    Code: PHP  [Auswählen]
      // BOF - Tomcraft - 2011-06-17 - Added revocation to email
      require_once(DIR_FS_INC.'get_lang_id_by_directory.inc.php');
      $lang_id=isset($order->info['languages_id'])?$order->info['languages_id']:get_lang_id_by_directory($order->info['language']);
      $shop_content_data=$main->getContentData(REVOCATION_ID,$lang_id);
      $revocation=$shop_content_data['content_text'];
    //  // EOF - Tomcraft - 2011-06-17 - Added revocation to email

    Sofern ich das einfüge, geht keine Versand des Widerrufs mehr. Es erscheint nur ein leere Seite. Ohne diesen Abschnitt funktioniert des Versenden des Widerrufs unter modified eCommerce Shopssoftware v1.06 rev 4642 dated: 2013-04-20 mit den zur Verfügung gestellten Dateien von Safeterms.de gut, Widerrufsrecht selbst wird mit [Widerruf] natürlich nicht übertragen. Die Idee mit der Formatierung eines vernüftigen Kopfes der zugesandten E-Mail mit Logo usw. ähnliche Bestellbestätigung, Rechnung etc. finde ich gut. So sieht alles einheitlich aus.

    @Viol
    Mit den $ innerhalb {} unter einer älteren Version modified eCommerce Shopsoftware v1.05 dated: 2010-07-18 bzgl. E-Mailversand konnte ich noch nicht ausprobieren. Wird aber gemacht!

    ado

    • Fördermitglied
    • Beiträge: 195
    Re: MODUL: Elektronisches Widerrufsformular
    Antwort #59 am: 12. Juni 2014, 18:41:22
    Hallo vermillion,

    kuckst Du hier im php.net:

    Changelog

    Version    Beschreibung

    5.3.0    mktime() wirft nun eine E_DEPRECATED-Notice, wenn der is_dst verwendet wird.
    5.1.0    Der Parameter is_dst wurde als veraltet markiert. Die Funktion gibt nun im Fehlerfall statt -1 FALSE zurück. Die Funktion wurde dahingehend gefixt, dass sie für Jahr, Monat und Tag auch den Wert 0 entgegennimmt.

    5.1.0    Wenn ohne Argumente aufgerufen, wirft mktime() eine E_STRICT-Notice. Verwenden Sie stattdessen die Funktion time().
    5.1.0

    Erzeugt nun E_STRICT- und E_NOTICE-Zeitzonenfehler.

    Hier stet's : http://php.net/manual/de/function.mktime.php
    6 Antworten
    4886 Aufrufe
    21. Mai 2018, 11:38:10 von Chris66
    24 Antworten
    14341 Aufrufe
    15. Juni 2014, 20:30:13 von Alex851
               
    anything