/// <summary>
        /// Install plugin
        /// </summary>
        public override void Install()
        {
            //settings
            var settings = new ZboziShoppingSettings
            {
                PricesConsiderPromotions = false,
                ProductPictureSize       = 125,
                PassShippingInfoWeight   = false,
                PassShippingInfo         = false,
                StaticFileName           = string.Format("zbozi_feed_{0}.xml", CommonHelper.GenerateRandomDigitCode(10)),
                ExpirationNumberOfDays   = 28
            };

            _settingService.SaveSetting(settings);

            //data
            _objectContext.Install();

            //locales

            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.Products.EXTRAMESSAGE", "EXTRA MESSAGE ");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.Products.MAXCPC", "MAX CPC");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.Products.MAXCPC_SEARCH", "MAX CPC SEARCH");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.Products.ProductName", "Product Name");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.Products.ZboziProductName", "Product Name");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.Store", "Obchod");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.Store.Hint", "Zvolte obchod, pro který chcete generovat produktový feed.");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.Currency", "Měna");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.Currency.Hint", "Zvolte měnu, která bude použita v produktovém feedu.");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.DefaultGoogleCategory", "Defaultní kategorie zboži.cz");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.DefaultGoogleCategory.Hint", "Není nastavena základní kategorie.");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.General", "Základní nastavení");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.GeneralInstructions", "<p><ul><li>Před využitím modulu je nutné mít vytvořený účet na serveru zbozi.cz <a href=\"https://klient.seznam.cz/registration/zbozi/\" target=\"_blank\">https://klient.seznam.cz/registration/zbozi/</a></li><li>Pricip funkčnosti a aktualizace naleznete na stránce <a href=\"http://tomas-horvath.cz/nopcommerce-zbozi-cz-modul-instalce/\" target=\"_blank\">http://tomas-horvath.cz/nopcommerce-zbozi-cz-modul-instalce/</a></li><li><strong>Verze modulu :</strong> 1.0.0 <br /> Více informací o produktovém feedu  naleznete na <a href=\"https://napoveda.seznam.cz/cz/zbozi/specifikace-xml-pro-obchody/specifikace-xml-feedu/\" target=\"_blank\">https://napoveda.seznam.cz</a></li><li>Pro validaci produktového feedu můžete využít službu <a href=\"https://www.zbozi.cz/validace-feedu/\" target=\"_blank\">https://www.zbozi.cz/validace-feedu/</a></li></ul></p>");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.Generate", "Vygenerovat produktový feed");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.Override", "Přepsat nastavení produktu");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.OverrideInstructions", "<p>Aktuální strom kategorií naleznete vždy na této adrese: <a href=\"https://www.zbozi.cz/static/categories.csv\" target=\"_blank\">zde</a></p>");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.ProductPictureSize", "Velikost obrázku produktového náhledu");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.ProductPictureSize.Hint", "Velikost náhledového obrázku v jednotce pixel.");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.Products.ProductName", "Produkt");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.Products.ZboziCategory", "Zboží.cz kategorie");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.SuccessResult", "Zboži.cz produktový feed byl úspěšně vygenerován.");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.StaticFilePath", "Cesta k produktovému feedu");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.StaticFilePath.Hint", "Cesta k produktovému feedu. Jedná se o URL adresu, kterou je nutné vložit do systému heuréka.cz");
            this.AddOrUpdatePluginLocaleResource("Plugins.Feed.Zbozi.DefaultDeliveryDate", "počet dnů pro dodání zboží pokud není skladem");



            base.Install();
        }
 public ZboziShoppingService(IZboziService zboziService,
                             IPriceCalculationService priceCalculationService,
                             ITaxService taxService,
                             IProductService productService,
                             ICategoryService categoryService,
                             IManufacturerService manufacturerService,
                             IPictureService pictureService,
                             ICurrencyService currencyService,
                             ILanguageService languageService,
                             ISettingService settingService,
                             IWorkContext workContext,
                             IMeasureService measureService,
                             IDateRangeService dateRangeService,
                             Nop.Services.Shipping.IShippingService shippingService,
                             IShippingByWeightService shippingByWeightService,
                             MeasureSettings measureSettings,
                             ZboziShoppingSettings zbozihoppingSettings,
                             CurrencySettings currencySettings,
                             ZboziProductObjectContext objectContext)
 {
     this._shippingByWeightService = shippingByWeightService;
     this._shippingService         = shippingService;
     this._dateRangeService        = dateRangeService;
     this._zboziService            = zboziService;
     this._priceCalculationService = priceCalculationService;
     this._taxService            = taxService;
     this._productService        = productService;
     this._categoryService       = categoryService;
     this._manufacturerService   = manufacturerService;
     this._pictureService        = pictureService;
     this._currencyService       = currencyService;
     this._languageService       = languageService;
     this._settingService        = settingService;
     this._workContext           = workContext;
     this._measureService        = measureService;
     this._measureSettings       = measureSettings;
     this._zboziShoppingSettings = zbozihoppingSettings;
     this._currencySettings      = currencySettings;
     this._objectContext         = objectContext;
 }