All the HikaShop 4.7 releases. The other old releases are listed in the HikaShop Change Log Archive, the recent ones in the HikaShop Change Log.
HikaShop 4.7.5
Release date : July, 27 2023
List of all the files changed between the 4.7.4 and the 4.7.5
Bug fixes (26)
- The points display on the backend order listing would only display the points gained if there were points being used in the order too.
- The PayPal Checkout payment plugin didn't handle properly orders without a billing address, or with a billing address with some missing fields.
- We've improved the PayPal Checkout payment plugin so that when not all the required address fields are provided, the plugin doesn't send the address in order to avoid unnecessary errors.
- We've added the NO_SHIPPING flag when no shipping address is provided in the PayPal Checkout plugin.
- We've fixed a warning with the user points plugin which could happen at the end of the checkout on PHP 8 in some cases.
- We fixed a medium severity RXSS attack with the filter system in HikaShop Business. Affected versions of the Business edition are from the 4.2.0 to the 4.7.4
- We fixed a deprecated message when displaying a radio filter on the frontend in some cases with PHP 8.1.
- The PayPal Checkout payment plugin now properly supports additional fees.
- The Itemid parameter was missing when using the reorder button of an order on the frontend and when changing the filtering of the orders listing on the frontend.
- Fix to always have Item id in redirect url tpo reorder
- Due to a change in HikaShop 4.7.4, the stock of products would not be updated when an order would be confirmed or cancelled in some cases.
- The new "next" and "previous" buttons on the order edit form in the backend could, in some cases, generate an error when accessing an order or creating one.
- There was an error at the end of the checkout with the PayPal Checkout plugin when additional fees would be added to the cart by plugins.
- A HikaShop content module configured to display a listing of categories while on a category listing page with pagination would pick up on that pagination and apply it to itself while it shouldn't
- The delete action for carts / wishlists in the frontend now keeps the current menu item.
- We've made some improvments to the formula calculation system in HikaShop to avoid issues on newer versions of PHP.
- The move actions of carts / wishlists in the frontend now keep the current menu item.
- The "total_number_of_products" new information in orders could generate an error on the checkout in some rare cases.
- The support of domain names rules for the email address had an issue which could prevent registration of new users in some cases.
- We've fixed a notice on products listings in some cases.
- The Connect button on the PayPal Checkout payment plugin settings page didn't work in some cases.
- The link to the product from the cart / wishlist page didn't take into account the current menu item.
- The default star on the carts / wishlists listing page didn't take into account the current menu item.
- We fixed an error which could happen during the checkout in some rare cases.
- We've made a fix for an error which could happen with filters with the "dynamic display" setting turned on.
- We've added a fix for the width of the PayPal Checkout buttons at the end of the checkout.
HikaShop 4.7.4
Release date : June, 26 2023
List of all the files changed between the 4.7.3 and the 4.7.4
Bug fixes (21)
- The order link in the order notification sent to the customer with the "email" button of the order details page in the backend was not working properly for guest users.
- We fixed a warning message which could appear in some cases when saving the settings of the wishlist module.
- We fixed a deprecated message on PHP 8.1 on the dashboard in some cases.
- We've fixed a deprecated message on PHP 8.2 with the geolocation plugin enabled.
- We've fixed an issue with the "optimize" function of the smart search system for Joomla 4.2+ which would lead to an error with the HikaShop Smart Search plugin enabled.
- We fixed a deprecated message on PHP 8.2 with the geolocation plugin.
- The order statuses filter on the listing of tax rates didn't display properly on Joomla 4.
- We fixed a deprecation message on PHP 8.1 with the translation system when editing products in the backend in some cases.
- We added a fix for the Hikashop Paypal Website Payments Pro Hosted Payment plugin on Joomla 4.
- We fixed an error in some cases when validating the contact form in some cases on PHP 8.1.
- We added some extra checks on the VirtueMart import so that even if categories in VirtueMart have incorrect data, it doesn't break the import.
- We fixed an error in the user synchronisation plugin on Joomla 2.5.
- There was an error in some cases with the use of custom fields of the table "order".
- The return URL to the product page, from the contact form was missing the Itemid parameter leading to the current menu item being lost.
- In strange quantity restrictions, with the "show select" quantity input display, and on PHP 8.1, it was possible to get an error on the product page and checkout.
- We've fixed a warning on PHP 8.1 for "run PHP code" actions.
- We've fixed the view builder for the frontend invoice/order details page view.
- We've added a patch to the cart system for the multicoupon plugin to work properly in some cases.
- If you first selected an order in the preview popup of an email in System>Emails and then deleted that order, the preview popup would then display an error until you would logout / login from your backend.
- We fixed a warning when using the "update rates" button before configuring the HikaShop rates plugin.
- We added a patch to the Google Products plugin to properly handle the situation when the user tries to generate the XML without having saved the settings of the plugins at least once.
Improvements (39)
- Following changes to microdata, we now provide a price of 0 instead of no price microdata tag when the product has no prices.
- We added some CSS to better display the quantity input in regrouped and left/right modes on Joomla 4.
- The cart module in dropdown mode will now keep its dropdown open if it was already open before the cart module is refreshed.
- It's now possible to have alternative layouts with an XML override for the HikaShop views.
- You can now select variants in the "product" option of reports so that you can filter the report for a specific variant if necessary.
- We improved the look of the columns selector on listings with a lot of columns on Firefox
- There is now a hidden setting to be able to choose between redirection to the product page, or staying on the contact form after sending the contact request.
- We now take into account the ordering of the characteristics on the main product for the display of the characteristic values on the products listing.
- When using the HikaShop cart notification plugin in "popup" mode, the plugin would load the notify-metro.css file on the pages even though it is not necessary.
- We improved the payment methods loading when doing it for existing orders so that it can better take into account the min/max weight/quantity/volume settings of the payment methods.
- Filters with their "dynamic display" setting turned on will now keep their values once they are used until the filters are reset.
- We improved the prices section of the product edit form to make it more obvious that you need to enter the price of the product in the prices listing and not in the retail price setting.
- Shipping plugins can add their own tags to the formula setting by implementing the onCalculateShippingFormula(&$order, &$rate, &$tags, &$values, &$formula) method in their class.
- The content tag button now also appears in the Advanced Modules Manager extension.
- We've improved the description of the Google Products plugin.
- We've improved the description for the "Local XML file path" setting of the Google Products plugin.
- We've improved the integration between the custom fields on the checkout and the input validation mechanism of Joomla so that it can display error messages during for regex checks.
- We've added category specific classes on each product on listing pages for easier CSS customization.
- We added extra data areas for the products listing view so that plugins can dynamically add their HTML to the view.
- We added extra data areas for the cart view in the checkout workflow so that plugins can dynamically add their HTML to the view.
- The total tax amount is now displayed in the additional area of the order details page in the backend when the "detailed tax display" setting is turned off in the HikaShop configuration.
- We improved the RTL CSS for the retail price display on the product page.
- We made the PayPal Checkout plugin settings translatable.
- We improved the JS code of the filter system and of the infinite scroll system so that they will work fine together even when JCH Optimize is activated, and even if there are javascript errors.
- We now reset the task of the form on listings before starting a filtering. That way, if another action had be done which didn't require a page refresh (like a CSV export) it will work properly instead of running the previous task.
- The AJAX upload system can now work even on pages where JCH Optimize is configured to cache the javascript.
- We improved the compatibility between the infinite scroll and the filters system.
- The user registration in HikaShop now also checks the email address against the domain names restrictions configured in the Joomla user manager options.
- You can now select Venmo as a funding in the PayPal Checkout payment plugin settings.
- We've modified the HikaShop wizard page, which is displayed at the end of the installation process to be able to easily create a PayPal Checkout payment method. Before, there was a email address input field to create a payment method with the old PayPal payment plugin.
- We've added a check on the HikaShop configuration page so that if the PayPal payment plugin is configured as a payment method and activated, it will display an error message to notify the user he should configure instead the PayPal Checkout payment plugin.
- We've added a next and a previous button on the order edit screen so that it is easier to navigate the orders.
- There is now a column "products" on the orders listing so that you can directly have the list of products of the orders on the listing.
- We added support for the UserPoints extension ( a fork of AlphaUserPoints made to work on Joomla 4 ) to the points plugins in hikashop.
- It is now possible to use a tag {min} or {max} in the text to be displayed, when using the attributes mincart/maxcart/minproducts/maxproducts attributes in the hkshow and hkhide tags.
- The Google Products plugin has a new option to be able to restrict the feed to only some categories.
- We've added a Connect button to the PayPal Checkout payment plugin. That way, you just need to login to your PayPal merchant account for the plugin to automatically retreive your credentials for you.
- We've added several options to the PayPal Checkout payment plugin to configure how the payment buttons should display at the end of the checkout.
- We've added Pay Later Messaging options to the PayPal Checkout payment plugin.
New features (8)
HikaShop 4.7.3
Release date : May, 30 2023
List of all the files changed between the 4.7.2 and the 4.7.3
Bug fixes (20)
- We fixed a SQL injection vulnerability which could allow access to data from the database from the backend order edition area. Please update your HikaShop if you're using an older version of HikaShop.
- When two discounts had the same percentage / flat amount, and were configured the same way, and a third party plugin would filter out the discounts based on extra settings not known to HikaShop, it could lead to HikaShop not seeing discounts it was supposed to see. This could happen for example with the vendor restriction on discounts when HikaShop would be integrated with HikaMarket Multivendor.
- Changing the quantity of a product in the cart in really rare cases could lead to an "access forbidden" error.
- We fixed a warning on PHP 8.1 with the add to cart button display on the variants listing on the product page in the frontend.
- When products would use an external image as their main image, the thumbnail for them on the email notifications wouldn't display properly.
- The maxproducts / minproducts attributes of the hkshow / hkhide tags were not working properly in some cases.
- Joomla 4.3 changed the form validator javascript and we now have to provide the ID of a form element and not anymore the ID of a container which can be a form or not. Previous versions of HikaShop were providing the ID of the div around the registration form on the checkout. We now provide the ID of the checkout form element to prevent a javascript error in the validator code.
- We now properly retreive the alias from the main product when indexing variants with the smart search.
- The special characters might be lost in some cases when using custom fields of the type "radio" or "checkbox".
- We fixed an error when editing a menu item / module in some cases on PHP 8.1.
- The selected characteristic values could be missing on the waitlist form in some cases.
- When all the prices of a product would be restricted to user groups not linked to the current user, and the user would use a sort filter with, among the choices, price sorting, if the user selected another sorting than price, the product would not appear in the sorted products listing evne though it should.
- We fixed some deprecated messages on PHP 8.1 when creating new filters in the backend.
- The ratio calculations in "proportion" mode could result in wrong ratios when products had variants, leading to a wrong tax calculated in some rare cases with several tax rates in the same order.
- The cart notify plugin would redirect to the checkout even when the add to cart was failed when the popup mode was used with the redirect on success option activated.
- We improved the compatibility between the infinite scroll and the filters system.
- We've fixed several deprecated issues with PHP 8.1 on the new payment method form.
- When filtering on the orders listing would result in no orders being found, it could result in some cases in a MySQL error.
- We've made a fix for the PayPal Checkout plugin following changes in the 4.7.2
- We fixed an error which would happen when copying orders with the 4.7.2 due to changes made in that version for the order management.
Improvements (3)
- We improved the filter system dynamic refresh mechanism to avoid failing when there is a javascript error in the HTML returned by the server.
- If the last step of the checkout is empty, and the user arrives on it, the system will now automatically move to the order creation process.
- The non-selected values of "dynamic display" filters will now be still available for selection.
HikaShop 4.7.2
Release date : March, 21 2023
List of all the files changed between the 4.7.1 and the 4.7.2
Bug fixes (36)
- We fixed a compatibility issue with the Multi coupon plugin when using auto loaded coupons.
- We fixed some warning in rare cases at the end of the checkout with discounted products on PHP 8.
- In some rare cases, the smart search plugin integration could generate an error when saving a product in the backend.
- When a coupon was in "override discounted products" mode and with a percentage value, and it was applied to a discounted product, it would calculate a lower coupon value than what it should be.
- We fixed deprecated messages on the discount edit form on PHP 8.1.
- We fixed an error on the user control panel on PHP 8.2.
- If custom address fields have all be disabled for shipping or billing, then the address block in the checkout won't stop the customer from finishing the checkout because of a missing shipping/billing address.
- We fixed an error with the WorldPay Global Gateway plugin on Joomla 4.
- There was an error on the product page on the frontend on PHP 8.1 when a product had a characteristic added to it without any variants.
- When custom order fields would be restricted based on the shipping or payment method, they wouldn't display properly on the frontend order details page.
- We've fixed an issue in some rare cases with filters.
- When not using the "force menu on checkout" setting the HikaShop configuration, the "proceed to checkout" button of the cart module could, upon refresh after an "add to cart", sometimes use another menu item than the current menu item, even if the current menu item would be a HikaShop menu item.
- In some cases when two columns would have the same name in the exported XLSX of a mass action, it would be possible to get the data in the wrong column.
- We fixed an issue with the mass action export in the XLSX format on PHP 8.1.
- There was an error on the frontend in some rare cases with PHP 8.
- We fixed warnings when editing menu items in the Joomla menu manager on on PHP 8.1 and above.
- We corrected a class name for the image of the products in the cart module.
- We fixed a problem with the column hide/display mechanism in French.
- Options displayed as radio or checkbox might not work properly in some cases.
- We've added a patch to support several email addresses in the user profile for Joomla 4.
- We fixed some deprecated messages on PHP 8.1.
- We fixed deprecated messages on PHP 8.2.
- We added some extra checks to the weight / volume conversion mechanism to avoid warnings on PHP 8 with invalid units.
- The translation popup of categories was losing the name and description in some cases.
- We fixed some deprecated messages on the order details page and invoice with the address display.
- We fixed some deprecated messages with the Smart Search integration on PHP 8.1.
- The URL in the "Add to cart HTML link" popup was missing the product ID due to a previous modification.
- The URL for the activation message to be displayed on after the registration was not properly using the current menu item.
- When updating from really old versions of HikaShop, and you had never changed the "popup mode" setting (which has been removed since then) to "vex" in the HikaShop configuration, the popup in the backend wouldn't display properly on Joomla 4. We've made a patch to force popups to vex on Joomla 4, no matter what to avoid the problem, since we want to always use vex now for popups.
- We made some modifications so that HikaShop doesn't add JS/CSS files in the Document when Joomla is loaded through the "cli" Application.
- We've fixed a warning on PHP 8.1 with the Checkout workflow.
- We fixed a warning with the new price form on PHP 8.1.
- We fixed a warning message on PHP 8.1 with the file and image uploader in some cases.
- Even with the "coupon percentage applied to products only" setting activated, the coupons restricted to products, could take into account other products in the cart instead of ignoring them.
- The cells of the action "Display the results" were not editable in some cases.
- The mincart/maxcart attributes of the hkshow and hkhide content tags didn't work properly in some cases.
Improvements (14)
- The order_id column would be added to the export of mass actions even when the column was not selected. We've made a patch to avoid this.
- When displaying the product edit form page on the backend, we now first check that the product exists. If not we redirect back to the products listing with an error message.
- The out of stock filter now take into account the stock of the bundled products.
- We modified the behavior of the contact form so that after the email has been sent, the user is redirected to the product page.
- We've added the Itemid parameter in many places not used much on the frontend where they were missing in order to avoid issues in some cases on Joomla 4.
- We now better handle the "override registration" setting when guest checkout is activated so that it's still possible to guest checkout with the registration override activated.
- We've improved the hover X layout as it could sometimes reduce the images of the products on the listing if the images were not yet loaded when processing them.
- We now better handle the rounding of prices during calculations when recalculating the total amount of an order in the backend order edit page.
- We've updated the list of states (provinces) for Panama.
- We've improved the update XML so that it works better with Joomla's update system.
- We have made some adjustement for backend display around label and title options.
- We added bootstrap 5 compatibility to the accordion capability of the HikaShop content module so that it can work fine on Joomla 4.
- We added some extra debug capabilities to the USPS shipping plugin.
- The USPS shipping plugin now takes into account commercial and commercial plus rates.
New features (10)
- The PayPal Checkout plugin now has a new setting to be able to disable funding sources.
- We've added the attributes maxproducts and minproducts to the hkshow / hkhide tags so that you can use a condition on the subtotal instead of the full total of the cart.
- We've added a new button "new guest" in the customer area of the order details page so that merchants can enter the email address of a new guest to simultaneously create a guest user and assign it to the current order.
- We've added a new setting to the USPS shipping plugin to be able to choose between the production and test environment.
- We added the number of products in the order's additional information area.
- We added a new column for the number of products on the orders listing.
- We've added extra columns for the tax rates on the orders listing in the backend.
- We've added the columns "coupon" and "coupon value" on the orders listing in the backend.
- We've added a column for the shipping method in the orders listing in the backend.
- We added shipping address and billing address columns to the order listing in the backend.
HikaShop 4.7.1
Release date : January, 20 2023
List of all the files changed between the 4.7.0 and the 4.7.1
Bug fixes (43)
- We improved the compatibility between the translation system, the canonical URLs and the language switcher of Joomla by clearing the translation of the current language before loading the translations of another language. That way, even if a translation is available in one language and not in another, it will still work fine.
- When running a mass action with an export action, if some of the elements wouldn't have all the information available, it could generate warning messages. For example, if you were exporting orders and exporting columns from the Joomla user account, and some of the orders had the user account of the customer deleted from the website, it would generate a warning for these users columns during the export.
- The "format" setting of custom fields of the type "text" didn't work properly when used for custom fields of the tables "address", "item" or "order".
- The restrictions on products / categories for custom contact fields didn't work properly when the custom fields were required.
- When the "force redirect" setting was activated in the Filters module, the current category would be ignored to display the filters on the page even when the page was a product listing where it should be taken into account.
- On a frontend products listing, when selecting "none" for brand filter it could, in some cases, not display any products instead of displaying the products regardless of the brand.
- The price with options might not refresh when an option would be selected with radios in some cases following recent improvements to support multiple prices in options based on the quantity purchased.
- If someone wrote some text for the stripes color, it could generate deprecated messages. We now properly handle that as transparent.
- We've added a fix for PHP 8 during the export action of mass actions.
- The support of the login social button for Joomla 4 would previously create an error on PHP 5.
- We've fixed a warning on PHP 8 when accessing a products listing page without going through a menu item (so without the menu item alias in the URL).
- When using HTML tags in the product name translations and then editing the translations of the products via the translation popup of the product edit form, the text wouldn't be escaped properly leading to the loss of the translation text with the HTML in it.
- In some special conditions, using some payment plugins and HikaMarket, it would be possible to generate an error during the confirmation of the order on PHP 8.
- The notification boxes could sometimes appear below elements of the interface.
- We fixed a warning which could happen when editing a variant while having custom fields of the table "product" and of the type "custom text".
- When coupons with the "quota per user" setting set were used together with the Multi Coupon plugin, it would generate an error in the checkout.
- The new tax mechanism when editing orders in the 4.7.0 didn't work properly when no taxes was applied on the amounts being changed.
- We fixed warnings which could come up on PHP 8 on the product edit form in the backend with products with variants with missing sorting data.
- When using setting the "sub element filter" setting of a menu/module to "group by categories" for a listing of product with the "main category" set to the main vendor category, the products wouldn't be found unless they were both linked to the sub category and the main vendor category. We fixed this so that it is not necessary, as it was already the case for normal categories.
- Once a cart was emptied, and if you added to the cart a product with variants where the main product was restricted by user group and you were logged in, it was possible the add to cart would be refused due to the system not properly retrieving the current user id.
- The delete icon of coupons with the multicoupon plugin didn't work properly in some cases.
- We fixed an error which could happen with PHP 8 when the tax rate of a coupon would be different than the tax rate of the products in the cart (a situation which should normally not happen).
- We fixed a deprecated message when sending an email in some rare cases on PHP 8.1
- We've added a little adjustement to avoid broken image icon for when the Shop address image setting is left empty.
- We removed the trigger of the events onPrepareModuleList, onAfterModuleList and onAfterCleanModuleList when loading the modules under the product page as it was causing more problems than anything with some templates.
- The check to hide empty filters on the frontend didn't work in some cases.
- We've added a little javascript fix for the open/close category explorer in the backend.
- The minimum quantity and maximum quantity settings of coupons were not working properly in some cases.
- When unpublishing several products or categories at the same time from the backend listings, the onAfterProductUpdate event would be triggered for each product but the $element passed would each time be the first product/category.
- When having only custom order fields of the types radio/checkbox without any default value selected, even if the fields were required the system would skip the check if nothing was selected in any of them.
- Following recent improvements to the options system, product options displayed as checkbox or radio wouldn't work properly in some cases.
- We've added a patch to avoid the current menu item's main category from being lost when loading the filters when the menu item would be translated with Falang. This could lead to filters restricted to categories to not appear on the page.
- The shipping and payment taxes were not taken into account properly when saving the changes with the new interface of the order management.
- Some templates would customize wrongly the radio and checkbox custom fields due to the classes changes we made in the 4.7.0. So we've made a change to avoid the issue.
- There was a problem with a translation key of the nl-NL translation file which would lead to an error on PHP8.
- When the product name would be too long it would generate an error with the PayPal Checkout payment plugin.
- We've fixed some issues with price comparisons on the checkout with shipping / payment methods on PHP8.
- We've added a patch to postpone the user synchronization during the HikaShop registration so that it is done by the registration process, and not the user synchronization plugin, and thus includes the custom user field data when triggering the onAfterUserCreate event.
- We've improved the robustness of the translation mechanism, especially when the original text strarts with a number.
- The generation of thumbnails could, in some cases generate a deprecated message on PHP 8.1
- In some rare cases, after products from a warehouse would be removed from the cart, the checkout would require a new validation of the shipping method selection before allowing the finishing of the checkout process.
- We've fixed a warning with the language switcher on PHP 8 which could happen in some cases.
- The geolocation plugin could generate a warning when the country of someone would be disabled in HikaShop or if the country code returned by the geolocation service would not be found in hikashop.
Improvements (22)
- We improved the error handling when saving a user to the database to display a proper message when trying to change the email address for one which is already used by another user entry.
- When the user clicks on the "new" button of the wishlist listing, we now stay on the same page instead of directing to the "URL where to redirect when the cart is empty", as it makes more sense.
- We've added some extra checks during the checkout to make sure the addresses being selected have all their required fields properly filled, even if they were filled before new required custom fields were added.
- We improved the error handling on the contact form when a custom field is not properly filled. Before, the user would have to re-enter everything and he would get an error on the email address even if he had filled it. Now, he won't have to re-enter everything and he won't have an error on the email address if filled.
- We made the limit periods translatable and translated them in French and Japanese. We translated the weight units in Japanese.
- The options of modules included in HikaShop are now translatable and translated in French and Japanese.
- The content of the add to cart HTML button popup is now displayed as a view so that you can create an override for it if you need to customize it.
- We changed the alignment of the quantity input incorrect warnings so that they display better on mobile devices.
- We've updated the header for the "Orders this month" to "Sales past 30 days" in the dashboard in order to better reflect what is being displayed.
- We've improved the display of the status of downloads on the downloads listing on the frontend so that represents better the situation of the download, especially for some cases.
- We've added the support of the Robots setting of menu items of the type cart listing, cart page, registration page, contact page, order listing, user control panel, and address manager.
- New shipping method image added for Posteitaliane.
- We've improved the payment and shipping views of the checkout so that if they are alone in their own step and that no shipping or no payment is required (because the order has only virtual goods, or the total amount is 0), the step will be skipped automatically to lead the customer to the next step of the checkout workflow.
- We improved the saving mechanism for the product form customization so that it can handle fields being displayed or not based on the user group and other criteria.
- We've added an horizontal scrolling capability to the backend screens so that if the content needs a bigger width (like the order status listing page on small screens) it will allow you to scroll to see everything instead of going outside of the area.
- You can now use drag & drop to reorder the characteristic values easily in the HikaShop backend.
- It is now possible to add HTML in the "Format" setting of currencies. This can potentially allow you to separate the price and the currency inside different spans with a format like this for example: <span class="symbol">€</span><span class="price">%!n</span>
- Publish & unpublish button listing have now css dress up in order to have colors (UX).
- We've added a new order status "returned" by default.
- We've removed the swf extension as default file extensions allowed for new installations of HikaShop as it has become obsolete.
- We now automatically delete the administrator/components/com_hikashop/extensions folder at the end of the installation process as we don't need it anymore. This also avoid reinstalling old plugins which are not included in HikaShop anymore.
- We've improved the default look of the buttons in the popup notification after an add to cart.
New features (8)
- We've added an extra option "provide points instead of fees" to the affiliate system so that partners will get points through the user points system instead of fees for their affiliation efforts.
- We've added new columns hidden by default to the products listing in the backend.
- We've added a new option "check on add to cart" to the shop closed hours plugin. It allows you to directly cancel the add to cart of products if the shop is currently closed.
- We've added triggers onBeforeMassactionFilter and onBeforeMassactionProcess in the mass action system so that plugins can cancel actions, remove filters, add extra filters while a mass action is being run.
- You can now select the fields you want to be indexed in the Smart Search plugin settings, allowing you to index custom fields and other data of the products which were ignored by the Smart Search so far.
- We added a new feature that allow you to hide or display columns in your backend listings. This will also allow us to add extra hidden columns which can be displayed with the tick of a checkbox for merchants who need them without having too many columns displayed by default.
- We've added a new option to the login block of the checkout workflow to be able to override the registration form with custom text/html.
- We've added a button to the product form customization mechanism to be able to easily activate/deactivate it.
HikaShop 4.7.0
Release date : November, 18 2022
List of all the files changed between the 4.6.2 and the 4.7.0
Bug fixes (42)
- The generation of thumbnails could, in some cases generate a deprecated message on PHP 8.1
- In some rare cases, after products from a warehouse would be removed from the cart, the checkout would require a new validation of the shipping method selection before allowing the finishing of the checkout process.
- We fixed the compatibility between the Shipping Estimation plugin and the Australia Post v2 shipping plugin.
- We fixed an error on the frontend which could happen when the minimum quantity per order configured in the product would be higher than the maximum quantity per order and the product's quantity input would be configured as "show select" (a dropdown).
- HTML tags could potentially appear in the option dropdown on the product details page in some rare situations.
- In some rare cases, displaying a cart in the backend where the user had already selected the UPS shipping method but had, for some reason no country selected in his shipping address could result in an error.
- We've added some extra check to make sure a payment plugin won't process a payment in the onBeforeOrderCreate event if a previous plugin has asked to cancel the creation of the order.
- The hreflang tags generated in the headers of the pages by the system languagefilter plugin of Joomla could be incorrect on listings and product details pages if different canonical URLs would be provided for each language for the category/product. Our fix prevents that from happening.
- The imported orders could have empty addresses with VirtueMart in some cases.
- After importing orders with shipping methods not available in HikaShop, an error would happen on PHP8 when displaying the order details in the backend.
- When creating a new cart/wishlist in the backend, it was possible on PHP 8 and in some special cases, to generate a fatal error.
- We fixed warnings messages on PHP8 with Joomla 3 on the frontend when products / categories wouldn't have an image defined for them.
- The coupon value could be incorrect in some rare cases for coupons with the handling mode set to "override discounted products" and with several products taken into account by the coupon.
- We fixed a warning when creating a new payment method following an improvement we've added in the 4.6.2.
- We improved the installation of embedded plugins so that no warning would appear later on on PHP8 when sorting the Joomla extensions listing.
- The import of product translations now handles properly the texts with line returns or double quotes.
- In some cases the "display errors" setting of the shipping view of the checkout workflow wouldn't be taken into account properly.
- The "Product quantity from" setting of the coupons would not work properly in some cases.
- The extra blocks of the product edit page were not added to the variants form.
- The reset button for the product edit page customization was not reseting the variant form customization.
- The label of the image width in the menu item options had been wrongly changed to the block layout label of the option above it.
- The fix added in HikaShop 4.6.2 to properly load the overrides for controllers and classses could result, in some rare cases in the wrong template being loaded on some pages of the frontend when the geolocation plugn would be used with its "after initialize" setting being activated.
- We've added a fix to properly support the "invoice shop image address" setting being empty.
- In some cases with several shipping/payment methods the taxes might be not properly taken into account during the calculations in the cart / checkout.
- The language switcher integration now takes into account the custom sef name of the languages when set.
- When using the VM2 import with a table prefix for the VM tables, it would result in an error during the import of the addresses.
- Deleting the selected date in some options of the backend was not working on recent versions of Joomla 3 on some websites.
- There was a conflict between the library included in the PayPal Checkout plugin and the header automatically added to the PHP files during the packaging process of HikaShop which resulted sometimes in a fatal error when using the PayPal checkout plugin.
- The XML of the HikaShop dashboard module could cause issues with the error reporting activated when installing other extensions on Joomla 4 following a change in HikaShop 4.6.2
- Removing all the selected category from a limit wouldn't be taken into account when saving the limit.
- We fixed a warning on the publish/unpublish toggle of the shipping/payment methods on PHP8.
- The uninstallation of HikaShop modules could generate a Fatal error on Joomla 4.2 with PHP 8 as the client attribute was not present in the manifest file.
- The title of the wishlist page could be incorrect in some cases.
- When indexing products in the Smart Search component on PHP8, if a variant was pointing to a non existing product, it would generate a fatal error, stopping the process.
- The RSS and Atom fees would generate an error on Joomla 4.
- The back button on the cart page will now correctly use the current menu Item.
- The error messages on the password rules now display with the proper translation on Joomla 4.
- The cookie modification in 4.6.2 to improve FireFox compatibility could lead to a fatal error on some versions of PHP.
- The best customer reports could generate an error on PHP8 when no orders would be found.
- The "move to new wishlist" action on the frontend cart/wishlist page didn't work properly.
- In some rare circumstances, the use of the coupon free product plugin could lead to a MySQL query error when adding a product to the cart.
- We fixed an error which could happen if you had configured the "user group after purchase" setting in at least one product of the order being confirmed and the HikaShop group plugin would be enabled without its settings having being saved once in the past on PHP8.
Improvements (37)
- We've improved the robustness of the translation mechanism, especially when the original text strarts with a number.
- It is now possible to add HTML in the "Format" setting of currencies. This can potentially allow you to separate the price and the currency inside different spans with a format like this for example: <span class="symbol">€</span><span class="price">%!n</span>
- We've added an horizontal scrolling capability to the backend screens so that if the content needs a bigger width (like the order status listing page on small screens) it will allow you to scroll to see everything instead of going outside of the area.
- We've added a new order status "returned" by default.
- The publish & unpublish buttons on backend listings now have colors.
- The Google Products plugin's menu item setting now uses a menu item selector instead of an input field in order to make it easier for the user to choose a menu item for the plugin.
- The "Redirect Joomla registration to HikaShop plugin"'s setting is now a menu item selector instead of an input field so that you can more easily choose a menu item for it instead of having to search for the id of the menu item in the Joomla menu manager. We've also improved the tooltip for that setting to properly explain what the setting does.
- We've changed the order of loading so that shipping plugins are loaded before payment plugins so that shipping plugins can cancel an order creation before a payment plugin could potentially process a payment.
- We've added a new event onBeforeUserListing for the user listing in the backend. This will allow plugins to be able to modify the MySQL query loading the users there and add extra filters on the listing page, similarly to what's already possible on the orders listing.
- The cart view of the Checkout workflow editor is now on two columns as it now has a lot of options. Incidentally, plugins adding extra blocks can now have their options in two columns with the "separator" type.
- We improved the check database mechanism so that it works fine when plugins add new columns to the database during an update.
- We've modified the class of the area for the additionals in the notification emails so that it's now possible to add CSS for only one additional without affecting the others.
- The Google Products plugin now automatically provide the sale_price in the XML if a discount is applied on the price of the product. That way, Google will get both the price without discount and the price with discount and will be able advertise the products as being on sale.
- We now force the capture of the money in "test mode" with the WorldPay Business gateway to make it easier to test payments with it.
- It's now possible to use hikashop_getLayout for the layout of a hikashop plugin.
- The close button for error messages on the frontend now also support Bootstrap 5.
- We improved the error handling in the PayPal Checkout payment plugin.
- We added extra data to the cart.empty javascript event so that developers can know what has been changed in the cart when it is emptied.
- We've added a hidden option "form_custom" to be able to disable the form custom mechanism on the product edit page in case you don't need it and it create some problems.
- The geolocation plugin is now deactivated by default to avoid doing useless processing on the pages when not necessary.
- When the cart is being modified on the checkout, we now provide the data of the modified products to the javascript event so that third party javascript can use it.
- We changed the "none" text of the tax category setting of variants to "as parent product" to better reflect the behavior of the system.
- We now always display the thumbnails for the listing block layouts with "image" in their name, even if the "thumbnails" setting of the HikaShop configuration is turned off.
- We've added the Central Bank of Russia in the list of available exchange rates feeds of the HikaShop rates auto update plugin.
- We now force the creation of the address format override if missing in the template as long as it is different from the default in HikaShop. That way, when you change the template, as long as you save the HikaShop configuration once, it will add the address format override for it, instead of letting you believe it did while it didn't do it.
- We've added a failsafe for the loading of the JavaScript libraries on Joomla 4 so that if something tries to load them before the web asset manager is loaded, it will wait to load them later on.
- We've added the support for brands restriction for discounts.
- Payment and shipping plugins can now have tooltips added to their options.
- We've added a new event onGetCartProductsInfo(&$cart, &$ret) so that plugins can pass custom information to the javascript when responding to an add to cart AJAX request or a cart update AJAX request.
- We changed the type of the field_default column in the hikashop_field table so that you can now write a text bigger than 255 characters in the default setting of custom fields.
- We've improved the look of the PayPal Checkout buttons at the end of the checkout.
- The RedShop import is not compatible with RedShop 3 (it would require writing a whole new import) so we've updated the text of the interface in HikaShop to reflect that.
- We've added a "position" and an "icon" attributes to the additional deletable parameter so that plugins adding additionals to the cart can choose the placing of the delete icon and the icon to use.
- We added the taxation_id of the created tax rule for the onAfterTaxationCreate event so that plugins can more easily act upon a tax rule creation.
- The password checks now also support the "minimum lowercase" setting and also checks for spaces at the beginning or end and check the max length to replicate all of Joomla's new checks.
- We've added jpeg, svg and webp as default file extensions allowed for new installations of HikaShop.
- We've removed the swf extension as default file extensions allowed for new installations of HikaShop as it has become obsolete.
New features (9)
- We've added a new "format" option for custom fields of the type "text", "textarea" and "WYSIWYG" so that you can prepend/append text around the value provided in the field when displaying the value of the field. This can be quite useful. For example, if you want to display a tracking URL in your emails, you can use a custom order field where you just provide the tracking number and use that format setting to add the HTML of the link around the tracking number.
- We've reworked the order additional information edit popup so that it is clear what each input field is for and also improved the price / tax fields so that it is easier to use, without the need to manually calculate taxes.
- We've updated the order product create/edit form popup on the order details page of the backend. We removed the tax input field and added instead a "price with tax" setting. That way, you don't have to manually calculate the tax when you want another price than the price by default. We also automatically calculate the price with tax based on the price without tax and the tax rate selected and vice-versa.
- When options have several prices for different minimum quantities, the system will dynamically refresh the price displayed in the option dropdown/radio and will now also take it into account for the "price with options" display based on the quantity entered by the user in the quantity input field.
- We've added a new option "Funding" to the PayPal checkout plugin so that you can select the payment methods you would like to be available to your customers if eligible (like Pay Later, bancontact, etc).
- The input and select elements on the frontend now use the classes of Joomla 4 when using Joomla 4 instead of HikaShop's custom classes. We've made a system using constants which can be overridden either with options from the HikaShop configuration or plugins with the new event onHikashopDefineConstants.
- The password fields on the different registration forms of HikaShop now display similarly to Joomla 4, with the requirement meter.
- We have added new templates to allow you to change colors of your HikaShop emails, and select a new design to match your website style without having to modify the CSS of the emails default template.
- We have add a new options to allow to add icon in the cart module view.