Public Backlog

WebinOne announcements, releases, updates and achievements

v 5.3 Release date: 06 May, 2020

Full Release Notes

BACKLOG

Module Duplication

Function restriction upgrade: Allow copying module starting from Pro plan

BACKLOG

`ProductDataJsonHTML` to product detail layout

Exclusively for Product Module:

Automatically add {{this.ProductDataJsonHTML}} to the product detail if there is no manual output inside the layout

BACKLOG

Parent Child module links in module settings

Add ability to switch between parent and child module via links.
Made them in the way that clearly shows what module is parent and what is child.

Useful if you want to go to Blog post settings from blog settings.

Design - https://prnt.sc/skhen8

BACKLOG

Search keywords field

Added search keywords field to import/export

BACKLOG

Downloadable products: System Properties

Add following fields to the system properties for Products module:

  • Enable Shipping

    • (boolean)

    • default `true` (preset `true` to all products that was created before this update)

  • Is Downloadable Product

    • (boolean)

    • default `false`

    • once `true` - show Product File

  • Product File

    • (file)

    • Store file in a folder not accessible via ftp (as a result - not accessible by direct URL)

    • Show new control "Product File" with:

      • download (once clicked – allow user to download the file if an admin)

      • upload (once clicked raise file uploader window)

    • show non-editable file name

    • on upload remove old file, add new file

    • on upload new file show popup: “Are you sure you want to replace already uploaded file?”

    • if `Is Downloadable Product == false`

      • remove access to the file.

      • If `true` restore access

Design https://prnt.sc/skhijv

BACKLOG

Downloadable products: Processing Logic

1) Add api to retrieve downloadable file

  • URL: `/api/get_order_file/[order_line_id]`

  • If order is successfully paid (order pending price == 0) AND product has `Is Downloadable Product == true`

    • Download file

    • else; Show 404 page

2) If product has been deleted - delete file as well.

On delete - show popup:

“You have downloadable file attached to the item and it will be deleted with the item. Are you sure you want to delete this item?”

BACKLOG

Downloadable products: Shipping Options logic upgrade

HIDE shipping options only if ALL products in shopping cart has:

  • `Enable Shipping == false`

Return an undefined `Enable Shipping` value as `true` if:

  • `Is Downloadable Product == true`

OR

  • `Is Gift Voucher == true`

Otherwise it's `false`

BACKLOG

Downloadable products: Downloadable link for the order line liquid scope

Add property `downloadableFileURL` to `order` line liquid object.
Accessible everywhere that `order` liquid object is added to the liquid scope (thankyou page, invoice, workflow, supplier emails, etc).

  • Value is a downloadable link.
  • if product is not downloadable - value is `null`

Modify thank you page and invoice email (default layouts) to show download link if order line is downloadable product

Design https://prnt.sc/skhlt9

BACKLOG

Downloadable products: Count downloads logic

Add `Max Downloads Allowed` system field to product module:

  • type: `int`
  • default: `0`

If value is > 0

  • Allow verified downloading process not more times than `Max Downloads Allowed` for the order line (product['MaxDownloadsAllowed'] * orderlineQuantity)
  • If someone tries download file but gets 404 - DO NOT COUNT it as download attempt
  • Else; If admin downloads the file - allow them to download the file BUT DO NOT COUNT it as download attempt
  • Else; download the file and COUNT it as download attempt for the order line

Else (value is 0 or empty)

  • Allow unlimited file downloading
  • COUNT it as download attempt for the order line

BACKLOG

Downloadable products: Downloadable link in admin

Wrap the product name in `order -> products` tab with a link to downloadable file if it is a downloadable product.

BACKLOG

Stripe customers in advanced payment logic

Modify payment via stripe logic.

  • Add customer based on the `formData.Email` field to stripe if they don't exist.
  • Check if current card's fingerprint (taken from the token) is already added to this stripe's customer
    • If added - use this added card to process payment
    • else; add card source (token) to this customer and process payment

