New pre subrelease VirtueMart 2.0.3.B update

Started by Milbo, March 04, 2012, 20:35:05 PM

Previous topic - Next topic

Milbo

After the release is before the next release.

Here is our new release candidate. We just stabilised the code and fixed a small security issue. Created userfield plugin system for captcha, euvatchecker and simular (not in core yet). Small enhancements by 3rd party developers were added. We recommended for everyone to test the installation on a copy. This version should be more compatible to 2.0.0 templates then 2.0.2.
There is nothing special to take care of, just use the normal upgrade method provided by joomla (just install again).

-update b:
re-enabled the tableupdater, please execute the tool "update tables" to update your db layout.

-update a:
Better migration options


- new userfield plugin hooks..
- textarea as customfield.
- rised internal calculation precision
- overhauled pagination and ordering (no changes for templates !)
- added warnings
- some sef fixes
- some trigger fixes by 3rd party
- fixed light security issue
- adjusted data witha working example of dynamic child list
- small fixes, here and there

http://dev.virtuemart.net/attachments/download/392/com_virtuemart.2.0.3.b_extract_first.zip
Should I fix your bug, please support the VirtueMart project and become a member
______________________________________
Extensions approved by the core team: http://extensions.virtuemart.net/

vigier

#1
Get the next errors when installing the AIO-part:
com_virtuemart_allinoneInstallerScript:: SHOW TABLES LIKE "%virtuemart_payment_plg_standard" tblsr_virtuemart_payment_plg_standard
com_virtuemart_allinoneInstallerScript:: VirtueMart2 update #__virtuemart_payment_plg_standard

createTable ERROR :Incorrect table definition; there can be only one auto column and it must be defined as a key SQL=CREATE TABLE IF NOT EXISTS `tblSR_virtuemart_payment_plg_standard` ( `id` INT(1) UNSIGNED NOT NULL AUTO_INCREMENT, `virtuemart_order_id` INT(1) UNSIGNED DEFAULT NULL, `order_number` CHAR(32) DEFAULT NULL, `virtuemart_paymentmethod_id` MEDIUMINT(1) UNSIGNED DEFAULT NULL, `payment_name` VARCHAR(5000), `payment_order_total` DECIMAL(15,5) NOT NULL DEFAULT '0.00000', `payment_currency` CHAR(3) , `cost_per_transaction` DECIMAL(10,2) DEFAULT NULL, `cost_percent_total` DECIMAL(10,2) DEFAULT NULL, `tax_id` SMALLINT(1) DEFAULT NULL, `created_on` datetime NOT NULL default '0000-00-00 00:00:00', `created_by` int(11) NOT NULL DEFAULT 0, `modified_on` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `modified_by` int(11) NOT NULL DEFAULT 0, `locked_on` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `locked_by` int(11) NOT NULL DEFAULT 0) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
com_virtuemart_allinoneInstallerScript:: SHOW TABLES LIKE "%virtuemart_payment_plg_payzen"
com_virtuemart_allinoneInstallerScript:: SHOW TABLES LIKE "%virtuemart_payment_plg_authorizenet"
com_virtuemart_allinoneInstallerScript:: SHOW TABLES LIKE "%virtuemart_payment_plg_paypal"
com_virtuemart_allinoneInstallerScript:: SHOW TABLES LIKE "%virtuemart_shipment_plg_weight_countries" tblsr_virtuemart_shipment_plg_weight_countries
com_virtuemart_allinoneInstallerScript:: VirtueMart2 update #__virtuemart_shipment_plg_weight_countries

