Shop Hosting
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: Kommentarvorlagen, Textvorlagen für E-Mails an Kunden aus Bestellung

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.739
    • Geschlecht:
    Hallo liebe Community.

    Wer hat schon oft nach einer Vereinfachung gesucht immer wieder vorkommende Texte zu schreiben ?

    Folgendes Modul ist von mir leicht angepasst und für den Einbau in modified eCommerce Shopsoftware 1.05 SP1b aufbereitet worden:

    Modul-Ersteller: www.janswerk.de
    Lizenz: GNU GENERAL PUBLIC LICENSE
    Ursprünglicher Name: order_mail_template (Kommentare als Vorlage speichern)
    Quelle: Status-eMail mit Kommentarvorlagen erweitern

    In jeder Bestellung im Adminbereich wird ein Dropdown-Feld über dem Textfeld (Bestellstatus:, Kommentar) für E-Mails an Kunden generiert, in welchem selbst erstellte Textvorlagen aufgelistet werden, welche als Vorlagen gespeichert sind (siehe Screenshots)

    [ Für Gäste sind keine Dateianhänge sichtbar ] [ Für Gäste sind keine Dateianhänge sichtbar ]

    Textvorlagen erstellt man indem man einen Text in die Textarea schreibt in einem Textfeld unter der Textarea einen Titel für diesen Text bestimmt und dann auf "Aktualisieren" (sollte eigentlich "Absenden" heißen) klickt.

    Da die Vorlagen nur gespeichert werden, wenn man die erstellte Vorlage mit einem Titel versehen auch einmal abgesendet hat, empfiehlt es sich eine Testbestellung auf seinen Admin-Account für solche Zwecke bereit zu haben (das empfiehlt sich für Tests aller Art ohnehin).

    Man wählt bei Bedarf aus der Dropdown-Liste einen Vorlagentitel aus und schwupps steht der Vorlagentext in der Textarea.

    Da die Vorlagen in der Datenbank gespeichert werden, ist der Menge an Textvorlagen sowie deren Länge im Prinzip keine Grenze gesetzt.

    Ein sehr hilfreiches Tool, wenn man häufig E-Mails bzgl. Bestellungen an Kunden schreibt
    und / oder mehrere Status im Bestellungsverlauf vegibt wie z.B.:

    "Ihre Zahlung i.H.v. --- EUR ist eingegangen"
    "Ihre Bestellung wurde versendet. Sendungsverfolgung hier: LINK, Ihre Sendungsnummer: xxxxxx"
    usw.

    Update für Shopversion 2.0.1.0 rev 10403:

    Es gibt nun hier von mir eine Version für die modified 2.0.1.0 (und, evtl. mit geringen Anpassungen, für die 2.0.0.0):

    • Im Backend unter Hilfsprogramme => Kommentar-Vorlagen können beliebig viele Kommentar-Vorlagen angelegt werden.
      • Den Vorlagen kann eine numerische Sortierung gegeben werden.
      • Außerdem können bereits angelegte Kommentar-Vorlagen die nicht mehr benötigt werden deaktiviert werden.
      • Natürlich kann man Vorlagen auch löschen.
      • Wenn man die beiliegenden mySQL-Befehle alle ausgeführt hat sind bereits zwei Beispieltexte angelegt.
    • Im Backend beim Editieren einer Bestellung erscheint über dem Kommentarfeld ein Dropdown mit den Titeln der Kommentar-Vorlagen.
      • Bei Auswahl einer Vorlage wird diese per Ajax (ohne Page-Reload) ins Kommentarfeld geladen.
      • Die Vorlagen werden im Dropdown in der Reihenfolge sortiert angezeigt wie ihnen die Sortierung bei Anlage vergeben wurde.
    [...]
    Natürlich ist die Erweiterung voll update-fähig, sprich, keine Core-Dateien müssen angefasst werden.

    Screenshots für Modulversion "order_status_comments_fuer_shopversion_2.x.zip":

    [ Für Gäste sind keine Dateianhänge sichtbar ] [ Für Gäste sind keine Dateianhänge sichtbar ] [ Für Gäste sind keine Dateianhänge sichtbar ]

    Wem's gefällt, viel Spass damit,
    noRiddle

    P.S.:
    Nachteile: Bislang gibt es keine Möglichkeit Texte im Nachhinein zu ändern oder zu löschen.
    Dies kann nur direkt über die Datenbank gemacht werden.
    Mit Hilfe von beispielsweise phpMyAdmin jedoch kein Problem.


    [EDIT Tomcraft 23.12.2011: Autor & Quelle hinzugefügt.]
    [EDIT Tomcraft 10.03.2013: Fehler in Anleitung korrigiert.]
    [EDIT Tomcraft 10.05.2016: Modul aktualisiert mit Funktion die Vorlagen zu löschen.]
    [EDIT Tomcraft 17.09.2016: Modul aktualisiert, Danke an p3e.]
    [EDIT Tomcraft 17.09.2016: Modul aktualisiert, Danke an p3e.]
    [EDIT Tomcraft 20.12.2016: Modul für Shopversion 2.0.1.0 angehängt. Danke an noRiddle.]
    [EDIT Tomcraft 21.12.2016: Modul für Shopversion 2.0.1.0 aktualisiert. Danke an noRiddle.]
    [EDIT Tomcraft 22.12.2016: Modul für Shopversion 2.0.1.0 aktualisiert. Danke an noRiddle.]
    [EDIT Tomcraft 22.12.2016: Modul für Shopversion 2.0.1.0 aktualisiert. Danke an noRiddle.]
    [EDIT Tomcraft 12.01.2017: Modul für Shopversion 2.0.1.0 aktualisiert. Danke an noRiddle.]
    [EDIT Tomcraft 26.02.2019: Modul für Shopversion 2.x aktualisiert. Danke an noRiddle.]
    [EDIT Tomcraft 07.07.2021: Modul für Shopversion 2.x aktualisiert. Danke an noRiddle.]
    [EDIT Tomcraft 15.07.2021: Screenshots & Modul für Shopversion 2.x aktualisiert. Danke an noRiddle.]
    [EDIT Tomcraft 15.07.2021: Modul für Shopversion 2.x aktualisiert. Danke an noRiddle.]
    [EDIT Tomcraft 18.01.2022: Modul für Shopversion 2.x aktualisiert. Danke an noRiddle.]

    Linkback: https://www.modified-shop.org/forum/index.php?topic=17537.0

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.186
    • Geschlecht:
    Danke dir für's anpassen! :thx:

    Grüße

    Torsten

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.739
    • Geschlecht:
    Danke Tomcraft für's Anfügen des Autors des Moduls.
    Habe das Ding schon so lange, daß ich nicht mehr wusste woher es kam.

    In der "Installationsanleitung.txt" müsste das auch noch angefügt werden.
    Hast du das schon gemacht oder soll ich die Datei nochmals senden ?

    noRiddle

    Tomcraft

    • modified Team
    • Gravatar
    • Beiträge: 46.186
    • Geschlecht:
    Das ändere ich gleich noch.

    Grüße

    Torsten

    swobi

    • Neu im Forum
    • Beiträge: 38
    • Geschlecht:
    Hallo an Alle,
    Ich habe das Modul auch eingebaut, bekam dann folgende Fehlermeldung:

    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TYPE=MyISAM AUTO_INCREMENT=1' at line 6

    Der Code für einen fehlerfreien Betrieb muss nun lauten:

    Code: SQL  [Auswählen]
    CREATE TABLE mail_templates (
      id INT(11) NOT NULL AUTO_INCREMENT,
      title VARCHAR(100) NOT NULL,
      mail_text text NOT NULL,
      PRIMARY KEY  (id)
    ) ENGINE=MyISAM  AUTO_INCREMENT=1 ;

    Also TYPE auswechseln mit ENGINE und der Fehler is behoben.
    Schon praktisch der Baustein...

    Grüsse
    Swobi

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.739
    • Geschlecht:
    Jau, ich glaube ab MySql 5.5 wird "type" nicht mehr unterstützt.
    Danke für den Beitrag.

    Gruß,
    noRiddle

    derJan

    • Mitglied
    • Beiträge: 120
    • Geschlecht:
    Sorry, dass ich den Beitrag "aus dem Archiv" ziehe!

    Erst einmal vielen Dank für diese tolle Erweiterung, da ich bisher immer händisch die Texte an meine Kunden in das Kommentarfeld rein und raus kopiert habe. Ist eine mächtige Erleichterung für mich.

    Leider beinhaltet die Anleitung einen kleinen Fehler:
    Code: PHP  [Auswählen]
    Dies so auskommentieren:
    ---------------------------------------------
    //<?php echo xtc_draw_textarea_field('comments', 'soft', '60', '5', $order->info['comments']); ?>

    Das muss jedoch so abgeändert werden, damit das "alte"´Kommentarfeld nicht mehr zu sehen ist:
    Code: PHP  [Auswählen]
    Dies so auskommentieren:
    ---------------------------------------------
    <?//php echo xtc_draw_textarea_field('comments', 'soft', '60', '5', $order->info['comments']); ?>

    Und ein guter Tipp von xxhappyxx, wenn die Textvorlage einmal verändert werden muss:
    ... du mußt bei diesem Modul gar nicht über die Datenbank gehen. Einfach abändern und unter gleichen Namen wieder abspeichern. Fertig!

    Vielleicht kann man den Beitrag 1 aktualisieren.

    Grüße

    der Jan

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.739
    • Geschlecht:
    Hi back@me.

    Na sowas, du hast natürlich recht mit dem "Auskommentieren", war damals mal schnell "mit heißer Nadel" geschrieben ;-).

    Was allerdings nicht geht, ist das Überschreiben von bereits gespeicherten Vorlagen.
    Dazu bedürfte es eines UPDATE - Befehls für die Datenbank.
    Ich weiß nicht auf welche Erweiterung sich die Aussage xxhappyxx' bezieht,
    mit der vorliegenden ersteren jedenfalls geht das so nicht.

    Gruß,
    noRiddle

    karl

    • Schreiberling
    • Beiträge: 439
    Brauche mal schnelle Hilfe, suche mir den Wolf!

    Bin dabei ein richtiges Modul zu schreiben und fast fertig. In Anlehnung orders_status.php!

    Brauche mal codiertes :-D Fachwissen.

    Wenn ich in der orders.php (habe die Multi-Orders am laufen) per Dropdown-Auswahl einen Wert aus der Datenbank nehme (title) wird dieser angezeigt. Nun soll nach der Auswahl autom. das Textfeld mit dem zugehörigen Werten aus der Tabelle (hier den Text zum title) gefüllt werden. Nicht nur das man sieht was man abschickt, sondern auch damit dieser evtl. (eine Vorlage eben) individuell angepasst werden kann.

    Habe in der orders.php unter:
    Code: PHP  [Auswählen]
    if (trim($order->info['language']) == '') $order->info['language'] = $_SESSION['languages'];
    if (!isset($lang)) $lang = $_SESSION['languages_id'];
    if (!isset($lang_code)) $lang_code = $_SESSION['language_code'];
    $orders_statuses = array ();
    $orders_status_array = array ();
    $orders_status_query = xtc_db_query("-- /admin/orders.php
                                           SELECT orders_status_id,
                                                  orders_status_name
                                             FROM "
    .TABLE_ORDERS_STATUS."
                                            WHERE language_id = '"
    .$lang."'");
    while ($orders_status = xtc_db_fetch_array($orders_status_query)) {
      $orders_statuses[] = array ('id' => $orders_status['orders_status_id'], 'text' => $orders_status['orders_status_name']);
      $orders_status_array[$orders_status['orders_status_id']] = $orders_status['orders_status_name'];
    }

    quasi diesen Code für meine Änderung angepasst. Der obere bleibt natürlich stehen, Ist ja für den Status zuständig (dropdown).
    Das sieht dann so aus:
    Code: PHP  [Auswählen]
    // Edit by kahno 01.02.2013 - Start - erst nachdem hier eingefügt stand der Text in der Schnellauswahl / nicht der Title
    $orders_statuses_comments = array ();
    $orders_status_comments_array = array ();
    $orders_status_comments_query = xtc_db_query("-- /admin/orders.php
                                           SELECT orders_status_comments_id,
                                                  orders_status_comments_title,
                                                  orders_status_comments_text
                                             FROM "
    .TABLE_ORDERS_STATUS_COMMENTS."
                                            WHERE language_id = '"
    .$lang."'");
    while ($orders_status_comments = xtc_db_fetch_array($orders_status_comments_query)) {
      $orders_statuses_comments[] = array ('id' => $orders_status_comments['orders_status_comments_id'], 'text' => $orders_status_comments['orders_status_comments_title']);
      $orders_status_comments_array[$orders_status_comments['orders_status_comments_id']] = $orders_status_comments['orders_status_comments_title'];
    }
    // Edit by kahno 01.02.2013 - Ende
     

    Der Dropdown und das Textfeld dazu sieht so aus:
    Code: PHP  [Auswählen]
    // Edit by kahno 2013 - START  
            $content_multi_order_status[] = array ('params' => '', 'text' => ''.ENTRY_STATUS.'<br>'.xtc_draw_pull_down_menu('comments_title', $orders_statuses_comments, ' ', ' ').'');

    $content_multi_order_status[] = array ('params' => '', 'text' => TABLE_HEADING_COMMENTS.':<br>'.xtc_draw_textarea_field('comments', ' ', '', '', 'Text default', '', false).'<br /> <br />'.'');

    Die "TABLE_ORDERS_STATUS_COMMENTS" ist neu und z.B. so aufgebaut:
    (language_id habe ich mal weggelassen für das Beispiel, ist aber vorhanden)
    ____________________________________________________________________________________
    orders_status_comments_id   |   orders_status_comments_title  |   orders_status_comments_text |
    ------------------------------------------------------------------------------------------------

                      1                          Zahlungseingang Vorkasse                          Text zu 1

                      2                          Zahlungseingang Rechnung                         Text zu 2

                      3                          kein Zahlungseingang                                 Text zu 3
    ____________________________________________________________________________________

    Die orders_status_comments_title wird in der dropdown angezeigt. Dropdown ist komplett gefüllt.

    Nun soll wenn ID_1 gewählt wird der "Text zu 1" in der Textarea autom. angezeigt werden.

    Habe vieles versucht aber es nicht hinbekommen.

    Wer wei die Lösung oder einen Ansatz. :?:

    Das geht z.B. nicht: 'onChange="this.form.submit();"'

    karl

    • Schreiberling
    • Beiträge: 439
    Keiner eine Idee?

    Müßte doch irgendwie mit einem POST in der Dropdown funktionieren. Ich kenne da leider die Syntax nicht und die Beispiele die ich gefunden habe, waren für mich unverständlich. Die meisten meinen man müßte Java einbauen. Glaube aber eher die haben keine Ahnung von php.

    Die Daten liegen ja alle vor, müssen doch nur zugewiesen und abgeholt werden. :whistle:

    StefanS

    • Fördermitglied
    • Beiträge: 53
    • Geschlecht:
    Hallo, vor etwa 2 Stunden sagte ich noch zu meiner Frau es wäre ja eine Idee so etwas ins Leben zu rufen.. Kurze Zeit später fand ich dieses Modul... TOP funktioniert bis jetzt auch bei mir einwandfrei... nur das mit dem Auskommentieren //<?php das haut so nicht hin....

    Beste Grüße Stefan

    ralph_84

    • Fördermitglied
    • Beiträge: 499
    • Geschlecht:
    @pluescho

    Du solltst in Zukunft mal das ganze Tread lesen.
    Dann hättest du dieses selber gefunden: Antwort #6

    Gruß Ralph

    StefanS

    • Fördermitglied
    • Beiträge: 53
    • Geschlecht:
    Danke ralph_84

    so hatte ich es dann auch schon gemacht....

    Grüße...

    karl

    • Schreiberling
    • Beiträge: 439
    @pluescho
    Schau doch mal hier: MODUL: Bestellstatus Kommentare - order_status_comments

    Habe den Ansatz von noRiddle ausgebaut und ein Modul gebaut bei dem man die Texte auf einer eigenen Seite verwalten kann. Wie bei den Status, so ist ein löschen nun auch möglich.

    Und wer die Multiorder installiert hat, kann das nun auch dort verwenden.

    KJoe

    • Fördermitglied
    • Beiträge: 59
    Schönen guten Abend,

    kann mir jemand sagen, ob das Grundmodul (siehe erster Beitrag) auch noch in V. 1.06 eingebaut und benutzt werden kann?

    Vielen Dank schonmal für die Antwort
    Und bevor uns die Arbeitswoche wieder einholt,
    wünsche ich schnell noch einen schönen Adventsausklang.

    VG F.Kramer
    5 Antworten
    4412 Aufrufe
    03. Juli 2018, 12:13:01 von Tomcraft
    7 Antworten
    3536 Aufrufe
    19. Mai 2016, 19:15:43 von diefl
    3 Antworten
    2992 Aufrufe
    21. Mai 2014, 12:07:04 von noRiddle (revilonetz)
               
    anything