As a result if same customer submits several payments - it will always be as one single record in vendor's stripe account.

And they will have attached list of non-repeated credit cards that is based on tokens provided while payment.

BACKLOG

Attribute and attribute options ordering

Provide ability to change order of the attributes and options for products via drag-and-drop functionality, which applies the ordering to:

  • Admin UI interface
  • liquid object for attributes and options via `{% component type: "item_attributes" %}`
  • object returned for `productDataJSON` property
  • order line attributes object


Hide drag-and-drop functionality on mobile devices.

BACKLOG

Show number of products in all shopping carts

Ecommerce -> Product -> inventory:

Show number of items added to all shopping cart sessions under the label of: `Added to shopping cart`

Add to general product and product with variations screens:

http://prntscr.com/riwxwb

http://prntscr.com/rix0au

BACKLOG

Link to order on gift voucher

Ecommerce -> Gift voucher edit page:

BACKLOG

Add link to order from Case, booking

Add link to order from:

BACKLOG

Daily recurring subscriptions

Add daily recurring subscriptions option to the secure zone.


Modify subscription expiration extending logic:
Add +5 hrs to secure zone expiration date (but not to the payment subscription) in order to avoid temporary loosing of the access while waiting for the IPN notification regarding successful payment

BACKLOG

Order Management Upgrade

Split form submissions and booking subscriptions in orders detail page

BACKLOG

Grouped products form improvement

Remove description field from the grouped product object.

Leave display name only

BACKLOG

Add tax in product order line + extended tags

Details here:
Calculation Spreadsheet

Equivalents:

1) Add following properties to the order line liquid object:

  • taxRate

    • Shows decimal value of the tax rate

  • unitTaxPrice

    • Shows (unitprice*taxRate) numeric value

  • unitTaxPriceHtml

    • Shows (unitprice*taxRate) numeric value wrapped with holder compatible with ecomerce.js

    • Add js calculation for this property

  • totalPriceExcludingTax

    • Shows (unitprice*quantity) numeric value

  • totalPriceExcludingTaxHtml

    • Shows (unitprice*quantity) numeric value wrapped with holder compatible with ecommerce.js

    • Add js calculation for this property

  • taxPercentHtml

    • Shows percent value of the order line tax with % sign wrapped with holder compatible with ecommerce.js

    • Add js calculation for this property once tax for order line is changed

  • totalHtmlPrice rename property to totalPriceHtml

    • On appstart - edit shopping cart, invoice, checkout thankyou pages fixing old property usage to the new one

  • totalHtmlPriceExcludingTax rename property to totalPriceExcludingTaxHtml

Example of missing properties and its values: https://prnt.sc/rwvj2f


These properties should be accessible wherever order line object occurs in liquid; ie: on orders and shopping cart, in invoice, workflow, supplier emails and on checkout thank you page.


2) Add following properties to order (see above Example Spreadsheet for calculation definition)

  • shippingPrice

  • shippingPriceHtml

    • price of shipping option without tax

    • Add js calculation for ...Html property

  • shippingTaxRate

    • tax rate applied to the shipping option

    • Add js calculation for ...Html property

  • shippingTaxPercentHtml

    • tax percent applied to the shipping option

    • Add js calculation for ...Html property

  • shippingTaxPrice

  • shippingTaxPriceHtml

    • tax price applied to the shipping option

    • Add js calculation for ...Html property

  • shippingTotalPrice

    • shipping price with tax

  • subTotalPrice

  • subTotalPriceHtml

    • fix property calculation - should be

      • sum of item.totalPriceExcludingTax

      • instead of current

      • sum of item.totalPrice

  • subTotalTaxPrice

  • subTotalTaxPriceHtml

    • sum of item.taxPrice

    • Add js calculation for ...Html property

  • discountedSubTotalTaxPrice

  • discountedSubTotalTaxPriceHtml

    • subTotalTaxPrice - productTaxDiscount

    • Add js calculation for ...Html property

  • taxPrice

  • taxPriceHtml

    • fix property calculation - should be

      • discountedSubTotalTaxPrice + shippingTaxPrice

      • instead of current

      • sum of item.taxPrice

    • Add js calculation for ...Html property

  • grandTotalPrice

  • grandTotalPriceHtml

    • subTotalPrice + subTotalTaxPrice

    • Add js calculation for ...Html property

  • totalPriceExcludingTaxAndGiftVoucherAmount

  • totalPriceExcludingTaxAndGiftVoucherAmountHtml

    • subTotalPrice + shippingPrice - discountPriceExcludingTax

      • discountPriceExcludingTax is (based on discount type)

        • subTotalPrice*discountRate

        • or

        • discountAmount

    • Add js calculation for ...Html property

  • totalPriceExcludingTax

  • totalPriceExcludingTaxHtml

    • subTotalPrice + shippingPrice - discountPriceExcludingTax - giftVoucherPrice

    • Add js calculation for ...Html property

