Joomla.it Forum

Componenti per Joomla! => Gestione e-commerce => : stsnow 28 Jun 2014, 16:21:43

: [Risolto] VM2 percentuale sconto su immagine in category view
: stsnow 28 Jun 2014, 16:21:43
Ciao a tutti,
ho provato ad aggiungere la visualizzazione della percentuale sconto sull'immagine prodotto in category view, usando il codice:

<?php printf("%02.1f%%", 100 * $this->product->prices['discountAmount'] / $this->product->prices['basePriceWithTax']); ?>

postato qui: http://forum.joomla.it/index.php?topic=238419.0 (http://forum.joomla.it/index.php?topic=238419.0)

Effettivamente, una percentuale appare, il probleme è che il valore è sempre zero!
Cioè qualsiasi sia il prezzo del prodotto e l'importo dello sconto, appare su ogni immagine una cosa del tipo:
-0%

Come posso risolvere? Grazie.
: Re:VM2 percentuale sconto su immagine in category view
: giusebos 28 Jun 2014, 16:36:37
aggiungerei cil nome del componente
era nel titolo
: Re:VM2 percentuale sconto su immagine in category view
: stsnow 28 Jun 2014, 18:02:32
Sì, avevo già scritto nel titolo "VM2". Adesso attendo che qualche esperto possa aiutarmi :)
: Re:VM2 percentuale sconto su immagine in category view
: mmleoni 30 Jun 2014, 07:59:46
in category? allora, probabilmente ma non necessariamente, il codice dovrebbe essere:

:
<?php printf("%02.1f%%"100 $product->prices['discountAmount'] / $product->prices['basePriceWithTax']); ?>
devi vedere come si chiama la variabile tramite la quale viene iterato l'array products ($this->products) presente nella classe della view, di norma, con molta fantasia, è $product

ciao,
marco
: Re:VM2 percentuale sconto su immagine in category view
: stsnow 30 Jun 2014, 13:56:14
Grazie per la risposta, inserendo il codice che hai scritto tu mi da sempre 0.0%
: Re:VM2 percentuale sconto su immagine in category view
: mmleoni 30 Jun 2014, 14:11:00
allora bisogna vedere il codice della view...
comunque sicura che che ci sia lo sconto su quei prodotti?
perché il risultato sia zero deve essere discountAmount==0, ovviamente se non hai nascosto la visualizzazione degli errori.

ciao
: Re:VM2 percentuale sconto su immagine in category view
: stsnow 30 Jun 2014, 14:23:56
Questa è la parte di codice in default_showprices.php

:
    <?php
    $discont 
$this->product->prices['discountAmount'];
    
$discont abs($discont);
    
//print_r($this->product);
        //if (!empty($this->product->prices['salesPrice'])) {
            //echo "<strong>" . JText::_ ('COM_VIRTUEMART_CART_PRICE') . "</strong></br>";
        //}
            //print_r($product->prices);
            
if ($this->showBasePrice) {
        echo 
$this->currency->createPriceDiv ('basePrice''COM_VIRTUEMART_PRODUCT_BASEPRICE'$this->product->prices);
        if (
round($this->product->prices['basePrice'],$this->currency->_priceConfig['basePriceVariant'][1]) != $this->product->prices['basePriceVariant']) {
            echo 
$this->currency->createPriceDiv ('basePriceVariant''COM_VIRTUEMART_PRODUCT_BASEPRICE_VARIAN T'$this->product->prices);
        }

    }
    echo 
$this->currency->createPriceDiv ('variantModification''COM_VIRTUEMART_PRODUCT_VARIANT_MOD'$this->product->prices);
    if (
$discont 0){
    if (
round($this->product->prices['basePriceWithTax'],$this->currency->_priceConfig['salesPrice'][1]) != $this->product->prices['salesPrice'] && $this->product->prices['basePriceWithTax'] >0) {
        echo 
'<span class="price-crossed" >' $this->currency->createPriceDiv ('basePriceWithTax''COM_VIRTUEMART_PRODUCT_BASEPRICE_WITHTA X'$this->product->prices) . "</span>"
    }
    }
