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: Persönliche Anrede auch bei gelöschten Gastkonten - change_order_mail - gender

    karl

    • Schreiberling
    • Beiträge: 439
    Hallo,
    hier mal eine kleine Erweiterung für gelöschte Gastkonten.

    Bisher war es unmöglich, bei gelöschten Gastkonten, z.B. den Bestellstatus mit einer persönlichen Anrede zu schmücken. Diese wurde bisher aus der Tabelle customers geholt. Wenn man aber den Shop so einstellt, das Gastkonten autom gelöscht werden, gibt es da keine Daten mehr.

    Die Tabelle orders enthält zwar alle Anschriften aber bisher keine Anrede (gender).

    Schritt 1: mysql Tabelle orders erweitern mit
    Code: XML  [Auswählen]
    ALTER TABLE `orders`
    ADD `customers_gender` CHAR( 1 ) NOT NULL;
    oder direkt eintragen an gewünschter Stelle in der mysql, mit der Funktion: "Felder hinzufügen" - bei mir ganz unten wenn man auf "Struktur" klickt (in der mysql)

    Schritt 2: gender in die Tabelle übergeben
     -> Datei: /checkout_process.php ca. Zeile 131
                => suchen nach:
    Code: PHP  [Auswählen]
    if ($_SESSION['credit_covers'] != '1') {
            $sql_data_array = array ('customers_id' => $_SESSION['customer_id'],
    direkt dahinter eingeben:
    Code: PHP  [Auswählen]
    'customers_gender' => $order->customer['gender'],
    das gleiche weiter unten nach else!

    Schritt 3: admin/orders.php anpassen
     => das suchen: könnte bei Euch anders aussehen da ich die multi_ordes eingebaut habe
    Code: PHP  [Auswählen]
    // EOF - Chris LIGE - 2011-05-17 - Track & Trace Modul
    switch ($_GET['action']) {
            // XTC-DELUXE.DE multi_order_status
            case 'change_status':
    => Ihr könnt meinen code so übernehmen und die tpl/admin/german/change_order.xxx entsprechend anpassen
    und vor:
    Code: PHP  [Auswählen]
    // assign language to template for caching
                                                            $smarty->assign('language', $_SESSION['language']);
                                                            $smarty->caching = false;
    das einfügen:
    Code: PHP  [Auswählen]
    //von modified eCommerce Shopsoftware edit by kahno 03.03.2011 - start
     // Edit by kahno 20.05.2012 table orders um gender erweitert deshalb nur eine Abfrage der Tabelle wegen Gastkonto!
                      $orders_query = xtc_db_query("select customers_id, customers_gender, customers_name from ".TABLE_ORDERS." where orders_id = '".xtc_db_input($oID)."'");
                      $gender = xtc_db_fetch_array($orders_query);
                     
                      //$gender_query = xtc_db_query("SELECT customers_gender, customers_lastname FROM " . TABLE_CUSTOMERS . " WHERE customers_id = '" . $order_cid['customers_id']. "'");
                      //$gender = xtc_db_fetch_array($gender_query);
               
                       if ($gender['customers_gender']=='f') {
                            $smarty->assign('GENDER1', 'Sehr geehrte');
                            $smarty->assign('GENDER2', 'Frau');
                       } elseif ($gender['customers_gender']=='m') {
                            $smarty->assign('GENDER1', 'Sehr geehrter');
                            $smarty->assign('GENDER2', 'Herr');
                       } else {
                         $smarty->assign('GENDER', '');
                       }
                         $smarty->assign('NAME',$gender['customers_name']);
      //von modified eCommerce Shopsoftware edit by kahno 03.03.2011 - ende      

    oder den hier einbauen:
    Code: PHP  [Auswählen]
    //von modified eCommerce Shopsoftware edit by kahno 03.03.2011 - start
     // Edit by kahno 20.05.2012 table orders um gender erweitert deshalb nur eine Abfrage der Tabelle wegen Gastkonto!
                      $orders_query = xtc_db_query("select customers_id, customers_gender, customers_name from ".TABLE_ORDERS." where orders_id = '".xtc_db_input($oID)."'");
                      $gender = xtc_db_fetch_array($orders_query);
                     
                      //$gender_query = xtc_db_query("SELECT customers_gender, customers_lastname FROM " . TABLE_CUSTOMERS . " WHERE customers_id = '" . $order_cid['customers_id']. "'");
                      //$gender = xtc_db_fetch_array($gender_query);
               
                       if ($gender['customers_gender']=='f') {
                            $smarty->assign('GENDER', FEMALE );
                       } elseif ($gender['customers_gender']=='m') {
                            $smarty->assign('GENDER', MALE );
                       } else {
                         $smarty->assign('GENDER', '');
                       }
                         $smarty->assign('LASTNAME',$gender['customers_name']);
      //von modified eCommerce Shopsoftware edit by kahno 03.03.2011 - ende      

    beide Versionen beinhalten nun auch Vor- und Nachnahmen. Wer das nicht will ändert customers_name in customers_lastname.

    Ein Feedbak ob es für Euch nützlich ist wäre nett! :thx:

    Linkback: https://www.modified-shop.org/forum/index.php?topic=20127.0
    Trade Republic - Provisionsfrei Aktien handeln

    jannemann

    • modified Team
    • Beiträge: 6.275
    • Geschlecht:
    Hallo karl,

    vielen Dank fürs Teilen!  :thumbs:
    Ich habe es allerdings noch nicht getestet, da wir bei uns die Gastkonten nicht automatisch löschen lassen.

    Schöne Grüße,
    Jan

    karl

    • Schreiberling
    • Beiträge: 439
    Habe ich im alten Shop auch so laufen. Deshalb ist es mir nie aufgefallen. Aber da ich das ewige Löschen leid war, dachte ich im neuen Shop wird es anders und beim Testen ist es mir dann wie Schuppen von den Augen gefallen.
    10 Antworten
    5368 Aufrufe
    09. September 2021, 18:41:09 von svenyo
    1 Antworten
    2661 Aufrufe
    18. April 2011, 07:03:47 von aragon
    26 Antworten
    12962 Aufrufe
    08. Januar 2010, 19:51:13 von guensi
               
    anything