Example #1
0
        public virtual void Setup()
        {
            _productService                = MockRepository.GenerateMock <IProductService>();
            _productRepository             = MockRepository.GenerateMock <IRepository <Product> >();
            _productManufacturerRepository = MockRepository.GenerateMock <IRepository <ProductManufacturer> >();
            _productCategoryRepository     = MockRepository.GenerateMock <IRepository <ProductCategory> >();
            _manufacturerRepository        = MockRepository.GenerateMock <IRepository <Manufacturer> >();
            _categoryRepository            = MockRepository.GenerateMock <IRepository <Category> >();
            _localizedPropertyRepository   = MockRepository.GenerateMock <IRepository <LocalizedProperty> >();
            _storeMappingRepository        = MockRepository.GenerateMock <IRepository <StoreMapping> >();
            _aclRepository       = MockRepository.GenerateMock <IRepository <AclRecord> >();
            _eventPublisher      = MockRepository.GenerateMock <IEventPublisher>();
            _services            = MockRepository.GenerateMock <ICommonServices>();
            _deliveryTimeService = MockRepository.GenerateMock <IDeliveryTimeService>();

            _linqCatalogSearchService = new LinqCatalogSearchService(
                _productService,
                _productRepository,
                _productManufacturerRepository,
                _productCategoryRepository,
                _manufacturerRepository,
                _categoryRepository,
                _localizedPropertyRepository,
                _storeMappingRepository,
                _aclRepository,
                _eventPublisher,
                _services,
                _deliveryTimeService);
        }
 public DeliveryTimeController(
     SmartDbContext db,
     IDeliveryTimeService deliveryTimeService)
 {
     _db = db;
     _deliveryTimeService = deliveryTimeService;
 }
        public virtual void Setup()
        {
            _eventPublisher = MockRepository.GenerateMock <IEventPublisher>();
            _eventPublisher.Expect(x => x.Publish(Arg <object> .Is.Anything));

            _services = MockRepository.GenerateMock <ICommonServices>();
            _services.Expect(x => x.EventPublisher).Return(_eventPublisher);

            _productService              = MockRepository.GenerateMock <IProductService>();
            _productRepository           = MockRepository.GenerateMock <IRepository <Product> >();
            _localizedPropertyRepository = MockRepository.GenerateMock <IRepository <LocalizedProperty> >();
            _storeMappingRepository      = MockRepository.GenerateMock <IRepository <StoreMapping> >();
            _aclRepository       = MockRepository.GenerateMock <IRepository <AclRecord> >();
            _deliveryTimeService = MockRepository.GenerateMock <IDeliveryTimeService>();
            _manufacturerService = MockRepository.GenerateMock <IManufacturerService>();
            _categoryService     = MockRepository.GenerateMock <ICategoryService>();

            _linqCatalogSearchService = new LinqCatalogSearchService(
                _services,
                _productService,
                _productRepository,
                _localizedPropertyRepository,
                _storeMappingRepository,
                _aclRepository,
                _deliveryTimeService,
                _manufacturerService,
                _categoryService);
        }
Example #4
0
        public LinqCatalogSearchService(
            IProductService productService,
            IRepository <Product> productRepository,
            IRepository <ProductManufacturer> productManufacturerRepository,
            IRepository <ProductCategory> productCategoryRepository,
            IRepository <Manufacturer> manufacturerRepository,
            IRepository <Category> categoryRepository,
            IRepository <LocalizedProperty> localizedPropertyRepository,
            IRepository <StoreMapping> storeMappingRepository,
            IRepository <AclRecord> aclRepository,
            IEventPublisher eventPublisher,
            ICommonServices services,
            IDeliveryTimeService deliveryTimeService)
        {
            _productService                = productService;
            _productRepository             = productRepository;
            _productManufacturerRepository = productManufacturerRepository;
            _productCategoryRepository     = productCategoryRepository;
            _manufacturerRepository        = manufacturerRepository;
            _categoryRepository            = categoryRepository;
            _localizedPropertyRepository   = localizedPropertyRepository;
            _storeMappingRepository        = storeMappingRepository;
            _aclRepository       = aclRepository;
            _eventPublisher      = eventPublisher;
            _services            = services;
            _deliveryTimeService = deliveryTimeService;

            QuerySettings = DbQuerySettings.Default;
            Logger        = NullLogger.Instance;
        }
