|
eZ Publish
[trunk]
|
Default VAT handler. More...
Static Public Member Functions | |
| getVatPercent ($object, $country) | |
Static Private Member Functions | |
| chooseVatType ($productCategory, $country) | |
| Choose the best matching VAT type for given product category and country. | |
| getProductCategory ($object) | |
| Determine object's product category. | |
Default VAT handler.
Provides basic VAT charging rules. Resulting VAT percentage may depend on product category and country the user is from.
Definition at line 20 of file ezdefaultvathandler.php.
| eZDefaultVATHandler::chooseVatType | ( | $ | productCategory, |
| $ | country | ||
| ) | [static, private] |
Choose the best matching VAT type for given product category and country.
We calculate priority for each VAT type and then choose the VAT type having the highest priority (or first of those having the highest priority).
VAT type priority is calculated from county match and category match as following:
CountryMatch = 0 CategoryMatch = 1
if ( there is exact match on country ) CountryMatch = 2 elseif ( there is weak match on country ) CountryMatch = 1
if ( there is exact match on product category ) CategoryMatch = 2 elseif ( there is weak match on product category ) CategoryMatch = 1
if ( there is match on both country and category ) VatTypePriority = CountryMatch * 2 + CategoryMatch - 2 else VatTypePriority = 0
Definition at line 134 of file ezdefaultvathandler.php.
Referenced by getVatPercent().
| eZDefaultVATHandler::getProductCategory | ( | $ | object | ) | [static, private] |
Determine object's product category.
Definition at line 58 of file ezdefaultvathandler.php.
Referenced by getVatPercent().
| eZDefaultVATHandler::getVatPercent | ( | $ | object, |
| $ | country | ||
| ) | [static] |
Definition at line 26 of file ezdefaultvathandler.php.