Jump to content

Appel fonction d'un controller dans un ModuleFrontController


Recommended Posts



j'aimerais appeler protected function assignPriceAndTax() dans le moduleController de mon module pour pouvoir afficher comme sur une fiche produit (product.tpl) le prix, les taxes, si le prix est en promotion.


Ce code là par exemple :

<div class="content_prices clearfix">
	{if $product->show_price && !isset($restricted_country_mode) && !$PS_CATALOG_MODE}
		<!-- prices -->
			<p class="our_price_display" itemprop="offers" itemscope itemtype="https://schema.org/Offer">{strip}
				{if $product->quantity > 0}<link itemprop="availability" href="https://schema.org/InStock"/>{/if}
				{if $priceDisplay >= 0 && $priceDisplay <= 2}
					<span id="our_price_display" class="price" itemprop="price" content="{$productPrice}">{convertPrice price=$productPrice|floatval}</span>
					{if $tax_enabled  && ((isset($display_tax_label) && $display_tax_label == 1) || !isset($display_tax_label))}
						{if $priceDisplay == 1} {l s='tax excl.'}{else} {l s='tax incl.'}{/if}
					<meta itemprop="priceCurrency" content="{$currency->iso_code}" />
					{hook h="displayProductPriceBlock" product=$product type="price"}
			<p id="old_price"{if (!$product->specificPrice || !$product->specificPrice.reduction)} class="hidden"{/if}>{strip}
				{if $priceDisplay >= 0 && $priceDisplay <= 2}
					{hook h="displayProductPriceBlock" product=$product type="old_price"}
					<span id="old_price_display"><span class="price">{if $productPriceWithoutReduction > $productPrice}{convertPrice price=$productPriceWithoutReduction|floatval}{/if}</span>{if $tax_enabled && $display_tax_label == 1} {if $priceDisplay == 1}{l s='tax excl.'}{else}{l s='tax incl.'}{/if}{/if}</span>
			<p id="reduction_percent" {if $productPriceWithoutReduction <= 0 || !$product->specificPrice || $product->specificPrice.reduction_type != 'percentage'} style="display:none;"{/if}>{strip}
				<span id="reduction_percent_display">
					{if $product->specificPrice && $product->specificPrice.reduction_type == 'percentage'}-{$product->specificPrice.reduction*100}%{/if}
			<p id="reduction_amount" {if $productPriceWithoutReduction <= 0 || !$product->specificPrice || $product->specificPrice.reduction_type != 'amount' || $product->specificPrice.reduction|floatval ==0} style="display:none"{/if}>{strip}
				<span id="reduction_amount_display">
				{if $product->specificPrice && $product->specificPrice.reduction_type == 'amount' && $product->specificPrice.reduction|floatval !=0}
					-{convertPrice price=$productPriceWithoutReduction|floatval-$productPrice|floatval}
			{if $priceDisplay == 2}
				<br />
				<span id="pretaxe_price">{strip}
					<span id="pretaxe_price_display">{convertPrice price=$product->getPrice(false, $smarty.const.NULL)}</span> {l s='tax excl.'}
		</div> <!-- end prices -->
		{if $packItems|@count && $productPrice < $product->getNoPackPrice()}
			<p class="pack_price">{l s='Instead of'} <span style="text-decoration: line-through;">{convertPrice price=$product->getNoPackPrice()}</span></p>
		{if $product->ecotax != 0}
			<p class="price-ecotax">{l s='Including'} <span id="ecotax_price_display">{if $priceDisplay == 2}{$ecotax_tax_exc|convertAndFormatPrice}{else}{$ecotax_tax_inc|convertAndFormatPrice}{/if}</span> {l s='for ecotax'}
				{if $product->specificPrice && $product->specificPrice.reduction}
				<br />{l s='(not impacted by the discount)'}
		{if !empty($product->unity) && $product->unit_price_ratio > 0.000000}
			{math equation="pprice / punit_price" pprice=$productPrice  punit_price=$product->unit_price_ratio assign=unit_price}
			<p class="unit-price"><span id="unit_price_display">{convertPrice price=$unit_price}</span> {l s='per'} {$product->unity|escape:'html':'UTF-8'}</p>
			{hook h="displayProductPriceBlock" product=$product type="unit_price"}
	{/if} {*close if for show price*}
	{hook h="displayProductPriceBlock" product=$product type="weight" hook_origin='product_sheet'}
    {hook h="displayProductPriceBlock" product=$product type="after_price"}
	<div class="clear"></div>
</div> <!-- end content_prices -->

Est-ce possible? Est-ce la meilleur solution à votre avis?


Merci à vous.

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Create New...

Important Information

Cookies ensure the smooth running of our services. Using these, you accept the use of cookies. Learn More