new

msSalePrice

Additional prices, depending on the selected number of goods.
Packages
10
Downloads
826
Usually answers within 24 hours
Автор дополнения
Packages
10
Downloads
826
Usually answers within 24 hours
Version 1.2.2-beta
Release date 11.27.2018
Downloads 139
Views 224
Warning! This component requires PHP version 5.4 or higher! If your site uses PHP less than required, the installation of this package could break it.
Warning! This package requires MODX not less than 2.3 !
Additional prices, depending on the selected number of goods.

Can work with msDiscount.


To work with msOptionsPrice2 in the msSalePrice plugin, you need to turn on the msopOnBeforeGetCost event.



Upgrade to v.1.2.0


There was completely rewritten JS frontend and some supplement methods.


New version of msSalePrice requires miniShop2 version no lower than 2.4 !


When updating, you need to change the classes in the product card and on the shopping cart page.



Wholesale prices


On the product page, the «Wholesale prices» tab is available. You can create / change the quantity / price of the product settings.


To generate prices for different users groups, you need to add the required groups in the mssaleprice_user_groups parameter in the system settings. New tabs will appear on the product edit page






msSalePrice.initialize snippet


Designed for connection of scripts and styles on a site. You must run the snippet in the product template, catalog, or cart.


[[!msSalePrice.initialize]]


msSalePrice snippet

Designed to output possible wholesale product prices. You need to call a snippet

[[!msSalePrice]]

The default script tracks the change in the product form and loads the relevant prices, depending on the amount selected. To run the script, add the following classes


  • Goods form — mssaleprice_form
  • Goods price — mssaleprice-cost
  • The old goods price — mssaleprice-old-cost

[[!msSalePrice.initialize]]
        <form class="form-horizontal ms2_form mssaleprice_form" method="post">
            ...
            <div class="form-group">
                <label class="col-md-2 control-label">[[%ms2_product_price]]:</label>
                <div class="col-md-10 form-control-static">
                    <span class="mssaleprice-cost"><span>[[+price]]</span></span> [[%ms2_frontend_currency]]
                    
                    <span class="old_price mssaleprice-old-cost" [[+old_price:gt=`0`:else=`style="display:none"`]]><span>[[+old_price]]</span> [[%ms2_frontend_currency]]</span>
                </div>
            </div>
            <div class="form-group form-inline">
                <label class="col-md-2 control-label" for="product_price">[[%ms2_cart_count]]:</label>
                [[!msSalePrice]]
            </div>
    ...
    </form>

To change the price in the cart, add a call to the msSalePrice.initalize snippet

<div id="msCart">
    {if !count($products)}
        {'ms2_cart_is_empty' | lexicon}
    {else}
        {$_modx->runSnippet('!msSalePrice.initialize')}
        {foreach $products as $product}
          <tr id="{$product.key}">
          	...
                        <td class="price">
                            <span class="mssaleprice-cost"><span>{$product.price}</span> {'ms2_frontend_currency' | lexicon}</span>
                            <span class="mssaleprice-old-cost old_price" {$product.old_price ? '' : 'style="display:none"'}><span>{$product.old_price}</span> {'ms2_frontend_currency' | lexicon}</span>
                        </td>
            ...
          </tr>
        {/foreach}
    {/if}

1.2.2-beta

  • Fixed class msSalePrice
  • Added plugin for event msOnGetStatusCart, OnDocFormSave
  • Fixed plugin msOnChangeInCart
  • Fixed /web/default.js
  • Added property 'without_options' for Product

1.2.1-beta

  • Added wholesale prices for the catalog
  • Fixed class msSalePrice
  • Fixed snippet msSalePrice

1.2.0-beta2

  • Fixed plugin for event OnHandleRequest
  • Fixed /web/default.js

1.2.0-beta1

  • Fixed /web/default.js

1.2.0-beta

  • Fixed class msSalePrice
  • Completely changing the file /web/default.js
  • Fixed snippet msSalePrice
  • Fixed snippet msSalePrice.initialize
  • Added plugin for event OnHandleRequest
  • Remove processors in WEB