Example #5
0
 public DeliveryTimeController(
     IDeliveryTimeService deliveryTimeService,
     ILocalizedEntityService localizedEntityService,
     ILanguageService languageService)
 {
     _deliveryTimeService    = deliveryTimeService;
     _localizedEntityService = localizedEntityService;
     _languageService        = languageService;
 }
Example #6
0
 public ShoppingCartItemMapper(
     ICommonServices services,
     IDeliveryTimeService deliveryTimeService,
     IPriceCalculationService priceCalculationService,
     IProductAttributeMaterializer productAttributeMaterializer,
     ShoppingCartSettings shoppingCartSettings,
     CatalogSettings catalogSettings)
     : base(services, priceCalculationService, productAttributeMaterializer, shoppingCartSettings, catalogSettings)
 {
     _deliveryTimeService = deliveryTimeService;
 }
 public DeliveryTimeController(IDeliveryTimeService deliveryTimeService,
     ISettingService settingService,
     ILocalizationService localizationService,
     IPermissionService permissionService,
     ILocalizedEntityService localizedEntityService, 
     ILanguageService languageService)
 {
     this._deliveryTimeService = deliveryTimeService;
     this._settingService = settingService;
     this._localizationService = localizationService;
     this._permissionService = permissionService;
     this._localizedEntityService = localizedEntityService;
     this._languageService = languageService;
 }
 public DeliveryTimeController(IDeliveryTimeService deliveryTimeService,
                               ISettingService settingService,
                               ILocalizationService localizationService,
                               IPermissionService permissionService,
                               ILocalizedEntityService localizedEntityService,
                               ILanguageService languageService)
 {
     this._deliveryTimeService    = deliveryTimeService;
     this._settingService         = settingService;
     this._localizationService    = localizationService;
     this._permissionService      = permissionService;
     this._localizedEntityService = localizedEntityService;
     this._languageService        = languageService;
 }
Example #9
0
 public ShoppingCartItemMapper(
     SmartDbContext db,
     ICommonServices services,
     ITaxService taxService,
     ICurrencyService currencyService,
     IPriceCalculationService priceCalculationService,
     IDeliveryTimeService deliveryTimeService,
     IProductAttributeFormatter productAttributeFormatter,
     IProductAttributeMaterializer productAttributeMaterializer,
     IShoppingCartValidator shoppingCartValidator,
     ShoppingCartSettings shoppingCartSettings,
     CatalogSettings catalogSettings,
     MediaSettings mediaSettings,
     ProductUrlHelper productUrlHelper,
     Localizer t)
     : base(db, services, taxService, currencyService, priceCalculationService, productAttributeFormatter, productAttributeMaterializer,
            shoppingCartValidator, shoppingCartSettings, catalogSettings, mediaSettings, productUrlHelper, t)
 {
     _deliveryTimeService = deliveryTimeService;
 }
        public LinqCatalogSearchService(
            ICommonServices services,
            IProductService productService,
            IRepository <Product> productRepository,
            IRepository <LocalizedProperty> localizedPropertyRepository,
            IRepository <StoreMapping> storeMappingRepository,
            IRepository <AclRecord> aclRepository,
            IDeliveryTimeService deliveryTimeService,
            IManufacturerService manufacturerService,
            ICategoryService categoryService)
        {
            _services                    = services;
            _productService              = productService;
            _productRepository           = productRepository;
            _localizedPropertyRepository = localizedPropertyRepository;
            _storeMappingRepository      = storeMappingRepository;
            _aclRepository               = aclRepository;
            _deliveryTimeService         = deliveryTimeService;
            _manufacturerService         = manufacturerService;
            _categoryService             = categoryService;

            QuerySettings = DbQuerySettings.Default;
        }