BACKLOG

Out of stock - hide product

If product in inventory tab has Out of stock property value equals to `hide product` (https://prnt.sc/rseiyi)

Add rule to remove such items from filtering and searching logic of the site.

When accessing by direct link - show 404

BACKLOG

Instock logic review

Change the logic to NOT storing reserved for shopping cart items in In Stock property:

  • In Stock

    • Always positive value or 0

  • Pre-order

    • Always positive or 0

    • shows number of items that was bought after in stock value becomes 0

  • Added to shopping cart

    • add this property as display field to the inventory tab (https://prnt.sc/rq90pu) for both global inventory settings and each variation line and the total below.

    • Always positive or 0

    • shows number of items stored in all existed shopping cart sessions

    • Return quantity when canceling order or destroying shopping cart:

      • if pre-order > 0

        • if return quantity > pre-order

          • instock = instock + (return quantity - pre-order)

          • pre-order = 0

        • else

          • pre-order = (pre-order - return quantity)

      • else

        • instock = instock + return quantity

BACKLOG

Orders submission flow rework

Save form submission data to stripe metadata when performing a payment.

Once stripe sends success callback - create form submission record based on data in metadata field

BACKLOG

Add Shop settings page and Format settings update

1) Create groups on the `Settings -> Misc` page

Admin Panel Settings

  • Enable text wrapping on a new line in the ace editor.
  • Enable 24 Hours Format in the Date Picker

Recaptcha settings

  • Recaptcha V3 Score

Shop settings

  • Shopping Cart Life Time (Default 24 hrs)
    Use this value to determine how long shopping cart could exist (use shoppingCart['lastUpdateDate'] property).
    Once time is exceeded - delete shopping cart.

2) Extend `Currency and Format` settings panel (Settings > Domains > Currency and Formatting)

