haben es jetzt wegen *schieb*
selbst gelöst- der Preis wird wieder "richtig " angezeigt.
Hier die Info dazu
in der Datei
administrator/components/com_virtuemart/classes/ps_product_attribute.php ab ca. Zeile 311
if( $attribtxt != "") {
$vorzeichen=substr($base_value,strrpos($base_value, '[')+1,1); // negative, equal or positive?
if( $_SESSION["auth"]["show_price_including_tax"] == 1 ) {
$price = floatval(substr($base_value,strrpos($base_value, '[')+2))*(1+ @$_SESSION['product_sess'][$product_id]['tax_rate']); // calculate Tax
}
else {
$price = floatval(substr($base_value,strrpos($base_value, '[')+2));
}
// Apply shopper group discount
$price *= 1 - ($auth["shopper_group_discount"]/100);
if ($price=="0") {
$attribut_hint = "test";
}
$base_var=str_replace(" ","_",$base_value);
$base_var=substr($base_var,0,strrpos($base_var, '['));
$html.="<option value=\"$base_var\">$attribtxt";
if( $_SESSION['auth']['show_prices'] ) {
$html .= "(".$vorzeichen."".$CURRENCY_DISPLAY->getFullValue($price).")";
}
$html .= "</option>";
}
ersetzen durch
if( $attribtxt != "") {
$vorzeichen=substr($base_value,strrpos($base_value, '[')+1,1); // negative, equal or positive?
if( $_SESSION["auth"]["show_price_including_tax"] == 1 ) {
$price = floatval(substr($base_value,strrpos($base_value, '[')+2))*(1+ @$_SESSION['product_sess'][$product_id]['tax_rate']); // calculate Tax
}
else {
$price = floatval(substr($base_value,strrpos($base_value, '[')+2));
}
// Apply shopper group discount
$price *= 1 - ($auth["shopper_group_discount"]/100);
if ($price=="0") {
$attribut_hint = "test";
}
$base_var=str_replace(" ","_",$base_value);
$base_var=substr($base_var,0,strrpos($base_var, '['));
$html.="<option value=\"$base_var\">$attribtxt";
if( $_SESSION['auth']['show_prices'] ) {
if ($vorzeichen=="="){
$price_string=$CURRENCY_DISPLAY->getFullValue($price);
}
else{
require_once (CLASSPATH . 'ps_product.php' );
if( is_null( $ps_product )) {
$ps_product = new ps_product();
}
$real_price = $ps_product->get_price($product_id);
if( $_SESSION["auth"]["show_price_including_tax"] == 1 ) {
$tax_rate = 1 + $ps_product->get_product_taxrate($product_id);
$real_price['product_price'] *= $tax_rate;
}
if ($vorzeichen=="+" ){
$real_price['product_price'] += $price;
}
else{
$real_price['product_price'] -= $price;
}
$price_string=$CURRENCY_DISPLAY->getFullValue($real_price['product_price']);
}
$html .= ",".substr($price_string,6,strlen($price_string))."€";
}
$html .= "</option>";
}