public PayByBitcoinPaymentProcessor(PayByBitcoinPaymentSettings PayByBitcoinPaymentSettings,
                                     ISettingService settingService, IOrderTotalCalculationService orderTotalCalculationService,
                                     ILocalizationService localizationService)
 {
     this._PayByBitcoinPaymentSettings = PayByBitcoinPaymentSettings;
     this._settingService = settingService;
     this._orderTotalCalculationService = orderTotalCalculationService;
     this._localizationService          = localizationService;
 }
        public override void Install()
        {
            var settings = new PayByBitcoinPaymentSettings()
            {
                DescriptionText = "<p>Reserve items at your local store, and pay in store when you pick up your order.<br />Our store location: USA, New York,...</p><p>P.S. You can edit this text from admin panel.</p>"
            };

            _settingService.SaveSetting(settings);

            this.AddOrUpdatePluginLocaleResource("Plugins.Payment.PayByBitcoin.DescriptionText", "Description");
            this.AddOrUpdatePluginLocaleResource("Plugins.Payment.PayByBitcoin.DescriptionText.Hint", "Enter info that will be shown to customers during checkout");
            this.AddOrUpdatePluginLocaleResource("Plugins.Payment.PayByBitcoin.PaymentMethodDescription", "Pay In Store");
            this.AddOrUpdatePluginLocaleResource("Plugins.Payment.PayByBitcoin.AdditionalFee", "Additional fee");
            this.AddOrUpdatePluginLocaleResource("Plugins.Payment.PayByBitcoin.AdditionalFee.Hint", "The additional fee.");
            this.AddOrUpdatePluginLocaleResource("Plugins.Payment.PayByBitcoin.AdditionalFeePercentage", "Additional fee. Use percentage");
            this.AddOrUpdatePluginLocaleResource("Plugins.Payment.PayByBitcoin.AdditionalFeePercentage.Hint", "Determines whether to apply a percentage additional fee to the order total. If not enabled, a fixed value is used.");


            base.Install();
        }