VirtueMart Forum

VirtueMart 2 + 3 + 4 => Virtuemart Development and bug reports => Topic started by: man.of.earth on August 30, 2018, 12:19:42 PM

Title: Bugs found in VM 3.2.15 built 9910
Post by: man.of.earth on August 30, 2018, 12:19:42 PM
I found some bugs I want to prompt for fixing in the next releases:

1. default value for City is COM_VIRTUEMART_USER_FORM_ST_LABEL - should be empty
default value for address_type_name is COM_VIRTUEMART_USER_FORM_ST_LABEL - should be empty

2. tabs instead of spaces in <VM template>/cart/default_pricelist.php; if clean HTML (including tabs is used, the cart table breaks)

3. div id="reg_text" appears twice on <VM template>/user/edit_address.php; I suggest replacing it for class="reg_text", since it's not used as id by javascript;
also, this involves css styling change from #reg_text to .reg_text

4. Should be appended the _field suffix in the account edit form (otherwise there is a HTML validation error - label is for the element with _field suffix, but the element does not exist if the _field suffix not appended to its ID) - line 1119 in /administrator/components/com_virtuemart/models/userfields.php
$_return['fields'][$_fld->name]['formcode'] = JHTML::_('select.genericlist', $_values, $_prefix.$_fld->name, $_attribs, 'fieldvalue', 'fieldtitle', $_selected);
becomes
$_return['fields'][$_fld->name]['formcode'] = JHTML::_('select.genericlist', $_values, $_prefix.$_fld->name. '_field', $_attribs, 'fieldvalue', 'fieldtitle', $_selected);
The same for line 1132:
$_return['fields'][$_fld->name]['formcode'] =  JHtml::_('select.radiolist', $_values, $_prefix.$_fld->name.'_field', $_attribs, 'fieldvalue', 'fieldtitle', $_selected);

5. Duplicate class in the same above file, on line 910:
$_return['fields'][$_fld->name]['formcode'] = '<input type="password" id="' . $_prefix.$_fld->name . '_field" name="' . $_prefix.$_fld->name .'" '.($_fld->required ? ' class="required"' : ''). ' size="30" '.$class.' />'."\n"; - class="required" should be removed, or the line could use $req, already defined few lines above this one:

$_return['fields'][$_fld->name]['formcode'] = '<input type="password" id="' . $_prefix.$_fld->name . '_field" name="' . $_prefix.$_fld->name .'" '.$req. ' size="30" '.$class.' />'."\n";

6. Typo <hr <hr style=... on line 42 in <VM template>/invoice/mail_html_footer.php


VM 3.2.15 built 9910
Joomla 3.8.12
php 7.1
Tested on beez3 template
Title: Re: Bugs found in VM 3.2.15 built 9910
Post by: Milbo on September 04, 2018, 10:34:07 AM
Quote from: arcturus on August 30, 2018, 12:19:42 PM
I found some bugs I want to prompt for fixing in the next releases:
Great to get some feedback. Thank you.

Quote from: arcturus on August 30, 2018, 12:19:42 PM
1. default value for City is COM_VIRTUEMART_USER_FORM_ST_LABEL - should be empty
default value for address_type_name is COM_VIRTUEMART_USER_FORM_ST_LABEL - should be empty
I cant find it twice. The address_type is not empty on purpose.

Quote from: arcturus on August 30, 2018, 12:19:42 PM
2. tabs instead of spaces in <VM template>/cart/default_pricelist.php; if clean HTML (including tabs is used, the cart table breaks)
Why does the html break due the tabs instead? I know it is a bit faster to use whitespaces instead of tabs in template files, but I wonder how it should break the html. And why only here?

Quote from: arcturus on August 30, 2018, 12:19:42 PM
3. div id="reg_text" appears twice on <VM template>/user/edit_address.php; I suggest replacing it for class="reg_text", since it's not used as id by javascript;
also, this involves css styling change from #reg_text to .reg_text
right, oh nice, you even wrote a solution. Yes I will correct it that way.
Title: Re: Bugs found in VM 3.2.15 built 9910
Post by: Milbo on September 06, 2018, 09:38:36 AM
Quote from: arcturus on August 30, 2018, 12:19:42 PM
5. Duplicate class in the same above file, on line 910:
$_return['fields'][$_fld->name]['formcode'] = '<input type="password" id="' . $_prefix.$_fld->name . '_field" name="' . $_prefix.$_fld->name .'" '.($_fld->required ? ' class="required"' : ''). ' size="30" '.$class.' />'."\n"; - class="required" should be removed, or the line could use $req, already defined few lines above this one:

$_return['fields'][$_fld->name]['formcode'] = '<input type="password" id="' . $_prefix.$_fld->name . '_field" name="' . $_prefix.$_fld->name .'" '.$req. ' size="30" '.$class.' />'."\n";

I think you missed
$req = $_fld->required ? 'required' : '';
$class = 'class="validate-password '.$req.' inputbox"';


So it should be enough to remove '.($_fld->required ? ' class="required"' : ''). '

Quote from: arcturus on August 30, 2018, 12:19:42 PM
6. Typo <hr <hr style=... on line 42 in <VM template>/invoice/mail_html_footer.php

Thank you

[quote author=arcturus link=topic=140849.msg495578#msg495578 date=1535624382]
Tested on beez3 template
[/quote]

Please use for testing the vmbeez3, which is delivered with the package.