Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

Yepi1533005574

Members
  • Content count

    206
  • Joined

  • Last visited

  • Days Won

    3

Posts posted by Yepi1533005574


  1. IN DER product_info.php EINFÜGEN

        $dein_bdeinfeld_query = "SELECT products_bdeinfeld1 FROM " . TABLE_PRODUCTS . " WHERE products_status = '1' AND products_id = '" . $product_info['products_id'] . "'";
        $dein_bdeinfeld = '  <br><span class="deine_class">' . $product_info['products_bdeinfeld1'] . '</span>';

    AN GEWÜNSCHTER STELLE EINSÄTZEN WO DU DAS FELD AUSGEBEN WILLST


    $dein_bdeinfeld

    FERTIG :)


  2. case 'insert_product':
    case 'update_product':

    GLEICH DANACH DIESE QUERY

    $sql_data_array = array('products_quantity' => (int)tep_db_prepare_input($_POST['products_quantity']),

    HIER ERGÄNZEN UM:
    'products_deinfeld1' => tep_db_prepare_input($_POST['products_bdeinfeld1']),

    /////////////////////////////////////

    $product_query = tep_db_query("select products_quantity, products_model,

    HIER ERGÄNZEN UM:

    ,products_bdeinfeld1

    /////////////////////////////////////

    tep_db_query("insert into " . TABLE_PRODUCTS . " (products_quantity, products_model

    HIER ERGÄNZEN UM:

    ,products_bdeinfeld1

    und

    . tep_db_input($product['products_bdeinfeld1']) .

    /////////////////////////////////////

    if ($action == 'new_product') {

    HIER ERGÄNZEN UM:

    'products_bdeinfeld1' => '',

    /////////////////////////////////////

    if (isset($_GET['pID']) && empty($_POST)) {
          $product_query = tep_db_query("select pd.products_name, pd.products_description,

    HIER ERGÄNZEN UM:

    ,products_bdeinfeld1

    /////////////////////////////////////

    AN GEWÜNSCHTER STELLE EINFÜGEN

    <tr bgcolor="#ebebff">
                <td class="main"><?php echo TEXT_PRODUCTS_DEIN_BEDIENFELD1_NAME; ?></td>
                <td class="main"><?php echo tep_draw_separator('pixel_trans.gif', '24', '15') . '&nbsp;' . tep_draw_input_field('products_bdeinfeld1', $pInfo->products_bdeinfeld1, 'style="width: 250px;"'); ?></td>
              </tr>
              <tr>          

    /////////////////////////////////////

     } elseif ($action == 'new_product_preview') {
        $product_query = tep_db_query("select p.products_id, pd.language_id, pd.products_name, pd.products_description


    HIER ERGÄNZEN UM:

    ,products_bdeinfeld1

    /////////////////////////////////////

    } elseif ($action == 'new_product_preview') {
        $product_query = tep_db_query("select p.products_id, pd.language_id, pd.products_name, pd.products_description

    HIER ERGÄNZEN UM:

    ,products_bdeinfeld1


    /////////////////////////////////////

    if (isset($_GET['search'])) {
          $products_query = tep_db_query("select p.products_id, pd.products_name, p.products_model, p.products_gtin,


    HIER ERGÄNZEN UM:

    ,products_bdeinfeld1


    /////////////////////////////////////


    Sollte anschliessend alles passen ;)


  3. Hast du hier im Forum irgendwo die überschrift "Bootstrap" gesehen ?

    Lass die dummen Ansagen vom Responsive sein und bleib entweder in englishem Forun oder bei github aber hier möchte niemand deine Anmerkungrn lesen !

    Dieses Forum ist für Leute die Hilfe brauchen und diese auch bekommen sollten, ohne dafür zahlen zu müssen.

    Hier ist das osCommerce Forum und kein Forkforum!!!

    Der Harald wird schon wissen warum die Version 2.4 raus ist und nicht 2.4 Bootstrap ok !

    Niemand will solch Kommentatre lesen wie " um sonst gibts nichts!" oder "Hättest du diese Version dann wäre es kein Problem "

    Nichts für ungut ;).

     


  4. Danke An....

    Dies ist genau was ich meinte. Die Boxenbreite kann über die css festgelegt werden. Die Anleitung vo De Dokta dient lediglich dazu die Boxenbreite unterschiedlich zu gestalten.

    Den Shop allerdings auf 100% Breite zu setzen geht nicht.
    Hierbei kann der footer und der header zwar auf 100% gelegt werden jedoch die rechte columne bleibt aussen vor. Es gibt keine Möglichkeit die Position zu steuern und der Mittelteil kann auch nicht gesteuert werden bis auf die Position kann die Breite in % nicht vergeben werden.


  5. Hallo an alle, ich habe mich schon durchs Forum durchgewühlt und Goo.....le befragt aber keine entsprechende Lösung finden können.

    Wie bekomme ich die Breite des Shops auf 100% ?

    Ich meine so, dass die rechte columne auch ihren festen Platz bekommt.
    In der 960_24_col.css kann die Breite aller Boxen definiert werden dazu die Position für den mittleren Teil jedoch die breite des mittleren teils sowie die rechte columne bleibt einfach unberührt.

    Bin sehr dankbae für jede Hilfe


  6. Hier meine Lieben eine neue Navigationsleiste für 2.3.4.
    Einfach ein zu bauen, komplett über die Administration steuerbar und erweiterungsfähig.

    ########################################

    INSERT INTO configuration_group (configuration_group_id, configuration_group_title, configuration_group_description, sort_order, visible)
    VALUES ('365', 'Navigationsmenü', 'Oberes Navigationsmenü - Konfiguration', 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 ('Position und Breite der Navigationsleiste', 'NAVI_RESPO_ENABLE', 'false', 'Möchten Sie die Position und Breite der Navigationsleiste über den ganzen Bildschirm oder als Shopbreite anzeigen ?', '365', '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, date_added, use_function, set_function)
    VALUES ('Button Bewertungen', 'NAVI_RESPO_REVIEWS_ENABLE', 'false', 'Möchten Sie den Button Bewertungen anzeigen ?', '365', '2', 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, date_added, use_function, set_function)
    VALUES ('Button Angebote', 'NAVI_RESPO_SPECIALS_ENABLE', 'false', 'Möchten Sie den Button Angebote anzeigen ?', '365', '3', 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, date_added, use_function, set_function)
    VALUES ('Button nach Datum', 'NAVI_RESPO_NEW_PROD_ENABLE', 'false', 'Möchten Sie den Button nach Datum anzeigen ?', '365', '4', 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, date_added, use_function, set_function)
    VALUES ('Button Ihr Warenkorb', 'NAVI_RESPO_SHP_CART_ENABLE', 'false', 'Möchten Sie den Button Ihr Warenkorb anzeigen ?', '365', '5', 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, date_added, use_function, set_function)
    VALUES ('Button zur Kasse', 'NAVI_RESPO_CHECKOUT_SHIPPING_ENABLE', 'false', 'Möchten Sie den Button zur Kasse anzeigen ?', '365', '6', 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, date_added, use_function, set_function)
    VALUES ('Button Ihre Kundendaten', 'NAVI_RESPO_PRIV_DATA_ENABLE', 'false', 'Möchten Sie den Button Ihre Kundendaten anzeigen ?', '365', '7', 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, date_added, use_function, set_function)
    VALUES ('Button Ihre Bisherigen Bestellungen', 'NAVI_RESPO_ORDERS_ENABLE', 'false', 'Möchten Sie den Button Ihre Bisherigen Bestellungen anzeigen ?', '365', '8', 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, date_added, use_function, set_function)
    VALUES ('Suche und Warenkorbinfoleiste', 'NAVI_RESPO_SEARCH_MENU_ENABLE', 'false', 'Möchten Sie die gesamte Suche und Warenkorbinfoleiste anzeigen ?', '365', '20', 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, date_added, use_function, set_function)
    VALUES ('Suchfunktion', 'NAVI_RESPO_SEARCH_FIELD_ENABLE', 'false', 'Möchten Sie die Suchfunktion anzeigen ?', '365', '21', 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, date_added, use_function, set_function)
    VALUES ('Warenkorb Info', 'NAVI_RESPO_SHOP_CART_INFO_ENABLE', 'false', 'Möchten Sie die Warenkorb Info anzeigen ?', '365', '22', now(), NULL , 'tep_cfg_select_option(array(\'true\', \'false\'),');

    #######################################################################


    catalog/includes/languages/german.php

    define('RESPO_NAVI_ACCOUNT','Ihr Kundenkonto');
    define('RESPO_NAVI_ACCOUNT_WEL','Willkommen');
    define('RESPO_NAVI_PRIVAT','Ihre Kundendaten');
    define('RESPO_NAVI_LOGIN','Anmelden');
    define('RESPO_NAVI_LOGOFF','Abmelden');
    define('RESPO_NAVI_ORDERS','Ihre bisherigen Bestellungen');
    define('RESPO_NAVI_SHOPPINGCART','Ihr Warenkorb ');

    define('RESPO_NAVI_DEFAULT','Home');
    define('RESPO_NAVI_REVIEWS','Bewertungen');
    define('RESPO_NAVI_SPECIALS','Angebote');
    define('RESPO_NAVI_PRODNEW','Nach Datum');
    define('RESPO_NAVI_CHECKOUT','zur Kasse');

    define('RESPO_NAVI_MALE','Herr ');
    define('RESPO_NAVI_FEMALE','Frau ');

    #######################################################################

    catalog/includes/template_top.php

    Finde: 

    <body>

    gleich danach einfügen:

    <?php require(DIR_WS_MODULES . 'respo_navi.php'); ?>

    #######################################################################

    Diese Datei respo_navi.php in das Verzeichnis catalog/includes/modules übertragen:

    <?php 
    // Copyright © 2017 YEPI/ Yellow-Pixel - www.pl-systeme.de
    // Catalog - Horizontal - Navibar for osCommerce 2.3.4 Version 0.1
    // Released under the GNU General Public License
    ?>
    <head>
    <link rel="stylesheet" type="text/css" href="css/menu.css" media="screen" />
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
    </head>
    <?php if (NAVI_RESPO_ENABLE=="true") { ?>
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
    <tr>
    <td align="left">
    <?php
    // Datenermittlung Anrede  
    $addresses_query = tep_db_query("select entry_firstname as firstname, entry_lastname as lastname from " . TABLE_ADDRESS_BOOK . " where customers_id = '" . (int)$customer_id . "' order by firstname, lastname");
    $addresses = tep_db_fetch_array($addresses_query);
    $plv_anrede_gender_query = tep_db_query("SELECT customers_gender FROM " . TABLE_CUSTOMERS . " WHERE customers_id = '" . $customer_id . "'");
    $plv_anrede_gender = tep_db_fetch_array($plv_anrede_gender_query);
    $gender = $plv_anrede_gender['customers_gender'];
    if (ACCOUNT_GENDER == 'true') {
    if ($gender == 'm') {
    $gender_text = RESPO_NAVI_MALE;
    } else {
    $gender_text = RESPO_NAVI_FEMALE;
    }}
    ?>
    <div id="menu">
    <div class="inhalt">
    <ul>
    <?php if (tep_session_is_registered('customer_id')) { ?>
    <li><a href="account.php"><i class="fa fa-user"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_ACCOUNT_WEL . ' ' . $gender_text . '  ' . $addresses['lastname'];?></a>
    <?php }else{ ?>
    <li><a href="account.php"><i class="fa fa-user"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_ACCOUNT;?></a>
    <?php } ?>
    <ul>
    <?php if (tep_session_is_registered('customer_id')) { ?>
    <?php if (NAVI_RESPO_SHP_CART_ENABLE=="true") { ?>
    <li><a href="shopping_cart.php"><i class="fa fa-shopping-cart"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_SHOPPINGCART. ($cart->count_contents() > 0 ? ' (' . $cart->count_contents() . ')' : '');?></a></li>
    <?php }else{} ?>
    <?php if (NAVI_RESPO_CHECKOUT_SHIPPING_ENABLE=="true") { ?>
    <li><a href="checkout_shipping.php"><i class="fa fa-eur"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_CHECKOUT;?></a></li>
    <?php }else{} ?>
    <?php if (NAVI_RESPO_PRIV_DATA_ENABLE=="true") { ?>
    <li><a href="account.php"><i class="fa fa-user-o"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_PRIVAT;?></a></li>
    <?php }else{} ?>
    <?php if (NAVI_RESPO_ORDERS_ENABLE=="true") { ?>
    <li><a href="account_history.php"><i class="fa fa-id-badge"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_ORDERS;?></a></li>
    <?php }else{} ?>
    <li><a href="logoff.php"><i class="fa fa-power-off"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_LOGOFF;?></a></li>
    <?php }else{ ?>
    <?php if (NAVI_RESPO_SHP_CART_ENABLE=="true") { ?>
    <li><a href="shopping_cart.php"><i class="fa fa-shopping-cart"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_SHOPPINGCART. ($cart->count_contents() > 0 ? ' (' . $cart->count_contents() . ')' : '');?></a></li>
    <?php }else{} ?>
    <?php if (NAVI_RESPO_CHECKOUT_SHIPPING_ENABLE=="true") { ?>
    <li><a href="checkout_shipping.php"><i class="fa fa-eur"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_CHECKOUT;?></a></li>
    <?php }else{} ?>
    <li><a href="login.php"><i class="fa fa-key"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_LOGIN;?></a></li>
    <?php } ?>
    </ul>
    </li>
    </ul>
    </div>
    </div>
    </td>
    <td align="right" width="85%">
    <div id="menu2">
    <div class="inhalt2">
    <ul>
    <li><a href="index.php"><i class="fa fa-home"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_DEFAULT;?></a></li>
    <?php if (NAVI_RESPO_REVIEWS_ENABLE=="true") { ?>
    <li><a href="reviews.php"><i class="fa fa-clock-o"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_REVIEWS;?></a></li>
    <?php }else{} ?>
    <?php if (NAVI_RESPO_SPECIALS_ENABLE=="true") { ?>
    <li><a href="specials.php"><i class="fa fa-percent"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_SPECIALS;?></a></li>
    <?php }else{} ?>
    <?php if (NAVI_RESPO_NEW_PROD_ENABLE=="true") { ?>
    <li><a href="products_new.php"><i class="fa fa-list-ul"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_PRODNEW;?></a></li>
    <?php }else{} ?>
    </ul>
    </div>
    </div>		
    </td>
    <td align="right" width="15"></td>
    </tr>
    </table>
    <table width="100%" border="0" cellspacing="0" cellpadding="0">
    	<tr height="35">
    		<td align="center" width="10" height="35"></td>
    		<td align="center" width="440" height="35"><?php if (NAVI_RESPO_SEARCH_FIELD_ENABLE=="true") { ?><?php echo tep_draw_form('search', tep_href_link(FILENAME_ADVANCED_SEARCH_RESULT, '', 'NONSSL', false), 'get') . tep_draw_hidden_field('search_in_description','1') . tep_draw_input_field('keywords', '', 'size="10" maxlength="35" style="width: ' . (220) . 'px"') . ' ' . tep_hide_session_id() .'<input type="submit" name="Submit" value=" Suchen ">' . '</form>';?>
    <?php }else{} ?></td>
    		<td align="center" width="15" height="35"></td>
    		<td align="left" height="35"><?php if (NAVI_RESPO_SEARCH_FIELD_ENABLE=="true") { ?><?php echo '<a href="' . tep_href_link('advanced_search.php') . '">' . tep_image(DIR_WS_IMAGES . 'button_top_search.png', '') . '</a>'; ?>
    <?php }else{} ?></td>
    		<td align="center" valign="middle" width="10" height="35"></td>
    		<td align="right" width="635" height="35"><!-- warenkorb start --><?php if (NAVI_RESPO_SHOP_CART_INFO_ENABLE=="true") { ?>
    			<div class="header_cart">
    				<!-- show empty cart message --><?php 
     	if ($cart->count_contents() == 0) { ?><i class="fa fa-shopping-cart"></i>&nbsp;&nbsp;<?php echo HEADER_CART_EMPTY; }
    	else { ?><i class="fa fa-shopping-cart"></i>&nbsp;&nbsp;<?php echo HEADER_CART_CONTAINS;
    	//'<a href="' . tep_href_link(FILENAME_SHOPPING_CART).'">'. HEADER_TITLE_CART_CONTENTS . ': </a>';   
    	}?>
    	<?php 
     	if ($cart->count_contents() == 1) {echo $cart->count_contents(); echo HEADER_CART_ITEM;}
    	if ($cart->count_contents() > 1) {echo $cart->count_contents(); echo HEADER_CART_ITEMS;} 
    ?><?php 
    	if ($cart->count_contents() == 0) { echo "";   }
    	if ($cart->count_contents() > 0) { echo HEADER_CART_SUBTOTAL;   }
    ?><?php 
     	if ($cart->count_contents() > 0) { echo $currencies-> format($cart->show_total()) . ' inkl.MwSt.'; }
    ?><!-- Link zur Kasse aus
    <?php 
     	if ($cart->count_contents() > 0) {
       	  if (preg_match("/checkout/", $PHP_SELF)) {
          // do nothing
          } else {
         echo '&nbsp;|&nbsp;&nbsp;<a href="'. tep_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'). '" >'. HEADER_CART_CHECKOUT .'</a>'; 
        }
     	}
    ?>
    --></div>
    			<?php }else{} ?><!-- warenkorb ende --></td>
    		<td align="right" valign="middle" width="4" height="35"></td>
    	</tr>
    </table>
    <?php }else{ ?>
    <table width="960" border="0" cellspacing="0" cellpadding="0" align="center">
    	<tr>
    		<td>
    			<table width="100%" border="0" cellspacing="0" cellpadding="0">
    				<tr>
    					<td align="left"><?php
    // Datenermittlung Anrede  
    $addresses_query = tep_db_query("select entry_firstname as firstname, entry_lastname as lastname from " . TABLE_ADDRESS_BOOK . " where customers_id = '" . (int)$customer_id . "' order by firstname, lastname");
    $addresses = tep_db_fetch_array($addresses_query);
    $plv_anrede_gender_query = tep_db_query("SELECT customers_gender FROM " . TABLE_CUSTOMERS . " WHERE customers_id = '" . $customer_id . "'");
    $plv_anrede_gender = tep_db_fetch_array($plv_anrede_gender_query);
    $gender = $plv_anrede_gender['customers_gender'];
    if (ACCOUNT_GENDER == 'true') {
    if ($gender == 'm') {
    $gender_text = RESPO_NAVI_MALE;
    } else {
    $gender_text = RESPO_NAVI_FEMALE;
    }}
    ?>
    						<div id="menu">
    							<div class="inhalt">
    								<ul>
    									<?php if (tep_session_is_registered('customer_id')) { ?>
    									<li><a href="account.php"><i class="fa fa-user"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_ACCOUNT_WEL . ' ' . $gender_text . '  ' . $addresses['lastname'];?></a>
    <?php }else{ ?>
    									<li><a href="account.php"><i class="fa fa-user"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_ACCOUNT;?></a>
    <?php } ?>
    										<ul>
    											<?php if (tep_session_is_registered('customer_id')) { ?><?php if (NAVI_RESPO_SHP_CART_ENABLE=="true") { ?>
    											<li><a href="shopping_cart.php"><i class="fa fa-shopping-cart"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_SHOPPINGCART. ($cart->count_contents() > 0 ? ' (' . $cart->count_contents() . ')' : '');?></a></li>
    											<?php }else{} ?><?php if (NAVI_RESPO_CHECKOUT_SHIPPING_ENABLE=="true") { ?>
    											<li><a href="checkout_shipping.php"><i class="fa fa-eur"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_CHECKOUT;?></a></li>
    											<?php }else{} ?><?php if (NAVI_RESPO_PRIV_DATA_ENABLE=="true") { ?>
    											<li><a href="account.php"><i class="fa fa-user-o"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_PRIVAT;?></a></li>
    											<?php }else{} ?><?php if (NAVI_RESPO_ORDERS_ENABLE=="true") { ?>
    											<li><a href="account_history.php"><i class="fa fa-id-badge"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_ORDERS;?></a></li>
    											<?php }else{} ?>
    											<li><a href="logoff.php"><i class="fa fa-power-off"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_LOGOFF;?></a></li>
    											<?php }else{ ?><?php if (NAVI_RESPO_SHP_CART_ENABLE=="true") { ?>
    											<li><a href="shopping_cart.php"><i class="fa fa-shopping-cart"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_SHOPPINGCART. ($cart->count_contents() > 0 ? ' (' . $cart->count_contents() . ')' : '');?></a></li>
    											<?php }else{} ?><?php if (NAVI_RESPO_CHECKOUT_SHIPPING_ENABLE=="true") { ?>
    											<li><a href="checkout_shipping.php"><i class="fa fa-eur"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_CHECKOUT;?></a></li>
    											<?php }else{} ?>
    											<li><a href="login.php"><i class="fa fa-key"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_LOGIN;?></a></li>
    											<?php } ?>
    										</ul>
    									</li>
    								</ul>
    							</div>
    						</div>
    					</td>
    					<td align="right" width="85%">
    						<div id="menu2">
    							<div class="inhalt2">
    								<ul>
    									<li><a href="index.php"><i class="fa fa-home"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_DEFAULT;?></a></li>
    									<?php if (NAVI_RESPO_REVIEWS_ENABLE=="true") { ?>
    									<li><a href="reviews.php"><i class="fa fa-clock-o"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_REVIEWS;?></a></li>
    									<?php }else{} ?><?php if (NAVI_RESPO_SPECIALS_ENABLE=="true") { ?>
    									<li><a href="specials.php"><i class="fa fa-percent"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_SPECIALS;?></a></li>
    									<?php }else{} ?><?php if (NAVI_RESPO_NEW_PROD_ENABLE=="true") { ?>
    									<li><a href="products_new.php"><i class="fa fa-list-ul"></i>&nbsp;&nbsp;<?php echo RESPO_NAVI_PRODNEW;?></a></li>
    									<?php }else{} ?>
    								</ul>
    							</div>
    						</div>
    					</td>
    					<td align="right" width="15"></td>
    				</tr>
    			</table>
    			<table width="100%" border="0" cellspacing="0" cellpadding="0">
    				<tr height="35">
    					<td align="center" width="10" height="35"></td>
    					<td align="center" width="440" height="35"><?php if (NAVI_RESPO_SEARCH_FIELD_ENABLE=="true") { ?><?php echo tep_draw_form('search', tep_href_link(FILENAME_ADVANCED_SEARCH_RESULT, '', 'NONSSL', false), 'get') . tep_draw_hidden_field('search_in_description','1') . tep_draw_input_field('keywords', '', 'size="10" maxlength="35" style="width: ' . (220) . 'px"') . ' ' . tep_hide_session_id() .'<input type="submit" name="Submit" value=" Suchen ">' . '</form>';?>
    <?php }else{} ?></td>
    					<td align="center" width="15" height="35"></td>
    					<td align="left" height="35"><?php if (NAVI_RESPO_SEARCH_FIELD_ENABLE=="true") { ?><?php echo '<a href="' . tep_href_link('advanced_search.php') . '">' . tep_image(DIR_WS_IMAGES . 'button_top_search.png', '') . '</a>'; ?>
    <?php }else{} ?></td>
    					<td align="center" valign="middle" width="10" height="35"></td>
    					<td align="right" width="635" height="35"><!-- warenkorb start --><?php if (NAVI_RESPO_SHOP_CART_INFO_ENABLE=="true") { ?>
    						<div class="header_cart">
    							<!-- show empty cart message --><?php 
     	if ($cart->count_contents() == 0) { ?><i class="fa fa-shopping-cart"></i>&nbsp;&nbsp;<?php echo HEADER_CART_EMPTY; }
    	else { ?><i class="fa fa-shopping-cart"></i>&nbsp;&nbsp;<?php echo HEADER_CART_CONTAINS;
    	//'<a href="' . tep_href_link(FILENAME_SHOPPING_CART).'">'. HEADER_TITLE_CART_CONTENTS . ': </a>';   
    	}?>
    	<?php 
     	if ($cart->count_contents() == 1) {echo $cart->count_contents(); echo HEADER_CART_ITEM;}
    	if ($cart->count_contents() > 1) {echo $cart->count_contents(); echo HEADER_CART_ITEMS;} 
    ?><?php 
    	if ($cart->count_contents() == 0) { echo "";   }
    	if ($cart->count_contents() > 0) { echo HEADER_CART_SUBTOTAL;   }
    ?><?php 
     	if ($cart->count_contents() > 0) { echo $currencies-> format($cart->show_total()) . ' inkl.MwSt.'; }
    ?><!-- Link zur Kasse aus
    <?php 
     	if ($cart->count_contents() > 0) {
       	  if (preg_match("/checkout/", $PHP_SELF)) {
          // do nothing
          } else {
         echo '&nbsp;|&nbsp;&nbsp;<a href="'. tep_href_link(FILENAME_CHECKOUT_SHIPPING, '', 'SSL'). '" >'. HEADER_CART_CHECKOUT .'</a>'; 
        }
     	}
    ?>
    --></div>
    						<?php }else{} ?><!-- warenkorb ende --></td>
    					<td align="right" valign="middle" width="4" height="35"></td>
    				</tr>
    			</table>
    		</td>
    	</tr>
    </table>
    <?php } ?>		
    						

    Die css Datei namens menu in den Ordner css laden:

    body {
    background: rgb(0,102,225);
    background: -moz-linear-gradient(top,  rgba(0,102,225,1) 0%, rgba(0,204,255,4) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,102,225,1)), color-stop(100%,rgba(0,204,255,4)));
    background: -webkit-linear-gradient(top,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    background: -o-linear-gradient(top,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    background: -ms-linear-gradient(top,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    background: linear-gradient(to bottom,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#37383a', endColorstr='#101010',GradientType=0 );
    	background-attachment: fixed;
    }
    
    #menu {
    	width: 100%;
    	height: 65px;
    	margin: 0px auto;
    	font-family: 'Droid Sans', sans-serif;
    	background: linear-gradient(top,  rgba(0,0,0,1) 0%,rgba(229,229,229,1) 100%);
    	box-shadow: 0 0 0px #aaa;
    }
    
    #menu a {
    	color: #fff;
    	text-decoration: none;
    	-webkit-transition: all .5s ease-in-out;
    	-moz-transition: all .5s ease-in-out;
    	-o-transition: all .5s ease-in-out;
    	-ms-transition: all .5s ease-in-out;
    	transition: all .5s ease-in-out;	
    }
    
    #menu .inhalt {
    	width: 100%;
    	margin: 0 auto;
    	float: left;
    }
    
    #menu .inhalt ul {
    	position: absolute;
    	margin: 4px auto;
    	padding-left: 0px;
    	list-style: none;
    	z-index: 99;
    }
    
    #menu .inhalt ul li {
    	float: left;
    	margin: 0 0 0 10px;
    	padding: 0 10px;
    	font-size: 14px;
    	font-weight: #;
    	line-height: 50px;
    }
    
    #menu .inhalt>ul>li:hover {
    height: 55px;
    margin-top: -4px;
    background: rgb(0,102,225);
    background: -moz-linear-gradient(top,  rgba(0,102,225,1) 0%, rgba(0,204,255,4) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,102,225,1)), color-stop(100%,rgba(0,204,255,4)));
    background: -webkit-linear-gradient(top,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    background: -o-linear-gradient(top,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    background: -ms-linear-gradient(top,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    background: linear-gradient(to bottom,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#37383a', endColorstr='#101010',GradientType=0 );
    border-top: 4px solid #006BE3;
    -webkit-border-radius: 4px 4px 1px 1px;
    border-radius: 4px 4px 1px 1px;
    box-shadow: 0px 0px 1px 0px (top,  rgba(0,0,0,1) 0%, rgba(102,102,102,4) 100%);
    }
    
    #menu .inhalt ul li ul {
    top: -9999px;
    min-width: 260px;
    background: linear-gradient(top,  rgba(0,0,0,1) 0%,rgba(229,229,229,4) 100%);
    background: -moz-linear-gradient(top,  rgba(0,102,225,1) 0%, rgba(0,204,255,4) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,102,225,1)), color-stop(100%,rgba(0,204,255,4)));
    background: -webkit-linear-gradient(top,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    background: -o-linear-gradient(top,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    background: -ms-linear-gradient(top,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    background: linear-gradient(to bottom,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#37383a', endColorstr='#101010',GradientType=0 );
    padding: 0;
    margin: 0 0 0 -10px;
    box-shadow: 0 1px 5px #aaa;
    }
    
    #menu .inhalt ul li:hover ul {
    	top: 50px;
    }
    
    #menu .inhalt ul ul li {
    	float: none;
    	font-size: 14px;
    	padding: 10px 20px;
    	text-align: left;
    	margin: 0;
    	border-bottom: 1px solid #ddd;
    	line-height: 20px;
    	-webkit-transition: all .5s ease-in-out;
    	-moz-transition: all .5s ease-in-out;
    	-o-transition: all .5s ease-in-out;
    	-ms-transition: all .5s ease-in-out;
    	transition: all .5s ease-in-out;
    }
    
    #menu .inhalt ul ul li:hover {
    	background: #333;
    	color: #fff;
    }
    
    #menu .inhalt ul ul li a {
    	display: block;
    }
    
    #menu .inhalt ul ul li a:hover {
    	color: #fff;
    }
    
    #menu li ul li ul {
    	position: absolute;
    	left: -9999px;
    }
    
    #menu .inhalt ul ul li:hover ul {
    	left: 100%;
    	top: auto;
    	margin-top: -20px;
    }
    /*########################################################*/
    
    #menu2 {
    	width: 100%;
    	height: 65px;
    	margin: 0px auto;
    	font-family: 'Droid Sans', sans-serif;
    	background: linear-gradient(top, rgba(0,0,0,1) 0%,rgba(229,229,229,1) 100%);
    	box-shadow: 0 0 0px #aaa;
    }
    
    #menu2 a {
    	color: #fff;
    	text-decoration: none;
    	-webkit-transition: all .5s ease-in-out;
    	-moz-transition: all .5s ease-in-out;
    	-o-transition: all .5s ease-in-out;
    	-ms-transition: all .5s ease-in-out;
    	transition: all .5s ease-in-out;	
    }
    
    #menu2 .inhalt2 {
    	width: 100%;
    	margin: 0 auto;
    	float: right;
    }
    
    #menu2 .inhalt2 ul {
    	position: relative;
    	margin: 6px auto;
    	padding-right: 10px;
    	list-style: none;
    }
    
    #menu2 .inhalt2 ul li {
    	float: right;
    	margin: 0 0 0 10px;
    	padding: 0 10px;
    	font-size: 14px;
    	font-weight: #;
    	line-height: 50px;
    }
    
    #menu2 .inhalt2>ul>li:hover {
    height: 55px;
    margin-top: -4px;
    background: rgb(0,102,225);
    background: -moz-linear-gradient(top, rgba(0,102,225,1) 0%, rgba(0,204,255,4) 100%);
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(0,102,225,1)), color-stop(100%,rgba(0,204,255,4)));
    background: -webkit-linear-gradient(top,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    background: -o-linear-gradient(top,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    background: -ms-linear-gradient(top,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    background: linear-gradient(to bottom,  rgba(0,102,225,1) 0%,rgba(0,204,255,4) 100%); 
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#37383a', endColorstr='#101010',GradientType=0 );
    border-top: 4px solid #006BE3;
    -webkit-border-radius: 4px 4px 4px 4px;
    border-radius: 4px 4px 4px 4px;
    box-shadow: 0px 0px 1px 0px (top,  rgba(0,0,0,1) 0%, rgba(102,102,102,4) 100%);
    }

     


    zu gut der letzt, erstellt einen Button namens: button_top_search.png
    diesen dann in das Verzeichnis catalog/images laden.

    Fertig ;)

     


  7. erstelle eine neue Datei namens snow.js
    kopiere diesen code da rein speichere diese.
    Diese dann in den ordner js auf deinem server übertragen.
     

    Diesen code dann ganz unten in der index.php

    <body>
    <script src="js/snow.js" type="text/javascript"></script>
    </body>


  8. Also, 

    index.php finden:

    <?php
      }

      require(DIR_WS_INCLUDES . 'template_bottom.php');
      require(DIR_WS_INCLUDES . 'application_bottom.php');
    ?>

     

    danach einfügen:

    <body>
    <script src="js/snow.js" type="text/javascript"></script>
    </body>

     

    Anschliessend die Datei snow.js in den Ordner js einfügen. fertig ;)

    snow.js

    /*
     * Schnee-Script
     * @author Oliver Schlöbe <scripts@schloebe.de>
     * @example http://www.schloebe.de/scriptdemos/schloebe_snow/snowtest.html
     * @link http://www.schloebe.de/scripts/schnee-script/
     * @since 131219
     */
    
    if( typeof schloebesnow === "undefined" ) {
    	var schloebesnow = {
    		no: 15, // Anzahl der Schneeflocken
    		speed: 20, // "Schnei-Geschwindigkeit"; je kleiner die Zahl, um so schneller fallen die Flocken
    		snowflake: "http://www.schloebe.de/wp-content/themes/schloebe_de/images/snow/snow.gif", // Bild der Schneeflocke, beliebig
    		/*********************************/
    		/** Ab hier nichts mehr ändern! **/
    		/*********************************/
    		ns4up: (navigator.appName=="Netscape" && navigator.appVersion.charAt(0)=="4") ? 1 : 0, // Browser Tester
    		ie4up: (document.all) ? 1 : 0,
    		ns6up: (document.getElementById&&!document.all) ? 1 : 0,
    		i: 0,
    		dx: new Array(),
    		xp: new Array(),
    		yp: new Array(),
    		am: new Array(),
    		stx: new Array(),
    		sty: new Array(),
    		doc_width: 800,
    		doc_height: 800,
    		
    		let_it_snow: function() {
    			if( this.ns4up || this.ns6up ) { // Bildschirm-Auflösung holen, Netscape-Funktion
    				this.doc_width = self.innerWidth;
    				this.doc_height = self.innerHeight;
    			} else if( this.ie4up ) { // Bildschirm-Auflösung holen, Internet Explorer-Funktion
    				this.doc_width = document.body.clientWidth;
    				this.doc_height = document.body.clientHeight;
    			}
    			this.doc_height = (this.doc_height==0) ? document.documentElement.clientHeight : this.doc_height;
    			
    			for( this.i = 0; this.i < this.no; ++ this.i ) {
    				this.dx[this.i] = 0; // Koordinaten-Variable setzen
    				this.xp[this.i] = Math.random()*(this.doc_width-50); // Position-Variable setzen
    				this.yp[this.i] = Math.random()*this.doc_height;
    				this.am[this.i] = Math.random()*20; // Amplituden-Variable setzten
    				this.stx[this.i] = 0.02 + Math.random()/10; // Variable für Schrittweite setzen
    				this.sty[this.i] = 0.7 + Math.random(); // Variable für Schrittweite setzen
    				
    				if( this.ns4up ) {
    					if (this.i == 0) {
    						document.write("<layer name=\"dot"+ this.i +"\" left=\"15\" ");
    						document.write("top=\"15\" visibility=\"show\"><img src=\"");
    						document.write(this.snowflake + "\" border=\"0\"></layer>");
    					} else {
    						document.write("<layer name=\"dot"+ this.i +"\" left=\"15\" ");
    						document.write("top=\"15\" visibility=\"show\"><img src=\"");
    						document.write(this.snowflake + "\" border=\"0\"></layer>");
    					}
    				} else if( this.ie4up || this.ns6up ) {
    					if (this.i == 0) {
    						document.write("<div id=\"dot"+ this.i +"\" style=\"position: ");
    						document.write("absolute; z-index: "+ this.i +"; visibility: ");
    						document.write("visible; top: 15px; left: 15px;\"><img src=\"");
    						document.write(this.snowflake + "\" border=\"0\"></div>");
    					} else {
    						document.write("<div id=\"dot"+ this.i +"\" style=\"position: ");
    						document.write("absolute; z-index: "+ this.i +"; visibility: ");
    						document.write("visible; top: 15px; left: 15px;\"><img src=\"");
    						document.write(this.snowflake + "\" border=\"0\"></div>");
    					}
    				}
    			}
    		
    			if( this.ns4up ) {
    				this.snowNS();
    			} else if( this.ie4up ) {
    				this.snowIE();
    			}else if( this.ns6up ) {
    				this.snowNS6();
    			}
    			
    			//schloebesnow.ossnow_called = true;
    		},
    		
    		/*
    		 * Haupt-Animations-Funktion für Netscape
    		 */
    		snowNS: function() {
    			for( this.i = 0; this.i < this.no; ++ this.i ) {
    				this.yp[this.i] += this.sty[this.i];
    				if( this.yp[this.i] > this.doc_height-50 ) {
    					this.xp[this.i] = Math.random()*(this.doc_width-this.am[this.i]-30);
    					this.yp[this.i] = 0;
    					this.stx[this.i] = 0.02 + Math.random()/10;
    					this.sty[this.i] = 0.7 + Math.random();
    					this.doc_width = self.innerWidth;
    					this.doc_height = self.innerHeight;
    					this.doc_height = (this.doc_height==0) ? document.documentElement.clientHeight : this.doc_height;
    				}
    				this.dx[this.i] += this.stx[this.i];
    				document.layers["dot"+this.i].top = this.yp[this.i];
    				document.layers["dot"+this.i].left = this.xp[this.i] + this.am[this.i]*Math.sin(this.dx[this.i]);
    			}
    			setTimeout("schloebesnow.snowNS()", this.speed);
    		},
    		
    		/*
    		 * Haupt-Animations-Funktion für Internet Explorer
    		 */
    		snowIE: function() {
    			for( this.i = 0; this.i < this.no; ++ this.i ) {
    				this.yp[this.i] += this.sty[this.i];
    				if( this.yp[this.i] > this.doc_height-50 ) {
    					this.xp[this.i] = Math.random()*(this.doc_width-this.am[this.i]-30);
    					this.yp[this.i] = 0;
    					this.stx[this.i] = 0.02 + Math.random()/10;
    					this.sty[this.i] = 0.7 + Math.random();
    					this.doc_width = document.body.clientWidth;
    					this.doc_height = document.body.clientHeight;
    					this.doc_height = (this.doc_height==0) ? document.documentElement.clientHeight : this.doc_height;
    				}
    				this.dx[this.i] += this.stx[this.i];
    				document.all["dot"+this.i].style.pixelTop = this.yp[this.i];
    				document.all["dot"+this.i].style.pixelLeft = this.xp[this.i] + this.am[this.i]*Math.sin(this.dx[this.i]);
    			}
    			setTimeout("schloebesnow.snowIE()", this.speed);
    		},
    		
    		/*
    		 * Haupt-Animations-Funktion für Netscape6 und Mozilla
    		 */
    		snowNS6: function() {
    			for( this.i = 0; this.i < this.no; ++ this.i ) {
    				this.yp[this.i] += this.sty[this.i];
    				if( this.yp[this.i] > this.doc_height-50 ) {
    					this.xp[this.i] = Math.random()*(this.doc_width-this.am[this.i]-30);
    					this.yp[this.i] = 0;
    					this.stx[this.i] = 0.02 + Math.random()/10;
    					this.sty[this.i] = 0.7 + Math.random();
    					this.doc_width = self.innerWidth;
    					this.doc_height = self.innerHeight;
    					this.doc_height = (this.doc_height==0) ? document.documentElement.clientHeight : this.doc_height;
    				}
    				this.dx[this.i] += this.stx[this.i];
    				document.getElementById("dot"+this.i).style.top = this.yp[this.i]+"px";
    				document.getElementById("dot"+this.i).style.left = this.xp[this.i] + this.am[this.i]*Math.sin(this.dx[this.i])+"px";
    			}
    			setTimeout("schloebesnow.snowNS6()", this.speed);
    		}
    	}
    	
    	schloebesnow.let_it_snow();
    }

     


  9. so langsam verzweifle ich schon.

    ich krieg die product_listing.php nicht hin mit dem popup. 

    hat jemand ne Idee wie es machbar wäre ? hier mein code

                  if($listing['products_quantity']>0) {
    if (SHOW_BUY_NOW_PROD_ATTRIB == 'false') { 
                 
                  $prod_list_contents .= '        <td align="center" width="20%">' . tep_draw_button(IMAGE_BUTTON_SHOW_DETAILS, 'help', tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $listing['products_id'])) . '<p>'  . tep_draw_button(TEXT_ADD_WISHLIST, 'clipboard', tep_href_link($PHP_SELF, tep_get_all_get_params(array('action', 'products_id')) . 'action=add_wishlist&products_id=' . $listing['products_id'])) . '<p>' . tep_draw_button(IMAGE_BUTTON_BUY_NOW, 'cart', tep_href_link($PHP_SELF, tep_get_all_get_params(array('action')) . 'action=buy_now&products_id=' . $listing['products_id'])) . $in_cart .  '</td>';
                 }else{
                  $prod_list_contents .= '        <td align="center" width="20%">' . tep_draw_button(IMAGE_BUTTON_SHOW_DETAILS, 'help', tep_href_link(FILENAME_PRODUCT_INFO, 'products_id=' . $listing['products_id'])) . '<p>'  . tep_draw_button(TEXT_ADD_WISHLIST, 'clipboard', tep_href_link($PHP_SELF, tep_get_all_get_params(array('action', 'products_id')) . 'action=add_wishlist&products_id=' . $listing['products_id'])) . '<p>' . tep_draw_button(IMAGE_BUTTON_BUY_NOW, 'plusthick', tep_href_link(FILENAME_ATTRIBUTE_POPUP, 'products_id=' . $listing['products_id']) . '"target="_blanc"' ). $in_cart .  '</td>'; 
                }
                  }else{
    
                 $prod_list_contents .= ' <td align="center" width="20%"><a href="' . tep_href_link(FILENAME_PRODUCT_INFO, ($cPath ? 'cPath=' . $cPath . '&' : '') . 'products_id=' . $listing['products_id']) . '">' .
                  tep_image(DIR_WS_LANGUAGES . $language . '/' . 'images/buttons/button_mod_sold_out.png') . '</a>';
                  }
                  break;

     


  10. so funktioniert es mit dem Popup ;)

    <a href='<?php echo tep_href_link(FILENAME_ATTRIBUTE_POPUP, 'products_id=' . $all_products['products_id']); ?>', target="_blank" onclick="window.open(this.href,this.target,'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=no,width=420,height=780,screenX=150,screenY=150,top=5,left=650'); return false;"><?php echo tep_draw_button(IMAGE_BUTTON_PROD_ATTRIBUTES, 'plusthick');?>

    Die Anzeige des Buttons nur bei aktiven Attributen ist immer noch ein Thema. 


  11. SQL einspielen

    INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, date_added) VALUES 
    ('Liste der Produktmerkmale', 'MAX_ROW_LISTS_OPTIONS', '60', 'Maximale Anzahl der Produktmerkmale die auf der Liste angezeigt werden sollen', '3', '20', now());

    catalog/admin/includes/languages/german/products_attributes.php

    auskommentieren:

    //define('MAX_ROW_LISTS_OPTIONS', 10);

     

    Viel Spass damit


  12. Falls jemand Interesse hat hier ein neues Kontaktformular.
    Dieser kann über die Administration gesteuert werden An/Aus.. Adresse, Telefonnummer, Mobilnummer, Checkbox für Datenschutz.

    Viel Spass damit.

    *****************************************************

    SQL:

    INSERT INTO configuration_group (configuration_group_id, configuration_group_title, configuration_group_description, sort_order, visible) VALUES ('25','Kontaktformular', 'Emailoptionen Kontaktformular', '25', '1');

    INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added) VALUES ('Eingabefeld Telefonnummer', 'CONTACT_TELEFON_DISPLAY', 'true', 'Möchten Sie, dass das Eingabefeld für Telefonnummer zum Absenden benötigt wird ? true = ja, false = nein', '25', '1', now(), now());
    INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added) VALUES ('Eingabefeld Mobilnummer', 'CONTACT_MOBILE_DISPLAY', 'true', 'Möchten Sie, dass das Eingabefeld für Mobilnummer zum Absenden benötigt wird ? true = ja, false = nein', '25', '2', now(), now());
    INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added) VALUES ('Eingabefeld Anschrift', 'CONTACT_ADRESSE_DISPLAY', 'true', 'Möchten Sie, dass das Eingabefeld für Anschrift zum Absenden benötigt wird ? true = ja, false = nein', '25', '3', now(), now());
    INSERT INTO configuration (configuration_title, configuration_key, configuration_value, configuration_description, configuration_group_id, sort_order, last_modified, date_added) VALUES ('Datenschutz Checkbox', 'CONTACT_CHECKPRIVACY_DISPLAY', 'true', 'Möchten Sie, dass die Datenschutz Checkbox zum Absenden benötigt wird ? true = ja, false = nein', '25', '4', now(), now());
     

     

    ***************************************

    catalog/contact_us.php

    <?php
    /*
      $Id$
    
      osCommerce, Open Source E-Commerce Solutions
      http://www.oscommerce.com
    
      Copyright (c) 2010 osCommerce
    
      Released under the GNU General Public License
    */
    
      require('includes/application_top.php');
    
      require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_CONTACT_US);
    
      $error = false;
      if (isset($_GET['action']) && ($_GET['action'] == 'send') && isset($_POST['formid']) && ($_POST['formid'] == $sessiontoken)) {
        $name          = tep_db_prepare_input($_POST['name']);
        $address       = tep_db_prepare_input($_POST['address']);
        $telefon       = tep_db_prepare_input($_POST['telefon']);
        $email_address = tep_db_prepare_input($_POST['email']);
        $enquiry       = tep_db_prepare_input($_POST['enquiry']);
        $mobile           = $_POST['mobile'];
        $betreff = TEXT_WHAT . ' ' . $name;
        $text = ENTRY_NAME . ' ' . $name
               . "\n\n" . ENTRY_ADDRESS . ' ' . $address
               . "\n\n" . ENTRY_TELEFON . ' ' . $telefon
               . "\n\n" . ENTRY_EMAIL . ' ' . $email_address
               . "\n\n" . ENTRY_MOBILE . ' ' . $mobile
               . "\n\n" . ENTRY_ENQUIRY . "\n" . $enquiry;
    
        if (strlen($enquiry) < 1) {
          $error = true;
          $messageStack->add('anfrage', ENTRY_ENQUIRY_CHECK_ERROR);
        }
    if (CONTACT_MOBILE_DISPLAY == 'true') {
        if (strlen($mobile) < 1) {
          $error = true;
          $messageStack->add('anfrage', ENTRY_MOBILE_CHECK_ERROR);
        }else{
        }
        }
        if (strlen($name) < 1) {
          $error = true;
          $messageStack->add('anfrage', ENTRY_NAME_CHECK_ERROR);
        }
    if (CONTACT_ADRESSE_DISPLAY == 'true') {
        if (strlen($address) < 1) {
          $error = true;
          $messageStack->add('anfrage', ENTRY_ADDRESS_CHECK_ERROR);
        }else{
        }
        }
        if (strlen($email_address) < 1) {
          $error = true;
          $messageStack->add('anfrage', ENTRY_EMAIL_ERROR);
        }
    if (CONTACT_TELEFON_DISPLAY == 'true') {
        if (strlen($telefon) < 1) {
          $error = true;
          $messageStack->add('anfrage', ENTRY_TELEFON_ERROR);
        }else{
        }
        }
    if (CONTACT_CHECKPRIVACY_DISPLAY == 'true') {
        if(!($_POST['terms_accept'])){
            $error = true;
            $messageStack->add('anfrage', ENTRY_PRIVACY_CHECK_ERROR); 	
        }else{
        }
    }
        if ($error == false) {
          tep_mail(STORE_OWNER, STORE_OWNER_EMAIL_ADDRESS, $betreff, $text, $name, $address, $email_address, $mobile);
          tep_redirect(tep_href_link(FILENAME_CONTACT_US, 'action=success'));
        }
      }
    
    
    
      $account = array();$name = '';$email = '';$telefon = '';
      if (tep_session_is_registered('customer_id'))
      {
        $account_query = tep_db_query("select c.customers_firstname, c.customers_lastname, c.customers_telephone, c.customers_id, c.customers_default_address_id, c.customers_email_address,
        ab.entry_street_address, ab.entry_postcode, ab.entry_city"  .
         " 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);
        $name    = $account['customers_firstname'].' '.$account['customers_lastname'] ;
        $email   = $account['customers_email_address'] ;
        $telefon = $account['customers_telephone'] ;
        $address = $account['entry_street_address'] . ',' . $account['entry_postcode'] . " " . $account['entry_city'];
      }
    
      $breadcrumb->add(NAVBAR_TITLE, tep_href_link(FILENAME_CONTACT_US));
    
      require(DIR_WS_INCLUDES . 'template_top.php');
    ?>
    <div class="ui-widget infoBoxContainer">
    <div class="ui-widget-proddesc infoBoxHeading">
    
    <h1><?php echo HEADING_TITLE; ?></h1>
    <?php
      if ($messageStack->size('anfrage') > 0) {
        echo $messageStack->output('anfrage');
      }
      if (isset($_GET['action']) && ($_GET['action'] == 'success')) {
    ?>
    <div class="contentContainer">
    <div class="contentText">
    <?php echo TEXT_SUCCESS; ?>
    </div>
    </div>
    </div>
    </div>
    <?php
      } else {
    ?>
    
    <?php echo tep_draw_form('anfrage_form', tep_href_link(FILENAME_CONTACT_US, 'action=send'), 'post', '', true); ?>
    
    <div class="contentContainer">
    <div class="contentText">
    
    <table border="0" width="100%" cellspacing="0" cellpadding="2">
    <tr>
    <td class="main">
    <b><?php echo TEXT_TO; ?></b><br>
    <b><?php echo nl2br(STORE_NAME_ADDRESS); ?></b><br><br>
    <b><?php echo STORE_OWNER_EMAIL_ADDRESS; ?></b><br>
    <br><hr><br>
    <b><?php echo TEXT_1; ?></b><br>
    </td>
    </tr>
    			<tr>
          <td class="fieldValue"><?php echo tep_draw_textarea_field('enquiry', 'soft', '60', '5'); ?><br><?php echo ENTRY_ENQUIRY; ?><br>
    				</td>
        </tr>
    			<tr height="8">
    				<td class="fieldKey" height="8"></td>
    			</tr>
    			<tr>
            <td class="fieldKey"><?php echo ENTRY_NAME; ?><br>
            <?php echo (isset($account['customers_lastname']) ? $name . tep_draw_hidden_field('name',$name) : tep_draw_input_field('name', $name, 'size="45"')); ?></td>
        </tr>
    			<tr height="8">
    				<td class="fieldKey" height="8"></td>
    			</tr>
    			<tr>
          <td class="fieldKey"><?php echo ENTRY_EMAIL; ?><br>
    					<?php echo (isset($account['email']) ? $email . tep_draw_hidden_field('email',$email) : tep_draw_input_field('email', $email, 'size="45"')); ?></td>
        </tr>
    			<tr height="8">
    				<td class="fieldValue" height="8"></td>
    			</tr>
    			<td class="fieldValue"><?php if (CONTACT_ADRESSE_DISPLAY == 'true') { ?><?php echo ENTRY_ADDRESS; ?><br>
    				<?php echo (isset($account['entry_street_address']) ? $address . tep_draw_hidden_field('address',$address) : tep_draw_input_field('address', $address, 'size="45"')); ?>
    			<?php }else{}?></td>
    			<tr height="8">
    				<td height="8"></td>
    			</tr>
    			<tr>
    				<td class="fieldKey">
    				<?php if (CONTACT_TELEFON_DISPLAY == 'true') { ?>
    				<?php echo ENTRY_TELEFON; ?><br>
    				<?php echo (isset($account['telefon']) ? $telefon . tep_draw_hidden_field('telefon',$telefon) : tep_draw_input_field('telefon', $telefon, 'size="45"')); ?>
    			    <?php }else{}?></td>
    			</tr>
    			<tr height="8">
    				<td class="fieldKey" height="8"></td>
    			</tr>
    			<td class="fieldKey"><?php if (CONTACT_MOBILE_DISPLAY == 'true') { ?><?php echo ENTRY_MOBILE; ?><br>
    				<?php echo tep_draw_input_field('mobile', $mobile, 'size="45"'); ?>
    			<?php }else{}?></td>
    			<tr>
    <td>
         
    
          
          </td >
    </tr>
    			<tr>
    		<td>
    			<table width="100%" border="0" cellspacing="0" cellpadding="0">
    				<tr>
    					<td>
    					<!-- SOF TERMS ACCEPTANCE -->
    				<tr>
    					<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
    				</tr>
    				<tr>
    					<td>
    					<?php if (CONTACT_CHECKPRIVACY_DISPLAY == 'true') { ?>
    					<div class="ui-widget-futured-header infoBoxHeading">
    						<table border="0" width="100%" cellspacing="1" cellpadding="2" class="privacyBox">
    							<tr class="infoBoxContents">
    								<td>
    									<table border="0" cellspacing="2" cellpadding="2" align="left">
    										<tr>
    														<td class="main" style='text-align:left;' bgcolor="#ff0000"><input type='checkbox' name='terms_accept'></td>
    														<td class="main" style="text-align:left;" width="8"></td>
    														<td class="main" style='text-align:left;'><?php echo TERMS_COND; ?></td>
    										</tr>
    									</table></div><?php }else{}?>
    								</td>
    							</tr>
    						</table>
    					</td>
    				</tr>
    			<tr height="8">
    				<td height="8"></td>
    				
    			</tr>
    			<!-- EOF TERMS ACCEPTANCE --></td></tr>
    			</table>
    		</td>
    	</tr>
    </table>
    		<table border="0" width="100%" cellspacing="0" cellpadding="2">
    			<tr>
    				<td><?php echo tep_draw_button(IMAGE_BUTTON_SEND_QUESTION, 'triangle-1-e', null, 'primary'); ?></td>
    			</tr>
    		</table>
    	</div>
    <div class="buttonSet">
        
      </div>
    </div>
    </form>
     <div class="noprint">
        
      </div>
    
    
    </div>
    </div>
    <?php
      }
    
      require(DIR_WS_INCLUDES . 'template_bottom.php');
      require(DIR_WS_INCLUDES . 'application_bottom.php');
    ?>

     

    ****************************************

    catalog/includes/languages/german/contact_us.php

    <?php
    /*
      $Id: widerruf.php 1739 2007-12-20 00:52:16Z hpdl $
    
      osCommerce, Open Source E-Commerce Solutions
      http://www.oscommerce.com
    
      Copyright (c) 2002 osCommerce
    
      Released under the GNU General Public License
    */
    
    define('NAVBAR_TITLE', 'Kontaktformular');
    define('HEADING_TITLE', 'Kontaktformular');
    
    define('TEXT_WHAT', 'Kontaktanfrage von ');
    define('TEXT_TO', 'An:');
    define('TEXT_1', '<strong><font size="2">Ihre Nachricht hier:</font></strong>');
    define('ENTRY_ENQUIRY', 'Schildern Sie uns Ihr Anliegen.'); 
    
    define('ENTRY_NAME', 'Vorname, Name:');
    define('ENTRY_ADDRESS', 'Anschrift:');
    define('ENTRY_EMAIL', 'E-Mailadresse:');
    define('ENTRY_TELEFON', 'Telefonnummer:');
    define('ENTRY_MOBILE', 'Mobilnummer:');
    
    define('TEXT_SUCCESS', 'Vielen Dank f&uuml;r die Benutzung unseres Kontaktformulars. Wir werden Ihr Anliegen bearbeiten und uns bei Ihnen melden.');
    
    define('ENTRY_ENQUIRY_CHECK_ERROR', 'Bitte schildern Sie uns Ihr Anliegen.');
    define('ENTRY_MOBILE_CHECK_ERROR', 'Bitte geben Sie Ihre Mobilnummer ein.');
    define('ENTRY_NAME_CHECK_ERROR', 'Bitte geben Sie Ihren vollständigen Namen ein.');
    define('ENTRY_ADDRESS_CHECK_ERROR', 'Bitte geben Sie Ihre Anschrift ein.');
    define('ENTRY_EMAIL_ERROR', 'Bitte geben Sie Ihre E-Mailadresse ein.');
    define('ENTRY_TELEFON_ERROR', 'Bitte geben Sie Ihre Telefonnummer ein.');
    
    //terms acceptance
    define('TERMS_COND', '<td style="color:black;">Bestätigen Sie den <a style="color:blue;" href="extra_info_pages.php?pages_id=7"><b>Datenschutz</b></a> verstanden zu haben. </td>');
    define('ENTRY_PRIVACY_CHECK_ERROR', 'Bitte bestätigen Sie die Datenschutz-Checkbox !');
    //terms acceptance
    ?>

     


  13. Also ich verstehe es nicht,
    mit diesem Link funzt alles ganz normal:

     . tep_draw_button(IMAGE_BUTTON_IN_CART, 'plusthick', tep_href_link(FILENAME_ATTRIBUTE_POPUP, 'products_id=' . $all_products['products_id']) . '"target="_blanc"' );

     

    Damit nicht:

    <script type="text/javascript">
        function openWinYepi() {
            winx0 = (window.screenLeft != undefined ? window.screenLeft : window.screenX) + 50;
            window.open('<?php echo tep_href_link(FILENAME_ATTRIBUTE_POPUP, 'products_id=' . $all_products['products_id']); ?>', 'yepiPopWindow', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no,width=300,height=650,screenX='+ winx0 + ',screenY=150,top=150,left=' + winx0);
        }
    </script>
    <?php 
        $params = array(
            'type'      => 'button',
            'newwindow' => true,
            'params'    => 'onclick="openWinYepi();return false;"'
        );
        if (DISPLAY_CART == 'false') {
            echo tep_draw_button(IMAGE_BUTTON_PROD_ATTRIBUTES, 'lightbulb', tep_href_link(FILENAME_ATTRIBUTE_POPUP, 'products_id=' . $all_products['products_id']), null, $params);
        }
    ?>

    Dazugehörige query:

      $categories_name = '';
      if (!empty($hiddencats)) {
        $all_products_query = tep_db_query("select c.categories_id, c.categories_name, p.products_id, p.products_quantity, p.products_model, p.products_image, p.products_tax_class_id, p.products_price, pd.products_name, pd.products_description, m.manufacturers_id, m.manufacturers_name from " . TABLE_PRODUCTS . " p left join . " . TABLE_MANUFACTURERS . " m on m.manufacturers_id = p.manufacturers_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_CATEGORIES_DESCRIPTION . " c, " . TABLE_PRODUCTS_TO_CATEGORIES . " pc where p.products_id = pd.products_id and p.products_id = pc.products_id and p.products_status = 1 and pc.categories_id = c.categories_id AND c.language_id = '" . (int)$languages_id . "' and pd.language_id = '" . (int)$languages_id . "' and (not (pc.categories_id in (" . implode(',', $hiddencats) . "))) group by p.products_id order by c.categories_name, pd.products_name asc");
    } else {
        $all_products_query = tep_db_query("select c.categories_id, c.categories_name, p.products_id, p.products_quantity, p.products_model, p.products_image, p.products_tax_class_id, p.products_price, pd.products_name, pd.products_description, m.manufacturers_id, m.manufacturers_name from " . TABLE_PRODUCTS . " p left join . " . TABLE_MANUFACTURERS . " m on m.manufacturers_id = p.manufacturers_id, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_CATEGORIES_DESCRIPTION . " c, " . TABLE_PRODUCTS_TO_CATEGORIES . " pc where p.products_id = pd.products_id and p.products_id = pc.products_id and p.products_status = 1 and pc.categories_id = c.categories_id AND c.language_id = '" . (int)$languages_id . "' and pd.language_id = '" . (int)$languages_id . "'" . " order by c.categories_name, pd.products_name asc");
    }

        while ($all_products = tep_db_fetch_array($all_products_query)) {
          if($categories_name != $all_products['categories_name']) {

     

    Bin schon seit Tagen damit beschäftigt komme aber nicht weiter. Falls jemand noch helfen kann, danke ich schon im voraus. 


  14. catalog/includes/functions/general.php vor ?> einfgen

    // reorder code
      function tep_reorder ($orders_id) {
    
    	  global $cart, $languages_id;
    	
    	$result = '';
    	$ordered_products_query = tep_db_query("select op.products_id, 
    								op.orders_products_id,
    								op.products_quantity, 
    								p.products_status,
    								p.products_model,
    								p.products_quantity as stock,
    								pd.products_name
    			from " . TABLE_ORDERS_PRODUCTS . " op, " . 
    			TABLE_PRODUCTS . " p, " . 
    			TABLE_PRODUCTS_DESCRIPTION . " pd 
    			where op.orders_id = '" . $orders_id . "' and
    			op.products_id = p.products_id and
    			p.products_id = pd.products_id and
    			pd.language_id = '" . $languages_id . "'");
    	
    	while ($ordered_product = tep_db_fetch_array($ordered_products_query)) {
    	   if ($ordered_product['products_status'] == '1') {
    		   if (!tep_has_product_attributes($ordered_product['products_id'])) {
    			 if ($ordered_product['stock'] >= ($cart->get_quantity($ordered_product['products_id'])+$ordered_product['products_quantity'])) {
    			   $cart->add_cart($ordered_product['products_id'], $cart->get_quantity($ordered_product['products_id'])+$ordered_product['products_quantity']);
    			 } else {
    				$result .= 'product: ' . $ordered_product['products_id'] . ' [' . $ordered_product['products_model'] . '] > ' . $ordered_product['products_name'] . ': Not enough stock<br>'; 
    			 }
    		   } else {
    			   $attributes = array();
    			   $attributes_count = 0;
    			   $attributes_query = tep_db_query("select po.products_options_id , 
    			pov.products_options_values_id 
    			from " . TABLE_ORDERS_PRODUCTS_ATTRIBUTES . " opa,
    			" . TABLE_PRODUCTS_OPTIONS . " po,
    			" . TABLE_PRODUCTS_OPTIONS_VALUES . " pov,
    			" . TABLE_PRODUCTS_ATTRIBUTES . " pa
    			where opa.orders_id = '" . $orders_id . "' and
    			opa.orders_products_id = '" . $ordered_product['orders_products_id'] . "' and
    			po.products_options_name = opa.products_options and
    			po.language_id = '" . $languages_id . "' and
    			pa.options_id =  po.products_options_id and
    			pa.options_values_id = pov.products_options_values_id and
    			pa.products_id = '" . $ordered_product['products_id'] . "' and
    			pov.products_options_values_name = opa.products_options_values and
    			pov.language_id = '" . $languages_id . "'");
    	
    			   while ($attribute = tep_db_fetch_array($attributes_query)) {
    					 $attributes[$attribute['products_options_id']] = $attribute['products_options_values_id'];
    					 $attributes_count++;
    			   }
    	
    	if ($attributes_count < 1) {
    		$result .= 'product: ' . $ordered_product['products_id'] . ' [' . $ordered_product['products_model'] . '] > ' . $ordered_product['products_name'] . ': Attributes changed<br>'; 
    			  }
    	
    		if ($ordered_product['stock'] >= ($cart->get_quantity(tep_get_uprid($ordered_product['products_id'], $attributes))+$ordered_product['products_quantity'])) {
    		$cart->add_cart($ordered_product['products_id'], $cart->get_quantity(tep_get_uprid($ordered_product['products_id'], $attributes))+$ordered_product['products_quantity'], $attributes);
    		} else {
    		 $result .= 'product: ' . $ordered_product['products_id'] . ' [' . $ordered_product['products_model'] . '] > ' . $ordered_product['products_name'] . ': Not enough stock (attr)<br>'; 
    			  }
    		   }
    	   } else {
    		  $result .= 'product: ' . $ordered_product['products_id'] . ' [' . $ordered_product['products_model'] . '] > ' . $ordered_product['products_name'] . ': Not Available<br>'; 
    	   }
    	}
    	return $result;
    	}
    // reorder code end

     


  15. Habe versucht den Button nur auf Produkte zu legen die tatsächlich Attribute beinhalten aber es funktioniert leider nicht.

    <?php 
    $products_attributes_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$HTTP_GET_VARS['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "'");
        $products_attributes = tep_db_fetch_array($products_attributes_query);
        if ($products_attributes['total'] > 0) {
    ?>
    <?php 
        $params = array(
            'type'      => 'button',
            'newwindow' => true,
            'params'    => 'onclick="openWinYepi();return false;"'
        );
        if (SHOW_BUY_NOW_PROD_ATTRIB == 'true') {
            echo tep_draw_button(IMAGE_BUTTON_PROD_ATTRIBUTES, 'lightbulb', tep_href_link(FILENAME_ATTRIBUTE_POPUP, 'products_id=' . $products_new['products_id']), null, $params);
        }
    ?>
    <?php 
    }else{
    }
    ?>


  16. Hallo Leute, da es immer wieder zu ausfällen bei Bestellungen kam und Kundenumfrage zufolge, die Weiterleitung zur Produktseite nervte sobald ein Produkt Attribute hatte habe ich es anders gelöst und ermöglichte es Produkte direkt über ein Popup in den Warenkorb zu legen ohne dass die Kunden bestehende Seite verlassen mussten.

    Hierbei läuft alles gut mit der Ausnahme dass mir ein Javascript fehlt der die Parameter übernimmt.

    Dank Hilfe von Ingo besteht bereits ein Script mit dem ein Popup generiert wird jedoch die richtigen Werte werden nicht übernommen und es kommt immer wieder zu Anzeige der falschen products_ip
    Hier wenn jemand etwas nachsehen könnte wäre super.
    ***********************************************************************************************************************************

    Hier die entsprechenden Daten.:

    Popup-Fenster: attributte_popup.php

    <?php
    /*
      $Id$
    
      osCommerce, Open Source E-Commerce Solutions
      http://www.oscommerce.com
    
      Copyright (c) 2010 osCommerce
    
      Released under the GNU General Public License
    */
    
      require('includes/application_top.php');
    
      if (!isset($_GET['products_id'])) {
        tep_redirect(tep_href_link(FILENAME_DEFAULT));
      }
    
      require(DIR_WS_LANGUAGES . $language . '/' . FILENAME_ATTRIBUTE_POPUP);
    
      if (!empty($hiddencats)) {
        $product_check_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd, " . TABLE_PRODUCTS_TO_CATEGORIES . " p2c where p.products_status = '1' and p.products_id = '" . (int)$_GET['products_id'] . "' and pd.products_id = p.products_id and p.products_id = p2c.products_id and (not (p2c.categories_id in (" . implode(',', $hiddencats) . "))) and pd.language_id = '" . (int)$languages_id . "'");
      } else {
        $product_check_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = '" . (int)$_GET['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'");
      }
      $product_check = tep_db_fetch_array($product_check_query);
    
    //  require(DIR_WS_INCLUDES . 'template_top.php');
      if ($product_check['total'] < 1) {
    ?>
    
    <div class="contentContainer">
    <div class="contentText">
    <?php echo TEXT_PRODUCT_NOT_FOUND; ?>
    </div>
    
    <div style="float: right;">
    <?php echo tep_draw_button(IMAGE_BUTTON_CONTINUE, 'triangle-1-e', tep_href_link(FILENAME_DEFAULT)); ?>
    </div>
    </div>
    
    <?php
      } else {
        $product_info_query = tep_db_query("select p.products_id, pd.products_name, pd.products_description, p.products_model, p.products_quantity, p.products_image, pd.products_url, p.products_price, p.products_tax_class_id, p.products_date_added, p.products_date_available, p.manufacturers_id, p.products_base_price from " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = '" . (int)$_GET['products_id'] . "' and pd.products_id = p.products_id and pd.language_id = '" . (int)$languages_id . "'");
        $product_info = tep_db_fetch_array($product_info_query);
    
        tep_db_query("update " . TABLE_PRODUCTS_DESCRIPTION . " set products_viewed = products_viewed+1 where products_id = '" . (int)$_GET['products_id'] . "' and language_id = '" . (int)$languages_id . "'");
    /*
        if ($new_price = tep_get_products_special_price($product_info['products_id'])) {
          $products_price = '<del>' . $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) . '</del> <span class="productSpecialPrice">' . $currencies->display_price($new_price, tep_get_tax_rate($product_info['products_tax_class_id'])) . '</span>';
        } else {
          $products_price = $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id']));
        }
    */
       /* WS5 Wholesale - check for wholesale customer + wholesale price if exist  */
          if ( (tep_session_is_registered('wholesale_customers_id')) && ($wholesale_price = tep_get_products_wholesale_price($product_info['products_id'])) ) {
          $products_price = '<font color="#0066FF">'. tep_get_products_wholesale_note($product_info['products_id']).'</font><br>&nbsp'. '<small><span class="productWholesalePrice">' . $currencies->display_price($wholesale_price, tep_get_tax_rate(MODULE_CONTENT_WHOLESALE_LOGIN_FORM_TAX)) .'</small><br>'. $currencies->display_price($wholesale_price,'0') .'</span>';
          } else {
      /* original query below */
        if ($new_price = tep_get_products_special_price($product_info['products_id'])) {
    	  $products_price = '<del>' . $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) . '</del> <span class="productSpecialPrice">' . $currencies->display_price($new_price, tep_get_tax_rate($product_info['products_tax_class_id'])) . '</span>';
    	  $priceold = $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id']));
    	  $difference = $currencies->display_price($product_info['products_price'] - $new_price, tep_get_tax_rate($product_info['products_tax_class_id']));
    	  $savings = round(($product_info['products_price'] - $new_price)/$product_info['products_price'],2)*100;
    	  //$savings = number_format(($product_info['products_price'] - $new_price)/$product_info['products_price']*100,2,',',''); //genau berechnen
    	} else {
    	  $products_price = $currencies->display_price($product_info['products_price'], tep_get_tax_rate($product_info['products_tax_class_id']));
    	}
       }
        $v_new_price = (tep_not_null($new_price) ? $new_price : '0'); // ajax attribute pricechange
        $v_products_price = (tep_not_null($product_info['products_price']) ? $product_info['products_price'] : '0'); // ajax attribute pricechange
    
        if (tep_not_null($product_info['products_model'])) {
        $products_name = $product_info['products_name'] . '<br /><span class="smallText">[' . $product_info['products_model'] . ']</span>'; // Artikelnummer ausgeschalten
          $products_name = $product_info['products_name'] . '';
        } else {
          $products_name = $product_info['products_name'];
        }
        $products_base_price = $product_info['products_base_price'];
    ?>
    <head>
    <base href="<?php echo (($request_type == 'SSL') ? HTTPS_SERVER : HTTP_SERVER) . DIR_WS_CATALOG; ?>" />
    <link rel="stylesheet" type="text/css" href="ext/jquery/ui/redmond/jquery-ui-1.10.4.min.css" />
    <script type="text/javascript" src="ext/jquery/jquery-1.11.1.min.js"></script>
    <script type="text/javascript" src="ext/jquery/ui/jquery-ui-1.10.4.min.js"></script>
    
    <?php
     	if ($mobile=='true') {
    ?>
    <link rel="stylesheet" type="text/css" href="stylesheet_mobile.css" />
    <?php
    } else {
    ?>
    <link rel="stylesheet" type="text/css" href="stylesheet.css" />
    <?php 
    } 
    ?>
    </head>
    <?php
    if (basename($PHP_SELF) == FILENAME_ATTRIBUTE_POPUP) { ?> <script type="text/javascript" src="js/change_price.js"></script> 
    <?php }
    ?>
    
    <?php echo tep_draw_form('cart_quantity', tep_href_link(FILENAME_ATTRIBUTE_POPUP, tep_get_all_get_params(array('action')) . 'action=add_product')); ?>
    <!-- GESAMT TABELLENLAYOUT START -->
    
    <!-- Layouttabelle PC- Browseransicht start -->
    <?php
    }else{
    ?>
    
    		<table border="0" cellspacing="0" cellpadding="0" align="center">
    			<tr>
    				<td width="350">
    				<div class="ui-widget infoBoxContainer">
    <div class="ui-widget-proddesc infoBoxHeading">
    					<table border="0" cellspacing="0" cellpadding="0" align="center">
    						<tr>
    							<td align="center" valign="top" width="300">
    								<table border="0" cellspacing="0" cellpadding="0">
    									<tr>
    										<td align="left"><!-- Produkt Name start --><?php 
    // to add a tick when the item is in the cart
    		$products = $cart->get_products();
    		$in_cart = '';
    		for ($i=0, $n=sizeof($products); $i<$n; $i++) {
          		$first = current(explode("{", $products[$i]['id']));
    			if ($first == $product_info['products_id']) {
    				$in_cart = '<span class="ui-icon ui-icon-check" style="display: inline-block; vertical-align: middle;"></span>';
    			}
    		}
    ?>
    											<h1><?php echo $products_name; ?><?php echo $in_cart; ?></h1>
    											<?php echo ARTICEL_NR . $product_info['products_model'], ''; ?>
    <!-- Produkt Name ende -->
    											<hr />
    											<!-- Preis start -->
    											<h2><?php
    if ( (tep_session_is_registered('wholesale_customers_id')) && ($wholesale_price = tep_get_products_wholesale_price($product_info['products_id'])) ) {
    echo $products_price;
    } else {
    ?></h2>
    											<h2 id="display_price"><?php echo $products_price; ?></h2>
    											<?php
    }
    ?><?php if (!empty($difference))
    {
    echo '<span class="pricesavingstext">' . TEXT_PRICE_SAVINGS . '</span><span class="pricesavings">' . $difference . ' (' . $savings . '%)</span><br>';
    }
    ?>
    											<div class="base_price">
    												<!-- // Basispreis ergänzen BOF // --><?php
                  IF (tep_not_null($products_base_price))
                  {
                    $y_base_price = substr($products_base_price, 0, strrpos($products_base_price, " "));
                    $y_base_rest  = substr($products_base_price, strrpos($products_base_price , ' '));
                    $products_base_price = $y_base_price;
    
                    // prüfe auf Sonderangebot                                   //
                    // Wenn Sonderangebot, dann errechne Grundpreis wie folgt:   //
                    // ermittle base_price = base_price einlesen solange bis " " //
                    // Faktor = Normalpreis : base_price                         //
                    // spezial_base_price = Spezialpreis : Faktor                //
                    if (tep_not_null($new_price))
                    {
                      $y_faktor=$product_info['products_price']/$y_base_price;
                      $products_base_price=$new_price/$y_faktor;
                    }
    
                    $y_tax_rate          = tep_get_tax_rate($product_info['products_tax_class_id']);
                    $products_base_price = tep_add_tax($products_base_price, $y_tax_rate);
    
                    // sicherheitshalber erst runden, dann auf 2 Stellen hinter dem Komma formatieren //
                    $products_base_price=round($products_base_price,2);
                    $products_base_price=sprintf("%01.2f",$products_base_price);
    
                    $products_base_price = "(" . $products_base_price . $y_base_rest . ")";
                    echo $products_base_price;
                  }
                  ?><!-- // Basispreis ergänzen BOF // --></div>
    											<!-- Preis ende --></td>
    									</tr>
    								</table>
    							</td>
    						</tr>
    						<tr>
    							<td align="center" valign="top" width="300">
    								<table border="0" cellspacing="0" cellpadding="0">
    									<tr>
    										<td valign="top">
    											<table border="0" cellspacing="0" cellpadding="0">
    												<tr>
    													<td valign="top"><!-- attribute start --><?php
        $products_attributes_query = tep_db_query("select count(*) as total from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$_GET['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "'");
        $products_attributes = tep_db_fetch_array($products_attributes_query);
        if ($products_attributes['total'] > 0) {
    ?>
    														<div class="ui-widget infoBoxContainer">
    															<div class="ui-widget-proddesc infoBoxHeading">
    																<hr>
    																<h1><?php echo TEXT_PRODUCT_OPTIONS; ?></h1>
    																<hr>
    																<?php
          $products_options_name_query = tep_db_query("select distinct popt.products_options_id, popt.products_options_name from " . TABLE_PRODUCTS_OPTIONS . " popt, " . TABLE_PRODUCTS_ATTRIBUTES . " patrib where patrib.products_id='" . (int)$_GET['products_id'] . "' and patrib.options_id = popt.products_options_id and popt.language_id = '" . (int)$languages_id . "' order by popt.products_options_name");
          $numberofopt = tep_db_num_rows($products_options_name_query);	  
          $opt_count = 0;	  
          $products_attributes = array();
    	  while ($products_options_name = tep_db_fetch_array($products_options_name_query)) {
    	    array_push($products_attributes,$products_options_name['products_options_id']);
            $opt_count++;
            $products_options_array = array();
            $products_options_query = tep_db_query("select pov.products_options_values_id, pov.products_options_values_name, pa.options_values_price, pa.price_prefix from " . TABLE_PRODUCTS_ATTRIBUTES . " pa, " . TABLE_PRODUCTS_OPTIONS_VALUES . " pov where pa.products_id = '" . (int)$_GET['products_id'] . "' and pa.options_id = '" . (int)$products_options_name['products_options_id'] . "' and pa.options_values_id = pov.products_options_values_id and pov.language_id = '" . (int)$languages_id . "'");
            while ($products_options = tep_db_fetch_array($products_options_query)) {
              $products_options_array[] = array('id' => $products_options['products_options_values_id'], 'text' => $products_options['products_options_values_name']);
              if ($products_options['options_values_price'] != '0') {
                $products_options_array[sizeof($products_options_array)-1]['text'] .= ' (' . $products_options['price_prefix'] . $currencies->display_price($products_options['options_values_price'], tep_get_tax_rate($product_info['products_tax_class_id'])) .') ';
              }
            }
    
            if (is_string($_GET['products_id']) && isset($cart->contents[$_GET['products_id']]['attributes'][$products_options_name['products_options_id']])) {
              $selected_attribute = $cart->contents[$_GET['products_id']]['attributes'][$products_options_name['products_options_id']];
            } else {
              $selected_attribute = false;
            }
    ?><strong><?php echo $products_options_name['products_options_name'] . ':'; ?></strong><br />
    																<?php 
    			  $comma = "";
    			  $all_option_js = "[";
    			  for($t = 1;$t<=$numberofopt; $t++)
    			  {
    			  	$all_option_js .= $comma.'document.getElementById(\'cmbooption_'.$t.'\').value';
    			  	$comma = ",";				
    			  }
    			  $all_option_js .= "]";			  
    			  ?><?php 
    			  echo tep_draw_pull_down_menu('id[' . $products_options_name['products_options_id'] . ']', $products_options_array, $selected_attribute, 'style="width: 250px;"' . ' id="cmbooption_'.$opt_count.'"  onChange="getPrice('.$v_new_price.','.$v_products_price.','.(int)$_GET['products_id'].','.$all_option_js.')"'); ?><br />
    																<?php
          }
    ?></p><?php
        }
    ?><?php echo TEXT_NO_ATTRIBUTES;?>
    <input type="hidden" name="optionsid" id="optionsid" value="<?php echo implode(",",$products_attributes); ?>" />
    																<div style="clear: both;"></div>
    															</div>
    														</div>
    														<!-- attribute ende --></td>
    												</tr>
    											</table>
    										</td>
    									</tr>
    								</table>
    							</td>
    						</tr>
    						<tr height="10">
    							<td valign="top" width="300" height="10"></td>
    						</tr>
    						<tr>
    							<td valign="top" width="300">
    								<hr />
    							</td>
    						</tr>
    						<tr>
    							<td align="left" valign="top" width="300">
    								<table width="100%" border="0" cellspacing="0" cellpadding="0">
    									<tr>
    										<td align="right" valign="top" width="35%">
    											<div class="buttonSet">
    												<table border="0" cellspacing="0" cellpadding="0" align="center">
    													<tr>
    														<td align="center"><!-- Vervügbarkeit start --><?php
     if ($product_info['products_date_available'] > date('Y-m-d H:i:s')) {
     $avail = tep_image(DIR_WS_ICONS . 'blue.gif', AMP_TOMORROW , '10', '15'). "  " . AMP_TOMORROW;
      } else {
       if ($product_info['products_quantity']<=0){
        $avail = tep_image(DIR_WS_ICONS . 'red.gif', PICTURE_ONLY_ZERO , '10', '15'). "  " . AMP_ONLY_ZERO;
       } else {
        $prod_quantity = tep_get_products_stock($product_info['products_id']);
        switch ($prod_quantity) {
             case 1: $avail = tep_image(DIR_WS_ICONS . 'yellow.gif', PICTURE_ONLY_ONE , '10', '15'). "  " . AMP_ONLY_ONE;
             break;
             case 2: $avail = tep_image(DIR_WS_ICONS . 'yellow.gif', PICTURE_ONLY_TWO , '10', '15'). "  " . AMP_ONLY_TWO;
             break;
             case 3: $avail = tep_image(DIR_WS_ICONS . 'green.gif', PICTURE_ONLY_THREE , '10', '15'). "  " . AMP_ONLY_THREE;
             break;
             case 4: $avail = tep_image(DIR_WS_ICONS . 'green.gif', PICTURE_ONLY_FOUR , '10', '15') . "  " . AMP_ONLY_FOUR;
             break;
             default: $avail = tep_image(DIR_WS_ICONS . 'green.gif', $prod_quantity . PICTURE_ONLY_FULL , '10', '15') . "  " . AMP_ONLY_FULL;
        }
        }
     }
    $a = $avail;
    echo '<b>'. TEXT_QUANTITY_LIST .'</b>&nbsp;'; echo $a ?><!-- Vervügbarkeit ende --></td>
    													</tr>
    													<tr height="4">
    														<td align="center" height="4"></td>
    													</tr>
    													<tr>
    														<td align="center">
    															<table border="0" cellspacing="0" cellpadding="0">
    																<tr>
    																	<td align="center" width="200"><!-- Warenkorbbutton start -->
    																		<div class="buttonSet">
    																			<span class="buttonAction"><?php
    echo '<span class="fieldValue">' . TEXT_ENTER_QUANTITY . ' ' . tep_draw_input_field('cart_quantity', '1', 'size="5" style="vertical-align:middle;"') . '</span> ' . tep_draw_hidden_field('products_id', $product_info['products_id']) . '&nbsp' . tep_draw_button(IMAGE_BUTTON_IN_CART, 'cart', null, 'primary'); 
    ?></span></div>
    																		<!-- Warenkorbbutton ende --></td>
    																</tr>
    															</table>
    														</td>
    													</tr>
    													<tr height="15">
    														<td height="15">
    															<hr>
    														</td>
    													</tr>
    													<tr height="5">
    														<td height="5"></td>
    													</tr>
    													<tr>
    														<td align="center">
    															<p><?php echo '<a href="#" onclick="window.close(); return false;">' . TEXT_CLOSE_WINDOW . '</a>'; ?>
    														</td>
    													</tr>
    													<tr height="5">
    														<td align="center" height="5"></td>
    													</tr>
    												</table>
    											</div>
    										</td>
    									</tr>
    								</table>
    							</td>
    						</tr>
    					</table>
    				</td>
    			</tr>
    		</div>
    </div>	
    		</table>
    	
    <?php
    }
    ?>
    <!-- Layouttabelle PC- Browseransicht ende -->
    
    <!-- GESAMT TABELLENLAYOUT ENDE -->
    </form>
    
    <script type="text/javascript">
    <!--
      getPrice(<?php echo $v_new_price.','.$v_products_price.','.(int)$_GET['products_id'].','.$all_option_js;?>);
    //-->
    </script>
    
    <?php
      }
      require(DIR_WS_INCLUDES . 'application_bottom.php');
    ?>

     

    Weitergeht es mit der Sprachdatei: attributte_popup.php

     

    <?php
    /*
      $Id$
    
      osCommerce, Open Source E-Commerce Solutions
      http://www.oscommerce.com
    
      Copyright (c) 2013 osCommerce
    
      Released under the GNU General Public License
    */
    
    define('TEXT_PRODUCT_NOT_FOUND', 'Produkt wurde nicht gefunden!');
    
    define('TEXT_MORE_INFORMATION', 'Für weitere Informationen, besuchen Sie bitte die <a href="%s" target="_blank"><u>Homepage</u></a> zu diesem Produkt.');
    define('TEXT_PRODUCT_OPTIONS', '<font size="3" color="#b10000"><strong>Bitte treffen Sie Ihre Wahl:</strong></font>');
    
    define('TEXT_ENTER_QUANTITY', 'Menge: ');
    
    define('AMP_TOMORROW', 'Artikel in k&uuml;rze wieder lieferbar!');
    define('AMP_ONLY_FULL', 'Sofort lieferbar!');
    define('AMP_ONLY_FOUR', 'Sofort lieferbar aber nur noch 4 mal vorr&auml;tig!');
    define('AMP_ONLY_THREE', 'Sofort lieferbar aber nur noch 3 mal vorr&auml;tig!');
    define('AMP_ONLY_TWO', 'Sofort lieferbar aber nur noch 2 mal vorr&auml;tig!');
    define('AMP_ONLY_ONE', 'Sofort lieferbar aber nur noch 1 mal vorr&auml;tig! Greifen Sie schnell zu.');
    define('AMP_ONLY_ZERO', 'Derzeit nicht lieferbar!');
    define('TEXT_QUANTITY_LIST', 'Verf&uuml;gbarkeit:');
    
    define('TEXT_PRICE_SAVINGS','Sie sparen: ');
    define('TEXT_NO_ATTRIBUTES','<font size="2" color="#990000"><b>Keine weiteren Produktextras.</b></strong></font>');
    define('TEXT_CLOSE_WINDOW','<font size="3" color="#990000">X </font><font size="2" color="#000000"><b>Fenster schliessen</b></strong></font>');
    define('TEXT_CLOSE_WINDOW_MOBILE','<font size="6" color="#990000">X </font><font size="6" color="#000000"><b>Fenster schliessen</b></strong></font>');
    ?>

     

    INSERT INTO `configuration` VALUES (914, 'Direktkauf Popup ermöglichen', 'SHOW_BUY_NOW_PROD_ATTRIB', 'true', 'Direktkauf trotz Atribute ermöglichen', 1, 158, '2006-08-12 19:45:03', '2003-08-14 00:25:08', NULL, 'tep_cfg_select_option(array(''false'', ''true''),');

    Abfragen über:

    if (SHOW_BUY_NOW_PROD_ATTRIB == 'true') { 
    } else {
    }

    **************************************************************

    catalog/includes/languages/german.php

    define('TEXT_QUANTITY_LIST', 'Verfügbarkeit');
    define('TEXT_ENTER_QUANTITY', 'Menge: ');
    define('TEXT_CLOSE_WINDOW', 'X Fenster schliessen');
    define('IMAGE_BUTTON_PROD_ATTRIBUTES', 'In den Warenkorb legen ');
     

    *****************************************************

    catalog/includes/filenames.php

    define('FILENAME_ATTRIBUTE_POPUP', 'attributte_popup.php');

    *****************************************************

    catalog/images/icons/

    Erstellen von Verfügbarkeitsicons

    yellow.gif
    green.gif
    red.gif
    blue.gif

    *****************************************************


    catalog/includes/modules/product_listing.php

    finden:

    case 'PRODUCT_LIST_BUY_NOW':
                $prod_list_contents .= '        <td align="center">' . tep_draw_button(IMAGE_BUTTON_BUY_NOW, 'cart', tep_href_link($PHP_SELF, tep_get_all_get_params(array('action')) . 'action=buy_now&products_id=' . $listing['products_id'])) . '</td>';
                break;

    ersätzen mit:

    case 'PRODUCT_LIST_BUY_NOW':
    if (SHOW_BUY_NOW_PROD_ATTRIB == 'false') { 
                $prod_list_contents .= '        <td align="center">' . tep_draw_button(IMAGE_BUTTON_BUY_NOW, 'cart', tep_href_link($PHP_SELF, tep_get_all_get_params(array('action')) . 'action=buy_now&products_id=' . $listing['products_id'])) . '</td>';
                }else{
                $prod_list_contents .= '        <td align="center">' . tep_draw_button(IMAGE_BUTTON_BUY_NOW, 'plusthick', tep_href_link(FILENAME_ATTRIBUTE_POPUP, 'products_id=' . $listing['products_id']) . '"target="_blanc"' ). '</td>';
                }
                break;

     

    Hier der Code vom Ingo für das Popup.

    <script type="text/javascript">
        function openWinYepi() {
            winx0 = (window.screenLeft != undefined ? window.screenLeft : window.screenX) + 50;
            window.open('<?php echo tep_href_link(FILENAME_ATTRIBUTE_POPUP, 'products_id=' . $all_products['products_id']); ?>', 'yepiPopWindow', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no,width=300,height=650,screenX='+ winx0 + ',screenY=150,top=150,left=' + winx0);
        }
    </script>
    <?php 
        $params = array(
            'type'      => 'button',
            'newwindow' => true,
            'params'    => 'onclick="openWinYepi();return false;"'
        );
        if (SHOW_BUY_NOW_PROD_ATTRIB == 'true') {
            echo tep_draw_button(IMAGE_BUTTON_PROD_ATTRIBUTES, 'lightbulb', tep_href_link(FILENAME_ATTRIBUTE_POPUP, 'products_id=' . $all_products['products_id']), null, $params);
        }
    ?> 

    für jede Hilfe bin ich dankbar um dieses zu verbessern.

×