Example #11
0
        /// <summary>
        /// Gets the product delivery time according to stock.
        /// </summary>
        public static Task <DeliveryTime> GetDeliveryTimeAsync(this IDeliveryTimeService service, Product product, CatalogSettings catalogSettings)
        {
            var deliveryTimeId = product.GetDeliveryTimeIdAccordingToStock(catalogSettings);

            return(service.GetDeliveryTimeAsync(deliveryTimeId, true));
        }
        public MessageTokenProvider(ILanguageService languageService,
            ILocalizationService localizationService, IDateTimeHelper dateTimeHelper,
            IEmailAccountService emailAccountService,
            IPriceFormatter priceFormatter, ICurrencyService currencyService, IWebHelper webHelper,
            IWorkContext workContext, IStoreContext storeContext,
			IDownloadService downloadService, ShoppingCartSettings shoppingCartSettings,
            IOrderService orderService, IPaymentService paymentService,
            IProductAttributeParser productAttributeParser,
            StoreInformationSettings storeSettings, MessageTemplatesSettings templatesSettings,
            EmailAccountSettings emailAccountSettings, CatalogSettings catalogSettings,
            TaxSettings taxSettings, IEventPublisher eventPublisher,
            CompanyInformationSettings companyInfoSettings, BankConnectionSettings bankConnectionSettings,
            ContactDataSettings contactDataSettings, ITopicService topicService,
            IDeliveryTimeService deliveryTimeService, IQuantityUnitService quantityUnitService)
        {
            this._languageService = languageService;
            this._localizationService = localizationService;
            this._dateTimeHelper = dateTimeHelper;
            this._emailAccountService = emailAccountService;
            this._priceFormatter = priceFormatter;
            this._currencyService = currencyService;
            this._webHelper = webHelper;
            this._workContext = workContext;
            this._storeContext = storeContext;
            this._downloadService = downloadService;
            this._orderService = orderService;
            this._paymentService = paymentService;
            this._productAttributeParser = productAttributeParser;
            this._storeSettings = storeSettings;
            this._templatesSettings = templatesSettings;
            this._emailAccountSettings = emailAccountSettings;
            this._catalogSettings = catalogSettings;
            this._taxSettings = taxSettings;
            this._eventPublisher = eventPublisher;
            this._companyInfoSettings = companyInfoSettings;
            this._bankConnectionSettings = bankConnectionSettings;
            this._contactDataSettings = contactDataSettings;
            this._topicService = topicService;
            this._shoppingCartSettings = shoppingCartSettings;
            this._deliveryTimeService = deliveryTimeService;
            this._quantityUnitService = quantityUnitService;
        }
