All the HikaShop 4.6 releases. The other old releases are listed in the HikaShop Change Log Archive, the recent ones in the HikaShop Change Log.
HikaShop 4.6.2
Release date : September, 16 2022
List of all the files changed between the 4.6.1 and the 4.6.2
Bug fixes (42)
- 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.
- There was an error with the CardSave payment plugin on PHP 8.
- In some rare cases, the delete button of the cart module would not work properly.
- When following the "Display by color" tutorial, the colors wouldn't hide/display with the "Characteristics dynamic display" setting activated in the HikaShop configuration.
- We fixed an error with the add to cart when using AJAX file custom fields in some cases with PHP 8.
- The search feature could potentially break the HTML of the download button on the downloads listing of the frontend.
- We fixed some warning message which could appear if the data stored in the database for the values of a custom field is invalid.
- Accessing a menu item of the type HikaShop product comparison would generate an error on Joomla 4.
- PHP 8 could generate errors during calculations if there were too many decimals on the numbers.
- The custom user fields are now displayed properly on the Joomla profile edit page on the frontend for Joomla 4.
- We fixed some warnings with the order detail page in the backend when the address custom fields would be all disabled.
- We fixed a deprecated message on PHP 8 with the cart module when its settings were not saved once before being displays on the frontend.
- helpers / controllers / classes overrides (for custom development) are now working properly on Joomla 4.
- The Joomla language switcher module could output invalid URLs if the menu item used wouldn't have associated menu items for each languages on some pages.
- We fixed an error which could happen on PHP 8 when a currency rate was set to 0 and the system was trying to convert a price from that currency to another currency.
- When using the pagination number of elements per page dropdown on the entries listing in the backend, the entries wouldn't display anymore on the listing.
- The "update the values" action could generate a "wrong type for this column" error in some cases with the "string" mode selected.
- With many options it would be possible to have a conflict between two of them on the same product page leading to an option not refreshing the price of the product properly.
- We fixed the country name for Bosnia and Herzegovina.
- We fixed a deprecated message with filters on PHP 8.1.
- We remove special characters when looking for product names from the alias in the URL in the router to avoid regex MySQL errors.
- The filter selection on the filter module settings page can now handle more than 50 filters.
- We fixed a deprecated message on PHP 8 with custom text fields when the value is null in the database.
- The variants display on the products listing would aggregate all the values of all the products on the page instead of only the values of each product individually.
- We've fixed a warning in some rare cases with the thumbnails display on the product details page.
- We fixed a warning relative to the translation files loading.
- We fixed an issue with the product edit interface and Joomla 4.2 related to tags.
- The modification of the description of variants didn't work properly on Joomla 4 in some cases.
- The first parameter of the onBeforeConfigSave event was not set properly by HikaShop.
- When the "synchronized add to cart with cart" setting was activated while using the "tabular" layout, the add to cart wouldn't work properly.
- The cart synchronization didn't work well with multiple dropdown, radio and checkbox custom item fields.
- The characteristic values were not translated properly when using the "radio" display mode.
- The translation popup of variants would display an error with the "Alias automatic filling" setting turned on even though it was working.
- We've fixed a warning when deleting orders in the backend in some rare cases.
- The limits didn't save properly in the backend interface since HikaShop 4.6.0
- The toggle icons would display for the category translation popup even when Falang was not used to handle the translations while they should not appear.
- The French and Russian translation files had a wrong translation key which would override the email sent by Joomla to the admin after a registration, which would create a problem on Joomla 4.
- The actions "Change status", "Add an existing product" and "Change user group" didn't display properly their options until you saved the settings of the mass action.
- We added a fix to properly take into account the custom data of shipping methods in some cases.
Improvements (44)
- It is now possible to use the lowest tax rate for shipping fees.
- The brand selector on the product edit page now displays as a tree as brands can be in several levels.
- There is a new option to the FedEx shipping method to select the environment.
- You can now use a comma as a decimal separator when entering the "Retail price" or when importing the "product_msrp" column.
- The privacy consent integration now supports the "menu item" mode.
- We changed the default "Frequency of the check for the carts" for new installations from 1 days to 20 minutes so that even on websites with many carts created by users, the system can still keep up with deleting the old carts.
- Seletable filters will now be automatically hidden from display when there is no value to select in them.
- We now display boolean custom fields following Joomla 4's style on Joomla 4.
- We've added the support of the privacy consent plugin to the registration form displayed when you click on the link to register in the order notification emails after you placed an order as a guest if the corresponding option is activated.
- We've added an "empty the cart" button to the cart detail page.
- We've added "product_files" and "product_images" as reserved field column names as they are used internally and would create problems if used for a custom field.
- Plugins can now add extra fields on the characteristic edit form in the backend.
- The checkout login view will now display Joomla 4's social buttons (login with Google, Facebook, WebAuth, etc) mechanism. That way, users don't have to go through the registration procedure if social buttons are available (for example if they are added by Akeeba SocialLogin extension: https://extensions.joomla.org/extension/akeeba-sociallogin/ )
- Payment plugin developers can now add an attribute "needCallbackFile" to their plugin class to have a callback file automatically created for them at the root of the website and they can use $this->getCallbackFilename() to get the filename. This can be used when the payment gateway restricts the number of characters or some special characters like ?, & or = for the callback URL for the payment notification. That way, when that callback file is called, it will automatically trigger their plugin's onPaymentNotification function.
- We added a canonical URL header to the contact form page to make sure it's not flagged as duplicate content.
- The orders created with taxes calculated by the TaxCloud plugin can now be modified in the HikaShop backend without loosing the tax information calculated by TaxCloud.
- When the "synchronized add to cart" setting is activated in the HikaShop configuration is activated, you can directly update the quantity of the product from the "add to cart" button area on products listings and product details pages. So far even when reducing the quantity of the product in the cart, the notification box message would be "Product successfully added to the cart". We improved the system so that when the quantity is reduced it says instead "Product successfully removed from the cart" in order to improve user experience.
- There is now a link back to the product details page on the product name of the product contact form.
- If the stock of one of the selected options is not enough (or another limitation is hit for it), if the "group options with product" setting is activated in the HikaShop configuration, the add to cart of the whole product will be cancelled.
- We've added the SameSite attribute to the cart and session cookies to avoid a warning to be displayed in the console of FireFox.
- We now separate the "save" and the "save and close" buttons in the backend on Joomla 4 instead of having them stacked.
- We've added logging capabilities to the "AIM" mode of the Authorize.net payment plugin.
- We now allow HTML tags in the footer of the PDF generated by the PDF invoice plugin.
- We've improved the code loading the custom fields on products listing to avoid errors with custom code in some rare cases.
- We added a decimal to the exchange rate for new installations of HikaShop to be able to handle 6 decimals instead of 5.
- We've added a hidden setting called redirect_url_when_registration_form_access_while_already_logged so that you can override the URL where the user will be redirected if he tries to access the HikaShop registration form while already logged in.
- When the multilanguage edit mechanism is activated, for languages other than English, when HikaShop is being initialized, we now reload all the already loaded translation files without the English overrides so that English translation overrides don't interfer with the original texts of the HikaShop content when the base language of the content is another language than English.
- The PayFast payment plugin included in HikaShop has been removed from HikaShop's install package. PayFast offers their own version of the plugin and it conflicts with it. People already using our version will still be able to continue using it even after updating their HikaShop. But new installations of HikaShop won't have the plugin added anymore and they'll be able to get it from PayFast.
- We've added a new javascript event hkCustomFieldChanged which will be triggered when a custom field is modified.
- Changing custom item fields on the product details page now triggers the hkContentChanged javascript event.
- Plugins can now inject headers into emails in the onBeforeMailPrepare event by adding their headers to $mail->extraHeaders.
- We've removed the SEO fields from the translation popup of variants as they don't make sense there.
- We've added extra data display to the user edit form on the backend so that plugins can add extra elements to that interface.
- We've improved the javascript loading mechanism so that on Joomla 4, it will skip it if the web asset manager has not yet been initialized by Joomla.
- We've improved the categories filters so that if no category is selected, we still only display product categories in the filter as it doesn't make sense to display other category types.
- It is now possible to configure transparent stripes for image thumbnails.
- We improved the email history rendering of the emails to properly display images when added to the email as background-image.
- We removed the "add new value" button for the "default" setting of custom fields as it doesn't work properly and is not necessary there.
- We added an error message if the admin tries to use the "allow new value" setting while using his own MySQL query to load the values of a custom field as that's not possible.
- We improved the reminder plugin so that for cart reminders the plugin takes into account the last modification date of orders (and not only the creation date) and to also use the "cart waiting period" as a buffer so that if an order was created/modified for that user less than that period of time (1 day by default) before the last cart modification we also don't send a reminder.
- We've added a "make this address default" checkbox to the address form on the checkout when necessary to make it easier for the user and avoid having to go to the address manager to change the default address.
- We've added some failsafe for reports not properly initialized in order to not get an error when editing the report.
- We added a patch for the compatibility with 4SEF (successor of SH404SEF).
- HikaShop will now trigger the events onPrepareModuleList, onAfterModuleList and onAfterCleanModuleList for the modules loaded under the product page so that other extensions, like Advanced Modules Manager can process them.
New features (7)
- The translation mechanism now supports non latin languages for the original language with a new setting for it under the Languages tab of the HikaShop configuration.
- The UPS plugin has a new option to be able to select between the production environment and the test environment.
- We've added the "Sofinco" bank to the PayBox payment plugin.
- The variants can now have their own tax category, overriding the main product's.
- We added two settings in the HikaShop configuration to be able to enter your logo URL so that it will be added to the invoices generated by HikaShop.
- We've added a new PayPal Checkout payment plugin to HikaShop. With it, you'll be able to use the latest "PayPal Checkout" offered by PayPal.
- We've added a new option "Email favicon" under the Emails section of the HikaShop configuration so that you can configure a favicon to customize further the emails to your branding.
HikaShop 4.6.1
Release date : July, 1 2022
List of all the files changed between the 4.6.0 and the 4.6.1
Bug fixes (29)
- We improved the product selector to avoid display issues with special characters on variants.
- The waitlist now properly take into account bundled products.
- We fixed an error with the Google Products plugin following the addition of tags support in the file name.
- The address edit/creation form of the address manager on the frontend didn't display the required fields properly.
- The address edit/creation form of the address manager on the frontend didn't display the error messages properly in some cases.
- We fixed the $this->filter_set parameter's value in the product / listing view file.
- We fixed a warning message during the import of products when using the price_value_with_tax column to insert prices.
- The products data was missing in the CSV export of orders due to a change in HikaShop 4.5.1.
- We fixed a notice with the saving of filters in the backend.
- The ORDER_END_MESSAGE text would appear at the end of the order admin notification email in some cases.
- We modified the language files to avoid issues with PHP8 in some rare cases.
- There was a problem in the Russian and Malaysian translation files which would result in a fatal error on PHP 8 at the end of the checkout for these languages.
- The import of products didn't work properly in some cases.
- We fixed an issue with pagination.
- We fixed a warning with the import / copy in some cases.
- Product listing carousel modules inserted inside the main area of a HikaShop page on the frontend (like with the "modules under the product page" setting or with a loadmodule tag inside a category description) would get a normal pagination even though they shouldn't and the carousel wouldn't work properly.
- We fixed some deprecated messages for PHP8 during the email generation process in some rare cases.
- The configuration of several triggers / filters / actions in a massaction on PHP8 could result in problematic refresh issues for one of them.
- An error would happen when deleting addresses or orders due to a change we made in the 4.6.0 to support deleting the images/files of custom fields when an address / order is deleted.
- We fixed a notice when exporting all products data and there are variants pointing to a non existant product. This should normally never happen unless you delete the product manually from the database without deleting the corresponding variants or if an unforseen event stop the deletion process of a product before it can delete all the variants.
- We made a fix to the HikaShop user synchronisation plugin to avoid a conflict with easyblog in the backend.
- The "display limited to" setting of custom product fields wouldn't work properly on the product edit page due to the field customization interface we've added recently.
- We fixed a bug with the export action of mass actions which could happen in some cases.
- We've fixed an issue which could happen in some cases with the creation of new variants and their edition.
- We fixed a notice on the payment notification email when products would have downloadable files attached to them.
- The tags {year}, {month} and {day} didn't work properly for mass actions.
- Custom fields of the table "category" wouldn't display properly on the category edit form due to an issue with the modifications we made in the 4.6.0 for the support of the "hidden" custom field type.
- We fixed an error with the creation of new categories on PHP8.
- The custom order field selector of the "Fields" view in the Checkout workflow setting of the HikaShop configuration page could potentially generate a javascript error leading to the Checkout workflow editor not working properly.
Improvements (18)
- We modified the Google Analytics 4 plugin to load the google analytics javascript asynchronously to help with page display performances.
- The PayPal plugin now changes the rounding of the prices sent to PayPal based on the currency as PayPal changed the system on their end to enforce it.
- The PayPal Express plugin now changes the rounding of the prices sent to PayPal based on the currency as PayPal changed the system on their end to enforce it.
- The HikaShop password plugin now also changes the "add to cart" button to a "choose options" button on the products listing if there is a password on a product and it hasn't been provided yet by the user.
- We improved the product selector so that if several variants of a product match with the text entered in the selector, the product is only once in the results, and not once per matching variant.
- We now cancel the enter key action on the product selector popup when using the "select" button of the order edit area.
- We changed the USPS shipping plugin's message when no shipping rates are available so that it can be modified with a translation override.
- We've added the meta tag datePublished for each comment to provide the date when the comment was posted.
- The smart search index will now refresh when a category is published/unpublished so that products only linked to unpublished products will be removed from the index and vice-versa.
- The "categories" setting of coupons can now handle brands as well.
- We now take into account the published categories during the indexation process of the smart search so that if all the categories of a product are unpublished, the product state in the index is 0 and it won't appear in the search results on the frontend.
- We now automatically create the custom user field "user_points" when a user points gain plugin instance is configured or when a user points payment method is configured.
- The "Force a menu on checkout" option of the HikaShop configuration now take into account associated menu items for the different languages.
- We changed the text for the minimum quantity field of prices when editing a price of a product in the backend to avoid confusion between stock and minimum quantity.
- We've added a new font to the PDF invoice plugin to properly support Chinese.
- Canonical URLs now support # in them.
- We removed a useless / in the URL of some images of some of the images sent by hikashop.
- The email history now provides the link to the order for contact emails sent for an order.
New features (4)
- We added a new event onAfterFieldInit so that plugins can modify the initialization of custom fields.
- We added a hidden option default_order_status_on_order_listing for the orders listing.
- The like plugin has an extra choice so that you can remove the like icon from the products listings to only have it on the product details pages.
- We've added the possibility to add the variant images before the main product image instead of after with the "Variant images behavior" we've added in the 4.6.0
HikaShop 4.6.0
Release date : May, 27 2022
List of all the files changed between the 4.5.1 and the 4.6.0
Bug fixes (23)
- The cart module wouldn't refresh upon being emptied in some rare cases.
- We fixed an issue with custom fields in some rare cases on PHP8.
- We fixed a compatibility issue with Joomla 4 on some rare backward compatibility with old view overrides when looking a the cart view on the frontend.
- The shipping view would prevent the checkout from finishing if a warehouse of products had no shipping methods available even though no shipping was necessary for it (for weightless products for example).
- We reverted the modifications in the Oby library and migrated the xRequest and updateElem functions in window.hikashop so that we can have them work the way we need them in hikashop while not changing anything for other extensions using Oby.
- We fixed some issues between the TaxCloud plugin and Joomla 4.
- The waitlist return screen would display without the template in some cases.
- The PDF invoice plugin now properly take into account the shipping address override of the Mondial relay and Colissimo shipping plugins.
- The Google Analytics 4 and Matomo plugin could generate an error on Joomla 4 in some rare cases.
- When clicking on the "notify me when available" button of products without stock from inside a popup, it wouldn't display properly the waitlist form inside the popup.
- We fixed some deprecated messages on PHP 8.1.
- We fixed an error with the export system.
- On joomla 4, a fatal error would happen on the frontend pages with an add to cart button being added through a content tag if the "use chosen library" setting would be activated in the HikaShop configuration.
- The quantity input field of the cart details page on the frontend would not allow you to change the quantity of the product in some cases.
- We fixed a fatal error on Joomla 4 with the Recaptcha plugin on some pages of the frontend in some rare cases.
- The quantity input field was not always taken into account when adding a product to the cart from inside a popup.
- We fixed a compatibility issue with Joomla 4 when displaying a categories listing module with a specific set of settings.
- The instalments options in the ATOS SIPS v2 plugin didn't work properly.
- We fixed the USPS shipping plugin as it was not providing a correct girth to USPS in some cases, which could result in higher rates than expected in some cases.
- We've added a fix for the loading of the categories of a product in the Matomo plugin.
- We've added a fix for Joomla 4 compatibility in some rare cases for the Recaptcha plugin.
- In some rare cases, it was possible for a user to post a comment without entering a username/email with his comment.
- When public voting would be activated, it would be possible to publish a comment on a product without entering a username if the user had already filled the guest checkout form.
Improvements (27)
- We now have a new hikashop_human_readable_bytes function in our main helper to easily display file sizes in a human readable form.
- We improved the support of Joomla 2.5.
- We now take into account the value configured in the Joomla configuration's robots setting when the robots setting of the menu item is set to "use global".
- We've changed the order of the Iranian provinces so that they are in the correct order for an Iranian searching among them.
- We've added Iran province names in English.
- Tags {language} {date} and {time} can now be used in the XML file name of the Google Products plugin.
- We now generate the breadcrumb links before generating the variant data to avoid variant data being used in the last entry of the breadcrumb on the product details page.
- We now catch the exception when the view creation queries fail on the partners listing due to missing permissions of the MySQL user. That way the listing can still be used, it's just the total fees that are missing from the listing.
- We now hide the "last modified" column instead of the checkbox column on small width devices on the orders listing so that the user can still select the orders to use actions, delete them, copy them, etc.
- We've changed the delay setting in the ATOS SIPS v2 plugin to use days instead of months as the maximum delay allowed by ATOS SIPS is 30 days and if you entered 1 month, it would work properly for months with 31 days.
- We've improved the deletion of custom fields. You'll now be presented with a link you can click on to also delete the data in the database after deleting the custom field.
- It is now possible to create new custom fields with the same column name as previously deleted custom fields. In such a case, the data of the previous field will be automatically used for the new custom field.
- We changed the type of some of the columns in the database, like the product_description, from text to longtext for new installs of HikaShop so that it can hold longer text.
- We improved different quantity input displays for J3 & J4 (and added a hika_j3 / hika_j4 class).
- We added a class in order to specify whether a filter has been applied to the listing or not, and authorize specific css styles.
- We added a class to the waitlist button to allow easier styling of the button.
- We now include more information on the issue when sending a payment notification email to the admin and there was an issue.
- We now display a nicer error message when you create a filter for a mass action and there is a problem (a MySQL query error because of a wrong regex for example).
- The "main attributes" area now hides automatically when empty on the custom fields edit interface.
- The smart search integration plugin now supports images.
- The XLSX format now also takes into account the "CSV decimal separator" setting of the HikaShop configuration.
- The "OK" button in the actions popup has been renamed to "process" to better fit with what it does.
- The order export now includes a column for each tax rate for easier accounting, similar to what is provided with the mass action's export capabilities.
- The order_tax_amount columns for the "Display the results" action of mass actions now display as prices instead of floats taking into account the currency of the order.
- You can now select the order_tax_amount column for the "Export a CSV file" action of mass actions.
- The system will now generate the alias automatically for the translation of products / categories when providing a translated name without providing a translated alias if the "alias auto fill" setting of the HikaShop configuration is activated.
- We improved the messages display for the vote & comment system.
New features (9)
- We've added a new type "hidden" to the available custom field types. That way, you can create hidden fields to inject data into on forms without having to add custom CSS to hide the custom field from the view.
- We've added a new option "Variant images behavior" so that both the main product images and the variant images can be displayed when a variant is selected.
- We've added an extra setting "Support translated aliases in URLs" to the Languages tab of the HikaShop configuration so that you can manually activate the translation of aliases as it could cause heavy load on servers due to the way it works.
- The custom fields of the type "ajax file" and "ajax image" now have a "delete files" setting so that they can remove the files attached to an element when that element is deleted (for example if you delete a product and you had uploaded files to a custom ajax file field for that product, the files will be removed along with the product).
- The custom fields of the type "ajax image" now have a "thumbnails dimensions" setting so that you can define the size of the thumbnails when displaying the uploaded images while beofre it was automatically 100*100px.
- We've added a new option to characteristics so that you can display the available values for each product on products listings.
- We've added a new option to the mass actions so that you can use the actions of a massaction as an extra button on listings.
- We added the events onBeforeProductExport, onBeforeZoneDelete, onAfterZoneDelete, onBeforeZoneCreate, onBeforeZoneUpdate, onAfterZoneCreate, onAfterZoneUpdate, onBeforeWarehouseDelete, onAfterWarehouseDelete, onBeforeWarehouseCreate, onBeforeWarehouseUpdate, onAfterWarehouseCreate, onAfterWarehouseUpdate, onBeforeWaitlistCreate, onBeforeWaitlistUpdate, onAfterWaitlistCreate, onAfterWaitlistUpdate, onBeforeWaitlistDelete, onAfterWaitlistDelete, onBeforeViewUpdate, onAfterViewUpdate, onBeforeViewDelete, onAfterViewDelete, onBeforeHikaPluginDelete, onAfterHikaPluginDelete, onAfterHikaPluginCreate, onAfterHikaPluginUpdate, onBeforeOrderstatusDelete, onAfterOrderstatusDelete, onAfterMassactionProcess, onBeforeLimitCreate, onBeforeLimitUpdate, onAfterLimitCreate, onAfterLimitUpdate, onBeforeLimitDelete, onAfterLimitDelete, onBeforeFilterDelete, onAfterFilterDelete, onBeforeFilterCreate, onBeforeFilterUpdate, onAfterFilterCreate, onAfterFilterUpdate, onBeforeBannerCreate, onBeforeBannerUpdate, onAfterBannerCreate, onAfterBannerUpdate, onBeforeBannerDelete, onAfterBannerDelete, onBeforeCurrencyDelete, onAfterCurrencyDelete, onBeforeCurrencyCreate, onBeforeCurrencyUpdate, onAfterCurrencyCreate, onAfterCurrencyUpdate, onBeforeCharacteristicDelete, onAfterCharacteristicDelete, onBeforeCharacteristicCreate, onBeforeCharacteristicUpdate, onAfterCharacteristicCreate, onAfterCharacteristicUpdate, onBeforeBadgeDelete, onAfterBadgeDelete, onBeforeBadgeCreate, onBeforeBadgeUpdate, onAfterBadgeCreate, onAfterBadgeUpdate so developers can interface with that data.
- We developed an Action log plugin for HikaShop and Joomla 4 which needed all the events above to be added in HikaShop. It is now available on our marketplace.