Add `Use Custom Number/Currency Format` checkbox (https://prnt.sc/rrnzsp)

  • If enabled - show customization layout with examples similar to this one (https://prnt.sc/re4w3m)

    Apply using these settings in all places where format settings are used in the system (ie: All ...Html properties of the product, orderline, order, etc. and liquid filters that are relying on format settings

Params to be listed in user friendly way:

  • CurrencyGroupSeparator (string) = ","
  • CurrencyGroupSizes (string) = new[] {2, 1, 2}
    CSV string of numbers. Determines pattern for Group sizes (from right to left. Last digit would be repeated)

    Moreinfo: patterns

    Examples:
    • 0 or empty (eg: 123456789)
    • 3 (eg: 123,456,789)
    • 3,0 (eg: 123456,789)
    • 3,2 (eg: 12,34,56,789)
  • CurrencyDecimalSeparator (string) = "."
  • CurrencySymbol (string) = $"GRN"
    (Preset with the symbol of the selected currency)
  • CurrencyNegativePattern = 8
    dropdown with UI friendly labels.
    As per these patterns: patterns
  • CurrencyPositivePattern = 2
    dropdown with UI friendly labels.
    As per these patterns: patterns

BACKLOG

Country list management for shopping cart

1) Add ability to choose what countries to show on the shopping cart.

Add `allowedCountries` option to the {% component type:"countries" %}

Value:

  • Comma separated list of country codes (eg: US,AU)
  • default value is empty string
  • if empty - show ALL countries
  • else; show only those countries that determined in the comma separated list

Example:

{% component type:"countries", collectionVariable:"", allowedCountries:"US,AU" %}

2) Add ability to select countries via multiselect dropdown in the component toolbox

BACKLOG

nICE color picker z index issue

Would it be possible for the algorithm to have a minimum z index of at least 100.

It seems like it's calculating it at 5 on any complex website, there are going to be items that are over that z-index.

BACKLOG

Offline Credit Card Payment System page

NOTE: To be renamed “Deferred Order Payment”

Create new system page

  • Offline Credit Card Payment

Liquid scope of the page should include the `order` object (same as is accessible on checkout thank you page)

Page should contain a new system form with:

  • payment fields for the current domains' payment gateway
  • hidden input for order id with preset orderId value via {{this.order.id}}

Add to component toolbox ability to retrieve offline payment HTML form code

  • Ecommerce > Offline Payment Form

BACKLOG

Offline Credit Card Payment Email

NOTE: To be renamed “Deferred Order Payment”


Add new System email

  • Offline Credit Card Payment

  • Subject: Pay an Order #{{this.order.id}}

Liquid scope

  • siteURL

  • order

  • customer

    • The CRM record that is attached to the order. Same as added in {{request.member}}

  • offlinePaymentPageURL

    • Required to be in the email content. Should contain domain that was saved within the order.
      Provide validation and do not allow to save content if email content does not contain {{this.offlinePaymentPageURL}} string

BACKLOG

Offline Payments flow

NOTE: To be renamed “Deferred Order Payment”

Provide ability to send Offline Credit Card Payment Email from the `Order -> Payments` tab (https://prnt.sc/rvjj8g)

  • Send Offline Credit Card Payment button

  • Email should be triggered for the domain that is attached to the current order

Alternatively, provide ability to go directly to `Offline Credit Card Payment` system page URL (front-end) from this tab

  • Pay By Credit Card button

  • link to system page should contain orderId

When submitting a form from the Offline Credit Card Payment system page

  • Validate payment data

  • if error - show same error message as for the web forms

  • else - proceed payment and

    • if success attach it to the order that is referenced via hidden input

      • Set order status to success

      • add success payment line to `Order -> Payment` tab

    • else - show error payment message.

Provide ability to set `redirectURL` param. Same as for general forms (form input field)

Provide ability to use `jsonResponse=1` param. Same as for general forms

BACKLOG

Password change in CRM

1) Add ability to change password for the CRM contact record.

When admin changing password - send `Password Changed` system email


2) Add new system email `Password Changed`

  • When saving email perform validation

    • {{this.adminEmail}} liquid output is required

  • Liquid scope of this:

    • siteUrl

    • adminEmail

    • newPassword

    • member (object - all data of crm contact like it outputs in {{request.currentmember}})

  • Subject

    • “Your password has been changed on {{this.siteUrl}} by the admin”

  • Content

    • “Hello {{this.member.firstname}},

      Your password on ({{this.siteUrl}}) website has been changed to <strong>{{this.newPassword}}</strong> by the admin ({{this.adminEmail}}).

      If you did not request this change, please contact your website administrator.”

BACKLOG

Bulk delete booking subscriptions

On `Event -> subscription` tab (https://prnt.sc/rq7cff) provide ability to

  • delete all button
  • select several items and click delete selected items

BACKLOG

"Today" Button For Release/Expiry Date Functionality

Add a "Today" button on Release/Expiry Date fields for making inputting date easier, as in BC.

https://prnt.sc/rvix5f

BACKLOG

Payment Fields Appearance Management

1) Add ability to manage layout that is generated by payment systems (https://prnt.sc/rsfhq7):

Added two tabs:

  • Settings (Current content)
  • Appearance (List of setting for the current payment gateway)

Create list of fields based on the documentation below:

2) Apply chosen appearance settings to the payment fields within all payment forms' layouts

