Report bugs for Version 1.2.2

Enter AlegroCart Bugs Here, but if you're not certain, post in General support first.
User avatar
Brent
Site Admin
Posts: 4459
Joined: Sat Dec 12, 2009 3:35 pm
Location: Canada eh

Report bugs for Version 1.2.2

Post by Brent » Thu May 06, 2010 6:43 am

Report code errors or bugs in this topic.
For all support issues relating to templates, installs or feature requests, please use appropriate topic.

gob33
Posts: 107
Joined: Wed Apr 07, 2010 3:10 pm

Re: Report bugs for Version 1.2.2

Post by gob33 » Thu May 06, 2010 9:21 am

Physical model of 1.2.2
Attachments
alegro_122.part3.rar
(27.59 KiB) Downloaded 692 times
alegro_122.part2.rar
(244.14 KiB) Downloaded 691 times
alegro_122.part1.rar
(244.14 KiB) Downloaded 712 times

gob33
Posts: 107
Joined: Wed Apr 07, 2010 3:10 pm

Re: Report bugs for Version 1.2.2

Post by gob33 » Fri May 07, 2010 9:56 am

Cosmetic changes:
15] Centering image+text in buttons under JSCook in admin

16] Removing $ (Dollar) in libels under because not necessarily the currency of the shop country.

Code: Select all

In ALEGROCART-1.2.2\upload\admin\language\english\controller\product.php

$_['entry_dated_special']  = 'Dated Special Price  $ '; // New
$_['entry_regular_price']  = 'Regular Price $ '; //New
$_['entry_quantity_discount'] = '<br>Percentage Discount is the base for quantity discount calculations.<br>Dollar amounts are for reference only, based on the regular selling price.<br>A new percentage discount can be created by entering a dollar amount.<br>If Dated Special pricing is in affect, the discount will be calculated off the dated special price.';
17] In ALEGROCART-1.2.2/upload/admin/?controller=product&product_id=1&action=update
tabs "Datas", I have there a "Currency : CAD" but have not found the corresponding variable.

18] FEATURE REQUEST:
As they are 3847 zones for 249 countries, think i will be better to have the same system as for
class taxes/taxe rates. First page opens on country list as usual but with a directory icon in
front of each line. By cliking that icon, you access the zones list for that country only.
Enabling/disabling a country enables/disables its zones.
Zones can also be individually disabled on second page.

User avatar
Brent
Site Admin
Posts: 4459
Joined: Sat Dec 12, 2009 3:35 pm
Location: Canada eh

Re: Report bugs for Version 1.2.2

Post by Brent » Fri May 07, 2010 12:54 pm

16] Removing $ (Dollar) in libels under because not necessarily the currency of the shop country.
Modified to use default currency symbol
17] In ALEGROCART-1.2.2/upload/admin/?controller=product&product_id=1&action=update
tabs "Datas", I have there a "Currency : CAD" but have not found the corresponding variable.
The currency you see is the default currency set in localization. Change your default to euro and it will change.
18] FEATURE REQUEST:
If you are referring to setting zones status, I changed the zone to sort by country, then by zone.
This keeps all the zones together with their country.
I also modified the search to include country.
If you search by country name, Canada, France, or United States, you only get the zones for that country.

gob33
Posts: 107
Joined: Wed Apr 07, 2010 3:10 pm

Re: Report bugs for Version 1.2.2

Post by gob33 » Sun May 09, 2010 9:38 am

17] Have checked, im already in France and Euro. "Currency: CAD" is always displayed.
18] Ok, ive seen how its works by filtering with country name.

19] Have some strange display bug in Extensions:

Code: Select all


Extensions
Vous pouvez ajouter / enlever des extensions ici.

Résultat(s) 1 à 20 sur 24         Page  1 de 2                Rechercher

Nom Extension                 Description                        Code
-----------------------------------------------------------------------------------
Admin Pied                    Pied de l'administration           footer
Admin Entête                  Entête de l'administration         header
Admin Langues                 Langues de l'administration        language
Admin Menu                    Menu de l'administration           menu
Catalog Cart                  Catalog Cart                       cart       <=====?
Catalogue Catégories          Catégories du catalogue            category
Catalogue Options Catégorie   Options de catégorie               categoryoptions
Catalogue Devises             Devises du catalogue               currency
Catalogue En Vedette          Affiche les produits en vedette    featured
Catalog Footer                Catalog Footer                     footer     <=====?
Catalogue Entête              Entête du catalogue                header
Catalogue Informations        Informations du catalogue          information
Catalogue Langues             Langues du catalogue               language
Catalogue Nouveautés          Affiche les nouveaux produits      latest
Catalogue Fabricants          Filtre par fabricant               manufacturer
Catalogue Options Fabricant   Options de fabricant               manufactureroptions
Catalogue Navigation          Catalogue barre de navigation      navigation
Catalogue Meilleures Ventes   Affiche les meilleures ventes      popular
Catalogue Apparentés          Affiche les produits apparentés    related
Catalogue Avis                Avis du catalogue                  review
2 lines stay in English and Ive translated them correctly in DB.
Have checked directly in DB with MySQLQuery.
Lines 5, 10 are bad but not 15. Something like an array not filled correctly.