if (
round($this->product->prices['discountAmount'] != )) {
$discount_percent round(($this->product->prices['basePriceWithTax'] - $this->product->prices['salesPrice']) * 100 $this->product->prices['basePriceWithTax']);
?>
</br>
<?php echo '<span class="percent" >' $discount_percent "</span>"?>%
 
: Re:VM2 percentuale sconto su immagine in category view
: mmleoni 30 Jun 2014, 14:37:11
scusa, ma a parte il non sense di alcune linee di codice, non mi pare la view di una categoria, mi quadra molto poco quel $this->product.

comunque potresti metterci qualcosa come:
:
<pre><?php print_r($this->product->prices); ?></pre>per verificare se e quali prezzi sono definiti, e capire su quale valori agire per ottenere la percentuale.

ciao,
marco
: Re:VM2 percentuale sconto su immagine in category view
: stsnow 30 Jun 2014, 14:47:20
Infatti il codice che ho postato non è la view della categoria, è quella della pagina di dettaglio prodotto...
: Re:VM2 percentuale sconto su immagine in category view
: mmleoni 30 Jun 2014, 15:00:22
ho provato ad aggiungere la visualizzazione della percentuale sconto sull'immagine prodotto in category view,

che mi serve quel codice allora, a parte perdere tempo?
: Re:VM2 percentuale sconto su immagine in category view
: stsnow 30 Jun 2014, 15:01:54
Il codice delle view product details, cioè quello che ho postato, mostra correttamente la percentuale di sconto, per quello te l'ho inviato.
Non volevo farti perdere tempo, scusa. Adesso devo postarti quello di category/default.php?
: Re:VM2 percentuale sconto su immagine in category view
: mmleoni 30 Jun 2014, 15:04:43
penso sarebbe più utile...
: Re:VM2 percentuale sconto su immagine in category view
: stsnow 30 Jun 2014, 15:23:50
Ecco la parte di codice interessata, vorrei aggiungere la percentuale di sconto dopo DR_SALE
:
                           
                                    <div class="discount"><?php echo JText::_('DR_SALE');?></div>
                                            <?php
                                            
                                                
                                                
                                            
//print_r($product->prices);
                                                
if ($discont 0) {
                                                    echo 
$this->currency->createPriceDiv('basePriceWithTax','',$product->prices);
                                                }
                                                echo 
$this->currency->createPriceDiv('salesPrice','',$product->prices);
                                                
//echo $this->currency->createPriceDiv('discountAmount','COM_VIRTUEMART_PRODUCT_DISCOUNT_AMOUNT',$product->prices);
                                                
                                                //echo $this->currency->createPriceDiv('salesPrice','COM_VIRTUEMART_PRODUCT_SALESPRICE',$product->prices);
                                                //echo $this->currency->createPriceDiv('priceWithoutTax','COM_VIRTUEMART_PRODUCT_SALESPRICE_WITHOUT_TAX',$product->prices);
                                                
                                                //echo $this->currency->createPriceDiv('variantModification','COM_VIRTUEMART_PRODUCT_VARIANT_MOD',$product->prices);
                                                //echo $this->currency->createPriceDiv('basePriceWithTax','COM_VIRTUEMART_PRODUCT_BASEPRICE_WITHTAX',$product->prices);
                                                //echo $this->currency->createPriceDiv('discountedPriceWithoutTax','COM_VIRTUEMART_PRODUCT_DISCOUNTED_PRICE',$product->prices);
                                                //echo $this->currency->createPriceDiv('salesPriceWithDiscount','COM_VIRTUEMART_PRODUCT_SALESPRICE_WITH_DISCOUNT',$product->prices);
                                                //echo $this->currency->createPriceDiv('taxAmount','COM_VIRTUEMART_PRODUCT_TAX_AMOUNT',$product->prices);
                                             
?>

                                        </div>

: Re:VM2 percentuale sconto su immagine in category view
: mmleoni 30 Jun 2014, 16:57:07
copiando dal codice sopra, direi:

:
<?php echo round(($product->prices['basePriceWithTax'] - $product->prices['salesPrice']) * 100 $product->prices['basePriceWithTax']); ?>%
anche se, a questo punto, non capisco perché il primo codice non funzionava... magari vecchia versione di VM e non tutti gli indici definiti.
: Re:VM2 percentuale sconto su immagine in category view
: stsnow 01 Jul 2014, 13:57:06
Perfetto! Funziona!!!!!! Grazie mille, sei un genio :D
: Re:VM2 percentuale sconto su immagine in category view
: stsnow 01 Jul 2014, 14:07:22
Adesso, però, se voglio vedere la percentuale sconto anche in homepage, quale file devo modificare? Perché con la configurazione attuale la percentuale sconto appare, giustamente, solo in category view.
: Re:VM2 percentuale sconto su immagine in category view
: mmleoni 02 Jul 2014, 10:18:36
default_products.php nella view virtuemart.
: Re:VM2 percentuale sconto su immagine in category view
: stsnow 02 Jul 2014, 14:12:47
Ho inserito il codice che mi hai dato anche in default_product.php ma in questo caso non appare proprio nulla in homapaga (dove ci sono i prodotti).
: Re:VM2 percentuale sconto su immagine in category view
: mmleoni 02 Jul 2014, 15:41:46
che cosa intendi per homepage? la 'prima pagina' di virtuemart, giusto?
nel pacchetto originale il file da modificare è quello indicato, ma bisogna vedere se il template usa la medesima convenzione o meno.
: Re:VM2 percentuale sconto su immagine in category view
: stsnow 03 Jul 2014, 13:28:09
Ho risolto, grazie mille!