createTable ERROR :Incorrect table definition; there can be only one auto column and it must be defined as a key SQL=CREATE TABLE IF NOT EXISTS `tblSR_virtuemart_shipment_plg_weight_countries` ( `id` INT(1) UNSIGNED NOT NULL AUTO_INCREMENT, `virtuemart_order_id` INT(11) UNSIGNED DEFAULT NULL, `order_number` CHAR(32) DEFAULT NULL, `virtuemart_shipmentmethod_id` MEDIUMINT(1) UNSIGNED DEFAULT NULL, `shipment_name` VARCHAR(5000), `order_weight` DECIMAL(10,4) DEFAULT NULL, `shipment_weight_unit` CHAR(3) DEFAULT 'KG' , `shipment_cost` DECIMAL(10,2) DEFAULT NULL, `shipment_package_fee` DECIMAL(10,2) DEFAULT NULL, `tax_id` SMALLINT(1) DEFAULT NULL, `created_on` datetime NOT NULL default '0000-00-00 00:00:00', `created_by` int(11) NOT NULL DEFAULT 0, `modified_on` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `modified_by` int(11) NOT NULL DEFAULT 0, `locked_on` datetime NOT NULL DEFAULT '0000-00-00 00:00:00', `locked_by` int(11) NOT NULL DEFAULT 0) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
com_virtuemart_allinoneInstallerScript:: SHOW TABLES LIKE "%virtuemart_custom_plg_textinput"
com_virtuemart_allinoneInstallerScript:: SHOW TABLES LIKE "%virtuemart_custom_plg_specification"
com_virtuemart_allinoneInstallerScript:: SHOW TABLES LIKE "%virtuemart_custom_plg_stockable"
com_virtuemart_allinoneInstallerScript:: SHOW TABLES LIKE "%virtuemart_arch_plg_virtuemart"
Installeren component is geslaagd


Kind regards,
Vigier

vigier

#2
And the next errors after reloading my website using 2.0.3.

1)
Notice: Undefined property: stdClass::$virtuemart_category_id in C:\wamp\www\Joomla\components\com_virtuemart\views\virtuemart\tmpl\default_products.php on line 57
Call Stack
# Time Memory Function Location
1 0.0003 648312 {main}( ) ..\index.php:0
2 0.0718 9458032 JSite->dispatch( ) ..\index.php:42
3 0.0741 9532288 JComponentHelper::renderComponent( ) ..\application.php:187
4 0.0770 9671216 JComponentHelper::executeComponent( ) ..\helper.php:357
5 0.0773 9775816 require_once( 'C:\wamp\www\Joomla\components\com_virtuemart\virtuemart.php' ) ..\helper.php:388
6 0.1027 12161488 JController->execute( ) ..\virtuemart.php:103
7 0.1027 12161568 JController->display( ) ..\controller.php:754
8 0.1051 12463936 VirtueMartViewVirtueMart->display( ) ..\controller.php:715
9 0.2381 20808048 JView->display( ) ..\view.html.php:131
10 0.2381 20808048 JView->loadTemplate( ) ..\view.php:301
11 0.2391 20859560 include( 'C:\wamp\www\Joomla\components\com_virtuemart\views\virtuemart\tmpl\default.php' ) ..\view.php:742
12 0.2404 20863840 JView->loadTemplate( ) ..\default.php:38
13 0.2413 20953344 include( 'C:\wamp\www\Joomla\components\com_virtuemart\views\virtuemart\tmpl\default_products

2)
Warning: Invalid argument supplied for foreach() in C:\wamp\www\Joomla\libraries\joomla\html\html\select.php on line 504
Call Stack
# Time Memory Function Location
1 0.0003 648312 {main}( ) ..\index.php:0
2 0.2611 20998664 JSite->render( ) ..\index.php:48
3 0.2658 21310888 JDocumentHTML->render( ) ..\application.php:261
4 0.2658 21310888 JDocumentHTML->_renderTemplate( ) ..\html.php:433
5 0.2672 21374376 JDocumentHTML->getBuffer( ) ..\html.php:655
6 0.2672 21374992 JDocumentRendererModules->render( ) ..\html.php:371
7 0.2672 21376456 JDocumentRendererModule->render( ) ..\modules.php:39
8 0.2673 21378072 JModuleHelper::renderModule( ) ..\module.php:106
9 0.2688 21439976 include( 'C:\wamp\www\Joomla\modules\mod_virtuemart_currencies\mod_virtuemart_currencies.php' ) ..\helper.php:175
10 0.2696 21440888 require( 'C:\wamp\www\Joomla\modules\mod_virtuemart_currencies\tmpl\default.php' ) ..\mod_virtuemart_currencies.php:49
11 0.2697 21441320 JHtml::_( ) ..\default.php:8
12 0.2697 21442784 JHtml::call( ) ..\html.php:103
13 0.2697 21444792 call_user_func_array ( ) ..\html.php:222
14 0.2697 21445696 JHtmlSelect::genericlist( ) ..\html.php:222
15 0.2697 21447624 JHtmlSelect::options( )

