[ic] Interchange on Mac OS X Panther Locale problem.. nearly solved

Hillary Corney hjcorney at blueyonder.co.uk
Wed Feb 25 17:14:08 EST 2004


On 24 Feb 2004, at 22:12, Mark Bryant wrote:

> At 20:53 24/02/2004, you wrote:
>
>> Hi All,
>>
>> I am running Interchange 5.1 on Mac OS X 10.3.2 Panther With standard 
>> Apache, MySQL and recompiled unthreaded perl 5.8.3. Its not a 
>> production site just a test rig in fact its running on a G3 Lombard 
>> Powerbook  and it works fine.
>>
>> But I am having a problem setting the locale for the UK I have set 
>> the locale to be en_GB in the catalog.cfg file and in the Admin 
>> interface under internationalisation.
>>
>> I have added a en_GB column to locale.txt in products directory
>>
>> I have attempted to set the default tax to VAT and 17.5 % in the tax 
>> admin area
>>
>> I have also tried to crib as much as I can from www.webmaint.net's 
>> excellent UK localisation documentation (thanks) and from the 
>> interchange documentation wiki.
>>
>> The result is that Tax does not work and I have lost the default 
>> dollar sign but the UK pound sign has not appeared.
>>
>> I don't think the problem is down to Mac OS X it is more likely to be 
>> I have missed some steps in the localisation.
>>
>> Can anyone give me some pointers please.
>>
>> Thanks,
>>
>> Hillary
>
> Hi Hilary,
>
> To get UK tax showing through in pages such as the fly page and 
> components like random, best sellers, etc  after setting the tax in 
> the admin UI, I still had to put this usertag in my catalog.cfg and 
> edit a few pages to make them call/use it:
>
> # per item tax calculations
> UserTag addtax Order amount cat notax
> UserTag addtax addAttr
> UserTag addtax Routine   <<EOR
> sub {
>         my ($amount, $cat, $notax, $ref) = @_;
>         return currency( $amount, $ref->{noformat} ) if $notax;
>         my $cfield = $::Variable->{MV_COUNTRY_FIELD} || 'country';
>         my $country = $ref->{country} || $::Values->{$cfield};
>         return 0 if ! $country;
>         my $ctable   = $ref->{country_table}
>                                 || $::Variable->{MV_COUNTRY_TABLE}
>                                 || 'country';
>         my $c_taxfield   = $ref->{country_tax_field}
>                                 || $::Variable->{MV_COUNTRY_TAX_FIELD}
>                                 || 'tax';
>         my $type ||= $Tag->data($ctable, $c_taxfield, $country);
>         return currency( $amount, $ref->{noformat} ) if ! $type;
>         $type =~ s/^\s+//;
>         $type =~ s/\s+$//;
>         my $tax = Vend::Util::get_option_hash($type);
>         my $taxrate = defined $tax->{$cat} ? $tax->{$cat} : 
> $tax->{default};
>         $taxrate =~ s/\s*%\s*$// and $taxrate /= 100;
>         $amount += $amount * $taxrate;
>         return currency( $amount, $ref->{noformat} );
> }
> EOR
>
>
>
> I then edited the pages that were not showing the tax inclusive prices 
> to use this line instead of the default one
>
> Our Price: <b>[item-price]</b>
>
> becomes:
>
> Our Price: <b>[addtax [item-price noformat=1][item-field 
> tax_category][item-field nontaxable]]</b>
>
> The GBP pound sign should then appear along with the tax inclusive 
> price.
>
> I hope this helps solve your problem :)
>
> Mark
>
>
>
> Eros Shop
> vwe internet ltd
> PO BOX 1067
> SLOUGH
> SL1 7YA
> UK
>
> Shop - http://www.eros-shop.co.uk
> EMail - info at eros-shop.co.uk
> Tel - 0870 737 3369
> Fax - 0870 737 4469
>

Hi Mark, All,

Thanks for the pointers everyone. I have made some progress.

I looked at Marks suggestion but could not see why I would have to 
enter that much code when previous versions of Interchange worked OK 
So....

By carefully re-reading the instructions at www.webmaint.net I realised 
that I had been going to the admin > preferences . Tax part of the menu 
when I should have been going to admin > COMMERCE > tax

Duh. When I did that and set the tax rate and shipping as directed Tax 
worked but I still could not get a GBP Pound sign.

I then looked at the ISO listing of country names and found that the UK 
and Great Britain are treated as two separate places. With ISO 
information letter code GBR iso number 826 but blanks for the similar 
rows in the UK entry. I copied the GBR code and 826 number into the 
respective places in the UK entry and presto it worked.

However.... The pound sign has now replaced the dollar *after* the 
price. But in the UK the currency symbol should appear *before* the 
price.

I tried altering the price_picture entry for en_GB in locale.txt but 
this has not worked.

So I am again asking for help. Are there any other ways I should try 
and set the pound sign correctly?

best wishes,

Hillary


interchange-users mailing list
interchange-users at icdevgroup.org
http://www.icdevgroup.org/mailman/listinfo/interchange-user



More information about the interchange-users mailing list