Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

YePix

Members
  • Posts

    434
  • Joined

  • Last visited

  • Days Won

    9

Reputation Activity

  1. Like
    YePix got a reaction from MarksCounts1 in [OSC2.2MS2] Mail send to Gmail error   
  2. Thanks
    YePix got a reaction from Fredi in W3 osCommerce WIP   
    if someone uses the module get 1 free, here is a customer info. List of products with gifts offered in the shop. Just install it where you want it.
    <?php if (defined('MODULE_CONTENT_PRODUCT_INFO_GET_1_FREE_STATUS') && (MODULE_CONTENT_PRODUCT_INFO_GET_1_FREE_STATUS == 'True') ) { $check_get_1_free = tep_db_query("select gf.get_1_free_id from get_1_free gf, products p where gf.products_id = p.products_id"); if (tep_db_num_rows($check_get_1_free)) { ?> <div class="clearfix"></div><hr class="hr-gr mb-2 mt-2"> <div class="mb-2 mt-2 w3-large"><font color="#DD0000"><b><?php echo DISCOUNT_PAGE_MODULE_CONTENT_PRODUCT_INFO_GET_1_FREE_TITLE;?></b></font></div> <?php $products_cart_gift = '<img src="images/cart_gift.png">'; $get_1_free_product_query = tep_db_query("select gf.get_1_free_id, gf.products_id, gf.products_qualify_quantity, gf.products_free_quantity, pd.products_name from get_1_free gf, products p left join products_description pd on p.products_id = pd.products_id where gf.products_id = p.products_id order by gf.get_1_free_id"); while ($get_1_free_product = tep_db_fetch_array($get_1_free_product_query)){ $get_1_free_query = tep_db_query("select gf.products_free_id, p.products_id, pd.products_name from get_1_free gf, products p left join products_description pd on p.products_id = pd.products_id where gf.get_1_free_id = '" . $get_1_free_product['get_1_free_id'] . "' and p.products_id = gf.products_free_id order by gf.get_1_free_id"); if (tep_db_num_rows($get_1_free_query)) { while ($get_1_free = tep_db_fetch_array($get_1_free_query)){ $g1f = $get_1_free['products_name']; $g1f_pfid = $get_1_free['products_free_id']; } if ($get_1_free_product['products_qualify_quantity'] > 1){$pquqt = DISCOUNT_PAGE_TEXT_GET_1_FREE_PROMOTION_FOUR;}else{$pquqt = '';} ?> <div class="mb-2 mt-2 w3-border w3-border-blue w3-leftbar w3-round w3-padding"> <?php echo $products_cart_gift . ' ' . $get_1_free_product['products_qualify_quantity'] . ' ' . $pquqt;?> <a href="<?php echo tep_href_link('product_info.php', tep_get_all_get_params(array('action')) . 'products_id=' . $get_1_free_product['products_id']); ?>"><b class="w3-text-black w3-hover-text-blue"><?php echo $get_1_free_product['products_name'];?></b></a> <?php echo DISCOUNT_PAGE_TEXT_GET_1_FREE_PROMOTION_TWO . ' ' . $get_1_free_product['products_free_quantity'];?> <a href="<?php echo tep_href_link('product_info.php', tep_get_all_get_params(array('action')) . 'products_id=' . $g1f_pfid); ?>"><b class="w3-text-blue w3-hover-text-black"><?php echo $g1f;?></b></a> <?php echo DISCOUNT_PAGE_TEXT_GET_1_FREE_PROMOTION_THREE;?> </div> <?php }}}}?>  
    language:
    define('DISCOUNT_PAGE_MODULE_CONTENT_PRODUCT_INFO_GET_1_FREE_TITLE', 'Geschänkartikel'); define('DISCOUNT_PAGE_TEXT_GET_1_FREE_PROMOTION', '<font color="#990000">ANGEBOT:</font>'); define('DISCOUNT_PAGE_TEXT_GET_1_FREE_PROMOTION_TWO', 'kaufen und Sie bekommen von uns '); define('DISCOUNT_PAGE_TEXT_GET_1_FREE_PROMOTION_THREE', 'dazu geschenkt.'); define('DISCOUNT_PAGE_TEXT_GET_1_FREE_PROMOTION_FOUR', 'identische'); define('DISCOUNT_PAGE_TEXT_GET_1_FREE_ATTRIBUTE_PROMOTION', '<font color="#990000">ACHTUNG!</font> Bei diesem Angebot müssen die'); define('DISCOUNT_PAGE_TEXT_GET_1_FREE_ATTRIBUTE_PROMOTION_TWO', 'im Warenkorb identisch sein'); define('DISCOUNT_PAGE_TEXT_OFFER_ENDS', ' - Zeitlich begrenztes Angebot endet');  
  3. Thanks
    YePix got a reaction from patrocine in addons for old versions   
    You won't find them there either.
  4. Thanks
    YePix got a reaction from Hotclutch in W3 osCommerce WIP   
    New Module for reminder of rating.
    catalog/includes/languages/xxx/modules/content/index/cm_i_customer_reviews_info.php
    <?php define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MESAGE_TITLE', 'Bewertungserinnerung'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MESAGE_DESCRIPTION', 'Fügt eine Infobox für Bewertungserinnerung an Kunden in Ihrer Website ein.'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_HEADING_TITLE', 'Ihre Meinung ist uns wichtig'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO', 'Hallo'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MR', 'Sehr geehrter Herr'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MRS', 'Sehr geehrte Frau'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_FIRST', 'Es freut und sehr, denn Sie haben bereits '); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_TWO', 'Produkte erworben und davon'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_TWO_ONE', 'leider'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_THREE', 'bewertet.'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_FOUR', 'Es ist uns sehr wichtig, unsere Qualität, Geschmack und Leistung auch anderen Kunden und Besuchern nahe zu bringen. Der bester Weg ist somit, durch Ihre Erfahrung.'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_FIRST', 'Ihr letzter Einkauf war am'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_TWO', 'ist länger als'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_THREE', 'Tage her.'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_FOUR', 'Es ist uns sehr wichtig, unsere Qualität, Geschmack und Leistung auch anderen Kunden und Besuchern nahe zu bringen. Der bester Weg ist somit, durch Ihre Erfahrung.'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_FIVE', 'Aus diesem Grund, würden wir uns über'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_FIVE_ONE', ' Bewertung, von Ihnen, sehr freuen.'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_FIVE_TWO', 'Bewertungen, von Ihnen, sehr freuen.'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_SIX', 'Aus diesem Grund, würden wir uns über eine Bewertung, für die restlichen von Ihnen erworbenen Produkte, sehr freuen.'); define('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_BUTTON_FOR_REVIEWS', 'zu den Produktbewertungen'); ?> catalog/includes/modules/content/index/cm_i_customer_reviews_info.php
    <?php class cm_i_customer_reviews_info { var $code; var $group; var $title; var $description; var $sort_order; var $enabled = false; function __construct() { $this->code = get_class($this); $this->group = basename(dirname(__FILE__)); $this->title = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MESAGE_TITLE; $this->description = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MESAGE_DESCRIPTION; if ( defined('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MESAGE_STATUS') ) { $this->sort_order = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MESAGE_SORT_ORDER; $this->enabled = (MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MESAGE_STATUS == 'True'); } } function execute() { global $oscTemplate, $customer_id, $languages_id, $name, $lastname, $gender, $nullcount ; $name = tep_customers_first_name($customer_id); $lastname = tep_customers_last_name($customer_id); $gender = tep_customers_gender($customer_id); ob_start(); include('includes/modules/content/' . $this->group . '/templates/tpl_' . basename(__FILE__)); $template = ob_get_clean(); $oscTemplate->addContent($template, $this->group); } function isEnabled() { return $this->enabled; } function check() { return defined('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MESAGE_STATUS'); } function install() { tep_db_query("insert into configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('Bewertungserinnerung freischalten:', 'MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MESAGE_STATUS', 'True', 'Mchten Sie das Modul für Bewertungserinnerung freischalten?', '6', '1', 'tep_cfg_select_option(array(\'True\', \'False\'), ', now())"); tep_db_query("insert into configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, set_function, date_added) values ('--------------------------------------------------<br>Produktanzahl frei schalten:', 'MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_OPEN_PRODUCTS_FOR_REMEMBER', 'Produktanzahl', 'Mchten Sie, dass die Erinnerung nach Produktanzahl oder Datum eingeblendet werden soll?', '6', '1', 'tep_cfg_select_option(array(\'Produktanzahl\', \'Datum\'), ', now())"); tep_db_query("insert into configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Produktanzahl:', 'MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_PRODUCTS_FOR_REMEMBER', '25', 'Anzahl der Produkte ab der die Erinnerung eingeblendet werden soll.', '6', '0', now())"); tep_db_query("insert into configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('Tagesanzahl:', 'MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATE_FOR_REMEMBER', '5', 'Anzahl der Tage nach dem letzten Kauf ab der die Erinnerung eingeblendet werden soll.', '6', '0', now())"); tep_db_query("insert into configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('--------------------------------------------------<br>Mindestbewertungen:', 'MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_PRODUCTS_MIN', '7', 'Anzahl der Mindestbewertungen die der Kunde schreiben muss bevor die Erinnerung nicht mehr eingeblendet wird. Bleibt das Feld leer wird die Mindestanzahl aus gekauften Produkten minus Mindestprodukte gerechnet..', '6', '0', now())"); tep_db_query("insert into configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) values ('--------------------------------------------------<br>Sort Order:', 'MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MESAGE_SORT_ORDER', '10', 'Sort order of display. Lowest is displayed first.', '6', '0', now())"); } function remove() { tep_db_query("delete from configuration where configuration_key in ('" . implode("', '", $this->keys()) . "')"); } function keys() { return array('MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MESAGE_STATUS', 'MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_OPEN_PRODUCTS_FOR_REMEMBER', 'MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_PRODUCTS_FOR_REMEMBER', 'MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATE_FOR_REMEMBER', 'MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_PRODUCTS_MIN', 'MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MESAGE_SORT_ORDER'); } } catalog/includes/modules/content/index/templates/tpl_cm_i_customer_reviews_info.php
    <?php if (isset($_SESSION['customer_id'])){?> <?php $customer_total_prod_query = tep_db_query("select o.customers_id, o.date_purchased, op.products_name, op.products_id from " . TABLE_PRODUCTS . " p, " . TABLE_ORDERS . " o, " . TABLE_ORDERS_PRODUCTS . " op, " . TABLE_ORDERS_STATUS . " s where o.customers_id = '" . $_SESSION['customer_id'] . "' and p.products_id = op.products_id and o.orders_id = op.orders_id and o.orders_status = s.orders_status_id and p.products_status = '1' and o.orders_status = '1' and s.public_flag = '1' group by op.products_id order by o.date_purchased DESC"); if (tep_db_num_rows($customer_total_prod_query) > '0'){ $customer_all_prod_query = tep_db_query("select o.customers_id, op.products_name, op.products_id from " . TABLE_ORDERS . " o, " . TABLE_ORDERS_PRODUCTS . " op, " . TABLE_ORDERS_STATUS . " s where o.customers_id = '" . $_SESSION['customer_id'] . "' and o.orders_id = op.orders_id and o.orders_status = s.orders_status_id and s.language_id = '" . (int)$languages_id . "' and s.public_flag = '1' group by op.products_name order by op.products_name ASC"); $reviewed_count_query = tep_db_query("select count(products_id) as count from reviews where customers_id = '" . $_SESSION['customer_id'] . "'"); $reviewed_count = tep_db_fetch_array($reviewed_count_query); $count = $reviewed_count['count']; if (empty(MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_PRODUCTS_MIN)){$min_count = tep_db_num_rows($customer_total_prod_query) - MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_PRODUCTS_FOR_REMEMBER;} if (!empty(MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_PRODUCTS_MIN)){$min_count = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_PRODUCTS_MIN - $count;} if ($count == '0'){ $nullcount = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_TWO_ONE;} if ($min_count == '0'){ $revmincount = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_SIX;} if ($min_count == '1'){ $revmincount = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_FIVE_ONE;} if ($min_count > '1'){ $revmincount = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_FIVE_TWO;} if (MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_OPEN_PRODUCTS_FOR_REMEMBER == 'Produktanzahl'){ if ((MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_OPEN_PRODUCTS_FOR_REMEMBER == 'Produktanzahl') && (empty(MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_PRODUCTS_MIN))){ if (tep_db_num_rows($customer_total_prod_query) > MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_PRODUCTS_FOR_REMEMBER){ $customer_total_prod = tep_db_fetch_array($customer_total_prod_query); $customer_gender_query = tep_db_query("select customers_gender from " . TABLE_CUSTOMERS . " where customers_id = '" . $_SESSION['customer_id'] . "'"); $customer_gender = tep_db_fetch_array($customer_gender_query); ?> <?php if ($customer_gender['customers_gender'] == 'm') {$cu_gender = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MR . ' ' . $lastname . ', ';}?> <?php if ($customer_gender['customers_gender'] == 'f') {$cu_gender = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MRS . ' ' . $lastname . ', ';}?> <?php if (empty($customer_gender['customers_gender'])) {$cu_gender = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO . ' ' . $name . ', ';}?> <div class="col-sm-12 w3-padding mb-2"> <header class="w3-red w3-padding"><div class="w3-text-white w3-large"><?php echo MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_HEADING_TITLE;?></div></header> <div class="w3-border w3-bottombar w3-border-red w3-padding"> <?php echo $cu_gender . ' ' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_FIRST . ' ' . tep_db_num_rows($customer_all_prod_query) . ' ' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_TWO . ' ' . $nullcount . ' ' . $count . ' ' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_THREE . '<br>' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_FOUR . '<br>' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_FIVE . ' ' . $min_count . ' ' . $revmincount;?> <div class="mt-3"> <a rel="preconnect" href='<?php echo tep_href_link('account.php'); ?>' class="btn btn-info btn-block w3-border w3-border-black w3-text-black w3-hover-text-white" role="button"><i class="fa fa-star w3-text-yellow w3-large" style="text-shadow: 1px 0 #fff, 0 -1px transparent, -1px 0 #fff, 0 1px #fff"></i> <?php echo MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_BUTTON_FOR_REVIEWS; ?></a> </div> <div class="clearfix"></div></div></div> <?php }}?> <?php if ((MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_OPEN_PRODUCTS_FOR_REMEMBER == 'Produktanzahl') && (!empty(MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_PRODUCTS_MIN))){ $customer_total_prod = tep_db_fetch_array($customer_total_prod_query); $customer_gender_query = tep_db_query("select customers_gender from " . TABLE_CUSTOMERS . " where customers_id = '" . $_SESSION['customer_id'] . "'"); $customer_gender = tep_db_fetch_array($customer_gender_query); ?> <?php if ($customer_gender['customers_gender'] == 'm') {$cu_gender = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MR . ' ' . $lastname . ', ';}?> <?php if ($customer_gender['customers_gender'] == 'f') {$cu_gender = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MRS . ' ' . $lastname . ', ';}?> <?php if (empty($customer_gender['customers_gender'])) {$cu_gender = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO . ' ' . $name . ', ';}?> <div class="col-sm-12 w3-padding mb-2"> <header class="w3-red w3-padding"><div class="w3-text-white w3-large"><?php echo MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_HEADING_TITLE;?></div></header> <div class="w3-border w3-bottombar w3-border-red w3-padding"> <?php echo $cu_gender . ' ' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_FIRST . ' ' . tep_db_num_rows($customer_all_prod_query) . ' ' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_TWO . ' ' . $nullcount . ' ' . $count . ' ' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_THREE . '<br>' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_FOUR . '<br>' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_FIVE . ' ' . $min_count . ' ' . $revmincount;?> <div class="mt-3"> <a rel="preconnect" href='<?php echo tep_href_link('account.php'); ?>' class="btn btn-info btn-block w3-border w3-border-black w3-text-black w3-hover-text-white" role="button"><i class="fa fa-star w3-text-yellow w3-large" style="text-shadow: 1px 0 #fff, 0 -1px transparent, -1px 0 #fff, 0 1px #fff"></i> <?php echo MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_BUTTON_FOR_REVIEWS; ?></a> </div> <div class="clearfix"></div></div></div> <?php }?> <?php }else{?> <?php if (empty(MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_PRODUCTS_MIN)){ $customer_total_prod = tep_db_fetch_array($customer_total_prod_query); $customer_purchased_date_query = tep_db_query("select date_purchased as datum from " . TABLE_ORDERS . " where customers_id = '" . $_SESSION['customer_id'] . "' order by date_purchased DESC"); $customer_purchased_date = tep_db_fetch_array($customer_purchased_date_query); $current_date = date('Y-m-d'); $purchased_date = $customer_purchased_date['datum']; $new_date = date('Y-m-d', strtotime($purchased_date . '+ ' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATE_FOR_REMEMBER . ' days')); if ($current_date >= $new_date){ if (tep_db_num_rows($customer_total_prod_query) > MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_PRODUCTS_FOR_REMEMBER){ $customer_total_prod_query = tep_db_query("select o.customers_id, o.date_purchased, op.products_name, op.products_id from " . TABLE_PRODUCTS . " p, " . TABLE_ORDERS . " o, " . TABLE_ORDERS_PRODUCTS . " op, " . TABLE_ORDERS_STATUS . " s where o.customers_id = '" . $_SESSION['customer_id'] . "' and p.products_id = op.products_id and o.orders_id = op.orders_id and o.orders_status = s.orders_status_id and p.products_status = '1' and o.orders_status = '1' and s.public_flag = '1' order by o.date_purchased DESC"); if (tep_db_num_rows($customer_total_prod_query) > '0'){ $customer_total_prod = tep_db_fetch_array($customer_total_prod_query); ?> <div class="col-sm-12 w3-padding mb-2"> <header class="w3-red w3-padding"><div class="w3-text-white w3-large"><?php echo MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_HEADING_TITLE;?></div></header> <div class="w3-border w3-bottombar w3-border-red w3-padding"> <?php $customer_gender_query = tep_db_query("select customers_gender from " . TABLE_CUSTOMERS . " where customers_id = '" . $_SESSION['customer_id'] . "'"); $customer_gender = tep_db_fetch_array($customer_gender_query); ?> <?php if ($customer_gender['customers_gender'] == 'm') {$cu_gender = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MR . ' ' . $lastname . ', ';}?> <?php if ($customer_gender['customers_gender'] == 'f') {$cu_gender = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MRS . ' ' . $lastname . ', ';}?> <?php if (empty($customer_gender['customers_gender'])) {$cu_gender = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO . ' ' . $name . ', ';}?> <?php echo $cu_gender . ' ' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_FIRST . ' ' . tep_date_short($customer_total_prod['date_purchased']) . '<br>' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_FIRST . ' ' . tep_db_num_rows($customer_all_prod_query) . ' ' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_TWO . ' ' . $nullcount . ' ' . $count . ' ' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_THREE . '<br>' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_FOUR . '<br>' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_FIVE . ' ' . $min_count . ' ' . $revmincount; ?> <div class="mt-3"> <a rel="preconnect" href='<?php echo tep_href_link('account.php'); ?>' class="btn btn-info btn-block w3-border w3-border-black w3-text-black w3-hover-text-white" role="button"><i class="fa fa-star w3-text-yellow w3-large" style="text-shadow: 1px 0 #fff, 0 -1px transparent, -1px 0 #fff, 0 1px #fff"></i> <?php echo MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_BUTTON_FOR_REVIEWS; ?></a> </div> <div class="clearfix"></div></div></div> <?php }}}?> <?php }?> <?php if (!empty(MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_PRODUCTS_MIN)){ $customer_total_prod = tep_db_fetch_array($customer_total_prod_query); $customer_purchased_date_query = tep_db_query("select date_purchased as datum from " . TABLE_ORDERS . " where customers_id = '" . $_SESSION['customer_id'] . "' order by date_purchased DESC"); $customer_purchased_date = tep_db_fetch_array($customer_purchased_date_query); $current_date = date('Y-m-d'); $purchased_date = $customer_purchased_date['datum']; $new_date = date('Y-m-d', strtotime($purchased_date . '+ ' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATE_FOR_REMEMBER . ' days')); if ($current_date >= $new_date){ $customer_total_prod_query = tep_db_query("select o.customers_id, o.date_purchased, op.products_name, op.products_id from " . TABLE_PRODUCTS . " p, " . TABLE_ORDERS . " o, " . TABLE_ORDERS_PRODUCTS . " op, " . TABLE_ORDERS_STATUS . " s where o.customers_id = '" . $_SESSION['customer_id'] . "' and p.products_id = op.products_id and o.orders_id = op.orders_id and o.orders_status = s.orders_status_id and p.products_status = '1' and o.orders_status = '1' and s.public_flag = '1' order by o.date_purchased DESC"); if (tep_db_num_rows($customer_total_prod_query) > '0'){ $customer_total_prod = tep_db_fetch_array($customer_total_prod_query); ?> <div class="col-sm-12 w3-padding mb-2"> <header class="w3-red w3-padding"><div class="w3-text-white w3-large"><?php echo MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_HEADING_TITLE;?></div></header> <div class="w3-border w3-bottombar w3-border-red w3-padding"> <?php $customer_gender_query = tep_db_query("select customers_gender from " . TABLE_CUSTOMERS . " where customers_id = '" . $_SESSION['customer_id'] . "'"); $customer_gender = tep_db_fetch_array($customer_gender_query); ?> <?php if ($customer_gender['customers_gender'] == 'm') {$cu_gender = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MR . ' ' . $lastname . ', ';}?> <?php if ($customer_gender['customers_gender'] == 'f') {$cu_gender = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_MRS . ' ' . $lastname . ', ';}?> <?php if (empty($customer_gender['customers_gender'])) {$cu_gender = MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO . ' ' . $name . ', ';}?> <?php echo $cu_gender . ' ' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_FIRST . ' ' . tep_date_short($customer_total_prod['date_purchased']) . '.<br>' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_FIRST . ' ' . tep_db_num_rows($customer_all_prod_query) . ' ' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_TWO . ' ' . $nullcount . ' ' . $count . ' ' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_TO_CUSTOMER_THREE . '<br>' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_FOUR . '<br>' . MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_DATA_TO_CUSTOMER_FIVE . ' ' . $min_count . ' ' . $revmincount; ?> <div class="mt-3"> <a rel="preconnect" href='<?php echo tep_href_link('account.php'); ?>' class="btn btn-info btn-block w3-border w3-border-black w3-text-black w3-hover-text-white" role="button"><i class="fa fa-star w3-text-yellow w3-large" style="text-shadow: 1px 0 #fff, 0 -1px transparent, -1px 0 #fff, 0 1px #fff"></i> <?php echo MODULE_CONTENT_I_CUSTOMER_REVIEWS_INFO_BUTTON_FOR_REVIEWS; ?></a> </div> <div class="clearfix"></div></div></div> <?php }}}?> <?php }?> <?php }}?> catalog/includes/functions/general.php
    before the last ?>
    function tep_customers_gender($customers_id) { $customers = tep_db_query("select customers_gender from " . TABLE_CUSTOMERS . " where customers_id = '" . (int)$customers_id . "'"); $customers_values = tep_db_fetch_array($customers); if (isset($customers_values['customers_gender']) == 'm') { $gender_output = MALE; } elseif (isset($customers_values['customers_gender']) == 'f') { $gender_output = FEMALE; } else { $gender_output = ''; } return $gender_output; } function tep_customers_first_name($customers_id) { $customers = tep_db_query("select customers_firstname from " . TABLE_CUSTOMERS . " where customers_id = '" . (int)$customers_id . "'"); $customers_values = tep_db_fetch_array($customers); if (isset($customers_values['customers_firstname'])){ return $customers_values['customers_firstname']; } } function tep_customers_last_name($customers_id) { $customers = tep_db_query("select customers_lastname from " . TABLE_CUSTOMERS . " where customers_id = '" . (int)$customers_id . "'"); $customers_values = tep_db_fetch_array($customers); if (isset($customers_values['customers_lastname'])){ return $customers_values['customers_lastname']; } } catalog/includes/languages/xxx.php
    define('MALE', 'Herr'); define('FEMALE', 'Frau'); Only in German.
  5. Thanks
    YePix reacted to Hotclutch in W3 osCommerce WIP   
    <span class="pull-right"> pull-right is deprecated now in BS4/5, should be float-end.
  6. Thanks
    YePix got a reaction from Hotclutch in W3 osCommerce WIP   
    Product rating for products already purchased
    Here customers can see all the products they have already purchased, which can be rated with just one click. All products that have already been rated are then displayed below.
    catalog/includes/languages/xxx/account.php
    define('MY_ACCOUNT_PRODUCTS_REVIEWED', 'Bereits bewertete Produkte'); define('MY_ACCOUNT_REVIEW_NOW_PRODUCTS', 'Offen stehende Bewertungen'); define('MY_ACCOUNT_REVIEW_PRODUCTS_LG_MD', 'Jetzt bewerten'); define('MY_ACCOUNT_REVIEW_PRODUCTS_SM_XS', ''); define('MY_ACCOUNT_REVIEW_PRODUCTS_TODAY_NO_AVALIABLE_HEADER_INFO', 'Alle Produkte, markiert mit <span class="w3-border w3-border-red w3-white w3-padding-small"><i class="fa fa-minus-circle w3-text-red"></i></span>, sind heute nicht verfügbar.');  
    catalog/account.php
    <?php $customer_total_prod_query = tep_db_query("select o.customers_id, op.products_name, op.products_id from " . TABLE_ORDERS . " o, " . TABLE_ORDERS_PRODUCTS . " op, " . TABLE_ORDERS_STATUS . " s where o.customers_id = '" . $_SESSION['customer_id'] . "' and o.orders_id = op.orders_id and o.orders_status = s.orders_status_id and s.language_id = '" . (int)$languages_id . "' and s.public_flag = '1' group by op.products_name order by op.products_name ASC"); if (tep_db_num_rows($customer_total_prod_query) > 0) { ?> <header class="w3-camo-forest w3-padding w3-xlarge"><?php echo MY_ACCOUNT_REVIEW_NOW_PRODUCTS;?></header> <div class="w3-border mb-4"><div class="clearfix"></div><hr class="hr-trans mb-1 mt-2"> <div class="w3-padding"><div class="w3-border w3-border-red w3-padding mb-2 w3-text-red w3-pale-red"><?php echo MY_ACCOUNT_REVIEW_PRODUCTS_TODAY_NO_AVALIABLE_HEADER_INFO;?></div><div class="clearfix"></div><hr class="hr-gr mb-1 mt-1"></div> <?php $query_allready_rows = ''; $customer_reviews_query = tep_db_query("select o.customers_id, op.products_name, op.products_id from " . TABLE_ORDERS . " o, " . TABLE_ORDERS_PRODUCTS . " op, " . TABLE_ORDERS_STATUS . " s where o.customers_id = '" . $_SESSION['customer_id'] . "' and o.orders_id = op.orders_id and o.orders_status = s.orders_status_id and s.language_id = '" . (int)$languages_id . "' and s.public_flag = '1' group by op.products_name order by op.products_name ASC"); while ($customer_reviews = tep_db_fetch_array($customer_reviews_query)){ $query_allready_rows++; if (strlen($query_allready_rows) < 1) { $query_allready_rows = '0' . $query_allready_rows; } $products_revd_status_query = tep_db_query("select products_status from products where products_id = '" . $customer_reviews['products_id'] . "'"); $products_revd_status = tep_db_fetch_array($products_revd_status_query); $query_allready = tep_db_query("select reviews_id from reviews where products_id = '" . (int)$customer_reviews['products_id'] . "' AND customers_id = '" . (int)$_SESSION['customer_id'] . "'"); if (tep_db_num_rows($query_allready) > 0) { $error = true; }else{ ?> <div class="col-sm-6"> <?php $printlist_category_query = tep_db_query("select c.categories_id, c.categories_product_qty, c.category_stock_status, c.category_stock_info_status, c.cat_stock_att_image, cd.categories_id, cd.categories_name, cd.categories_stock, cd.categories_stock_alternatively, cd.categories_stock_replacement from products p, categories c, categories_description cd, products_to_categories pc where p.products_id = '" . $customer_reviews['products_id'] . "' and p.products_id = pc.products_id and pc.categories_id = cd.categories_id and cd.categories_id = c.categories_id and cd.language_id = '" . (int)$languages_id . "'"); $printlist_category = tep_db_fetch_array($printlist_category_query); ?> <?php if ($products_revd_status['products_status'] == '1'){?> <div class="mb-1 mt-1 w3-padding w3-border w3-border-red w3-sand"> <?php }else{?> <div class="mb-1 mt-1 w3-padding w3-border w3-border-red w3-pale-red"> <?php } if ($products_revd_status['products_status'] == '1'){?> <a rel="preconnect" itemprop="url" href="<?php echo tep_href_link('product_info.php', 'products_id=' . $customer_reviews['products_id']); ?>"><?php echo $query_allready_rows . ' ' . $customer_reviews['products_name'];?></a> <?php }else{?> <span class="w3-text-red"><?php echo $query_allready_rows . ' ' . $customer_reviews['products_name'];?></span> <?php }?> <?php if ($products_revd_status['products_status'] == '1'){?> <span class="pull-right hidden-xs hidden-sm"><?php echo tep_draw_button(MY_ACCOUNT_REVIEW_PRODUCTS_LG_MD, 'fa fa-pencil-alt', tep_href_link('product_reviews_write.php', 'products_id=' . $customer_reviews['products_id']), 'primary', NULL, 'btn btn-info btn-xs'); ?></span> <span class="pull-right hidden-md hidden-lg"><?php echo tep_draw_button(MY_ACCOUNT_REVIEW_PRODUCTS_SM_XS, 'fa fa-pencil-alt', tep_href_link('product_reviews_write.php', 'products_id=' . $customer_reviews['products_id']), 'primary', NULL, 'btn btn-info btn-xs'); ?></span> <?php }else{?> <span class="pull-right"><span class="w3-border w3-border-red w3-white w3-padding-small"><i class="fa fa-minus-circle w3-text-red"></i></span></span> <?php }?> </div> </div> <?php } }?> <div class="clearfix"></div><hr class="hr-trans mb-2 mt-1"> </div> <?php }?> <?php $customer_no_reviews_prod_query = tep_db_query("select o.customers_id, op.products_name, op.products_id from " . TABLE_ORDERS . " o, " . TABLE_ORDERS_PRODUCTS . " op, " . TABLE_ORDERS_STATUS . " s where o.customers_id = '" . $_SESSION['customer_id'] . "' and o.orders_id = op.orders_id and o.orders_status = s.orders_status_id and s.language_id = '" . (int)$languages_id . "' and s.public_flag = '1' group by op.products_name order by op.products_name ASC"); $customer_no_reviews_prod = tep_db_fetch_array($customer_no_reviews_prod_query); $query_allready_prod_reviewed = tep_db_query("select reviews_id from reviews where products_id = '" . (int)$customer_no_reviews_prod['products_id'] . "' AND customers_id = '" . (int)$_SESSION['customer_id'] . "'"); if (tep_db_num_rows($query_allready_prod_reviewed) > 0) { ?> <header class="w3-camo-forest w3-padding w3-xlarge"><?php echo MY_ACCOUNT_PRODUCTS_REVIEWED;?></header> <div class="w3-border mb-4"><div class="clearfix"></div><hr class="hr-trans mb-2 mt-2"> <?php $query_no_allready_rows = ''; $customer_no_reviews_query = tep_db_query("select o.customers_id, op.products_name, op.products_id from " . TABLE_ORDERS . " o, " . TABLE_ORDERS_PRODUCTS . " op, " . TABLE_ORDERS_STATUS . " s where o.customers_id = '" . $_SESSION['customer_id'] . "' and o.orders_id = op.orders_id and o.orders_status = s.orders_status_id and s.language_id = '" . (int)$languages_id . "' and s.public_flag = '1' group by op.products_name order by op.products_name ASC"); while ($customer_no_reviews = tep_db_fetch_array($customer_no_reviews_query)){ $query_no_allready_rows++; if (strlen($query_no_allready_rows) < 1) { $query_no_allready_rows = '0' . $query_no_allready_rows; } $products_status_query = tep_db_query("select products_status from products where products_id = '" . $customer_no_reviews['products_id'] . "'"); $products_status = tep_db_fetch_array($products_status_query); $query_allready_reviewed = tep_db_query("select reviews_id from reviews where products_id = '" . (int)$customer_no_reviews['products_id'] . "' AND customers_id = '" . (int)$_SESSION['customer_id'] . "'"); if (tep_db_num_rows($query_allready_reviewed) > 0) { while ($allready_reviewed = tep_db_fetch_array($query_allready_reviewed)){ ?> <div class="col-sm-6"> <?php if ($products_status['products_status'] == '1'){?> <div class="mb-1 mt-1 w3-padding w3-border w3-border-green w3-food-pistachio"> <?php }else{?> <div class="mb-1 mt-1 w3-padding w3-border w3-border-red w3-pale-red"> <?php }?> <?php $printlist_norev_category_query = tep_db_query("select c.categories_id, c.categories_product_qty, c.category_stock_status, c.category_stock_info_status, c.cat_stock_att_image, cd.categories_id, cd.categories_name, cd.categories_stock, cd.categories_stock_alternatively, cd.categories_stock_replacement from products p, categories c, categories_description cd, products_to_categories pc where p.products_id = '" . $customer_no_reviews['products_id'] . "' and p.products_id = pc.products_id and pc.categories_id = cd.categories_id and cd.categories_id = c.categories_id and cd.language_id = '" . (int)$languages_id . "'"); $printlist_norev_category = tep_db_fetch_array($printlist_norev_category_query); ?> <?php if ($products_status['products_status'] == '1'){?> <a rel="preconnect" itemprop="url" href="<?php echo tep_href_link('product_info.php', 'products_id=' . $customer_no_reviews['products_id']); ?>"><?php echo $query_no_allready_rows . ' ' . $customer_no_reviews['products_name'];?></a></a> <?php }else{?> <span class="w3-text-red"><?php echo $query_no_allready_rows . ' ' . $customer_no_reviews['products_name'];?></span> <?php }?> <span class="pull-right"> <a rel="preconnect" itemprop="url" href="<?php echo tep_href_link('product_reviews.php', 'products_id=' . $customer_no_reviews['products_id']); ?>"> <?php if ($products_status['products_status'] == '1'){?> <span class="w3-border w3-border-green w3-hover-border-black w3-white w3-padding-small"><i class="fa fa-check w3-text-green w3-hover-text-black"></i></span> <?php }else{?> <span class="w3-border w3-border-red w3-hover-border-black w3-white w3-padding-small"><i class="fa fa-minus-circle w3-text-red w3-hover-text-black"></i></span> <?php }?> </a></span> </div> </div> <?php } } }?> <div class="clearfix"></div><hr class="hr-trans mb-2 mt-1"> </div> <?php }?>  
  7. Thanks
    YePix got a reaction from Hotclutch in W3 osCommerce WIP   
    I wrote something useful for users of this version. Saving the emails from the file contact_us.php in the database and the possibility to answer them from the admin area.
    contact_us.php
    find:
    require('includes/application_top.php'); require('includes/languages/' . $language . '/contact_us.php'); add after:
    $account = array();$name = '';$email = '';$phone = ''; if (isset($_SESSION['customer_id'])) { $account_query = tep_db_query("select c.customers_id" . " FROM " . TABLE_CUSTOMERS . " c, " . TABLE_ADDRESS_BOOK . " ab " . " WHERE c.customers_id = '" . (int)$customer_id . "'" . " AND ab.address_book_id = c.customers_default_address_id"); $account = tep_db_fetch_array($account_query); $customer_id = $account['customers_id']; } find:
    tep_redirect(tep_href_link('contact_us.php', 'action=success')); add bevore:
    if (!empty($customer_id)){$cus_id = $customer_id;}else{$cus_id = '0';} tep_db_query("insert into contact_us ( customers_id, name, email, enquiry, date) VALUES ( '" . $cus_id . "', '" . tep_db_input($name) . "', '" . $email_address . "', '" . tep_db_input($enquiry) . "', Now())");  
    ********************
    SQL - contact_us
     
    CREATE TABLE `contact_us` ( `email_id` int NOT NULL, `customers_id` text NOT NULL, `name` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8_turkish_ci NOT NULL, `email` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8_unicode_ci NOT NULL, `enquiry` longtext CHARACTER SET utf8mb3 COLLATE utf8_unicode_ci NOT NULL, `date` datetime DEFAULT NULL, `status` int NOT NULL, `adminenquiry` longtext NOT NULL, `senddate` datetime NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3; ALTER TABLE `contact_us` ADD PRIMARY KEY (`email_id`); ALTER TABLE `contact_us` MODIFY `email_id` int NOT NULL AUTO_INCREMENT; COMMIT; add to:
    catalog/admin/includes/languages/german.php
    define('BOX_CUSTOMERS_EMAILS_HEADING', 'Kundenanfragen');
    ############################
    catalog/admin/includes/boxes/customers.php
           array(
            'code' => 'customers_email.php',
            'title' => BOX_CUSTOMERS_EMAILS_HEADING,
            'link' => tep_href_link('customers_email.php')
          ),      
    ############################
    New files:
    catalog/admin/includes/languages/german/customers_email.php
    <?php define('CUSTOMERS_EMAIL_HEADING_TITLE', 'Kundenemails'); define('CUSTOMERS_EMAIL_CUSTOMER_NAME', 'Kundenname'); define('CUSTOMERS_EMAIL_CUSTOMER_GUEST', 'Gast'); define('CUSTOMERS_EMAIL_CUSTOMER_MAIL_ID', 'E-Mail ID'); define('CUSTOMERS_EMAIL_CUSTOMER_ID', 'Kundennummer'); define('CUSTOMERS_EMAIL_CUSTOMER_EMAIL', 'E-Mail'); define('CUSTOMERS_EMAIL_CUSTOMER_PHONE', 'Telefonnummer'); define('CUSTOMERS_EMAIL_CUSTOMER_SUBJECT', 'Betreff'); define('CUSTOMERS_EMAIL_CUSTOMER_ENQUIRY', 'Kundenanfrage'); define('CUSTOMERS_EMAIL_CUSTOMER_ADMIN_ENQUIRY', 'Gesendete Antwort'); define('CUSTOMERS_EMAIL_CUSTOMER_DATE', 'Anfragedatum'); define('CUSTOMERS_EMAIL_CUSTOMER_STATUS', 'Status'); define('CUSTOMERS_EMAIL_TEXT_DISPLAY_NUMBER_OF_STOCKLABEL', 'Kunden und Besucheremails'); define('CUSTOMERS_EMAIL_SEND_MAIL', 'Kundenanfrage beantworten'); define('CUSTOMERS_EMAIL_SEND_STATUS_EDIT', 'Antwort umwiderruflich senden'); define('CUSTOMERS_EMAIL_SEND_STATUS_SEND', 'Status aktualisieren'); define('CUSTOMERS_EMAIL_SEND_STATUS_SEND_OK', 'Gesendet an'); define('CUSTOMERS_EMAIL_STATUS_ON', 'Aktiv'); define('CUSTOMERS_EMAIL_STATUS_OFF', 'Gelesen'); define('CUSTOMERS_EMAIL_STATUS_SEND_TO_CUSTOMER', 'E-Mail gesendet'); define('CUSTOMERS_EMAIL_STATUS_SEND_TO_CUSTOMER_OVER', 'E-Mail wurde bereits gesendet'); define('CUSTOMERS_EMAIL_STATUS_SEND_TO_CUSTOMER_CLOSE', 'Schliessen'); define('CUSTOMERS_EMAIL_STATUS_BUTTON_SHOW_EDIT', 'Details ansehen'); define('CUSTOMERS_EMAIL_STATUS_TEXT_DELETE_INTRO', 'Löschen'); define('CUSTOMERS_EMAIL_STATUS_TEXT_EDIT_INTRO', 'Bearbeiten'); define('CUSTOMERS_EMAIL_BUTTON_RETURN_TO_CUSTOMER', 'Auf E-Mail antworten'); define('CUSTOMERS_EMAIL_BUTTON_INDEX', 'Weiter zu Startseite'); define('CUSTOMERS_EMAIL_SENT_EMAIL_SUBJECT', 'Antwort auf Ihre Anfrage'); define('CUSTOMERS_EMAIL_SENT_EMAIL_TO_CUSTOMER_HEADING', 'Antwort auf Ihre Anfrage mit dem Betreff'); define('CUSTOMERS_EMAIL_TEXT_EMAIL_SEPARATOR', '<span class="small"><br>---------------------------<br></span>'); define('CUSTOMERS_EMAIL_TEXT_EMAIL_SIGNATURE_CR', '<br><span class="small"><a href="'. tep_href_link('../' . 'index.php') . '">' . STORE_NAME . '</a>' . '<br>' . STORE_ADDRESS . '<br>E-Mail: ' . STORE_OWNER_EMAIL_ADDRESS . '<br></span>'); ?> catalog/admin/customers_email.php
    <?php require('includes/application_top.php'); $action = (isset($_GET['action']) ? $_GET['action'] : ''); $status_array = array(array('id'=>'0', 'text'=>CUSTOMERS_EMAIL_STATUS_ON), array('id'=>'1', 'text'=>CUSTOMERS_EMAIL_STATUS_OFF), array('id'=>'2', 'text'=>CUSTOMERS_EMAIL_STATUS_SEND_TO_CUSTOMER)); if (tep_not_null($action)) { switch ($action) { case 'insert': case 'save': if (isset($_GET['emID'])) $email_id = tep_db_prepare_input($_GET['emID']); $status = tep_db_prepare_input($_POST['status']); $adminenquiry = tep_db_prepare_input($_POST['adminenquiry']); $sql_data_array = array( 'status' => $status, 'adminenquiry' => $adminenquiry ); if ($action == 'insert') { $sql_data_array = array_merge($sql_data_array); tep_db_perform('contact_us', $sql_data_array); tep_db_query("update contact_us set status = '1' where email_id = '" . (int)$email_id . "'"); $email_id = tep_db_insert_id(); } elseif ($action == 'save') { $sql_data_array = $sql_data_array; tep_db_perform('contact_us', $sql_data_array, 'update', "email_id = '" . (int)$email_id . "'"); tep_db_query("update contact_us set status = '1' where email_id = '" . (int)$email_id . "'"); } if (USE_CACHE == 'true') { tep_reset_cache_block('email_labels'); } tep_redirect(tep_href_link('customers_email.php', (isset($_GET['page']) ? 'page=' . $_GET['page'] . '&' : '') . 'emID=' . $email_id)); break; case 'sendmail': if (isset($_GET['emID'])) $email_id = tep_db_prepare_input($_GET['emID']); tep_db_query("update contact_us set senddate = now() where email_id = '" . (int)$email_id . "'"); tep_db_query("update contact_us set status = '2' where email_id = '" . (int)$email_id . "'"); if (USE_CACHE == 'true') { tep_reset_cache_block('email_labels'); } tep_redirect(tep_href_link('customers_email.php', (isset($_GET['page']) ? 'page=' . $_GET['page'] . '&' : '') . 'emID=' . $email_id)); break; case 'deleteconfirm': $email_id = tep_db_prepare_input($_GET['emID']); tep_db_query("delete from contact_us where email_id = '" . (int)$email_id . "'"); $auto_increment_query = tep_db_query("select email_id from contact_us where email_id"); if (tep_db_num_rows($auto_increment_query) < '1'){ tep_db_query("ALTER TABLE contact_us AUTO_INCREMENT =1"); } if (USE_CACHE == 'true') { tep_reset_cache_block('email_labels'); } tep_redirect(tep_href_link('customers_email.php', 'page=' . $_GET['page'])); break; } } require('includes/template_top.php'); ?> <div class="w3-padding"> <h1 class="pageHeading"><?php echo CUSTOMERS_EMAIL_HEADING_TITLE; ?></h1> <div class="d-flex flex-column flex-sm-row mb-3"> <div class="flex-grow-1"> <table class="w3-table w3-border w3-bordered w3-hoverable"> <thead class="w3-hover-none"> <tr class="w3-theme"> <th scope="col"><?php echo CUSTOMERS_EMAIL_CUSTOMER_NAME; ?></th> <th scope="col" class="w3-center"><?php echo CUSTOMERS_EMAIL_CUSTOMER_MAIL_ID; ?></th> <th scope="col" class="w3-center"><?php echo CUSTOMERS_EMAIL_CUSTOMER_ID; ?></th> <th scope="col" class="w3-center"><?php echo CUSTOMERS_EMAIL_CUSTOMER_EMAIL; ?></th> <th scope="col" class="w3-center"><?php echo CUSTOMERS_EMAIL_CUSTOMER_DATE; ?></th> <th scope="col" class="w3-center"><?php echo CUSTOMERS_EMAIL_CUSTOMER_STATUS; ?></th> <th scope="col" class="w3-center"><?php echo ''; ?>&nbsp;</th> </tr> </thead> <tbody> <?php $email_query_raw = "select email_id, customers_id, name, email, phone, subject, enquiry, date, status, adminenquiry, senddate from contact_us order by email_id"; $email_split = new splitPageResults($_GET['page'], MAX_DISPLAY_SEARCH_RESULTS, $email_query_raw, $email_query_numrows); $email_query = tep_db_query($email_query_raw); while ($email = tep_db_fetch_array($email_query)) { $email_id = $email['email_id']; if ($email['customers_id'] > '0'){$cus_id = $email['customers_id'];}else{$cus_id = CUSTOMERS_EMAIL_CUSTOMER_GUEST;} if ((!isset($_GET['emID']) || (isset($_GET['emID']) && ($_GET['emID'] == $email['email_id']))) && !isset($emInfo) && (substr($action, 0, 3) != 'new')) { $emInfo = new objectInfo($email); } if (isset($emInfo) && is_object($emInfo) && ($email['email_id'] == $emInfo->email_id)) { echo ' <tr id="defaultSelected" class="dataTableRowSelected" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link('customers_email.php', 'page=' . $_GET['page'] . '&emID=' . $email['email_id'] . '&action=edit') . '\'">' . "\n"; } else { echo ' <tr class="dataTableRow" onmouseover="rowOverEffect(this)" onmouseout="rowOutEffect(this)" onclick="document.location.href=\'' . tep_href_link('customers_email.php', 'page=' . $_GET['page'] . '&emID=' . $email['email_id']) . '\'">' . "\n"; } ?> <td class="dataTableContent">&nbsp;<?php echo $email['name']; ?></td> <td class="dataTableContent w3-center">&nbsp;<?php echo $email['email_id']; ?></td> <td class="dataTableContent w3-center">&nbsp;<?php echo $cus_id; ?></td> <td class="dataTableContent w3-center"><?php echo $email['email']; ?></td> <td class="dataTableContent w3-center">&nbsp;<?php echo tep_date_short($email['date']);?></td> <td class="dataTableContent w3-center"><?php if ($email['status'] == '0'){ echo CUSTOMERS_EMAIL_STATUS_ON;} if ($email['status'] == '1'){ echo CUSTOMERS_EMAIL_STATUS_OFF;} if ($email['status'] == '2'){ echo CUSTOMERS_EMAIL_STATUS_SEND_TO_CUSTOMER;}?></td> <td class="dataTableContent w3-right-align"><?php if (isset($emInfo) && is_object($emInfo) && ($email['email_id'] == $emInfo->email_id)) { echo '<span class="fas fa-angle-right" style="font-size:20px;"></span>'; } else { echo '<a href="' . tep_href_link('customers_email.php', 'page=' . $_GET['page'] . '&emID=' . $emInfo->email_id) . '"><span title="' . IMAGE_ICON_INFO . '" class="fas fa-info-circle" style="font-size:20px;"></span></a>'; } ?>&nbsp;</td> </tr> <?php } ?> </tbody> </table> <div class="d-flex flex-column flex-sm-row justify-content-sm-between mb-3"> <div class="w3-small"><?php echo $email_split->display_count($email_query_numrows, MAX_DISPLAY_SEARCH_RESULTS, $_GET['page'], CUSTOMERS_EMAIL_TEXT_DISPLAY_NUMBER_OF_STOCKLABEL); ?></div> <div class="w3-small"><?php echo $email_split->display_links($email_query_numrows, MAX_DISPLAY_SEARCH_RESULTS, MAX_DISPLAY_PAGE_LINKS, $_GET['page']); ?></div> </div> <div class="d-flex flex-column flex-sm-row justify-content-sm-end mb-3"> </div> </div> <?php $heading = ''; $contents = ''; switch ($action) { case 'edit': $heading = $emInfo->name . '&nbsp;' . $emInfo->email; $contents = tep_draw_form('email_labels', 'customers_email.php', 'page=' . $_GET['page'] . '&emID=' . $emInfo->email_id . '&action=save', 'post', 'enctype="multipart/form-data"'); if ($emInfo->status == '2'){ $contents .= '<tr><td><div class="w3-border w3-border-red w3-black w3-padding mb-3">' . CUSTOMERS_EMAIL_STATUS_SEND_TO_CUSTOMER_OVER . '</div>'; }else{ if ($emInfo->status == '0'){ $contents .= '<tr><td><div class="mb-3">' . CUSTOMERS_EMAIL_CUSTOMER_STATUS . '<br />' . tep_draw_pull_down_menu('status', $status_array, $emInfo->status, 'class="w3-select w3-border w3-teal"') . '</div>'; }else{ $contents .= '<tr><td><div class="mb-3">' . CUSTOMERS_EMAIL_CUSTOMER_STATUS . '<br />' . tep_draw_pull_down_menu('status', $status_array, $emInfo->status, 'class="w3-select w3-border w3-red"') . '</div>'; } } $contents .= '<div class="mb-3">' . CUSTOMERS_EMAIL_CUSTOMER_ENQUIRY . '<br /><div class="w3-border w3-sand w3-padding mb-2">' . CUSTOMERS_EMAIL_CUSTOMER_SUBJECT . ': ' . $emInfo->subject . '<hr class="hr-gr mt-2 mb-2">' . $emInfo->enquiry . '</div></div>'; if ($emInfo->status == '2'){ $contents .= '<div class="mb-3">' . CUSTOMERS_EMAIL_CUSTOMER_ADMIN_ENQUIRY . '<br /><div class="w3-border w3-sand w3-padding mb-2">' . $emInfo->adminenquiry . '</div></div>'; }else{ $contents .= '<div class="mb-3">' . CUSTOMERS_EMAIL_SEND_MAIL . '<br>' . tep_draw_textarea_field('adminenquiry', 'soft', '60', '5', $emInfo->adminenquiry, 'class="w3-input w3-border"') . '</div></div>'; } if ($emInfo->status == '2'){ $contents .= '<hr class="hr-gr mt-2 mb-2"><div class="mb-3">' . tep_draw_w3_button(CUSTOMERS_EMAIL_STATUS_SEND_TO_CUSTOMER_CLOSE, 'fa fa-lock', tep_href_link('customers_email.php', 'page=' . $_GET['page'] . '&emID=' . $emInfo->email_id), null, null, 'class="w3-button w3-large w3-block w3-black"') . '</div>'; }else{ if ($emInfo->status == '0'){ $contents .= '<hr class="hr-gr mt-2 mb-2"><div class="mb-3 mt-3">' . tep_draw_w3_button(IMAGE_SAVE, 'fa fa-save', null, 'primary', null, 'class="w3-button w3-large w3-block w3-teal"') . '</div>'; }else{ $contents .= '<hr class="hr-gr mt-2 mb-2"><div class="mb-3 mt-3">' . tep_draw_w3_button(IMAGE_SAVE, 'fa fa-save', null, 'primary', null, 'class="w3-button w3-large w3-block w3-red"') . '</div>'; } $contents .= '<hr class="hr-gr mt-2 mb-2"><div class="mb-3">' . tep_draw_w3_button(IMAGE_CANCEL, 'fa fa-times', tep_href_link('customers_email.php', 'page=' . $_GET['page'] . '&emID=' . $emInfo->email_id), null, null, 'class="w3-button w3-large w3-block w3-theme-light"') . '</div>'; } $contents .= '</td></tr>'; $contents .= '</form>'; break; case 'send': $heading = CUSTOMERS_EMAIL_SEND_STATUS_SEND_OK . '&nbsp;' . $emInfo->email; $contents = '<tr><td>' . tep_draw_form('email_labels', 'customers_email.php', 'page=' . $_GET['page'] . '&emID=' . $emInfo->email_id . '&action=sendmail', 'post', 'enctype="multipart/form-data"'); $contents .= '<div class="mb-3">' . CUSTOMERS_EMAIL_CUSTOMER_ENQUIRY . '<br /><div class="w3-border w3-sand w3-padding mb-2">' . CUSTOMERS_EMAIL_CUSTOMER_SUBJECT . ': ' . $emInfo->subject . '<hr class="hr-gr mt-2 mb-2">' . $emInfo->enquiry . '</div></div>'; $contents .= '<div class="mb-3">' . CUSTOMERS_EMAIL_CUSTOMER_ADMIN_ENQUIRY . '<br /><div class="w3-border w3-sand w3-padding mb-2">' . $emInfo->adminenquiry . '</div></div>'; if (!empty($emInfo->adminenquiry)){ tep_mail($emInfo->name, $emInfo->email, CUSTOMERS_EMAIL_SENT_EMAIL_SUBJECT, CUSTOMERS_EMAIL_SENT_EMAIL_TO_CUSTOMER_HEADING . ': ' . $emInfo->subject . CUSTOMERS_EMAIL_TEXT_EMAIL_SEPARATOR . $emInfo->adminenquiry . '<br>' . CUSTOMERS_EMAIL_TEXT_EMAIL_SEPARATOR . CUSTOMERS_EMAIL_CUSTOMER_ENQUIRY . ':<br>' . CUSTOMERS_EMAIL_CUSTOMER_SUBJECT . ': ' . $emInfo->subject . '<br>' . $emInfo->enquiry . CUSTOMERS_EMAIL_TEXT_EMAIL_SEPARATOR . CUSTOMERS_EMAIL_TEXT_EMAIL_SIGNATURE_CR, STORE_OWNER, STORE_OWNER_EMAIL_ADDRESS); } $contents .= '<div class="mb-3">' . tep_draw_w3_button(CUSTOMERS_EMAIL_SEND_STATUS_SEND, 'fa fa-sync-alt', null, 'primary', null, 'class="w3-button w3-large w3-block w3-teal"') . '</div>'; $contents .= '</td></tr>'; $contents .= '</form>'; break; case 'delete': $heading .= CUSTOMERS_EMAIL_CUSTOMER_NAME . '&nbsp;' . $emInfo->name . '&nbsp;' . CUSTOMERS_EMAIL_STATUS_TEXT_DELETE_INTRO; $contents = tep_draw_form('email_labels', 'customers_email.php', 'page=' . $_GET['page'] . '&emID=' . $emInfo->email_id . '&action=deleteconfirm'); $contents .= '<tr><td>' . CUSTOMERS_EMAIL_STATUS_TEXT_DELETE_INTRO; $contents .= '<div class="w3-border w3-border-teal w3-pale-green w3-padding-small mb-3"><strong>' . $emInfo->name . '</strong></div>'; $contents .= '<div class="mb-3">' . tep_draw_w3_button(IMAGE_DELETE, 'fa fa-trash-alt', null, 'primary', null, 'class="w3-button w3-large w3-block w3-red"') . '</div>'; $contents .= '<div class="mb-3">' . tep_draw_w3_button(IMAGE_CANCEL, 'fa fa-times', tep_href_link('customers_email.php', 'page=' . $_GET['page'] . '&emID=' . $_GET['emID']), null, null, 'class="w3-button w3-large w3-block w3-theme-light"') . '</div>'; $contents .= '</td></tr>'; $contents .= '</form>'; break; default: if (isset($emInfo) && is_object($emInfo)) { $heading = $emInfo->name; if ($emInfo->status == '2'){ $contents .= '<tr><td>' . tep_draw_w3_button(CUSTOMERS_EMAIL_STATUS_BUTTON_SHOW_EDIT, 'fa fa-envelope-square', tep_href_link('customers_email.php', 'page=' . $_GET['page'] . '&emID=' . $emInfo->email_id . '&action=edit'), null, null, 'class="w3-button w3-large w3-block w3-black mb-3"'); }else{ $contents .= '<tr><td>' . tep_draw_w3_button(IMAGE_EDIT, 'fa fa-cog', tep_href_link('customers_email.php', 'page=' . $_GET['page'] . '&emID=' . $emInfo->email_id . '&action=edit'), null, null, 'class="w3-button w3-large w3-block w3-teal mb-3"'); } if ((!empty($emInfo->adminenquiry) && ($emInfo->status != '2'))){ $contents .= '<tr><td>' . tep_draw_w3_button(CUSTOMERS_EMAIL_SEND_STATUS_EDIT, 'fab fa-telegram-plane', tep_href_link('customers_email.php', 'page=' . $_GET['page'] . '&emID=' . $emInfo->email_id . '&action=send'), null, null, 'class="w3-button w3-large w3-block w3-black mb-3"'); } $contents .= tep_draw_w3_button(IMAGE_DELETE, 'fa fa-trash-alt', tep_href_link('customers_email.php', 'page=' . $_GET['page'] . '&emID=' . $emInfo->email_id . '&action=delete'), null, null, 'class="w3-button w3-large w3-block w3-red mb-3"'); if ($emInfo->status == '0'){ $statusname = '<div class="w3-leftbar w3-border-top w3-border-green"><div class="w3-padding-small">' . CUSTOMERS_EMAIL_CUSTOMER_STATUS . ' ' . CUSTOMERS_EMAIL_STATUS_ON . '</div></div>'; }if ($emInfo->status == '1'){ $statusname = '<div class="w3-leftbar w3-border-top w3-border-red"><div class="w3-padding-small">' . CUSTOMERS_EMAIL_CUSTOMER_STATUS . ' ' . CUSTOMERS_EMAIL_STATUS_OFF . '</div></div>'; }if ($emInfo->status == '2'){ $statusname = '<div class="w3-leftbar w3-border-top w3-border-black"><div class="w3-padding-small">' . CUSTOMERS_EMAIL_CUSTOMER_STATUS . ' ' . CUSTOMERS_EMAIL_STATUS_SEND_TO_CUSTOMER . '</div></div>'; } $contents .= '<div class="clearfix"></div>' . $statusname; $contents .= '</td></tr>'; } break; } if ( (tep_not_null($heading)) && (tep_not_null($contents)) ) { echo '<div class="w3-quarter ms-sm-2">' . "\n" . ' <table class="w3-table w3-border w3-border-black w3-light-gray">' . ' <thead>' . ' <tr class="w3-theme">' . ' <th scope="col">'. $heading . '</th>' . ' </tr>' . ' </thead>' . ' <tbody>' . $contents . '</tbody>' . ' </table>' . '</div>' . "\n"; } ?> </div> </div> <?php require('includes/template_bottom.php'); require('includes/application_bottom.php'); ?> FINISH
     
    I hope it will be useful to you. Sorry is only in german.
  8. Thanks
    YePix got a reaction from MichaelB42 in Nicht erhältlicher Artikel anzeigen   
    auf allen Seiten mit einem Kaufbutton folgendes vor der Buttonsektion einfügen:
    <?php if ($product_info['products_quantity'] > '0'){?> folgendes nach der Buttonsektion einfügen:
    <?php }?> Beachte aber die Bezeichnung der Abfragen auf in den einzelnen Dateien.
    product_info.php ist  => $product_info['products_quantity'] zuständig.  hierbei ist => $product_info die Variable der Abfrage.
    Bei den Anderen Dateien ändert sich diese.
  9. Thanks
    YePix reacted to osCommerce-Official in DB "customer_bascet"   
    Peter, it may be that shopping cart (basket) is stored in a completely different new way. Will be very happy to offer you the code once it becomes available - can't wait in fact  
  10. Like
    YePix got a reaction from osCommerce-Official in Translations   
    Hi, send me the german language files
  11. Thanks
    YePix got a reaction from Denzel in GitHub Crashkurs   
    Schau mal hier rein
    https://t3n.de/news/github-fuer-einsteiger-ersten-schritte-762760/
  12. Like
    YePix got a reaction from bonbec in [Addon] Store Times BS   
    let it be good. Here is the forum and the corresponding posting to the addon. Everyone interested in this post has read and decides for yourself whether it will be used or not. here is oscommerce and not github. end of this discussion.
  13. Thanks
    YePix got a reaction from TA Safety Cartridges in DSGVO für osC. 2.3.4   
    catalog/saved_data.php
     
    <?php /* $Id$ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com ****************************************************************** saved_data.php - DSGVO http://pl-systeme.de TIPS & TRICKS FOR osCommerce 2.3.xx under: https://www.pl-systeme.de/surfcms.php?pg=1 2.3.4-1 Demoshop: https://www.pl-systeme.de/product_info.php?cPath=23&products_id=1 Bootstrap-Responsive Demoshop: https://www.pl-systeme.de/product_info.php?cPath=24&products_id=2 ****************************************************************** Copyright (c) 2010 osCommerce Released under the GNU General Public License */ require('includes/application_top.php'); if (!tep_session_is_registered('customer_id')) { $navigation->set_snapshot(); tep_redirect(tep_href_link(FILENAME_LOGIN, '', 'SSL')); } require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_DSGVO); $breadcrumb->add(NAVBAR_TITLE, tep_href_link(FILENAME_DSGVO)); $pls_countries_query = tep_db_query("select ci.customers_id as customers_id, countries_id, countries_name from " . TABLE_CUSTOMERS . " ci, " . TABLE_COUNTRIES . " where customers_id = '" . (int)$customer_id . "'"); $countries = tep_db_fetch_array($pls_countries_query); $pls_reviews_query = tep_db_query("select count(*) as number_of_reviews from " . TABLE_REVIEWS . " where customers_id = '" . (int)$customer_id . "'"); $reviews = tep_db_fetch_array($pls_reviews_query); $pls_orders_query = tep_db_query("select count(*) as number_of_orders from " . TABLE_ORDERS . " where customers_id = '" . (int)$customer_id . "'"); $orders = tep_db_fetch_array($pls_orders_query); $pls_basket_query = tep_db_query("select b.products_id, b.customers_basket_quantity, b.customers_basket_date_added, p.products_model, pd.products_name from customers_basket b left join products p on b.products_id = p.products_id left join products_description pd on b.products_id = pd.products_id where customers_id = '" . (int)$customer_id . "'"); $pls_account_query = tep_db_query("select customers_email_address, customers_telephone, customers_fax, customers_newsletter, customers_dob from " . TABLE_CUSTOMERS . " where customers_id = '" . (int)$customer_id . "'"); $account = tep_db_fetch_array($pls_account_query); $newsletter = $account['customers_newsletter']; if ($newsletter == '1') { $newsletter_text = ENTRY_NEWSLETTER_YES; } else { $newsletter_text = ENTRY_NEWSLETTER_NO; } $pls_customers_info_query = tep_db_query("select customers_info_id, customers_info_date_of_last_logon, customers_info_number_of_logons, customers_info_date_account_created, customers_info_date_account_last_modified, global_product_notifications from " . TABLE_CUSTOMERS_INFO . " where customers_info_id = '" . (int)$customer_id . "'"); $customers_info = tep_db_fetch_array($pls_customers_info_query); $notifications = $customers_info['global_product_notifications']; if ($notifications == '1') { $notifications_text = ENTRY_NOTIFICATIONS_YES; } else { $notifications_text = ENTRY_NOTIFICATIONS_NO; } $pls_anrede_gender_query = tep_db_query("SELECT customers_gender FROM " . TABLE_CUSTOMERS . " WHERE customers_id = '" . $customer_id . "'"); $pls_anrede_gender = tep_db_fetch_array($pls_anrede_gender_query); $gender = $pls_anrede_gender['customers_gender']; if ($gender == 'm') { $gender_text = MALE; } else { $gender_text = FEMALE; } $pls_tax_info_query = tep_db_query("SELECT products_id, products_tax_class_id FROM " . TABLE_PRODUCTS . " WHERE products_status = '1' and products_id = '" . (int)$_GET['products_id'] ."'"); $pls_tax_info = tep_db_fetch_array($pls_tax_info_query); $taxinfo = $pls_tax_info['products_tax_class_id']; if (DISPLAY_PRICE_WITH_TAX == 'true') { $taxinfo_text = TAX_INFO; } else { $taxinfo_text = TAX_INFO_OFF; } HEADING_IPRECORDED_1; $ip_iprecorded = YOUR_IP_IPRECORDED; $isp_iprecorded = YOUR_ISP_IPRECORDED; $ip = $_SERVER["REMOTE_ADDR"]; $client = gethostbyaddr($_SERVER["REMOTE_ADDR"]); $str = preg_split("/\./", $client); $i = count($str); $x = $i - 1; $n = $i - 2; $isp = $str[$n] . "." . $str[$x]; $pls_separator = '<br><img src="images/separator_pixel.gif" alt="" height="1" width="100%" align="middle" border="0" />'; $pls_separator_no_break = '<img src="images/separator_pixel.gif" alt="" height="1" width="100%" align="middle" border="0" />'; require(DIR_WS_INCLUDES . 'template_top.php'); ?> <script type="text/javascript" language="javascript"> function printPage() { if (window.print) { jetztdrucken = confirm('Seite drucken ?'); if (jetztdrucken) window.print(); } } </script> <div class="pls_alert-SiteContainer"> <div class="pls_CartModuleHtgr"><div class="pls_margin"> <?php echo TEXT_GDPR; ?> </div></div> <div class="page-header pls_margin"> <h3><?php echo HEADING_TITLE; ?></h3> </div> <div class="pls_margin pls_panel"> <?php $addresses_query = tep_db_query("select address_book_id, customers_id, entry_firstname as firstname, entry_lastname as lastname, entry_company as company, entry_street_address as street_address, entry_suburb as suburb, entry_city as city, entry_postcode as postcode, entry_state as state from " . TABLE_ADDRESS_BOOK . " where customers_id = '" . (int)$customer_id . "' order by firstname, lastname"); $addresses = tep_db_fetch_array($addresses_query); echo '<h3>' . CATEGORY_PERSONAL . '</h3><br>' . ENTRY_GENDER . '&nbsp;' . $gender_text . $pls_separator . ENTRY_FIRST_NAME_TEXT . '&nbsp;' . stripslashes($addresses['firstname'] . $pls_separator . ENTRY_LAST_NAME_TEXT . '&nbsp;' . $addresses['lastname'] . $pls_separator . ENTRY_DATE_OF_BIRTH . '&nbsp;' . tep_date_long ($account['customers_dob']) . $pls_separator . TEXT_CUSTOMMER_NR . '&nbsp;' . stripslashes($countries['customers_id']) . $pls_separator . ENTRY_STREET_ADDRESS_TEXT . '&nbsp;' . $addresses['street_address'] . $pls_separator . ENTRY_POST_CODE_TEXT . '&nbsp;/&nbsp;' . ENTRY_CITY_TEXT . '&nbsp;' . $addresses['postcode'] . '&nbsp;' . $addresses['city'] . $pls_separator . ENTRY_COUNTRY . '&nbsp;' . $countries['countries_name'] . $pls_separator . ENTRY_STATE . '&nbsp;' . $addresses['entry_state']) . $pls_separator . '';?><br> </div><div class="pls_margin pls_panel"> <?php echo '<h3>' . CATEGORY_CONTACT . '</h3><br>' . ENTRY_EMAIL_ADDRESS . '&nbsp;' . stripslashes($account['customers_email_address']) . $pls_separator . ENTRY_TELEPHONE_NUMBER . '&nbsp;' . stripslashes($account['customers_telephone']) . $pls_separator . ENTRY_FAX_NUMBER . '&nbsp;' . stripslashes($account['customers_fax']) . $pls_separator . ENTRY_COMPANY . '&nbsp;' . stripslashes($addresses['entry_company']) . $pls_separator . '';?><br> </div><div class="pls_margin pls_panel"> <?php echo '<h3>' . CATEGORY_SITEINFO . '</h3><br>' . ENTRY_NEWSLETTER . '&nbsp;' . $newsletter_text . $pls_separator . ENTRY_TEXT_TOTAL_NOTIFICATIONS . '&nbsp;' . $notifications_text . $pls_separator . ENTRY_TEXT_ACCOUNT_CREATED . '&nbsp;' . tep_date_long ($customers_info['customers_info_date_account_created']) . $pls_separator . ENTRY_TEXT_AGREED_CONDITIONS . '&nbsp;' . tep_date_long ($customers_info['customers_info_date_account_created']) . '&nbsp;' . TIME_FORMAT_TEXT_WHAT . '&nbsp;' . tep_time_long ($customers_info['customers_info_date_account_created']) . '&nbsp;' . TIME_FORMAT_TEXT_CLOCK . $pls_separator . ENTRY_TEXT_ACCOUNT_LAST_MODIFIED . '&nbsp;' . tep_date_long ($customers_info['customers_info_date_account_last_modified']) . '&nbsp;' . TIME_FORMAT_TEXT_WHAT . '&nbsp;' . tep_time_short ($customers_info['customers_info_date_account_last_modified']) . '&nbsp;' . TIME_FORMAT_TEXT_CLOCK . $pls_separator . ENTRY_TEXT_LAST_LOGIN . '&nbsp;' . tep_date_long ($customers_info['customers_info_date_of_last_logon']) . $pls_separator . ENTRY_TEXT_LOGIN_TOTAL . '&nbsp;' . $customers_info['customers_info_number_of_logons'] . $pls_separator . ENTRY_TEXT_REVIEWS_TOTAL . '&nbsp;' . $reviews['number_of_reviews'] . $pls_separator . '';?> <?php echo ENTRY_TEXT_ORDERS_TOTAL . '&nbsp;' . $orders['number_of_orders'] . '<br><br>';?> <?php echo $pls_separator_no_break;?> </div><div class="pls_margin pls_panel"> <?php echo '<h3>' . CATEGORY_TEMPORERY . '</h3><br>';?> <?php echo TEXT_CUSTOMMER_IP . '&nbsp;' . $ip_iprecorded . ': ' . $ip . '&nbsp; <font color="#d10000"><strong>|</strong></font> &nbsp;' . $isp_iprecorded . ': ' . $client . $pls_separator;?> <?php if ($cart->count_contents() > 0) { echo '<br><br>' . ENTRY_TEXT_CART_TOTAL . '&nbsp;' . $cart->count_contents() . '&nbsp;' . ENTRY_TEXT_CART_PRODUCTS . '&nbsp;' . $currencies->format($cart->show_total()) . $taxinfo_text . '<br><br>'; while ( $basket = tep_db_fetch_array($pls_basket_query)){ echo $basket['customers_basket_quantity'] . ' x ' . $basket['products_name'] . '<br>';} }else{ echo TEXT_NO_ITEMS_IN_CART; }?> </div> <div class="noprint"> <div class="pls_margin pls_panel"> <div class="buttonSet"><div align="center"> <?php echo tep_draw_button(IMAGE_BUTTON_VIEW_ACCOUNT, 'fa fa-vcard-o', tep_href_link(FILENAME_ACCOUNT));?> </div></div> <br> <div class="buttonSet"><div align="center"> <a href="javascript:printPage()"><?php echo tep_draw_button(IMAGE_BUTTON_PRINT_PAGE, 'fa fa-print', null, null, "Print", 'btn-reviews btn-block btn-lg');?> </div></div> </div> </div> </div> <p> <?php require(DIR_WS_INCLUDES . 'template_bottom.php'); require(DIR_WS_INCLUDES . 'application_bottom.php'); ?>
    *************************************************
    catalog/includes/languages/german/saved_data.php
     
    <?php /* $Id$ osCommerce, Open Source E-Commerce Solutions http://www.oscommerce.com ****************************************************************** saved_data.php - DSGVO http://pl-systeme.de TIPS & TRICKS FOR osCommerce 2.3.xx under: https://www.pl-systeme.de/surfcms.php?pg=1 2.3.4-1 Demoshop: https://www.pl-systeme.de/product_info.php?cPath=23&products_id=1 Bootstrap-Responsive Demoshop: https://www.pl-systeme.de/product_info.php?cPath=24&products_id=2 ****************************************************************** Copyright (c) 2010 osCommerce Released under the GNU General Public License */ define('HEADING_TITLE', 'Ihre bei uns gespeicherten Daten'); define('NAVBAR_TITLE', 'GDPR'); define('TEXT_CUSTOMMER_IP', 'Ihre IP-Adresse:'); define('TEXT_CUSTOMMER_IP_NO_SAVE', 'IP wird zur Zeit nicht gespeichert:'); define('CATEGORY_SITEINFO', 'Ihre Systeminformationen'); define('ENTRY_TEXT_ACCOUNT_CREATED', 'Kundenkonto eröffnet am:'); define('ENTRY_TEXT_AGREED_CONDITIONS', 'Kontoeröffnung mit Bestätigung von Datenschutz, Widerruf und AGB am:'); define('ENTRY_TEXT_LAST_AGREED_WITHDRAWAL', 'Letzte Widerrufsnutzung mit Widerrufsbelehrung am:'); define('ENTRY_TEXT_ACCOUNT_LAST_MODIFIED', 'Letzte Änderung Ihrer Kontodaten am:'); define('ENTRY_TEXT_LAST_LOGIN', 'Ihre letzte Anmeldung:'); define('ENTRY_TEXT_LOGIN_TOTAL', 'Anmeldungen total:'); define('ENTRY_TEXT_REVIEWS_TOTAL', 'Ihre geschriebenen Bewertungen:'); define('ENTRY_TEXT_ORDERS_TOTAL', 'Anzahl Ihrer bisherigen Bestellungen:'); define('ENTRY_TEXT_POINTS_TOTAL', 'Anzahl Ihrer Bonuspunkte:'); define('ENTRY_TEXT_POINTS_EXPIRES', 'Ablaufdatum:'); define('CATEGORY_TEMPORERY', 'Vorübergehend gespeichert'); define('ENTRY_TEXT_CART_TOTAL', 'Ihr Warenkorb:'); define('ENTRY_TEXT_CART_PRODUCTS', 'Artikel, im Gesamtwert von:'); define('TEXT_NO_ITEMS_IN_CART', 'Ihr Warenkorb ist leer'); define('ENTRY_TEXT_WISHLIST_TOTAL', 'Ihre Merkliste:'); define('ENTRY_TEXT_WISHLIST_PRODUCTS', 'Artikel, im Gesamtwert von:'); define('TEXT_WISHLIST_NO_ITEMS', 'Ihre Merkliste ist leer'); define('ENTRY_TEXT_TOTAL_NOTIFICATIONS', 'Produktnews:'); define('ENTRY_NOTIFICATIONS_YES', 'Abboniert'); define('ENTRY_NOTIFICATIONS_NO', 'Nicht abboniert'); define('SAVED_DATA_TEXT_MAIN_TITLE', 'Letzten hier ansehen '); define('TEXT_ORDER_PRODUCTS', 'Artikel:'); define('TEXT_ORDER_COST', 'Summe:'); define('TEXT_ORDER_DATE', 'Bestelldatum:'); define('TEXT_ORDER_SHIPPED_TO', 'Lieferanschrift:'); define('TEXT_ORDER_NUMBER', 'Bestellnummer:'); define('TEXT_NO_PURCHASES', 'Sie haben noch keine Bestellungen getätigt.'); define('IMAGE_BUTTON_VIEW_ACCOUNT', 'zum Kundenkonto'); define('IMAGE_BUTTON_PRINT_PAGE', 'Seite drucken'); define('TEXT_GDPR', ' Die Datenschutz-Grundverordnung (DSGVO) (Verordnung (EU) 2016/679) ist eine Verordnung, mit der das Europäische Parlament, der Rat der Europäischen Union und die Europäische Kommission den Datenschutz für alle Personen in der Europäischen Union stärken und vereinheitlichen wollen (EU). Die Datenschutz-Grundverordnung besagt, dass Sie Ihre persönlichen Informationen, die wir besitzen, überprüfen können. Wenn Sie EU-Bürger sind, können Sie die Löschung einiger dieser Daten beantragen. '); ?>
     
    *************************************************
    INSTALL:
    Ein Bild namens: separator_pixel.gif Erstellen und in das catalog/images/ einspielen. ############################################### catalog/includes/filenames.php einfügen: define('FILENAME_DSGVO', 'saved_data.php'); ############################################### stylesheet.css am ende der Datei einfügen: .pls_alert-SiteContainer{background-color:#FFFFFF;border:solid 1px #CCCCCC;padding:8px;border-radius:4px 4px 0px 0px;} .pls_CartModuleHtgr{border:1px solid #FF6600;-moz-box-shadow: 2px 2px 3 #CCCCCC;-webkit-box-shadow: 2px 2px 0 #333333;box-shadow: 5px 2px 5 #000000;border-radius:4px 4px 0px 0px;background:#FFCC99 url() 100% 100% repeat-x;color:#000000;} .pls_margin{margin:10px;} .pls_panel{padding:20px;border:solid 1px #ccc;} ############################################### catalog/includes/languages/german.php einfügen: define('TIME_FORMAT_LONG', '%H:%M:%S'); define('TIME_FORMAT_SHORT', '%H:%M'); define('TIME_FORMAT_TEXT_WHAT', 'um'); define('TIME_FORMAT_TEXT_CLOCK', 'Uhr'); define('ENTRY_FIRST_NAME_TEXT', 'Ihr Vorname:'); define('ENTRY_LAST_NAME_TEXT', 'Ihr Nachname:'); define('TEXT_CUSTOMMER_NR', 'Kundennummer:'); define('ENTRY_STREET_ADDRESS_TEXT', 'Strasse und Hausnummer:'); define('ENTRY_POST_CODE_TEXT', 'Postleitzahl: / Ort:'); define('ENTRY_FIRST_NAME_TEXT', 'Ihr Vorname:'); define('ENTRY_FIRST_NAME_TEXT', 'Ihr Vorname:'); define('HEADING_IPRECORDED_1','HINWEIS! Die folgende IP Adresse und ISP wurde für Sicherheitszwecke aufgezeichnet.'); define('YOUR_IP_IPRECORDED', 'IP'); define('YOUR_ISP_IPRECORDED', 'ISP'); ############################################### catalog/includes/functions/general.php finden: if (@date('Y', mktime($hour, $minute, $second, $month, $day, $year)) == $year) { return date(DATE_FORMAT, mktime($hour, $minute, $second, $month, $day, $year)); } else { return preg_replace('/2037$/', $year, date(DATE_FORMAT, mktime($hour, $minute, $second, $month, $day, 2037))); } } danach einfügen: // Output a raw time string in the selected locale time format // $raw_date needs to be in this format: HH:MM:SS function tep_time_long($raw_date) { if ( ($raw_date == '0000-00-00 00:00:00') || ($raw_date == '') ) return false; $hour = (int)substr($raw_date, 11, 2); $minute = (int)substr($raw_date, 14, 2); $second = (int)substr($raw_date, 17, 2); return strftime(TIME_FORMAT_LONG, mktime($hour,$minute,$second)); } // Output a raw time string in the selected locale time format // $raw_date needs to be in this format: HH:MM function tep_time_short($raw_date) { if ( ($raw_date == '0000-00-00 00:00:00') || ($raw_date == '') ) return false; $hour = (int)substr($raw_date, 11, 2); $minute = (int)substr($raw_date, 14, 2); return strftime(TIME_FORMAT_SHORT, mktime($hour,$minute)); }  
  14. Thanks
    YePix got a reaction from TA Safety Cartridges in Fehlende Rechnungs und Lieferschein Nummer und DSVGO popup   
    Setz doch die Abfrage nach customers_id als Kundennummer und Die Rechnungsnummer als Bestellnummer.
    $pls_data_query = tep_db_query("select customers_id from ". TABLE_CUSTOMERS . " where customers_id = '" . $order->customer['customers_id'] . "'"); $pls_data = tep_db_fetch_array($pls_data_query); <?php echo INFO_TEXT_CUSTOMER_ID; ?><?php echo $pls_data['customers_id'];?> | <?php echo INFO_TEXT_ORDER_ID; ?><?php echo $oID; ?> ************************************************** Sprachdatei: define('INFO_TEXT_CUSTOMER_ID', 'Kundennummer: '); define('INFO_TEXT_ORDER_ID', 'Rechnung/ Bestellnummer: ');  
  15. Like
    YePix reacted to raiwa in Converting Points and Rewards system for osC BS   
    You probably need also the ship in cart add on:
    https://apps.oscommerce.com/YLYGm&ship-in-cart-bs-reloaded
    or some additional code loading the ot modules already on the checkout payment page.
×
×
  • Create New...