User avatar
Brent
Site Admin
Posts: 4459
Joined: Sat Dec 12, 2009 3:35 pm
Location: Canada eh

Re: Report bugs for Version 1.2.2

Post by Brent » Sun May 09, 2010 7:19 pm

17] Have checked, i'm already in France and Euro. "Currency: CAD" is always displayed.
Check the catalog. It will be in CAD. Set to euro and this will change. I took the currency from library.
If your browser has the cookie set to CAD, that's what will be displayed.
I used that method in case you had admin located in more than one country.
Anyway, I am changing it to use config currency setting so it will use the default currency.

On the extension language problem, check the footer by clicking the update.
You should have an English tab and a French tab.
If there is no entry in the French tab, it uses the English by default.

gob33
Posts: 107
Joined: Wed Apr 07, 2010 3:10 pm

Re: Report bugs for Version 1.2.2

Post by gob33 » Mon May 10, 2010 9:11 am

19] I have all entries translated. My DB is good.
The problem comes from line 181 in ALEGROCART-1.2.2\upload\admin\controller\extension.php
The function getrows() of ALEGROCART-1.2.2\upload\library\database\database.php
gives false results.
On the 'extensions' page, the query passed to getrows() is :

Code: Select all

select e.extension_id, ed.name, ed.description, e.code, e.type, e.controller
from extension e left join extension_description ed on e.extension_id = ed.extension_id
where e.type = 'module' and ed.language_id = '2' order by ed.name asc limit 0, 20
Due to the page limit, the comparison is done only on 20 ROWS.
As the order is by name and LANGUAGE DEPENDANT, the algorithm SOMETIMES cant find
the same 'extension_id' in the set of 20 rows returned by the query.
So it defaults to the english row.

Have put that code in getrows():

Code: Select all

        if (!isset($compare_id)) {
          $compare_id = key($rows[0]);
        }
echo $compare_id; echo '<br>';
        if ($compare_id) {
          foreach ($rows2 as $r2) { //english
echo '#### ENGLISH ####>';print_r($r2);echo '<br>';echo '<br>';
            $icount = 0;
            foreach ($rows as $r) { //current non-english language
print_r($r);echo '<br>';
              if ($r["$compare_id"] == $r2["$compare_id"]) {
                $icount++;
                break;
              }
            }
            if ($icount == 0) { $rows3[] = $r2; } else { $rows3[] = $r; }
          }
          $rows = $rows3;
        } else {
          $rows = $rows2;
        }
Which gives me that trace for the line defaulted to english:

Code: Select all

#### ENGLISH ####>Array ( [extension_id] => 28 [name] => Catalog Cart [description] => Catalog Cart [code] => cart [type] => module [controller] => module_catalog_cart )