Example #13
0
 public DeliveryTimesController(IDeliveryTimeService service)
 {
     _service = service;
 }
        public ShoppingCartController(IProductService productService,
			IWorkContext workContext, IStoreContext storeContext,
            IShoppingCartService shoppingCartService, IPictureService pictureService,
            ILocalizationService localizationService, 
            IProductAttributeService productAttributeService, IProductAttributeFormatter productAttributeFormatter,
            IProductAttributeParser productAttributeParser,
            ITaxService taxService, ICurrencyService currencyService, 
            IPriceCalculationService priceCalculationService, IPriceFormatter priceFormatter,
            ICheckoutAttributeParser checkoutAttributeParser, ICheckoutAttributeFormatter checkoutAttributeFormatter, 
            IOrderProcessingService orderProcessingService,
            IDiscountService discountService,ICustomerService customerService, 
            IGiftCardService giftCardService, ICountryService countryService,
            IStateProvinceService stateProvinceService, IShippingService shippingService, 
            IOrderTotalCalculationService orderTotalCalculationService,
            ICheckoutAttributeService checkoutAttributeService, IPaymentService paymentService,
            IWorkflowMessageService workflowMessageService,
            IPermissionService permissionService, IDeliveryTimeService deliveryTimeService,
            IDownloadService downloadService, ICacheManager cacheManager,
            IWebHelper webHelper, ICustomerActivityService customerActivityService,
			IGenericAttributeService genericAttributeService,
            MediaSettings mediaSettings, ShoppingCartSettings shoppingCartSettings,
            CatalogSettings catalogSettings, OrderSettings orderSettings,
            ShippingSettings shippingSettings, TaxSettings taxSettings,
            CaptchaSettings captchaSettings, AddressSettings addressSettings,
			HttpContextBase httpContext, PluginMediator pluginMediator,
            IQuantityUnitService quantityUnitService)
        {
            this._productService = productService;
            this._workContext = workContext;
            this._storeContext = storeContext;
            this._shoppingCartService = shoppingCartService;
            this._pictureService = pictureService;
            this._localizationService = localizationService;
            this._productAttributeService = productAttributeService;
            this._productAttributeFormatter = productAttributeFormatter;
            this._productAttributeParser = productAttributeParser;
            this._taxService = taxService;
            this._currencyService = currencyService;
            this._priceCalculationService = priceCalculationService;
            this._priceFormatter = priceFormatter;
            this._checkoutAttributeParser = checkoutAttributeParser;
            this._checkoutAttributeFormatter = checkoutAttributeFormatter;
            this._orderProcessingService = orderProcessingService;
            this._discountService = discountService;
            this._customerService = customerService;
            this._giftCardService = giftCardService;
            this._countryService = countryService;
            this._stateProvinceService = stateProvinceService;
            this._shippingService = shippingService;
            this._orderTotalCalculationService = orderTotalCalculationService;
            this._checkoutAttributeService = checkoutAttributeService;
            this._paymentService = paymentService;
            this._workflowMessageService = workflowMessageService;
            this._permissionService = permissionService;
            this._downloadService = downloadService;
            this._cacheManager = cacheManager;
            this._webHelper = webHelper;
            this._customerActivityService = customerActivityService;
            this._genericAttributeService = genericAttributeService;
            this._deliveryTimeService = deliveryTimeService;
            this._httpContext = httpContext;
            this._mediaSettings = mediaSettings;
            this._shoppingCartSettings = shoppingCartSettings;
            this._catalogSettings = catalogSettings;
            this._orderSettings = orderSettings;
            this._shippingSettings = shippingSettings;
            this._taxSettings = taxSettings;
            this._captchaSettings = captchaSettings;
            this._addressSettings = addressSettings;
            this._pluginMediator = pluginMediator;
            this._quantityUnitService = quantityUnitService;
        }
 public ProductController(
     SmartDbContext db,
     IProductService productService,
     ICategoryService categoryService,
     IManufacturerService manufacturerService,
     ICustomerService customerService,
     IUrlService urlService,
     IWorkContext workContext,
     ILanguageService languageService,
     ILocalizationService localizationService,
     ILocalizedEntityService localizedEntityService,
     IMediaService mediaService,
     IProductTagService productTagService,
     IProductCloner productCloner,
     IActivityLogger activityLogger,
     IAclService aclService,
     IStoreContext storeContext,
     IStoreMappingService storeMappingService,
     AdminAreaSettings adminAreaSettings,
     IDateTimeHelper dateTimeHelper,
     IDiscountService discountService,
     IProductAttributeService productAttributeService,
     //IBackInStockSubscriptionService backInStockSubscriptionService,
     IShoppingCartService shoppingCartService,
     IProductAttributeFormatter productAttributeFormatter,
     //IProductAttributeParser productAttributeParser,
     CatalogSettings catalogSettings,
     IDownloadService downloadService,
     IDeliveryTimeService deliveryTimesService,
     IMeasureService measureService,
     MeasureSettings measureSettings,
     IEventPublisher eventPublisher,
     IGenericAttributeService genericAttributeService,
     ICommonServices services,
     ICatalogSearchService catalogSearchService,
     ProductUrlHelper productUrlHelper,
     SeoSettings seoSettings,
     MediaSettings mediaSettings,
     SearchSettings searchSettings)
 {
     _db                      = db;
     _productService          = productService;
     _categoryService         = categoryService;
     _manufacturerService     = manufacturerService;
     _customerService         = customerService;
     _urlService              = urlService;
     _workContext             = workContext;
     _languageService         = languageService;
     _localizationService     = localizationService;
     _localizedEntityService  = localizedEntityService;
     _mediaService            = mediaService;
     _productTagService       = productTagService;
     _productCloner           = productCloner;
     _activityLogger          = activityLogger;
     _aclService              = aclService;
     _storeContext            = storeContext;
     _storeMappingService     = storeMappingService;
     _adminAreaSettings       = adminAreaSettings;
     _dateTimeHelper          = dateTimeHelper;
     _discountService         = discountService;
     _productAttributeService = productAttributeService;
     //_backInStockSubscriptionService = backInStockSubscriptionService;
     _shoppingCartService       = shoppingCartService;
     _productAttributeFormatter = productAttributeFormatter;
     //_productAttributeParser = productAttributeParser;
     _catalogSettings         = catalogSettings;
     _downloadService         = downloadService;
     _deliveryTimesService    = deliveryTimesService;
     _measureService          = measureService;
     _measureSettings         = measureSettings;
     _eventPublisher          = eventPublisher;
     _genericAttributeService = genericAttributeService;
     _services             = services;
     _catalogSearchService = catalogSearchService;
     _productUrlHelper     = productUrlHelper;
     _seoSettings          = seoSettings;
     _mediaSettings        = mediaSettings;
     _searchSettings       = searchSettings;
 }
