Author Topic: New stable release candidate vm 3.4.2.9966 released, complete list of changes  (Read 25343 times)

Milbo

  • Virtuemart Projectleader
  • Administrator
  • Super Hero
  • *
  • Posts: 10663
  • VM4.0.232 Eagle Owl
    • VM3 Extensions
  • VirtueMart Version: VirtueMart 4 on joomla 3
The problem started with a small change to the Joomla updater, which required us to write a system plugin for third-party VirtueMart plugins. But of course a few third-party developers did the same thing (one of them gave us the code instead of providing his own) and so we encountered several plugins trying to load the VirtuemartConfig class before the updater could load the config class from the new installation files. So the updater got the wrong paths. Normally this wouldn't be a big deal as long as the correct SQL files are loaded, because most of the installation functions are based on those of the installation program.

But one of the big design changes in VM 3.4 was to use the Joomla class loader. The old VirtueMartConfig classes didn't register the new classes and all old 'if class not exists' constructions were removed, so some users had missing classes when they updated the core program. We are sorry about that.

We noticed this problem a few months ago and updated the system installer to check if there is an update and set the correct path. But we overlooked the point that third-party system plugins can already be loaded and that our system plugin is usually updated later (most people update the core first, then AIO). So users who updated got the problem that the updater loaded the wrong SQL files. The simple fix was to use the installation files to update again, or to run our tool (usually for developers only) "Install or if necessary update tables". This was the reason why we changed the installation files within 2 days of the release. The new installer now always uses the correct directory and it is no longer dependent on the loaded VirtueMart config class. In addition, the classes are re-registered in the Joomla class loader with the correct path. Third party vendors should update their system plugins by loading the VirtueMartConfig class in the same way as ours.

r9962
Fix for vendor list (Fallback for multilang was missing)
---------------------
r9961
- fixed bug of double encrypted fields in case of table loaded with language fallback
- Enhanced installation of language tables (fullinstaller, normal install, language change)
---------------------
r9955
- backend category listing, added strip_tags to category_description (invalid html in the description could break the list layout)
- removed accidently set comment at trigger plgVmOnStoreInstallPluginTable (customs) and added an if so that the trigger is only executed when a custom with plugin is stored
- added allIds to fillVoidProduct to avoid notices
- readded function _getCustomPrice
---------------------
r9954
- VmConfig the option "Use Global Configuration" displays now the language tag of the global configuration
- installer, removed COM_VM_INSTALL_VMCONFIG_ALREADY_LOADED
---------------------
r9953
added function vRequest::vmHtmlEntities and used it anywhere in product edit (replaced old htmlentities respectivly htmlspecialchars)
---------------------
r9952
Fixed order tracking mode
---------------------
r9951
Paypal Smart Buttons added label, language, ...
---------------------
r9950
- sendVmMail: more robust code
---------------------
r9949
Fixed 404 handling, 404 is now set in the header
---------------------
r9944
eway: fixes in payment currency
---------------------
r9943
Eway uses an AJAX page using the JSONP submission script State code sent to Eway countrycode + state code payment currency fixed
---------------------
r9939
- Moved vmDefines outside config
- Important fix for the country/state checker again, when no state/country userfield was published
- Userfields, cart address should show now the country in the right language
- order status was sometimes in invoice mail not correctly translated
---------------------
Should I fix your bug, please support the VirtueMart project and become a member
______________________________________
Extensions approved by the core team: http://extensions.virtuemart.net/

Studio 42

  • Contributing Developer
  • Sr. Member
  • *
  • Posts: 4728
  • Joomla & Virtuemart developper
    • Studio 42 - Virtuemart & Joomla extentions
  • VirtueMart Version: 2.6 & 3

aninka

  • Beginner
  • *
  • Posts: 11
I did the update today and now when I log in to my Joomla administration site, I get the menus and a blank page.  there is the "Error 1242 subquery returns mor than 1 row" none of the menu options are working and VM is totally missing from all the menus.
I can't work out what to do, the front end of the website is working fine but I can't access anything on the backend including updating customer orders. 

Please help, I think this issue happened when the VM aio was being updated as it was all working well before that.

