getFTPrice (Preis als Grafik - zweierlei)

[B]Ich habe in der Datei /core/oxarticle.php in Zeile 2628-2746 folgenden code bearbeitet[/B]
(anbei hänge ich die datei mit an)

[I] public function getFTPrice()
{
if ( $oPrice = $this->getTPrice() ) {
if ( $oPrice->getBruttoPrice() ) {
return oxLang::getInstance()->formatCurrency( oxUtils::getInstance()->fRound($oPrice->getBruttoPrice()));
}
} else {
return null;
}
}

public function getFTPriceIMG()
{
    if ( $oPrice = $this->getTPrice() ) {
        if ( $oPrice->getBruttoPrice() ) {
            return $this->doTxt2ImgOld(oxLang::getInstance()->formatCurrency( oxUtils::getInstance()->fRound($oPrice->getBruttoPrice())));
        }
    } else {
        return null;
    }
}

public function doTxt2ImgOld($var) 
{
	$output = '<div class="oldPriceImg">';
	$priceStr = explode(",",$var);
	$output .= '<img src="/eshop/out/basic/src/number/uvp_big_left.jpg" alt="left" class="left" />';
	for($i=0; $i<=strlen($priceStr[0]); $i++) {
		if(ctype_digit(substr($priceStr[0],$i,1))) {
			$output .= '<img src="/eshop/out/basic/src/number/uvp_big_'.substr($priceStr[0],$i,1).'.jpg" alt="'.substr($priceStr[0],$i,1).'" />';
		}
	}
	$output .= '<img src="/eshop/out/basic/src/number/uvp_big_dot.jpg" alt="," />';
	for($i=0; $i<=strlen($priceStr[1]); $i++) {
		if(ctype_digit(substr($priceStr[1],$i,1))) {
			$output .= '<img src="/eshop/out/basic/src/number/uvp_big_'.substr($priceStr[1],$i,1).'_.jpg" alt="'.substr($priceStr[1],$i,1).'" />';
		}
	}
	$output .= '<img src="/eshop/out/basic/src/number/uvp_big_euro.jpg" alt="euro" />';
	$output .= '<img src="/eshop/out/basic/src/number/uvp_big_right.jpg" alt="right" />';
	$output .= '</div>';
	return $output;
}

/**
 * Returns formated product's price.
 *
 * @return double
 */
public function getFPrice()
{
    if ( $oPrice = $this->getPrice() ) {
        return $this->getPriceFromPrefix().oxLang::getInstance()->formatCurrency( $oPrice->getBruttoPrice() );
    } else {
        return null;
    }
}

public function getFPriceIMG()
{
    if ( $oPrice = $this->getPrice() ) {
        return $this->doTxt2Img($this->getPriceFromPrefix().oxLang::getInstance()->formatCurrency( $oPrice->getBruttoPrice() ));
    } else {
        return null;
    }
}

public function doTxt2Img($var) 
{
	$output = '<div class="actPriceImg">';
	$priceStr = explode(",",$var);
	$output .= '<img src="/eshop/out/basic/src/number/price_big_left.jpg" alt="left" class="left" />';
	for($i=0; $i<=strlen($priceStr[0]); $i++) {
		if(ctype_digit(substr($priceStr[0],$i,1))) {
			$output .= '<img src="/eshop/out/basic/src/number/price_big_'.substr($priceStr[0],$i,1).'.jpg" alt="'.substr($priceStr[0],$i,1).'" />';
		}
	}
	$output .= '<img src="/eshop/out/basic/src/number/price_big_dot.jpg" alt="," />';
	for($i=0; $i<=strlen($priceStr[1]); $i++) {
		if(ctype_digit(substr($priceStr[1],$i,1))) {
			$output .= '<img src="/eshop/out/basic/src/number/price_big_'.substr($priceStr[1],$i,1).'_.jpg" alt="'.substr($priceStr[1],$i,1).'" />';
		}
	}
	$output .= '<img src="/eshop/out/basic/src/number/price_big_euro.jpg" alt="euro" />';
	$output .= '<img src="/eshop/out/basic/src/number/price_big_right.jpg" alt="right" />';
	$output .= '</div>';
	return $output;
}

public function getFPriceIMGred()
{
if ( $oPrice = $this->getPrice() ) {
return $this->doTxt2ImgRED($this->getPriceFromPrefix().oxLang::getInstance()->formatCurrency( $oPrice->getBruttoPrice() ));
} else {
return null;
}
}

