Jump to content

YePix

Members
  • Content count

    280
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by YePix

  1. YePix

    Issue with Recreate Session = true

    Hi, delete all your browser data first
  2. YePix

    International SEO

    Hi @radhavallabh, yes. Look in the Contribs to od there is already something or if you coded something yourself then do not forget the corresponding functions in the general.php
  3. YePix

    SMTP Authentication and OSCommerce

    Whether it's good is not important. Important is why are all email addresses included in the header?
  4. YePix

    SMTP Authentication and OSCommerce

    Hello guys, I have a big problem. When I send e-mails to all customers or newsletters, the e-mail arrives, but the header displays all the e-mail addresses of all customers. Do you have an aura, what goes wrong?
  5. Hi, könnte hier jemand mal nachsehen was da falsch läuft ? Die Angabe Lieferzeiten funzt nur für Deutschland also bei 81 mit 3 bis 7 Tage Kunden aus dem Ausland bekommen die gleiche Angabe 3 bis 7 Tage anstelle von 5 bis 10 Tage general.php // Lieferzeiten start function get_lieferzeitraum($yp_ausland) { // Die Routine geht von 3 Tagen für Lieferdatum_von und 5 Tagen Lieferdatum bis aus. Sollten andere Werte benötigt werden, // // dann die Konstanten c__von und c__bis ändern // Konstanten Inland $c__von_i = 3; // Lieferdatum von in Tagen // $c__bis_i = 7; // Lieferdatum bis in Tagen // $c__heimatland = 81 ; // 81 = Deutschland // wie bereits erwähnt, findet man die Zahlu in der Datenbank // Konstanten Ausland $c__von_a = 5; // Lieferdatum von in Tagen // $c__bis_a = 10; // Lieferdatum bis in Tagen // if ($yp_ausland == $c__heimatland) { // es ist Deutschland // $c__von = $c__von_i; $c__bis = $c__bis_i; } else { $c__von = $c__von_a; $c__bis = $c__bis_a; } $y_von_day = $c__von . ' day'; $lieferdatum_von = strtotime(" . $y_von_day . "); $wochentag_von = strftime("%u",$lieferdatum_von); $y_dazu = 0; if ($wochentag_von == 0) { // es ist ein Sonntag => +1 Tag dazu // $y_dazu = 1; } elseif ($wochentag_von == 6) { // es ist ein Samstag => +2 Tage dazu // $y_dazu = 2; } $y_von_neu = $c__von + $y_dazu; $y_von_neu_day = $y_von_neu . ' day'; $lieferdatum_von = strtotime(" . $y_von_neu_day . "); // Wenn das "Lieferdatum von" schon ein Wochenende war, dann die Anzahl der zu verschiebenen Tage auf das "Lieferdatum bis" hinzuaddieren // $y_bis_start = $c__bis + $y_dazu; $y_bis_day = $y_bis_start . ' day'; $lieferdatum_bis = strtotime(" . $y_bis_day . "); // Überprüfen, ob das "Lieferdatum bis" auf ein Wochenende fällt // $wochentag_bis = strftime("%u",$lieferdatum_bis); $y_dazu=0; if ($wochentag_bis == 0) { // es ist ein Sonntag => +1 Tag dazu // $y_dazu = 1; } elseif ($wochentag_bis == 6) { // es ist ein Samstag => +2 Tage dazu // $y_dazu = 2; } $y_bis_neu = $y_bis_start + $y_dazu; $y_bis_neu_day = $y_bis_neu . ' day'; $lieferdatum_bis = strtotime(" . $y_bis_neu_day . "); $lieferdatum_von = date('d.m.',$lieferdatum_von); $lieferdatum_bis = date('d.m.',$lieferdatum_bis) ; return array($lieferdatum_von, $lieferdatum_bis) ; } // Lieferzeiten ende product_info.php <?php $c__heimatland = 81; // 81 = Deutschland // mit der Zahl kann man sein Heimatland angeben. Das findet mach am Besten in der Datenbank list($lieferdatum_von,$lieferdatum_bis) = get_lieferzeitraum($c__heimatland); $pls_shippingtime = '<span class="pls_basePrice">' . TEXT_LIEFERUNG_PI . $lieferdatum_von . "-" . $lieferdatum_bis . '</span>'; ?>
  6. in der Tabelle PRODUCTS siehst du die products_id und diese muss der Tabelle PRODUCTS_TO_CATEGORIES entsprechen.
  7. wenn du dein backup hast, musst du nur die Verbindung von Produkten zu den entsprechenden Kategorien überprüfen. Vergleiche die Tabellenstruktur ob eventuel etwas anders aufgebaut ist.
  8. Wenn ich mir das Bild so ansehe muss ich feststellen, dass du der nächster bist der erst macht, dann heult und dann handelt. osCommerce ist nicht für den sofortigen Einsatz nach der Installation geeignet !!!!!! Bevor Ihr on-Line geht macht euch ein genaueres Bild davon was alles vom Gesetz vorgeschrieben ist um ein Shop betreiben zu dürfen.
  9. hast du ei Beckup der alten DB gemacht ?
  10. YePix

    SMTP Authentication and OSCommerce

    For those who want or need to send their emails with smtp through authentication. Email not suitable for gmail accounts !!! **************************************************** Step 1. BACKUP ALL FILES BEFORE CHANGE !!! **************************************************** Step 2. Download: www.pl-systeme.de/free_download/PHPMailer.zip transferred to: catalog/ext/modules/PHPMailer **************************************************** Step 3. change class files: catalog/includes/classes.php <?php /* $Id$ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright (c) 2014 osCommerce */ require_once 'ext/modules/PHPMailer/class.phpmailer.php'; $phpMail = new PHPMailer(); class email { var $html; var $text; var $html_text; var $lf; var $debug = 0; var $debug_output = 'error_log'; function email($headers = '') { global $phpMail; $phpMail->XMailer = 'osCommerce ' . tep_get_version(); $phpMail->SMTPDebug = $this->debug; $phpMail->Debugoutput = $this->debug_output; $phpMail->CharSet = CHARSET; $phpMail->WordWrap = 998; if (EMAIL_LINEFEED == 'CRLF') { $this->lf = "\r\n"; } else { $this->lf = "\n"; } } function add_text($text = '') { global $phpMail; $phpMail->IsHTML(false); $this->text = tep_convert_linefeeds(array("\r\n", "\n", "\r"), $this->lf, $text); } function add_html($html, $text = NULL, $images_dir = NULL) { global $phpMail; $phpMail->IsHTML(true); $this->html = tep_convert_linefeeds(array("\r\n", "\n", "\r"), '<br />', $html); $this->html_text = tep_convert_linefeeds(array("\r\n", "\n", "\r"), $this->lf, $text); if (isset($images_dir)) $this->html = $phpMail->msgHTML($this->html, $images_dir); } function add_attachment($path, $name = '', $encoding = 'base64', $type = '', $disposition = 'attachment') { global $phpMail; $phpMail->AddAttachment($path, $name, $encoding, $type, $disposition); } function build_message() { //out of work function } function send($to_name, $to_addr, $from_name, $from_addr, $subject = '', $reply_to = false) { global $phpMail; if ((strstr($to_name, "\n") != false) || (strstr($to_name, "\r") != false)) { return false; } if ((strstr($to_addr, "\n") != false) || (strstr($to_addr, "\r") != false)) { return false; } if ((strstr($subject, "\n") != false) || (strstr($subject, "\r") != false)) { return false; } if ((strstr($from_name, "\n") != false) || (strstr($from_name, "\r") != false)) { return false; } if ((strstr($from_addr, "\n") != false) || (strstr($from_addr, "\r") != false)) { return false; } $phpMail->From = $from_addr; $phpMail->FromName = $from_name; $phpMail->AddAddress($to_addr, $to_name); if ($reply_to) { $phpMail->AddReplyTo(EMAIL_SMTP_REPLYTO, STORE_NAME); } else { $phpMail->AddReplyTo($from_addr, $from_name); } $phpMail->Subject = $subject; if (!empty($this->html)) { $phpMail->Body = $this->html; $phpMail->AltBody = $this->html_text; } else { $phpMail->Body = $this->text; } if (EMAIL_TRANSPORT == 'smtp' || EMAIL_TRANSPORT == 'gmail') { $phpMail->IsSMTP(); $phpMail->Host = EMAIL_SMTP_HOSTS; $phpMail->SMTPAuth = EMAIL_SMTP_AUTHENTICATION; $phpMail->Username = EMAIL_SMTP_USER; $phpMail->Password = EMAIL_SMTP_PASSWORD; if (EMAIL_TRANSPORT == 'gmail') { $phpMail->Port = 465; $phpMail->SMTPSecure = 'ssl'; } } else { $phpMail->isSendmail(); } if (!$phpMail->Send()) { return false; } return true; } } /* ** Altered for Mail Manager ** */ // eliminate line feeds as <br> class emailMailManager extends email { function add_html($html, $text = NULL, $images_dir = NULL) { $this->html = $html; //tep_convert_linefeeds(array("\r\n", "\n", "\r"), '<br>', $html); $this->html_text = tep_convert_linefeeds(array("\r\n", "\n", "\r"), $this->lf, $text); if (isset($images_dir)) $this->find_html_images($images_dir); } } /* ** EOF alterations for Mail Manager ** */ ?> catalog/admin/includes/classes.php <?php /* $Id$ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com Copyright (c) 2014 osCommerce Released under the GNU General Public License */ require_once '../ext/modules/PHPMailer/class.phpmailer.php'; $phpMail = new PHPMailer(); class email { var $html; var $text; var $html_text; var $lf; var $debug = 0; var $debug_output = 'error_log'; function email($headers = '') { global $phpMail; $phpMail->XMailer = 'osCommerce ' . tep_get_version(); $phpMail->SMTPDebug = $this->debug; $phpMail->Debugoutput = $this->debug_output; $phpMail->CharSet = CHARSET; $phpMail->WordWrap = 998; if (EMAIL_LINEFEED == 'CRLF') { $this->lf = "\r\n"; } else { $this->lf = "\n"; } } function add_text($text = '') { global $phpMail; $phpMail->IsHTML(false); $this->text = tep_convert_linefeeds(array("\r\n", "\n", "\r"), $this->lf, $text); } function add_html($html, $text = NULL, $images_dir = NULL) { global $phpMail; $phpMail->IsHTML(true); $this->html = tep_convert_linefeeds(array("\r\n", "\n", "\r"), '<br />', $html); $this->html_text = tep_convert_linefeeds(array("\r\n", "\n", "\r"), $this->lf, $text); if (isset($images_dir)) $this->html = $phpMail->msgHTML($this->html, $images_dir); } function add_attachment($path, $name = '', $encoding = 'base64', $type = '', $disposition = 'attachment') { global $phpMail; $phpMail->AddAttachment($path, $name, $encoding, $type, $disposition); } function build_message() { //out of work function } function send($to_name, $to_addr, $from_name, $from_addr, $subject = '', $reply_to = false) { global $phpMail; if ((strstr($to_name, "\n") != false) || (strstr($to_name, "\r") != false)) { return false; } if ((strstr($to_addr, "\n") != false) || (strstr($to_addr, "\r") != false)) { return false; } if ((strstr($subject, "\n") != false) || (strstr($subject, "\r") != false)) { return false; } if ((strstr($from_name, "\n") != false) || (strstr($from_name, "\r") != false)) { return false; } if ((strstr($from_addr, "\n") != false) || (strstr($from_addr, "\r") != false)) { return false; } $phpMail->From = $from_addr; $phpMail->FromName = $from_name; $phpMail->AddAddress($to_addr, $to_name); if ($reply_to) { $phpMail->AddReplyTo(EMAIL_SMTP_REPLYTO, STORE_NAME); } else { $phpMail->AddReplyTo($from_addr, $from_name); } $phpMail->Subject = $subject; if (!empty($this->html)) { $phpMail->Body = $this->html; $phpMail->AltBody = $this->html_text; } else { $phpMail->Body = $this->text; } if (EMAIL_TRANSPORT == 'smtp' || EMAIL_TRANSPORT == 'gmail') { $phpMail->IsSMTP(); $phpMail->Host = EMAIL_SMTP_HOSTS; $phpMail->SMTPAuth = EMAIL_SMTP_AUTHENTICATION; $phpMail->Username = EMAIL_SMTP_USER; $phpMail->Password = EMAIL_SMTP_PASSWORD; if (EMAIL_TRANSPORT == 'gmail') { $phpMail->Port = 465; $phpMail->SMTPSecure = 'ssl'; } } else { $phpMail->isSendmail(); } if (!$phpMail->Send()) { return false; } return true; } } /* ** Altered for Mail Manager ** */ // eliminate line feeds as <br> class emailMailManager extends email { function add_html($html, $text = NULL, $images_dir = NULL) { $this->html = $html; //tep_convert_linefeeds(array("\r\n", "\n", "\r"), '<br>', $html); $this->html_text = tep_convert_linefeeds(array("\r\n", "\n", "\r"), $this->lf, $text); if (isset($images_dir)) $this->find_html_images($images_dir); } } /* ** EOF alterations for Mail Manager ** */ ?> **************************************************** Step 4. catalog/admin/functions/general.php find: //// // Sets the status of a product function tep_set_product_status($products_id, $status) { if ($status == '1') { return tep_db_query("update " . TABLE_PRODUCTS . " set products_status = '1', products_last_modified = now() where products_id = '" . (int)$products_id . "'"); } elseif ($status == '0') { return tep_db_query("update " . TABLE_PRODUCTS . " set products_status = '0', products_last_modified = now() where products_id = '" . (int)$products_id . "'"); } else { return -1; } } add below: //// // Sets the password function for db function tep_cfg_password($password) { return preg_replace("|.|", "*", $password); } function tep_cfg_input_password($password) { return tep_draw_password_field('configuration_value', $password); } **************************************************** Step 5. Import sql: INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) VALUES ('SMTP hosts', 'EMAIL_SMTP_HOSTS', '', 'Assign SMTP host senders', '12', '6', now()); INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) VALUES ('SMTP authentication', 'EMAIL_SMTP_AUTHENTICATION', 'true', 'Do you want authenticated SMTP server?', '12', '7', 'tep_cfg_select_option(array(\'true\', \'false\'), ', now()); INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, use_function, set_function, date_added) VALUES ('SMTP Password', 'EMAIL_SMTP_PASSWORD', '', 'Add SMTP Password for SMTP protocol', '12', '8', 'tep_cfg_password', 'tep_cfg_input_password(', now()); INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) VALUES ('SMTP User', 'EMAIL_SMTP_USER', '', 'Add SMTP user for SMTP protocol', '12', '9', now()); INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) VALUES ('SMTP Reply To', 'EMAIL_SMTP_REPLYTO', '', 'Add SMTP reply to address', '12', '10', now()); **************************************************** Step 6. go to: http://www.yourDomain.com/admin/configuration.php?gID=12 change the new SMTP email settings and set the email transport method to smtp **************************************************** Step 7. finished.
  11. YePix

    SMTP Authentication and OSCommerce

    So first thanks to @raiwa and @Tsimi. With a few suggestions you helped me a lot. Special thanks to @tgely for his challenging work! The instructions for bootstrap with all changes and source code I will put in soon for other users. The email-class has to be changed, the general.php in the admin has to be provided with a function and the corresponding php-mailer comes as a download.
  12. YePix

    SMTP Authentication and OSCommerce

    I do not know what it should bring but even if the mails were classified as spam, they would arrive. I tested it with gmail and outlook. Emails do not arrive. but still thank you. could someone help me?
  13. Im Adminmenü findest du es auch nicht. Es muss direkt in der Datei create_account.php bearbeitet werden.
  14. das ist der code für newsletter: <tr> <td class="fieldKey"><?php echo ENTRY_NEWSLETTER; ?></td> <td class="fieldValue"><?php echo tep_draw_checkbox_field('newsletter', '1') . '&nbsp;' . (tep_not_null(ENTRY_NEWSLETTER_TEXT) ? '<span class="inputRequirement">' . ENTRY_NEWSLETTER_TEXT . '</span>': ''); ?></td> </tr>
  15. das ist der Abschnitt der für das Feld Telefonnummer zuständig ist: if (strlen($telephone) < ENTRY_TELEPHONE_MIN_LENGTH) { $error = true; $messageStack->add('create_account', ENTRY_TELEPHONE_NUMBER_ERROR); } <tr> <td class="fieldKey"><?php echo ENTRY_TELEPHONE_NUMBER; ?></td> <td class="fieldValue"><?php echo tep_draw_input_field('telephone') . '&nbsp;' . (tep_not_null(ENTRY_TELEPHONE_NUMBER_TEXT) ? '<span class="inputRequirement">' . ENTRY_TELEPHONE_NUMBER_TEXT . '</span>': ''); ?></td> </tr>
  16. Also bei dem Wissen über osCommerce ist es schon mal sehr schlecht überhaupt in Erwägung zu ziehen einen Online-Shop frei ins Netz zu stellen. (Sorry nicht böse gemeint) Bevor du dir Gedanken über eventuelle Angabefelder machst, solltest du dir lieber Gedanken über die rechtliche Situation, was das Betreiben eines Shops im Netz angeht machen. Eine Abmahnung wegen fehlender bzw. falscher Angaben kann sehr, sehr teuer werden. (Das nehmen viel zu viele hier leider auf die leichte Schulter) und dann ist das Gehäule gross ! Die besten Ausreden sind immer, Ich möchte nicht viel investieren, da es nur ein kleiner Shop ist und und und..... Es ist ganz egal wie gross der Shop werden soll, auch wen nur ein Produkt verkauft wird. Gesetz ist Gesetz und die Straffen sind sehr hoch bei Verstössen. Ist der Shop irgendwann Abmahnsicher, so kannst du an Verschönerung und Anpassung bestimmter Details denken die du haben möchtest. Nichts für ungut aber denk über meine Worte nach, kann viel Ärger ersparen.
  17. Um die Telefonnummer zu entfernen muss die create_account.php im catalog so wie die customers.php im admin bearbeitet werden. Hierbei alle Abfragen und das Eingabefeld entfernen. Etwas schöner wre eine DB-Abfrage zu installieren um das Telefonfeld über die Administration ab bzw. ein zu schalten.
  18. YePix

    Entscheidungsfindung

    Du brauchst noch den Lieferkostenvermerk in unmittelbarer Nähe zum Preis. Nicht vergessen, die Versandkosten müssen inkl. MwSt. gelten. Bestätigung der AGB, Widerruf und Datenschutzrichtlinien. Die DSGVO Angaben müssen jedem Kunden zugänglich sein. Kontrollkästchen mit Bestätigung der Privatsphere vor dem Versenden des Kontaktformulars. Und, und, und..... An deiner Stelle würde ich erstmal genauer prüffen was alles noch fehlt was rechtlich vorgeschrieben ist bevor der Shop On-Line geht. (kann sehr teuer werden.) PS. Die anderen Shops die im Netz zu finden sind, sind auch nicht ganz ohne und müssen an die Gesetzvorgaben angepasst werden.
  19. YePix

    QTPro BS

    I have located the error. I do not know why but it was the field name. From "cart_quantity" I did "quantityfield" and everything works again. I thank you anyway.
  20. YePix

    QTPro BS

    My buy now button with quantity field: echo ' <div class="pls_margin"><span class="text">' . TEXT_ENTER_QUANTITY . ' ' . tep_draw_input_field('cart_quantity', '1', 'style="width: 70px;" min="0"', 'number') . '</span> ' . tep_draw_hidden_field('products_id', $product_info['products_id']) . tep_draw_button(IMAGE_BUTTON_IN_CART, 'fa fa-shopping-cart', null, 'primary', array('params' => 'data-has-attributes="' . (($products_attributes['total'] > 0) ? '1' : '0') . '" data-in-stock="' . (int)$product_info['products_quantity'] . '" data-product-id="' . (int)$product_info['products_id'] . '"'), 'btn btn-success btn-block btn-lg') .'</div>';
  21. YePix

    QTPro BS

    again without proper function. always the duplicate entries I do not get it
  22. YePix

    QTPro BS

    why does it work with $HTTP_POST_VARS $cart->add_cart($_POST['products_id'], $cart->get_quantity(tep_get_uprid($_POST['products_id'], $attributes))+ $HTTP_POST_VARS['cart_quantity'], $attributes); and not with $_POST $cart->add_cart($_POST['products_id'], $cart->get_quantity(tep_get_uprid($_POST['products_id'], $attributes))+ $_POST['cart_quantity'], $attributes);
  23. YePix

    QTPro BS

    hello Rainer, what can it be that products from product_info are placed twice in the shopping cart? I mean, the quantity field. // customer adds a product from the products page case 'add_product' : if (isset($_POST['products_id']) && is_numeric($_POST['products_id'])) { //++++ QT Pro: Begin Changed code $attributes=array(); if (isset($_POST['attrcomb']) && (preg_match("/^\d{1,10}-\d{1,10}(,\d{1,10}-\d{1,10})*$/",$_POST['attrcomb']))) { $attrlist=explode(',',$_POST['attrcomb']); foreach ($attrlist as $attr) { list($oid, $oval)=explode('-',$attr); if (is_numeric($oid) && $oid==(int)$oid && is_numeric($oval) && $oval==(int)$oval) $attributes[$oid]=$oval; } } if (isset($_POST['id']) && is_array($_POST['id'])) { foreach ($_POST['id'] as $key=>$val) { if (is_numeric($key) && $key==(int)$key && is_numeric($val) && $val==(int)$val) $attributes=$attributes + $_POST['id']; } } $cart->add_cart($_POST['products_id'], $cart->get_quantity(tep_get_uprid($_POST['products_id'], $attributes)) + $_POST['cart_quantity'], $attributes); //++++ QT Pro: End Changed Code } $messageStack->add_session('product_action', sprintf(PRODUCT_ADDED, tep_get_products_name((int)$_POST['products_id'])), 'success'); tep_redirect(tep_href_link($goto, tep_get_all_get_params($parameters))); break;
  24. YePix

    Angabe der Lieferzeiten

    in product_info.php hat sich ein Fehler eingeschlichen. Dieses einfügen: <?php if (SHOW_PRODUCTS_SHIPPING_TIME_ON == 'true') { if ( (tep_session_is_registered('customer_id') == true) || ($id != $customer_id) ) { $c__heimatland = $customer_country_id; list($lieferdatum_von,$lieferdatum_bis) = get_lieferzeitraum($c__heimatland); $pls_shippingtime = '<span class="pls_basePrice">' . TEXT_LIEFERUNG_PI . $lieferdatum_von . "-" . $lieferdatum_bis . '</span><br>'; echo $pls_shippingtime; }else{ $pls_shippingtime = '<span class="pls_basePrice">' . TEXT_SHIPPINGTIME_LOGIN . '</span><br>'; echo $pls_shippingtime; } }?>
  25. YePix

    Angabe der Lieferzeiten

    Mit besonderem Dank an @Tsimi SQL-Anweisung INSERT INTO configuration_group (configuration_group_id, configuration_group_title, configuration_group_description, sort_order, visible) VALUES ('41', 'Angabe Lieferzeiten', 'Definieren Sie die Angaben der Lieferzeiten für Deutschland in Tagen. Standard von [3 Tage] bis [7 Tage] Ausserhalb Deutschland [5 Tage] bis [10 Tage]', NULL, '1'); INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added, use_function, set_function) VALUES ('Angabe der Lieferzeiten freischalten ?', 'SHOW_PRODUCTS_SHIPPING_TIME_ON', 'true', 'Soll die Angabe der Lieferzeiten bei den Produktdetails freigeschalten werden ?', '41', '1', now(), NULL , 'tep_cfg_select_option(array(\'true\', \'false\'),'); INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added) VALUES ('Lieferangabe innerhalb Deutschland von [x] Tagen', 'INFOTEXT_SHIPPING_TIME_OF', '3', 'Lieferangabe innerhalb Deutschland in Tagen. Standard: [zwischen 3] und ...', '41', '10', now(), now()); INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added) VALUES ('Lieferangabe innerhalb Deutschland bis [x] Tagen', 'INFOTEXT_SHIPPING_TIME_TO', '7', 'Lieferangabe innerhalb Deutschland in Tagen. Standard: zwischen ... [und 7 Tagen]', '41', '11', now(), now()); INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added) VALUES ('Lieferangabe ausserhalb Deutschland von [x] Tagen', 'INFOTEXT_SHIP_TIME_OF_W', '5', 'Lieferangabe ausserhalb Deutschland in Tagen. Standard: [zwischen 5] und ...', '41', '12', now(), now()); INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added) VALUES ('Lieferangabe ausserhalb Deutschland bis [x] Tagen', 'INFOTEXT_SHIP_TIME_TO_W', '10', 'Lieferangabe ausserhalb Deutschland in Tagen. Standard: zwischen ... [und 10 Tagen]', '41', '13', now(), now()); product_info.php einfügen unterhalb vom letzten query tag ?>: <?php if ( (tep_session_is_registered('customer_id') == true) || ($id != $customer_id) ) { $c__heimatland = $customer_country_id; list($lieferdatum_von,$lieferdatum_bis) = get_lieferzeitraum($c__heimatland); $pls_shippingtime = '<span class="pls_basePrice">' . TEXT_LIEFERUNG_PI . $lieferdatum_von . "-" . $lieferdatum_bis . '</span><br>'; echo $pls_shippingtime; }else{ $pls_shippingtime = '<span class="pls_basePrice">' . TEXT_SHIPPINGTIME_LOGIN . '</span><br>'; echo $pls_shippingtime; }?> einfügen an gewünschter Stelle: <?php echo $pls_shippingtime;?> einfügen in german.php: define('TEXT_LIEFERUNG_PI', 'Lieferung bei heutiger Zahlung: '); define('TEXT_SHIPPINGTIME_LOGIN', 'Bitte einloggen für Lieferangaben. '); einfügen in english.php: define('TEXT_LIEFERUNG_PI', 'Delivery by todays payment: '); define('TEXT_SHIPPINGTIME_LOGIN', 'Login for delivery info. '); catalog/includes/functions/general.php einfügen vor dem letztem tag ?>: // Lieferzeiten start function get_lieferzeitraum($yp_ausland) { // Die Routine geht von 3 Tagen für Lieferdatum_von und 5 Tagen Lieferdatum bis aus. Sollten andere Werte benötigt werden, // // dann die Konstanten c__von und c__bis ändern // // Konstanten Inland $c__von_i = INFOTEXT_SHIPPING_TIME_OF; // Lieferdatum von in Tagen // $c__bis_i = INFOTEXT_SHIPPING_TIME_TO; // Lieferdatum bis in Tagen // $c__heimatland = 81 ; // 81 = Deutschland oder z.B. 14 für Österreich// // wie bereits erwähnt, findet man die Zahlu in der Datenbank // Konstanten Ausland $c__von_a = INFOTEXT_SHIP_TIME_OF_W; // Lieferdatum von in Tagen // $c__bis_a = INFOTEXT_SHIP_TIME_TO_W; // Lieferdatum bis in Tagen // if ($yp_ausland == $c__heimatland) { // es ist Deutschland // $c__von = $c__von_i; $c__bis = $c__bis_i; } else { $c__von = $c__von_a; $c__bis = $c__bis_a; } $y_von_day = $c__von . ' day'; $lieferdatum_von = strtotime(" . $y_von_day . "); $wochentag_von = strftime("%u",$lieferdatum_von); $y_dazu = 0; if ($wochentag_von == 0) { // es ist ein Sonntag => +1 Tag dazu // $y_dazu = 1; } elseif ($wochentag_von == 6) { // es ist ein Samstag => +2 Tage dazu // $y_dazu = 2; } $y_von_neu = $c__von + $y_dazu; $y_von_neu_day = $y_von_neu . ' day'; $lieferdatum_von = strtotime(" . $y_von_neu_day . "); // Wenn das "Lieferdatum von" schon ein Wochenende war, dann die Anzahl der zu verschiebenen Tage auf das "Lieferdatum bis" hinzuaddieren // $y_bis_start = $c__bis + $y_dazu; $y_bis_day = $y_bis_start . ' day'; $lieferdatum_bis = strtotime(" . $y_bis_day . "); // Überprüfen, ob das "Lieferdatum bis" auf ein Wochenende fällt // $wochentag_bis = strftime("%u",$lieferdatum_bis); $y_dazu=0; if ($wochentag_bis == 0) { // es ist ein Sonntag => +1 Tag dazu // $y_dazu = 1; } elseif ($wochentag_bis == 6) { // es ist ein Samstag => +2 Tage dazu // $y_dazu = 2; } $y_bis_neu = $y_bis_start + $y_dazu; $y_bis_neu_day = $y_bis_neu . ' day'; $lieferdatum_bis = strtotime(" . $y_bis_neu_day . "); $lieferdatum_von = date('d.m.',$lieferdatum_von); $lieferdatum_bis = date('d.m.',$lieferdatum_bis) ; return array($lieferdatum_von, $lieferdatum_bis) ; } // Lieferzeiten ende
×