/** * Build EU tax rules */ public function build_eu_tax_rules() { $db = JFactory::getDbo(); $db->truncateTable('#__osmembership_taxes'); $defaultCountry = OSmembershipHelper::getConfigValue('default_country'); $defaultCountryCode = OSMembershipHelper::getCountryCode($defaultCountry); // Without VAT number, use local tax rate foreach (OSMembershipHelperEuvat::$europeanUnionVATInformation as $countryCode => $vatInfo) { $countryName = $db->quote($vatInfo[0]); $countryTaxRate = OSMembershipHelperEuvat::getEUCountryTaxRate($countryCode); $sql = "INSERT INTO #__osmembership_taxes(plan_id, country, rate, vies, published) VALUES(0, {$countryName}, {$countryTaxRate}, 0, 1)"; $db->setQuery($sql); $db->execute(); if ($countryCode == $defaultCountryCode) { $localTaxRate = OSMembershipHelperEuvat::getEUCountryTaxRate($defaultCountryCode); $sql = "INSERT INTO #__osmembership_taxes(plan_id, country, rate, vies, published) VALUES(0, {$countryName}, {$localTaxRate}, 1, 1)"; $db->setQuery($sql); $db->execute(); } } $this->setRedirect('index.php?option=com_osmembership&view=taxes', JText::_('EU Tax Rules were successfully created')); }