public function doTxt2ImgRED($var) 
{
	$output = '<div class="actPriceImgRed">';
	$priceStr = explode(",",$var);
	$output .= '<img src="/eshop/out/basic/src/number/price_big_leftr.jpg" alt="left" class="left" />';
	for($i=0; $i<=strlen($priceStr[0]); $i++) {
		if(ctype_digit(substr($priceStr[0],$i,1))) {
			$output .= '<img src="/eshop/out/basic/src/number/price_big_'.substr($priceStr[0],$i,1).'r.jpg" alt="'.substr($priceStr[0],$i,1).'" />';
		}
	}
	$output .= '<img src="/eshop/out/basic/src/number/price_big_dotr.jpg" alt="," />';
	for($i=0; $i<=strlen($priceStr[1]); $i++) {
		if(ctype_digit(substr($priceStr[1],$i,1))) {
			$output .= '<img src="/eshop/out/basic/src/number/price_big_'.substr($priceStr[1],$i,1).'_r.jpg" alt="'.substr($priceStr[1],$i,1).'" />';
		}
	}
	$output .= '<img src="/eshop/out/basic/src/number/price_big_euror.jpg" alt="euro" />';
	$output .= '<img src="/eshop/out/basic/src/number/price_big_rightr.jpg" alt="right" />';
	$output .= '</div>';
	return $output;
}[/I]

[B]Und in der tpl/details.tpl wird es mit[/B]

[I] [{oxhasrights ident=“SHOWARTICLEPRICE”}]
<div class=“price”>
[{if $product->getFTPrice() }]
<b class=“old”>[{ oxmultilang ident=“DETAILS_REDUCEDFROM” }] [{ $product->getFTPriceIMG()}]</b>
[{if $product->getFPrice() }]
<big id=“test_product_price”>[{ $product->getFPriceIMGred() }]</big>
[{/if}]
[{else}]
[{if $product->getFPrice() }]
<big id=“test_product_price”>[{ $product->getFPriceIMG() }]</big>
[{/if}]
[{/if}]
[{assign var=“oCont” value=$oView->getContentByIdent(“oxdeliveryinfo”) }]
<sup class=“dinfo”>[{ oxmultilang ident=“DETAILS_PLUSSHIPPING” }]<a href="[{ $oCont->getLink() }]" rel=“nofollow”>[{ oxmultilang ident=“DETAILS_PLUSSHIPPING2” }]</a></sup>
</div>
[{/oxhasrights}][/I]

[B]Ausgegeben.
Jetzt meine Frage (habe ich auch schon versucht, aber ohne Erfolg) :wink: sorry
Ich würde gerne auf der Startseite (Datei tpl/inc/produkt.tpl) auch die Preise als Grafik anzeigen lassen. Wenn ich den Code von der details-tpl einfüge geht es auch nur möchte ich dort andere Größen der Preise haben. Jetzt hatte ich bei der core/oxarticle.php nach dem Code von 2628-2746 den gleichen Code eingefügt mit den äderungen[/B]
Grafikpfade gehen in /number2/
public function getFTPriceIMG[B]ST/B
return $this->doTxt2ImgOld[B]ST[/B]
public function doTxt2ImgOld[B]ST[/B]
public function getFPriceIMG[B]ST/B
return $this->doTxt2Img[B]ST[/B]
public function doTxt2Img[B]ST[/B]
public function getFPriceIMGred[B]ST/B
return $this->doTxt2ImgRED[B]ST[/B]
public function doTxt2ImgRED[B]ST[/B]

[B]Nur ohne Erfolg. Habe ich etwas übersehen?
Würde mich über eine Nachricht von ihnen freuen.[/B]

[QUOTE=phaser001;22757][B]Ich habe in der Datei /core/oxarticle.php in Zeile 2628-2746 folgenden code bearbeitet[/B]

[/QUOTE]

Über den Quelltext lasse ich mich hier nicht aus, da fehlt mir die Zeit. Doch eine dringende Bitte an alle Eigenentwickler:

Bitte, bitte [B]nicht in den shopeigenen Dateien drin rumarbeiten[/B]! Mit sicher einer Menge Mühe hat Oxid das Modulkonzept in den Shop integriert. Auch wenn das auf den ersten Blick etwas umständlicher scheint, vermeidet es doch die Aufschreie, daß das System nach dem Update nicht mehr funktioniert. Dann kommen noch solche Kommentare, daß man den Shop nicht updaten möchte, weil er gerade so gut funktioniert. Dafür arbeitet man lieber mit einer alten, möglicherweise fehlerbehafteten Version.

Tut uns, die im Forum helfen, den Gefallen und arbeitet bitte standardkonform.