#1 (permalink)  
Alt 12.04.2006, 11:27
sff sff ist offline
xt:Commerce Support Kunde
 
Registriert seit: 16.07.2004
Beiträge: 775
Standard

Alle die noch die v2 im Einsatz haben und Produkte verkaufen, welche der Pflicht zur Grundpreisauszeichnung unterliegen, sollte nat?rlich am besten auf die neuste xtc-Version umsteigen, um Abmahnungen und/oder Gerichtsverfahren aus dem Weg zu gehen.

Wer f?r das Update aber gerade keine Zeit/Lust/Geld/Knowhow/Mut/... hat, kann sich u.U. mit folgender Frickell?sung vorl?ufig behelfen.

In diesem Beispiel gehe ich davon aus, dass ausschlie?lich Produkte nach "ml" verkauft werden, wobei die Packungsgr??e entweder in den Optionswerten, im der Artikelbeschreibung oder im Produktnamen auftaucht. Es handelt sich ausdr?cklich um eine Bastell?sung, denn es wird einfach nach dem Vorkommen von "[Zahl][ggf. Leerzeichen]ml" gesucht und dann auf die Einheit 100ml umgerechnet. Wer andere Einheiten verwendet, kann das Beispiel nat?rlich entsprechend ab?ndern...
Au?erdem habe ich der Einfachheit halber das Wort "Grundpreis" direkt in das Template geschrieben, anstatt es in die language-Files auszulagern. Wer einen mehrsprachigen Shop hat, m?sste das nat?rlich noch anpassen.

includes/modules/products_attributes.php:

zwischen
Code:
$price = ...
und
Code:
$products_options_data[$row]['DATA'][$col]=array( ...
folgendes einf?gen:
Code:
  // XTC-DELUXE.DE VPE v2
  if (preg_match('/(\d+)(-|\s)*(ml)/i',$products_options['products_options_values_name'],$vpe) > 0) 
  {
  	if ($vpe[1] != 100)
 	{
   $vpe_value = xtc_format_price(($price/$vpe[1]*100), $price_special=0, $calculate_currencies=false, 1).' '.$_SESSION['currency'].'/ 100'.$vpe[3];
 	}
  }
  // XTC-DELUXE.DE VPE v2 END

dann zwischen

Code:
'PRICE' =>$price." ".$_SESSION['currency'],
und
Code:
'PREFIX' =>$products_options['price_prefix']);
folgendes einsetzen:
Code:
// XTC-DELUXE.DE VPE v2VPE
'VPE' => $vpe_value,
// XTC-DELUXE.DE VPE v2 END
includes/modules/product_info.php
zwischen
Code:
include(DIR_WS_MODULES . 'product_attributes.php');
und
Code:
include(DIR_WS_MODULES . 'product_reviews.php');
geh?rt folgendes:
Code:
// XTC-DELUXE.DE VPE v2
if (empty($vpe))
{
	if (preg_match('/(\d+)(-|\s)*(ml)/i',$product_info['products_description'],$vpe) > 0 || preg_match('/(\d+)(-|\s)*(ml)/i',$product_info['products_name'],$vpe) > 0 )
	{
 if ($vpe[1] != 100)
 	$info_smarty->assign('VPE',(xtc_format_price(($products_price/$vpe[1]*100), $price_special=0, $calculate_currencies=false, 1).' '.$_SESSION['currency'].'/ 100'.$vpe[3]));
	}
}
// XTC-DELUXE.DE VPE v2 END
Nun haben wir den Grundpreis in Smarty-Variablen gepackt und m?ssen diese nur noch ausgeben.

templates/../module/product_info/product_info_v1.html
Code:
{if $VPE!=''}<div class="price_disclaimer" align="right"><b>(Grundpreis: {$VPE})</b></div>{/if}
(Ich habe dem Grundpreis hier noch eine Klasse verpasst, um die Darstellung entsprechend anpassen zu k?nnen...)

templates/../module/product_options/product_options_dropdown.html (oder welche ihr verwendet)
Code:
{if $item_data.VPE!=''} (Grundpreis: {$item_data.VPE}){/if}
(hinter den anderen Smarty-Variablen, wie {$item_data.PRICE} usw...)