Example #16
0
 public CatalogHelper(
     SmartDbContext db,
     ICommonServices services,
     IMenuService menuService,
     IManufacturerService manufacturerService,
     IProductService productService,
     //IProductTemplateService productTemplateService,
     IProductAttributeService productAttributeService,
     IProductAttributeMaterializer productAttributeMaterializer,
     IProductAttributeFormatter productAttributeFormatter,
     ITaxService taxService,
     ICurrencyService currencyService,
     IMediaService mediaService,
     IPriceCalculationService priceCalculationService,
     //IPriceFormatter priceFormatter,
     //ISpecificationAttributeService specificationAttributeService,
     IDateTimeHelper dateTimeHelper,
     //IBackInStockSubscriptionService backInStockSubscriptionService,
     IDownloadService downloadService,
     MediaSettings mediaSettings,
     CatalogSettings catalogSettings,
     CustomerSettings customerSettings,
     CaptchaSettings captchaSettings,
     IMeasureService measureService,
     //IQuantityUnitService quantityUnitService,
     MeasureSettings measureSettings,
     TaxSettings taxSettings,
     PerformanceSettings performanceSettings,
     IDeliveryTimeService deliveryTimeService,
     Lazy <IDataExporter> dataExporter,
     ICatalogSearchService catalogSearchService,
     ICatalogSearchQueryFactory catalogSearchQueryFactory,
     IUrlHelper urlHelper,
     ProductUrlHelper productUrlHelper,
     ILocalizedEntityService localizedEntityService,
     IUrlService urlService,
     ILinkResolver linkResolver)
 {
     _db                  = db;
     _services            = services;
     _workContext         = services.WorkContext;
     _storeContext        = services.StoreContext;
     _cache               = services.Cache;
     _menuService         = menuService;
     _manufacturerService = manufacturerService;
     _productService      = productService;
     //_productTemplateService = productTemplateService;
     _productAttributeService      = productAttributeService;
     _productAttributeMaterializer = productAttributeMaterializer;
     _productAttributeFormatter    = productAttributeFormatter;
     _taxService              = taxService;
     _currencyService         = currencyService;
     _mediaService            = mediaService;
     _localizationService     = _services.Localization;
     _priceCalculationService = priceCalculationService;
     //_priceFormatter = priceFormatter;
     //_specificationAttributeService = specificationAttributeService;
     _dateTimeHelper = dateTimeHelper;
     //_backInStockSubscriptionService = backInStockSubscriptionService;
     _downloadService = downloadService;
     _measureService  = measureService;
     //_quantityUnitService = quantityUnitService;
     _measureSettings           = measureSettings;
     _taxSettings               = taxSettings;
     _performanceSettings       = performanceSettings;
     _deliveryTimeService       = deliveryTimeService;
     _mediaSettings             = mediaSettings;
     _catalogSettings           = catalogSettings;
     _customerSettings          = customerSettings;
     _captchaSettings           = captchaSettings;
     _dataExporter              = dataExporter;
     _catalogSearchService      = catalogSearchService;
     _catalogSearchQueryFactory = catalogSearchQueryFactory;
     _urlHelper              = urlHelper;
     _productUrlHelper       = productUrlHelper;
     _localizedEntityService = localizedEntityService;
     _urlService             = urlService;
     _linkResolver           = linkResolver;
     _httpRequest            = _urlHelper.ActionContext.HttpContext.Request;
 }
        public SettingController(ISettingService settingService,
            ICountryService countryService, IStateProvinceService stateProvinceService,
            IAddressService addressService, ITaxCategoryService taxCategoryService,
            ICurrencyService currencyService, IPictureService pictureService, 
            ILocalizationService localizationService, IDateTimeHelper dateTimeHelper,
            IOrderService orderService, IEncryptionService encryptionService,
            IThemeRegistry themeRegistry, ICustomerService customerService, 
            ICustomerActivityService customerActivityService, IPermissionService permissionService,
            IWebHelper webHelper, IFulltextService fulltextService,
			IMaintenanceService maintenanceService, IStoreService storeService,
			IWorkContext workContext, IGenericAttributeService genericAttributeService,
			ILocalizedEntityService localizedEntityService,
			ILanguageService languageService,
			IDeliveryTimeService deliveryTimesService)
        {
            this._settingService = settingService;
            this._countryService = countryService;
            this._stateProvinceService = stateProvinceService;
            this._addressService = addressService;
            this._taxCategoryService = taxCategoryService;
            this._currencyService = currencyService;
            this._pictureService = pictureService;
            this._localizationService = localizationService;
            this._dateTimeHelper = dateTimeHelper;
            this._orderService = orderService;
            this._encryptionService = encryptionService;
            this._themeRegistry = themeRegistry;
            this._customerService = customerService;
            this._customerActivityService = customerActivityService;
            this._permissionService = permissionService;
            this._webHelper = webHelper;
            this._fulltextService = fulltextService;
            this._maintenanceService = maintenanceService;
			this._storeService = storeService;
			this._workContext = workContext;
			this._genericAttributeService = genericAttributeService;
			this._localizedEntityService = localizedEntityService;
			this._languageService = languageService;
			this._deliveryTimesService = deliveryTimesService;
        }
