I did something similar but I have also added a line ** special price **
<?php
/**
* @package HikaShop for Joomla!
* @version 2.1.0
* @author hikashop.com
* @copyright (C) 2010-2012 HIKARI SOFTWARE. All rights reserved.
* @license GNU/GPLv3 http://www.gnu.org/licenses/gpl-3.0.html
*/
defined('_JEXEC') or die('Restricted access');
?><?php
$class ='';
if(!empty($this->row->prices) && count($this->row->prices)>1){
$class = ' hikashop_product_several_prices';
} ?>
<span class="hikashop_product_price_full<?php echo $class; ?>">
<?php
if(empty($this->row->prices)){
echo JText::_('FREE_PRICE');
}else{
$first=true;
echo JText::_('PRICE_BEGINNING');
$i=0;
if($this->params->get('price_with_tax',3)==3){
$config =& hikashop_config();
$this->params->set('price_with_tax',$config->get('price_with_tax'));
}
// Stefano Start
//foreach($this->row->prices as $price){
// if($first)$first=false;
// else echo JText::_('PRICE_SEPARATOR');
$specialPrice = false;
foreach($this->row->prices as $price) {
if($price->price_access != 'all') {
$specialPrice = true;
break;
}
}
foreach($this->row->prices as $price) {
if($first)$first=false;
else echo JText::_('PRICE_SEPARATOR');
if($specialPrice && $price->price_access == 'all') {
echo '<span class="hikashop_strike_price">';
}
// Stefano End
$start = JText::_('PRICE_BEGINNING_'.$i);
if($start!='PRICE_BEGINNING_'.$i){
echo $start;
}
if(isset($price->price_min_quantity) && empty($this->cart_product_price) && $price->price_min_quantity>1){
echo '<span class="hikashop_product_price_with_min_qty hikashop_product_price_for_at_least_'.$price->price_min_quantity.'">';
}
$classes = array('hikashop_product_price hikashop_product_price_'.$i);
if(!empty($this->row->discount)){
$classes[]='hikashop_product_price_with_discount';
}
if(!empty($this->row->discount)){
if($this->params->get('show_discount',3)==3){
$config =& hikashop_config();
$this->params->set('show_discount',$config->get('show_discount'));
}
if($this->params->get('show_discount')==1){
echo '<span class="hikashop_product_discount">'.JText::_('PRICE_DISCOUNT_START');
if(bccomp($this->row->discount->discount_flat_amount,0,5)!==0){
echo $this->currencyHelper->format(-1*$this->row->discount->discount_flat_amount,$price->price_currency_id);
}elseif(bccomp($this->row->discount->discount_percent_amount,0,5)!==0){
echo -1*$this->row->discount->discount_percent_amount.'%';
}
echo JText::_('PRICE_DISCOUNT_END').'</span>';
}elseif($this->params->get('show_discount')==2){
echo '<span class="hikashop_product_price_before_discount">'.JText::_('PRICE_DISCOUNT_START');
if($this->params->get('price_with_tax')){
echo $this->currencyHelper->format($price->price_value_without_discount_with_tax,$price->price_currency_id);
}
if($this->params->get('price_with_tax')==2){
echo JText::_('PRICE_BEFORE_TAX');
}
if($this->params->get('price_with_tax')==2||!$this->params->get('price_with_tax')){
echo $this->currencyHelper->format($price->price_value_without_discount,$price->price_currency_id);
}
if($this->params->get('price_with_tax')==2){
echo JText::_('PRICE_AFTER_TAX');
}
if($this->params->get('show_original_price','-1')=='-1'){
$config =& hikashop_config();
$this->params->set('show_original_price',$config->get('show_original_price'));
}
if($this->params->get('show_original_price') && !empty($price->price_orig_value_without_discount_with_tax)){
echo JText::_('PRICE_BEFORE_ORIG');
if($this->params->get('price_with_tax')){
echo $this->currencyHelper->format($price->price_orig_value_without_discount_with_tax,$price->price_orig_currency_id);
}
if($this->params->get('price_with_tax')==2){
echo JText::_('PRICE_BEFORE_TAX');
}
if($this->params->get('price_with_tax')==2||!$this->params->get('price_with_tax') && !empty($price->price_orig_value_without_discount)){
echo $this->currencyHelper->format($price->price_orig_value_without_discount,$price->price_orig_currency_id);
}
if($this->params->get('price_with_tax')==2){
echo JText::_('PRICE_AFTER_TAX');
}
echo JText::_('PRICE_AFTER_ORIG');
}
echo JText::_('PRICE_DISCOUNT_END').'</span>';
}elseif($this->params->get('show_discount')==3){
}
}
echo '<span class="'.implode(' ',$classes).'">';
if($this->params->get('price_with_tax')){
echo $this->currencyHelper->format(@$price->price_value_with_tax,$price->price_currency_id);
}
if($this->params->get('price_with_tax')==2){
echo JText::_('PRICE_BEFORE_TAX');
}
if($this->params->get('price_with_tax')==2||!$this->params->get('price_with_tax')){
echo $this->currencyHelper->format($price->price_value,$price->price_currency_id);
}
if($this->params->get('price_with_tax')==2){
echo JText::_('PRICE_AFTER_TAX');
}
if($this->params->get('show_original_price','-1')=='-1'){
$config =& hikashop_config();
$this->params->set('show_original_price',$config->get('show_original_price'));
}
if($this->params->get('show_original_price') && !empty($price->price_orig_value)){
echo JText::_('PRICE_BEFORE_ORIG');
if($this->params->get('price_with_tax')){
echo $this->currencyHelper->format($price->price_orig_value_with_tax,$price->price_orig_currency_id);
}
if($this->params->get('price_with_tax')==2){
echo JText::_('PRICE_BEFORE_TAX');
}
if($this->params->get('price_with_tax')==2||!$this->params->get('price_with_tax')){
echo $this->currencyHelper->format($price->price_orig_value,$price->price_orig_currency_id);
}
if($this->params->get('price_with_tax')==2){
echo JText::_('PRICE_AFTER_TAX');
}
echo JText::_('PRICE_AFTER_ORIG');
}
echo '</span> ';
if(isset($price->price_min_quantity) && empty($this->cart_product_price) && $this->params->get('per_unit',1)){
if($price->price_min_quantity>1){
echo JText::sprintf('PER_UNIT_AT_LEAST_X_BOUGHT',$price->price_min_quantity);
}else{
echo JText::_('PER_UNIT');
}
}
if($this->params->get('show_price_weight')){
if(!empty($this->element->product_id) && isset($this->row->product_weight) && bccomp($this->row->product_weight,0,3)){
echo JText::_('PRICE_SEPARATOR').'<span class="hikashop_product_price_per_weight_unit">';
if($this->params->get('price_with_tax')){
$weight_price = $price->price_value_with_tax / $this->row->product_weight;
echo $this->currencyHelper->format($weight_price,$price->price_currency_id).' / '.JText::_($this->row->product_weight_unit);
}
if($this->params->get('price_with_tax')==2){
echo JText::_('PRICE_BEFORE_TAX');
}
if($this->params->get('price_with_tax')==2||!$this->params->get('price_with_tax')){
$weight_price = $price->price_value / $this->row->product_weight;
echo $this->currencyHelper->format($weight_price,$price->price_currency_id).' / '.JText::_($this->row->product_weight_unit);
}
if($this->params->get('price_with_tax')==2){
echo JText::_('PRICE_AFTER_TAX');
}
echo '</span>';
}
}
if(isset($price->price_min_quantity) && empty($this->cart_product_price) && $price->price_min_quantity>1){
echo '</span>';
}
// Stefano Start
// Chiude lo spam per il barrato del prezzo assegnato a ALL
if($specialPrice && $price->price_access == 'all') {
echo '</span>';
}
// NB: ho messo le 3 righe qui sopra anche appena sopa $i++ ma di fatto non cambia nulla
// aggiunge la parte che inserisce la scritta PREZZO ESCLUSIVO
if(isset($price->price_min_quantity) && empty($this->cart_product_price) && $price->price_min_quantity>1){
if($specialPrice && $price->price_access != 'all') {
//echo '<span style="color: #751f2c;"><em> Prezzo a te riservato</em></span>';
//echo '<span class="hikashop_special_price"> ** Prezzo esclusivo **</span>';
echo '<span class="hikashop_special_price">'.JText::_('PRICE_SPECIAL').'</span>';
}
}
// Stefano End
$end = JText::_('PRICE_ENDING_'.$i);
if($end!='PRICE_ENDING_'.$i){
echo $end;
}
$i++;
}
echo JText::_('PRICE_END');
}
?></span>
You have to add this class into the CSS
/* Stefano Start 2013-03-06*/
/* questa parte server per mettere il prezzo barrato nel caso in cui sia presente un prezzo speciale per certi utenti */
span.hikashop_strike_price {
text-decoration: line-through;
}
/* per formattare la scritta "prezzo riservato" */
span.hikashop_special_price {
color: #751f2c;
font-style: italic;
font-size: 10pt;
}
/* Stefano End */
And you have to insert a new constant into "language override"
PRICE_SPECIAL = ** esclusiva abbonati **
This is the result
If you have any suggestion please let me know.
I am finding a way to show the special price to all the customers and not only to the subscribers (that are a joomla specific group).