Please help, running Joomla 3.8.13 PHP 7.0.32 Virtuemart latest version updated today but can't access to tell you what version it is.  :'(

GJC Web Design

  • 3rd party VirtueMart Developer
  • Super Hero
  • *
  • Posts: 10882
  • Virtuemart, Joomla & php developer
    • GJC Web Design
  • VirtueMart Version: 3.8.8
In an emergency u can always access your VM by   https://www.yoursite.com/administrator/index.php?option=com_virtuemart
GJC Web Design
VirtueMart and Joomla Developers - php developers https://www.gjcwebdesign.com
VM3 AusPost Shipping Plugin - e-go Shipping Plugin - VM3 Postcode Shipping Plugin - Radius Shipping Plugin - VM3 NZ Post Shipping Plugin - AusPost Estimator
Samport Payment Plugin - EcomMerchant Payment Plugin - ccBill payment Plugin
VM2 Product Lock Extension - VM2 Preconfig Adresses Extension - TaxCloud USA Taxes Plugin - Virtuemart  Product Review Component
https://extensions.joomla.org/profile/profile/details/67210
Contact for any VirtueMart or Joomla development & customisation

aninka

  • Beginner
  • *
  • Posts: 11
thanks but that is not working either using https://www.yoursite.com/administrator/index.php?option=com_virtuemart gives me the same result.   a white page with the top admin menu that doesn't work. 

How else can I fix this?

StefanSTS

  • Global Moderator
  • Full Member
  • *
  • Posts: 598
  • VirtueMart Version: VM 4.2 on Joomla 4.5
Maybe install VM 3.4.0 for now. Download section: http://dev.virtuemart.net/projects/virtuemart/files

Stefan
--
Stefan Schumacher
www.jooglies.com - VirtueMart Invoice Layouts

Please use only stable versions with even numbers for your live shop! Use Alpha versions only if you know what risk you are taking.

aninka

  • Beginner
  • *
  • Posts: 11
Thanks but would installing this wipe out my data, media files, settings etc?  and how do I install it if I can't access the Joomla administration section?



GJC Web Design

  • 3rd party VirtueMart Developer
  • Super Hero
  • *
  • Posts: 10882
  • Virtuemart, Joomla & php developer
    • GJC Web Design
  • VirtueMart Version: 3.8.8
Data is never touched in upgrades/down grades

the white screen is a fatal error

read here and find what it is  http://forum.virtuemart.net/index.php?topic=117042.0

everything is fixable

GJC Web Design
VirtueMart and Joomla Developers - php developers https://www.gjcwebdesign.com
VM3 AusPost Shipping Plugin - e-go Shipping Plugin - VM3 Postcode Shipping Plugin - Radius Shipping Plugin - VM3 NZ Post Shipping Plugin - AusPost Estimator
Samport Payment Plugin - EcomMerchant Payment Plugin - ccBill payment Plugin
VM2 Product Lock Extension - VM2 Preconfig Adresses Extension - TaxCloud USA Taxes Plugin - Virtuemart  Product Review Component
https://extensions.joomla.org/profile/profile/details/67210
Contact for any VirtueMart or Joomla development & customisation

GJC Web Design

  • 3rd party VirtueMart Developer
  • Super Hero
  • *
  • Posts: 10882
  • Virtuemart, Joomla & php developer
    • GJC Web Design
  • VirtueMart Version: 3.8.8
Quote
and how do I install it if I can't access the Joomla administration section?

so NOTHING is visible in the Joomla admin?
GJC Web Design
VirtueMart and Joomla Developers - php developers https://www.gjcwebdesign.com
VM3 AusPost Shipping Plugin - e-go Shipping Plugin - VM3 Postcode Shipping Plugin - Radius Shipping Plugin - VM3 NZ Post Shipping Plugin - AusPost Estimator
Samport Payment Plugin - EcomMerchant Payment Plugin - ccBill payment Plugin
VM2 Product Lock Extension - VM2 Preconfig Adresses Extension - TaxCloud USA Taxes Plugin - Virtuemart  Product Review Component
https://extensions.joomla.org/profile/profile/details/67210
Contact for any VirtueMart or Joomla development & customisation

Studio 42

  • Contributing Developer
  • Sr. Member
  • *
  • Posts: 4728
  • Joomla & Virtuemart developper
    • Studio 42 - Virtuemart & Joomla extentions
  • VirtueMart Version: 2.6 & 3
If you cannot modify the config, you should edit the configuration.php file in the Jomla root folder and set public $error_reporting = 'maximum';

welrachid

  • Jr. Member
  • **
  • Posts: 265
  • 3rd party plugin developer
  • Skype Name: wel.rachid
  • VirtueMart Version: Always LATEST stable
Hi Guys.
im using a custombuild component to make the life of a shopowner easier. I have a controller in which i have tasks that all rely on this old
      if (!class_exists ('shopFunctionsF'))
         require(VMPATH_SITE . DS . 'helpers' . DS . 'shopfunctionsf.php');

Apparently DS is no longer defined, so i changed this to DIRECTORY_SEPARATOR
VMPATH_SITE is also not defined, so i cant get classes loaded correctly.

this means that:
$orderModel=VmModel::getModel('orders');
gives me a Fatal error.

Is there a place where i can see how its supposed to be done?
this probably means i need to change a lot of internal plugins to make them work correctly..
(Was working correctly in 3.2.14)

Thanks.
Best regards,
Wel

aninka

  • Beginner
  • *
  • Posts: 11
no, nothing is showing except the normal joomla menu but the menu options are not working at all.  The Virtuemart menu options are missing from the menu, they won't load. 

It is the update that broke it, particularly the aio update, everything was fine until then.

not sure how I can install the previous version without Joomla working. 

The only other option I can think of is to restore from yesterday's back up but I will loose my customer information and the orders that came through today. 

Any help at this stage would be great, please

GJC Web Design

  • 3rd party VirtueMart Developer
  • Super Hero
  • *
  • Posts: 10882
  • Virtuemart, Joomla & php developer
    • GJC Web Design
  • VirtueMart Version: 3.8.8
I do something like this is external comps

      if (!class_exists( 'VmConfig' )) {
      require(JPATH_ADMINISTRATOR.DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_virtuemart'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'config.php');
      VmConfig::loadConfig();
}

Max will probably have a fit though..  ;)
GJC Web Design
VirtueMart and Joomla Developers - php developers https://www.gjcwebdesign.com
VM3 AusPost Shipping Plugin - e-go Shipping Plugin - VM3 Postcode Shipping Plugin - Radius Shipping Plugin - VM3 NZ Post Shipping Plugin - AusPost Estimator
Samport Payment Plugin - EcomMerchant Payment Plugin - ccBill payment Plugin
VM2 Product Lock Extension - VM2 Preconfig Adresses Extension - TaxCloud USA Taxes Plugin - Virtuemart  Product Review Component
https://extensions.joomla.org/profile/profile/details/67210
Contact for any VirtueMart or Joomla development & customisation

GJC Web Design

  • 3rd party VirtueMart Developer
  • Super Hero
  • *
  • Posts: 10882
  • Virtuemart, Joomla & php developer
    • GJC Web Design
  • VirtueMart Version: 3.8.8
Quote
Any help at this stage would be great, please


Quote
the white screen is a fatal error

read here and find what it is  http://forum.virtuemart.net/index.php?topic=117042.0


??????

and the error is?
GJC Web Design
VirtueMart and Joomla Developers - php developers https://www.gjcwebdesign.com
VM3 AusPost Shipping Plugin - e-go Shipping Plugin - VM3 Postcode Shipping Plugin - Radius Shipping Plugin - VM3 NZ Post Shipping Plugin - AusPost Estimator
Samport Payment Plugin - EcomMerchant Payment Plugin - ccBill payment Plugin
VM2 Product Lock Extension - VM2 Preconfig Adresses Extension - TaxCloud USA Taxes Plugin - Virtuemart  Product Review Component
https://extensions.joomla.org/profile/profile/details/67210
Contact for any VirtueMart or Joomla development & customisation

welrachid

  • Jr. Member
  • **
  • Posts: 265
  • 3rd party plugin developer
  • Skype Name: wel.rachid
  • VirtueMart Version: Always LATEST stable
I do something like this is external comps

      if (!class_exists( 'VmConfig' ))
      require(JPATH_ADMINISTRATOR.DIRECTORY_SEPARATOR.'components'.DIRECTORY_SEPARATOR.'com_virtuemart'.DIRECTORY_SEPARATOR.'helpers'.DIRECTORY_SEPARATOR.'config.php');
      VmConfig::loadConfig();
}

Max will probably have a fit though..  ;)

Thanks. Works like a charm. it was missing "{"
Best regards,
Wel