Example #18
0
        /// <summary>
        /// Gets the product delivery time according to stock
        /// </summary>
        public static Task <DeliveryTime> GetDeliveryTimeAsync(this IDeliveryTimeService service, Product product, bool displayAccordingToStock)
        {
            var deliveryTimeId = product.GetDeliveryTimeIdAccordingToStock(displayAccordingToStock);

            return(service.GetDeliveryTimeAsync(deliveryTimeId, true));
        }
        public CatalogHelper(
			ICommonServices services,
			ICategoryService categoryService,
			IManufacturerService manufacturerService,
			IProductService productService,
			IProductTemplateService productTemplateService,
			IProductAttributeService productAttributeService,
			IProductAttributeParser productAttributeParser,
			IProductAttributeFormatter productAttributeFormatter,
			ITaxService taxService,
			ICurrencyService currencyService,
			IPictureService pictureService,
			IPriceCalculationService priceCalculationService,
			IPriceFormatter priceFormatter,
			ISpecificationAttributeService specificationAttributeService,
			IDateTimeHelper dateTimeHelper,
			IBackInStockSubscriptionService backInStockSubscriptionService,
			IDownloadService downloadService,
			MediaSettings mediaSettings,
			CatalogSettings catalogSettings,
			CustomerSettings customerSettings,
			CaptchaSettings captchaSettings,
			IMeasureService measureService,
            IQuantityUnitService quantityUnitService,
			MeasureSettings measureSettings,
			TaxSettings taxSettings,
			IDeliveryTimeService deliveryTimeService,
			ISettingService settingService,
			Lazy<IMenuPublisher> _menuPublisher,
			Lazy<ITopicService> topicService,
			HttpRequestBase httpRequest,
			UrlHelper urlHelper)
        {
            this._services = services;
            this._categoryService = categoryService;
            this._manufacturerService = manufacturerService;
            this._productService = productService;
            this._productTemplateService = productTemplateService;
            this._productAttributeService = productAttributeService;
            this._productAttributeParser = productAttributeParser;
            this._productAttributeFormatter = productAttributeFormatter;
            this._taxService = taxService;
            this._currencyService = currencyService;
            this._pictureService = pictureService;
            this._localizationService = _services.Localization;
            this._priceCalculationService = priceCalculationService;
            this._priceFormatter = priceFormatter;
            this._specificationAttributeService = specificationAttributeService;
            this._dateTimeHelper = dateTimeHelper;
            this._backInStockSubscriptionService = backInStockSubscriptionService;
            this._downloadService = downloadService;
            this._measureService = measureService;
            this._quantityUnitService = quantityUnitService;
            this._measureSettings = measureSettings;
            this._taxSettings = taxSettings;
            this._deliveryTimeService = deliveryTimeService;
            this._settingService = settingService;
            this._mediaSettings = mediaSettings;
            this._catalogSettings = catalogSettings;
            this._customerSettings = customerSettings;
            this._captchaSettings = captchaSettings;
            this._menuPublisher = _menuPublisher;
            this._topicService = topicService;
            this._httpRequest = httpRequest;
            this._urlHelper = urlHelper;

            T = NullLocalizer.Instance;
        }
        public CatalogController(ICommonServices services,
			ICategoryService categoryService,
            IManufacturerService manufacturerService, IProductService productService,
            IProductTemplateService productTemplateService,
            ICategoryTemplateService categoryTemplateService,
            IManufacturerTemplateService manufacturerTemplateService,
            IProductAttributeService productAttributeService, IProductAttributeParser productAttributeParser,
			IProductAttributeFormatter productAttributeFormatter,
			ITaxService taxService, ICurrencyService currencyService,
            IPictureService pictureService,
            IPriceCalculationService priceCalculationService, IPriceFormatter priceFormatter,
            ISpecificationAttributeService specificationAttributeService,
            ICustomerContentService customerContentService, IDateTimeHelper dateTimeHelper,
            IShoppingCartService shoppingCartService,
            IRecentlyViewedProductsService recentlyViewedProductsService, ICompareProductsService compareProductsService,
            IWorkflowMessageService workflowMessageService, IProductTagService productTagService,
            IOrderReportService orderReportService, IGenericAttributeService genericAttributeService,
            IBackInStockSubscriptionService backInStockSubscriptionService, IAclService aclService,
			IStoreMappingService storeMappingService,
            IPermissionService permissionService, IDownloadService downloadService,
            MediaSettings mediaSettings, CatalogSettings catalogSettings,
            ShoppingCartSettings shoppingCartSettings,
            LocalizationSettings localizationSettings, CustomerSettings customerSettings,
			CurrencySettings currencySettings,
            CaptchaSettings captchaSettings,
            /* codehint: sm-add */
            IMeasureService measureService, MeasureSettings measureSettings, TaxSettings taxSettings, IFilterService filterService,
            IDeliveryTimeService deliveryTimeService, ISettingService settingService,
			ICustomerActivityService customerActivityService
            )
        {
			this._services = services;
			this._categoryService = categoryService;
            this._manufacturerService = manufacturerService;
            this._productService = productService;
            this._productTemplateService = productTemplateService;
            this._categoryTemplateService = categoryTemplateService;
            this._manufacturerTemplateService = manufacturerTemplateService;
            this._productAttributeService = productAttributeService;
            this._productAttributeParser = productAttributeParser;
			this._productAttributeFormatter = productAttributeFormatter;
            this._workContext = _services.WorkContext;
			this._storeContext = _services.StoreContext;
            this._taxService = taxService;
            this._currencyService = currencyService;
            this._pictureService = pictureService;
            this._localizationService = _services.Localization;
            this._priceCalculationService = priceCalculationService;
            this._priceFormatter = priceFormatter;
            this._webHelper = _services.WebHelper;
            this._specificationAttributeService = specificationAttributeService;
            this._customerContentService = customerContentService;
            this._dateTimeHelper = dateTimeHelper;
            this._shoppingCartService = shoppingCartService;
            this._recentlyViewedProductsService = recentlyViewedProductsService;
            this._compareProductsService = compareProductsService;
            this._workflowMessageService = workflowMessageService;
            this._productTagService = productTagService;
            this._orderReportService = orderReportService;
            this._genericAttributeService = genericAttributeService;
            this._backInStockSubscriptionService = backInStockSubscriptionService;
            this._aclService = aclService;
			this._storeMappingService = storeMappingService;
            this._permissionService = permissionService;
            this._downloadService = downloadService;
			this._customerActivityService = customerActivityService;

            //codehint: sm-edit begin
            this._measureService = measureService;
            this._measureSettings = measureSettings;
            this._taxSettings = taxSettings;
            this._filterService = filterService;
            this._deliveryTimeService = deliveryTimeService;
            this._dbContext = _services.DbContext;
            this._settingService = settingService;
            this._eventPublisher = _services.EventPublisher;
            //codehint: sm-edit end

            this._mediaSettings = mediaSettings;
            this._catalogSettings = catalogSettings;
            this._shoppingCartSettings = shoppingCartSettings;
            this._localizationSettings = localizationSettings;
            this._customerSettings = customerSettings;
            this._captchaSettings = captchaSettings;
			this._currencySettings = currencySettings;
            this._cacheManager = _services.Cache;

			T = NullLocalizer.Instance;
        }