Um noch andere Einheiten umzurechnen, muss das Suchmuster entsprechend erweitert werden, also f?r die zus?tzliche Einheit kg z.B.: /(\d+)(-|\s)*(ml|kg)/i (man k?nnte diesen String nat?rlich auch in eine Variable packen, so dass man ihn nicht an 3 Stellen ?ndern muss... f?llt mir gerade auf... anyway;-)
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #2 (permalink)  
Alt 22.08.2006, 14:40
m&d m&d ist offline
Neuer Benutzer
 
Registriert seit: 27.02.2006
Beiträge: 8
Standard

Hallo.

Schöne Sache, habs in Benutzung und alles funktioniert bestens. Habs ein wenig umgebaut, sodaß ich L als Grundpreis angeben kann.
Leider funktioniert es nur bei Aufruf der einzelnen Artikel. In der Produktliste die nach Aufruf der Kategorie erscheint taucht die Grundpreisangabe nicht auf.
Habs auch in der produktlisting in meinem Template eingetragen und alles andere auch wie es beschrieben ist.
Laut Beschreibung muß man ja nicht in der produkt_listing.php in includes/module eintragen. Nehme an, daß dort der Fehler liegt. Hab auch schon probiert die entsprechenden Zeilen dort einzufügen. Wahrscheinlich aber an der falschen Stelle. Wäre schön wenn mir das nochmal jemand sagen könnte wo die Zeilen:

Code:
  // XTC-DELUXE.DE VPE v2
  if (preg_match('/(\d+)(-|\s)*(ml)/i',$products_options['products_options_values_name'],$vpe) > 0) 
  {
  	if ($vpe[1] != 100)
 	{
   $vpe_value = xtc_format_price(($price/$vpe[1]*100), $price_special=0, $calculate_currencies=false, 1).' '.$_SESSION['currency'].'/ 100'.$vpe[3];
 	}
  }
  // XTC-DELUXE.DE VPE v2 END
in der produkt_listing.php reingehören
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #3 (permalink)  
Alt 25.08.2006, 13:29
m&d m&d ist offline
Neuer Benutzer
 
Registriert seit: 27.02.2006
Beiträge: 8
Standard

Hallo.

Muß ich vieleicht nichts in der produkt_listing.php ändern?
Muß ich woanders noch was ändern?
Gehts überhaupt in der v2er die Grundpreisangabe im Produktlisting bzw. bei den neuen Produkten in der Übersicht mit anzeigen zu lassen?
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #4 (permalink)  
Alt 25.08.2006, 16:17
sff sff ist offline
xt:Commerce Support Kunde
 
Registriert seit: 16.07.2004
Beiträge: 775
Standard

Nun, es handelt sich hier ja nur um eine Bastel-Lösung für juristische Notfälle

Ich würde sagen, bis zum Update reicht die Grundpreisangabe auf der Detailseite...

(Falls du eine Mengenangabe im Produktnamen hast, würde ich die evtl. rausnehmen...)
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #5 (permalink)  
Alt 25.08.2006, 16:19
sff sff ist offline
xt:Commerce Support Kunde
 
Registriert seit: 16.07.2004
Beiträge: 775
Standard

Du hast ja auch den einzufügenden Code verändert... dort fehlt ein "assign" - vielleicht liegt's ja daran...?!
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #6 (permalink)  
Alt 25.08.2006, 19:33
m&d m&d ist offline
Neuer Benutzer
 
Registriert seit: 27.02.2006
Beiträge: 8
Standard

Hallo.

Der Tipp mit der Mengenangabe ist ganz gut glaub ich. Habe jetzt nochmal einiges probiert, auch wegen dem fehlenden assign aber leider ohne Erfolg.
Hab jetzt einige Tage an dem Problem gesessen und reicht nun hin.
Muß ich halt warten und vorher nochmal Infos einholen. Trotzdem danke.

PS: Hab das assign nicht weggemacht es war in dem Teil des Codes der in die produkt_attributes.php muß nicht drin
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
grundpreisangabe

Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus



Alle Zeitangaben in WEZ +1. Es ist jetzt 00:57 Uhr.

Copyright © 2011 xt:Commerce GmbH / xt:Commerce International Ltd. - All Rights Reserved

xt:Commerce is a SafeCharge brand