3)
Notice: Undefined property: stdClass::$virtuemart_category_id in C:\wamp\www\Joomla\administrator\components\com_virtuemart\models\product.php on line 882
Call Stack
# Time Memory Function Location
1 0.0003 648520 {main}( ) ..\index.php:0
2 0.0830 11287840 JSite->dispatch( ) ..\index.php:42
3 0.0834 11290864 JComponentHelper::renderComponent( ) ..\application.php:187
4 0.0863 11430152 JComponentHelper::executeComponent( ) ..\helper.php:357
5 0.0866 11533832 require_once( 'C:\wamp\www\Joomla\components\com_virtuemart\virtuemart.php' ) ..\helper.php:388
6 0.1037 12735464 JController->execute( ) ..\virtuemart.php:103
7 0.1037 12735544 VirtueMartControllerProductdetails->display( ) ..\controller.php:754
8 0.1061 13114168 VirtueMartViewProductdetails->display( ) ..\productdetails.php:49
9 0.1763 20379056 VirtueMartModelProduct->getNeighborProducts( ) ..\view.html.php:140


4)
Notice: Undefined property: stdClass::$virtuemart_category_id in C:\wamp\www\Joomla\components\com_virtuemart\views\productdetails\tmpl\default.php on line 26
Call Stack
# Time Memory Function Location
1 0.0003 648520 {main}( ) ..\index.php:0
2 0.0830 11287840 JSite->dispatch( ) ..\index.php:42
3 0.0834 11290864 JComponentHelper::renderComponent( ) ..\application.php:187
4 0.0863 11430152 JComponentHelper::executeComponent( ) ..\helper.php:357
5 0.0866 11533832 require_once( 'C:\wamp\www\Joomla\components\com_virtuemart\virtuemart.php' ) ..\helper.php:388
6 0.1037 12735464 JController->execute( ) ..\virtuemart.php:103
7 0.1037 12735544 VirtueMartControllerProductdetails->display( ) ..\controller.php:754
8 0.1061 13114168 VirtueMartViewProductdetails->display( ) ..\productdetails.php:49
9 0.1871 21132584 JView->display( ) ..\view.html.php:284
10 0.1871 21132584 JView->loadTemplate( ) ..\view.php:301
11 0.1883 21288048 include( 'C:\wamp\www\Joomla\components\com_virtuemart\views\productdetails\tmpl\default.php' ) ..\view.php:742

5)
Notice: Undefined property: stdClass::$virtuemart_category_id in C:\wamp\www\Joomla\components\com_virtuemart\views\productdetails\tmpl\default.php on line 96
Call Stack
# Time Memory Function Location
1 0.0003 648520 {main}( ) ..\index.php:0
2 0.0830 11287840 JSite->dispatch( ) ..\index.php:42
3 0.0834 11290864 JComponentHelper::renderComponent( ) ..\application.php:187
4 0.0863 11430152 JComponentHelper::executeComponent( ) ..\helper.php:357
5 0.0866 11533832 require_once( 'C:\wamp\www\Joomla\components\com_virtuemart\virtuemart.php' ) ..\helper.php:388
6 0.1037 12735464 JController->execute( ) ..\virtuemart.php:103
7 0.1037 12735544 VirtueMartControllerProductdetails->display( ) ..\controller.php:754
8 0.1061 13114168 VirtueMartViewProductdetails->display( ) ..\productdetails.php:49
9 0.1871 21132584 JView->display( ) ..\view.html.php:284
10 0.1871 21132584 JView->loadTemplate( ) ..\view.php:301
11 0.1883 21288048 include( 'C:\wamp\www\Joomla\components\com_virtuemart\views\productdetails\tmpl\default.php' ) ..\view.php:742

