예제 #1
0
        public ActionResult Configure()
        {
            var model = new TaxTaxJarModel {
                ApiToken = _taxJarSettings.ApiToken
            };

            PrepareAddress(model.TestAddress);

            return(View("~/Plugins/Tax.TaxJar/Views/TaxTaxJar/Configure.cshtml", model));
        }
예제 #2
0
        public IActionResult TestRequest(TaxTaxJarModel model)
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManagePlugins))
            {
                return(AccessDeniedView());
            }

            if (!ModelState.IsValid)
            {
                return(Configure());
            }

            var testResult    = new StringBuilder();
            var country       = _countryService.GetCountryById(model.TestAddress.CountryId);
            var taxJarManager = new TaxJarManager {
                Api = _taxJarSettings.ApiToken
            };
            var result = taxJarManager.GetTaxRate(
                country?.TwoLetterIsoCode,
                model.TestAddress.City,
                null,
                model.TestAddress.Zip);

            if (result.IsSuccess)
            {
                if (result.Rate.IsUsCanada)
                {
                    testResult.AppendFormat("State: {0}<br />", result.Rate.State);
                    testResult.AppendFormat("County: {0}<br />", result.Rate.County);
                    testResult.AppendFormat("City: {0}<br />", result.Rate.City);
                    testResult.AppendFormat("State rate: {0}<br />", result.Rate.StateRate);
                    testResult.AppendFormat("County rate: {0}<br />", result.Rate.CountyRate);
                    testResult.AppendFormat("City rate: {0}<br />", result.Rate.CityRate);
                    testResult.AppendFormat("Combined district rate: {0}<br />", result.Rate.CombinedDistrictRate);
                    testResult.AppendFormat("<b>Total rate: {0}<b/>", result.Rate.CombinedRate);
                }
                else
                {
                    testResult.AppendFormat("Country: {0}<br />", result.Rate.CountryName);
                    testResult.AppendFormat("Reduced rate: {0}<br />", result.Rate.ReducedRate);
                    testResult.AppendFormat("Super reduced rate: {0}<br />", result.Rate.SuperReducedRate);
                    testResult.AppendFormat("Parking rate: {0}<br />", result.Rate.ParkingRate);
                    testResult.AppendFormat("<b>Standard rate: {0}<b/>", result.Rate.StandardRate);
                }
            }
            else
            {
                testResult.Append(result.ErrorMessage);
            }

            model.TestingResult = testResult.ToString();
            PrepareAddress(model.TestAddress);

            return(View("~/Plugins/Tax.TaxJar/Views/Configure.cshtml", model));
        }
예제 #3
0
        public IActionResult Configure()
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManagePlugins))
            {
                return(AccessDeniedView());
            }

            var model = new TaxTaxJarModel {
                ApiToken = _taxJarSettings.ApiToken
            };

            PrepareAddress(model.TestAddress);

            return(View("~/Plugins/Tax.TaxJar/Views/Configure.cshtml", model));
        }
예제 #4
0
        public ActionResult Configure(TaxTaxJarModel model)
        {
            if (!ModelState.IsValid)
            {
                return(Configure());
            }

            _taxJarSettings.ApiToken = model.ApiToken;
            _settingService.SaveSetting(_taxJarSettings);

            PrepareAddress(model.TestAddress);
            SuccessNotification(_localizationService.GetResource("Admin.Plugins.Saved"));

            return(View("~/Plugins/Tax.TaxJar/Views/TaxTaxJar/Configure.cshtml", model));
        }
예제 #5
0
        public IActionResult Configure(TaxTaxJarModel model)
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManagePlugins))
            {
                return(AccessDeniedView());
            }

            if (!ModelState.IsValid)
            {
                return(Configure());
            }

            _taxJarSettings.ApiToken = model.ApiToken;
            _settingService.SaveSetting(_taxJarSettings);

            PrepareAddress(model.TestAddress);
            SuccessNotification(_localizationService.GetResource("Admin.Plugins.Saved"));

            return(View("~/Plugins/Tax.TaxJar/Views/Configure.cshtml", model));
        }