Modify {% component type:"payment_form_fields", formAlias:"{{this.alias}}" %} layout or payment script JS GET params for this task.

BACKLOG

Case Insensitive URL redirect param

1) Add additional checkbox field to specify if url redirect is case sensitive or not.

  • Is Case Insensitive

    • default value is true

    • by default set once on app-start values of existed redirects to true


logic:

  • If value is true

    • compare requested URL with saved redirect URL and ignore the letters case

      • Request URL /content will trigger URL redirect /Content => /new-content

      • Request URL /Content will trigger URL redirect /Content => /new-content

      • Request URL /Content will trigger URL redirect /content => /new-content

  • else

    • compare requested URL with saved redirect URL including comparing the letters case

      • Request URL /content will NOT trigger URL redirect /Content => /new-content

      • Request URL /Content will trigger URL redirect /Content => /new-content

      • Request URL /Content will NOT trigger URL redirect /content => /new-content

2) Add column to list layout for Is Case Insensitive property


3) Add column to import/export URL redirects flow.

BACKLOG

Control default styles and scripts

Provide ability to disable auto-added default CMS assets to the head section of pages. Under `Settings -> Misc => CMS Assets Management`

1) Global Settings

Fields (and show which resources not to add to the head):

  • Main CSS
  • Ecommerce JS
  • Recaptcha JS
  • Payment JS

2) For the Content Template

Provide same list of fields on the `Content Template` add/edit layout to override global defaults (ie: use global setting by default)

3) Implement logic to check CMS Assets Management settings in the Content Template (or in the Global Settings if Use global setting option is selected for the template).
Based on the retrieved value either append appropriate styles and scripts html tags to the head or not.

BACKLOG

Re-apply folder detail instead of page detail layout for folders

Check if there are Page Folder items that have applied detail layout with ID 1525 (Page Detail)

If found - attach to them Folder Detail layout (ID 1519 ) and save item.

BACKLOG

| set_money_format And | set_number_format upgrade

Modify liquid filters

  • set_money_format

  • set_number_format

Parse argument the following way

  • If can be converted to long int

    • determine argument as ID

    • find format setting by ID

  • Else

    • determine argument as Name

    • find format setting by Name

BACKLOG

Add URL to order line

Add URL to order line liquid object.

Redo `shopping cart` system page and `invoice` layouts to wrap product name with the link to the product.

BACKLOG

Add .dwg format to the staticContent section

Add “.dwg” extension to the list of allowed to be accessed via URL (Static content list)

Misc

Order migration (old data to new)

Migrate order that was created not by Advanced Payment Flow to the latest version of the orders logic.

Apply main order param for the orders that was created for recurring payments (secure zone subscriptions) according to the latest version of the orders logic .

BACKLOG

this.order in workflow emails scope

Add this.order object (same as added in invoice email) to the workflow email liquid context if form has "Accept Payment" option enabled.

If no order was created during form submission - set this.order to null

BACKLOG

Add to cart - param for button text

Add buttonName param to:

{% component type: "ecommerce_add_to_cart" %}

{% component type: "ecommerce_buy_now" %}

Example:

{% component type: "ecommerce_add_to_cart", buttonName: "Add Me!!!" %}

Default value is empty

Replace in default layout:

`Add to cart` text to `{{this.buttonName | default:"Add to cart"}}`

Replace in default layout:

`Buy now` text to `{{this.buttonName | default:"Buy now "}}`

BACKLOG

Type Media module item property UX upgrade

Change the algorithm of opening file manager when clicking icon for Type Media module item property https://prnt.sc/sjsoxe:

  • if the property contains any file path - try to open file manager to that folder location
  • otherwise open root folder as it worked currently