BTW:

  • I use Joomla 2.5.1.
  • I don't use categories. Added this because I see a few things about Category_id in the errors
Hope the above information helps you developing a stable 2.0.3.
Kind regards,
Vigier

smimish

Pagination is completely broken.
VM 2.0.3 + Joomla 2.5.1.
The language of the shop is Russian.

lipes

#4
Do not try to go to Product Categories and do some Ordering and Save hitting the Disk ..
you'll get all your work f..... cked....  argh... :'(

I have added 323 categories before and now i'm having big problems to get this like it was.
i cant do nothing!
This was the problem nr 9 that i've also reported here: http://forum.virtuemart.net/index.php?topic=99052.0

..................
UPDATE: SOLVED -> PRESS the Ordering link in the left of the Disk
VM V. online: J2.5.14 | VM 2.0.20a | SQL 5.1.70 | PHP 5.3.25

Milbo

vigier did you used the latest aio? or the aio before the core? I tried to understand the error but looks for me impossible. The error with the missing category, hmmm. Normal products must have a category. I wonder how you show them. With single joomla menu items? We can remove the notice, not big deal, just so.

smimish, what means the pagination is broken? I worked on it heavily the last days.

prolipes, sorry but in the posts stands "We recommended for everyone to test the installation on a copy". What happens when you change the ordering? I hope you understood that every category as its own order for its subcategories.
Should I fix your bug, please support the VirtueMart project and become a member
______________________________________
Extensions approved by the core team: http://extensions.virtuemart.net/

lipes

#6
Hi Milbo
I am still testing the VM on localhost (ampps) and build the site for my parents at the same time ...
I understand, no problem ..
Worse is that I was ordained and now I have to see how it was again...
The Product Categories Ordering dont let me change the number, and I can not give a logical explanation for what I see, if I try to put 1,2,3,4 .... it seems that do something, but others they maintain the same position ... is very strange because i have to many categories (Display #200) per page ..
if i change 10 per page its more understandable... I've write the same order 1,2,3,4 (etc) and i saw that he gives another numbers to that Product Categories that i never write.. its strange this!
..............................
UPDATE: SOLVED -> PRESS the Ordering link in the left of the Disk
VM V. online: J2.5.14 | VM 2.0.20a | SQL 5.1.70 | PHP 5.3.25

beipink

Hello Max,
I was wondering if you know when the below issues will be addressed.
Just installed VM2.0.3 and both problems are still there.

products URL with SEO enabled
http://forum.virtuemart.net/index.php?topic=98584.0 also reported here http://forum.virtuemart.net/index.php?topic=99014.0

and the re-ordering of products from back-end
http://forum.virtuemart.net/index.php?topic=96049.msg315706#msg315706

Thank you

peebee

Looks like something might be missing in the 2.0.3 AIO upgrade when it comes to the currency converter module?

Warning: Invalid argument supplied for foreach() in
/home/xxxxxx/public_html/xxxxxx/libraries/joomla/html/html/select.php on line 504

No currency options displayed in module?  Checked currencies in shop config and all looks good.

Rolled back to 2.0.2 and everything working OK again.

Milbo

Hello Peebee, this is very strange, we tested the installation on 5 servers, one server had the problem with currency module. Interesting, you changed to 2.0.2 and it is gone. joomla version?

Quote from: prolipes on March 05, 2012, 02:56:15 AM
if i change 10 per page its more understandable... I've write the same order 1,2,3,4 (etc) and i saw that he gives another numbers to that Product Categories that i never write.. its strange this!
As I said. Make 4 categories, you can order them. Create a subcategory and it has its own order.
Cat1 ordering1
cat2 ordering2
cat3 ordering3

But
Cat 1 ordering 1
-subcat 1 ordering 1
-subcat 2 ordering 2
-subcat 3 ordering 3
Cat 2 ordering 2

I think the ordering is okey. It is just not absolute, it is relative to each parent category
Should I fix your bug, please support the VirtueMart project and become a member
______________________________________
Extensions approved by the core team: http://extensions.virtuemart.net/

smimish

Milbo, apologies, the pagination is working.
The following is broken: under the category view, if you try to change the number of displayed products on a page, it will either not work or will jump to a higher level category. This is broken...

osp

Quote from: peebee on March 05, 2012, 06:41:59 AM
Looks like something might be missing in the 2.0.3 AIO upgrade when it comes to the currency converter module?

Warning: Invalid argument supplied for foreach() in
/home/xxxxxx/public_html/xxxxxx/libraries/joomla/html/html/select.php on line 504

No currency options displayed in module?  Checked currencies in shop config and all looks good.

Rolled back to 2.0.2 and everything working OK again.

Peebe, better localization of the error is needed. What is your Joomla ver, which VM modules are active and eventually in which component/module error occurs.

lipes

#12
Milbo:
At first time i've created 10 Principal Categories to put them in the main menu of the site..
Cat1, cat 2, cat 3, cat4 ....
Then i've put many subcategories inside them...
and the last thing that i've remember (i think) its that the ordering are with the number 0 in all
When i've clicked in the disk to test a different position the problems started...
For example I'm trying to change this:
Cat1 ordering1
cat2 ordering2
to:
Cat1 ordering2
cat2 ordering1
I hit the save disk... and I can see that the number change but they stay in the same place (same rows) ... the cat2 with the ordering1 dont go to top.. and cat1 ordering2 dont go down... and it's the same problem with the sub categories... the ordering is so confusing that its like: 4,7,6,3,1,16,14,12,9,41,33,40,32,23,22,21,5,42,10,29,19,34,2,8,20,36,39,18,17,31,15,38,37,30,28,35,13,11,26,25,24,27 (for cat1 ordering2)... for cat2 is the same confusion problem with the numbers... until the last cat10 !! :-/
...................................
UPDATE: SOLVED -> PRESS the Ordering link in the left of the Disk
VM V. online: J2.5.14 | VM 2.0.20a | SQL 5.1.70 | PHP 5.3.25

Milbo

Works for me, I did a test with 500 categories and they have subcategories with 3rd level, works. There are no errors for the subcategories, right. But you can just write it manually, works. So it is not completly nice done, but I cant find any bug.

smimish, I just tested and your problem is SEF related
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

Quote from: prolipes on March 05, 2012, 16:02:53 PM
Milbo:
At first time i've created 10 Principal Categories to put them in the main menu of the site..
Cat1, cat 2, cat 3, cat4 ....
Then i've put many subcategories inside them...
and the last thing that i've remember (i think) its that the ordering are with the number 0 in all
When i've clicked in the disk to test a different position the problems started...
For example I'm trying to change this:
Cat1 ordering1
cat2 ordering2
to:
Cat1 ordering2
cat2 ordering1
I hit the save disk... and I can see that the number change but they stay in the same place (same rows) ... the cat2 with the ordering1 dont go to top.. and cat1 ordering2 dont go down... and it's the same problem with the sub categories... the ordering is so confusing that its like: 4,7,6,3,1,16,14,12,9,41,33,40,32,23,22,21,5,42,10,29,19,34,2,8,20,36,39,18,17,31,15,38,37,30,28,35,13,11,26,25,24,27 (for cat1 ordering2)... for cat2 is the same confusion problem with the numbers... until the last cat10 !! :-/
Hi,
Try to click on 'ordering' colum to see the right ordering
Vm2 permit change ordering if you have ordering by name for eg.