Array ( [extension_id] => 51 [name] => Accueil [description] => Module page d'accueil [code] => homepage [type] => module [controller] => module_extra_homepage )
Array ( [extension_id] => 29 [name] => Admin Entête [description] => Entête de l'administration [code] => header [type] => module [controller] => module_admin_header )
Array ( [extension_id] => 40 [name] => Admin Langues [description] => Langues de l'administration [code] => language [type] => module [controller] => module_admin_language )
Array ( [extension_id] => 31 [name] => Admin Menu [description] => Menu de l'administration [code] => menu [type] => module [controller] => module_admin_menu )
Array ( [extension_id] => 30 [name] => Admin Pied [description] => Pied de l'administration [code] => footer [type] => module [controller] => module_admin_footer )
Array ( [extension_id] => 44 [name] => Catalogue Apparentés [description] => Affiche les produits apparentés [code] => related [type] => module [controller] => module_extra_related )
Array ( [extension_id] => 27 [name] => Catalogue Avis [description] => Avis du catalogue [code] => review [type] => module [controller] => module_extra_review )
Array ( [extension_id] => 25 [name] => Catalogue Catégories [description] => Catégories du catalogue [code] => category [type] => module [controller] => module_catalog_category )
Array ( [extension_id] => 35 [name] => Catalogue Devises [description] => Devises du catalogue [code] => currency [type] => module [controller] => module_catalog_currency )
Array ( [extension_id] => 42 [name] => Catalogue En Vedette [description] => Affiche les produits en vedette [code] => featured [type] => module [controller] => module_extra_featured )
Array ( [extension_id] => 23 [name] => Catalogue Entête [description] => Entête du catalogue [code] => header [type] => module [controller] => module_catalog_header )
Array ( [extension_id] => 46 [name] => Catalogue Fabricants [description] => Filtre par fabricant [code] => manufacturer [type] => module [controller] => module_extra_manufacturer )
Array ( [extension_id] => 26 [name] => Catalogue Informations [description] => Informations du catalogue [code] => information [type] => module [controller] => module_catalog_information )
Array ( [extension_id] => 33 [name] => Catalogue Langues [description] => Langues du catalogue [code] => language [type] => module [controller] => module_catalog_language )
Array ( [extension_id] => 45 [name] => Catalogue Meilleures Ventes [description] => Affiche les meilleures ventes [code] => popular [type] => module [controller] => module_extra_popular )
Array ( [extension_id] => 50 [name] => Catalogue Navigation [description] => Catalogue barre de navigation [code] => navigation [type] => module [controller] => module_catalog_navigation )
Array ( [extension_id] => 41 [name] => Catalogue Nouveautés [description] => Affiche les nouveaux produits [code] => latest [type] => module [controller] => module_extra_latest )
Array ( [extension_id] => 48 [name] => Catalogue Options Catégorie [description] => Options de catégorie [code] => categoryoptions [type] => module [controller] => module_extra_categoryoptions )
Array ( [extension_id] => 47 [name] => Catalogue Options Fabricant [description] => Options de fabricant [code] => manufactureroptions [type] => module [controller] => module_extra_manufactureroptions )
Array ( [extension_id] => 49 [name] => Catalogue Options Recherche [description] => Options de recherche [code] => searchoptions [type] => module [controller] => module_extra_searchoptions )
As you can see, the 'extension_id'=28 is well in the DB, but not in the set of 20.

Was it necessary to do that fallback in english ?
For me a getrows() function gets the rows asked, nothing else.

User avatar
Brent
Site Admin
Posts: 4459
Joined: Sat Dec 12, 2009 3:35 pm
Location: Canada eh

Re: Report bugs for Version 1.2.2

Post by Brent » Mon May 10, 2010 10:35 am

I'll do some more testing on the fall back and see why is is doing that. When I try it, it all seems to work fine.
I can make the fall back an option in settings, then you can turn it off.
As I didn't write the fall back, only tested it with no problems on my install, We'll have to do more testing.

Still, this was Qphoria's project from the old open cart days and I think he did a hell of a job.

edited
I have tried everything I can to reproduce your situation, with no results.
I expected if you have a key item like name in the list that would be on another page, this problem might occur.
I named the first item in the list in products to start with zzz so it should appear on another page, but it still appears in the list.
The compare is buy product_id key, so the list should be the same.

For now, you can change the language id in database on line 80 to 2 for French.
I play some more to see if I can reproduce.

Yes, I see the problem. The concept was good, but the fall back needs to be by key_id such as product_id or extension_id
I'll work on that for the next revision.
I'll also change to use default language set in admin, in your case, French. And will put in ability to enable/disable the fall back.
edited May 11/2010
It was a nice concept, but it can't work. Get results will always be reliant on dominant language as in your example whether the alternate
language choice has data or not. Have reverted back to my original database as per 1.2.1

gob33
Posts: 107
Joined: Wed Apr 07, 2010 3:10 pm

Re: Report bugs for Version 1.2.2

Post by gob33 » Mon May 10, 2010 2:32 pm

I expected if you have a key item like name in the list that would be on another page, this problem might occur.
Yes it's that case that do the bug. Because of the 'order by ed.name' in $sql which is language dependant.
Just simplify getrows() and return strictly the rows of the query passed.
If no description in a specific language, returns nothing.
The translator must do his job for lines to appear.
(Can look at OpenCart to see how it is done...)

20] Have twice the same status order in table (suppose 99 in the good one):

Code: Select all

default.sql
INSERT INTO `order_status` (`order_status_id`, `language_id`, `name`) VALUES ('17', '1', 'Paid Unconfirmed');
upgrade.sql
REPLACE INTO `order_status` (`order_status_id`, `language_id`, `name`) VALUES ('99', @lid, 'Paid Unconfirmed');
17]RESOLVED. Now 'Currency EUR' is displayed and i do nothing (cookie??)

User avatar
Brent
Site Admin
Posts: 4459
Joined: Sat Dec 12, 2009 3:35 pm
Location: Canada eh

Re: Report bugs for Version 1.2.2

Post by Brent » Mon May 10, 2010 3:04 pm

17 Yes, cookie. As soon as you change catalog to euro, or close browser, it should change.

20 status 99 was special required for authorize net. Does not matter if both are there.

edited May 11/2010
It was a nice concept, but it can't work. Get results will always be reliant on dominant language as in your example whether the alternate
language choice has data or not. Have reverted back to my original database as per 1.2.1

Locked