BACKLOG

Modify shopping cart object

https://prnt.sc/sapq1j

1) Add `eCommerceItemId` to the shopping_cart order-line object

2) Add attribute images to the order `options` object

SOURCE:

Use-case for having access to this data:

I had the requirement to display the chosen attribute option image in the cart, but had to do several more look ups and collection loops to retrieve it.

Not directly having the product ID meant I had to look up the product via SKUCode instead which isn't as stable.
But the item ID should always be available IMO.

BACKLOG

Remove Product from cart data attribute selector instead of <tr> (ecommerce.js)

Modify the functionality, when removing product from cart, so it will try to find parent HTML element by data attribute `data-cms_cart_order_line_holder`.

Add autoFix of the shopping cart layout on our template and sites created based on ecommerce template (for the backward compatibility.)

BACKLOG

Rebuild module after import module items

Set to queue entire module rebuild when import module items process is finished

BACKLOG

Priced ...HTML properties decimals after dot fix

PriceHTML and other ...HTML properties render to 4 decimals.

Should render such number of decimals as configured in Format Settings attached to the current domain

BACKLOG

Add Paginate items parameter for component type module, module_of_member

Add new parameter to the {% component type:"module" %} and {% component type:"module_of_member" %}

  • Parameter name

    • enablePagination

  • Default value

    • true

  • Not required (not show this param in toolbox if param is checked)

  • Logic

    • if false - do not apply pagination logic via get params. Return same items as it shown when no pagination params occured in URL

BACKLOG

Order -> Payment tab UX improvement

View Total cost and pending cost on the page.

When click pay by cash - automatically preset amount equal to pending cost

Design: https://prnt.sc/skioca

BACKLOG

12-24 hrs format switcher for admin datepickers

Add switcher between 12 and 24 hrs formats on datepickers on `Settings -> Misc` page.

Datepickers hrs time format (select) (options):

- 12

- 24

Applied to datepickers throughout admin.

Bug

Duplicating Event

When duplicating an event item

Expected:
It should not contain any subscriber.
All already duplicated items' counters should be fixed on app start

Actual:

Duplicated item has same subscribers counter as original item has https://prnt.sc/rv91k4.

SOURCE https://forum.treepl.co/t/duplicating-event-bug/1026

Bug

Parent Child module links in module settings - disappear icon "Folder"

Go to Settings Blog and select Items List View http://prntscr.com/sbq62x

After saving Folders icons are disappear as well as path to Blog Post settings http://prntscr.com/sbq6ms

When showing settings tab CMS should return system modules parent-child linkage in order to not override it when saving other settings of the blog http://prntscr.com/sbqbz1

Bug

Bug from forum - not correct import URLs

https://forum.treepl.co/t/url-slug-changes-not-updated-on-item-import-bug/1002

Bug

Tax deleting error

When deleting a tax sometimes we get Internal error:

The primary key value cannot be deleted because references to this key still exist. [ Foreign key constraint name = ForeignKey.ShippingOptionBase.TaxCode ]

Bug

Inventory - When Out of Stock hide button

  • Setup inventory
  • Select “Show product but don't accept orders “ in “When Out of Stock”
  • This two buttons should be disabled http://prntscr.com/rh8o7n

Bug

Bugs from forum - Secure Zone Question

  • Create custom module with the properties Multiple and String
  • Create 2 items and fill those fields with any text
  • Get export of those items
  • Change text in the cells to any numbers
  • Make import of the result file - error https://prnt.sc/ra8k6j

Bug

Bugs from slack - disappear product on Thank you page

Products on the Thank you page are disappeared http://prntscr.com/r7ukr9

Bug

Bugs from slack - error when related item disable

Bug

Bugs from slack - import/export

A product export file re-imported presents ‘Internal Error’.

Bug

Bugs from slack - error when apply discount with currency DKK

Bug

Choose different shipping info

  • Create shipping option
  • Go to product and add it to cart
  • Go to the shopping cart and select United State and the sipping option
  • Go to checkout
  • In another window open shopping cart and change country
  • Go to checkout – price should be recalculated

Bug

Bug from forum - Liquid code to list files from a particular directory

https://forum.treepl.co/t/liquid-code-to-list-files-from-a-particular-directory/928/2

Bug

Products - add check on Minimum Units and Maximum

Add validation of these fields: Minimum Units and Maximum Units https://prnt.sc/riulyw when adding products to cart

Bug

Bug from client - import/export CRM

Add ability to edit Type

SOURCE:

I am seeing an "Excel row number: 2. Detail: Invalid member type." on all 20 lines I try to import to the CRM, but there is no "type" in the file? The only row that works is the first and they all look similar?

I guess it is something REALLY simple, but not sure? Normally I don't have any problems importing.

The first line is exported from the CRM to have something to work from.

https://prnt.sc/skj0vv

Bug

[UI] Unruly link manager in WYSIWYG editor

https://forum.treepl.co/t/unruly-link-manager-in-wysiwyg-editor/1003

Bug

Bugs from slack - payment unsuccessful

Fix the workflow sending when eWAY payment is unsuccessful http://prntscr.com/rre3lp

Bug

Bug from client - change logic Exclude from Catalogs

  • Go to Shipping Option
  • Create new shipping option and set Exclude from Catalogs
  • Exclude from Catalogs should exclude this shipping option if shopping cart has at least one product that attached to any of the selected catalogs within this field http://prntscr.com/rwk7el

Bug

Bug from forum - Mandatory Custom Module Fields Reflect in User form

https://forum.treepl.co/t/mandatory-custom-module-fields-reflect-in-user-form/1054

Bug

Bug from client - not correct time in invoice

Bug

Portal Bug from slack - doesn't duplicate Feature flag

Bug

Popup with shopping cart - doesn't display total price

Bug

Workflow - doesn't changes name of workflow

Bug

Search forms - doesn't display SKU Code, Seo title and Meta description

Bug

Bug from Adam - not correct show price when set up 2 prices

Bug

URL output {{request.request_url.href}} is fixed (was broken and accessible via incorrect alias: {{request.request_url.ref}})

“href” param is broken and outputs via “ref” instead.
Output on the page {{request.request_url}} and here should be “href” http://prntscr.com/sgmgsj

Bug

Bug from Peter - edit name Catalogs

Change catalog name and click save

Go to the list of the catalogs

Catalog name is not changed http://prntscr.com/sh8xf5

Show more less
Improvement

Misc Improvements (5.3)

This list of improvements is gathered from Treepl users' feedback from forum and support:
  • Ability to copy existing custom module "Pro" plan
  • Parent child module links in module settings
  • search keywords field to import/export
  • nICE color picker z index issue
  • Case Insensitive URL redirect param
  • Add option to disable default styles and scripts in Misc settings
  • Re-apply folder detail...
  • Ecommerce
Improvement

Ecommerce Improvements (5.3)

This list of improvements is gathered from Treepl users' feedback:
  • Auto add this.ProductDataJsonHTML to product detail layout
  • Stripe customers in advanced payment logic
  • Attribute and attribute options ordering
  • Show number of products in shopping cart in the product
  • Link to order on gift voucher
  • Add link to order from Case, booking
  • Daily recurring subscriptions
  • Order Management Upgrade - final...
  • Ecommerce
New Feature

Deferred Order Payment

Ability to manually pay for order through a dedicated system page (link is available through admin).

  • Ecommerce
New Feature

Downloadable Products

Ability to create downloadable products (files).
It will operate similar way it did in BC.
  • Ecommerce
Improvement

Manually Add Password To A CRM Record

The ability to add a password manually in the CRM.

  • CRM
Improvement

"Today" Button For Release/Expiry Date Functionality

Add a "Today" button on Release/Expiry Date fields for making inputting date easier, as in BC.
today-button.png
  • Custom Modules
  • UI/UX