コード例 #1
0
        /// <summary>
        /// Uninstall plugin
        /// </summary>
        public override void Uninstall()
        {
            //uninstall object context
            _context.Uninstall();

            //Remove language resource
            foreach (KeyValuePair <string, string> entry in GetLanguageResources())
            {
                _localizationService.DeletePluginLocaleResource(entry.Key);
            }

            //Remove the product attributes created by the plugin
            List <ProductAttribute> customColorAttribute = _productPictureModifierService.
                                                           GetProductAttributeByName(ProductPictureModifierDefault.ProductAttributeName).ToList();

            foreach (var attribute in customColorAttribute)
            {
                _productAttributeService.DeleteProductAttribute(attribute);
            }

            List <ProductAttribute> customLogoAttribute = _productPictureModifierService.
                                                          GetProductAttributeByName(ProductPictureModifierDefault.ProductAttributeNameForLogo).ToList();

            foreach (var attribute in customLogoAttribute)
            {
                _productAttributeService.DeleteProductAttribute(attribute);
            }

            List <ProductAttribute> customLogoUploadAttribute = _productPictureModifierService.
                                                                GetProductAttributeByName(ProductPictureModifierDefault.ProductAttributeNameForLogoUpload).ToList();

            foreach (var attribute in customLogoUploadAttribute)
            {
                _productAttributeService.DeleteProductAttribute(attribute);
            }

            Setting uploadIconSetting = _settingService
                                        .GetSetting(ProductPictureModifierDefault.UploadIconPictureIdSetting);

            //remove setting and custom upload icon logo
            if (uploadIconSetting != null)
            {
                //remove picture
                if (int.TryParse(uploadIconSetting.Value, out int pictureId))
                {
                    _pictureService.DeletePicture(_pictureService.GetPictureById(pictureId));
                }

                //remove setting
                _settingService.DeleteSetting(uploadIconSetting);
            }

            //remove picture mapping created by the plugin
            _productPictureModifierService.RemovePictureCreatedByPlugin();

            base.Uninstall();
        }
コード例 #2
0
        public virtual IActionResult Delete(int id)
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManageAttributes))
            {
                return(AccessDeniedView());
            }

            //try to get a product attribute with the specified id
            var productAttribute = _productAttributeService.GetProductAttributeById(id);

            if (productAttribute == null)
            {
                return(RedirectToAction("List"));
            }

            _productAttributeService.DeleteProductAttribute(productAttribute);

            //activity log
            _customerActivityService.InsertActivity("DeleteProductAttribute",
                                                    string.Format(_localizationService.GetResource("ActivityLog.DeleteProductAttribute"), productAttribute.Name), productAttribute);

            _notificationService.SuccessNotification(_localizationService.GetResource("Admin.Catalog.Attributes.ProductAttributes.Deleted"));

            return(RedirectToAction("List"));
        }
コード例 #3
0
        public HttpResponseMessage Delete(HttpRequestMessage request, int id)
        {
            return(CreateHttpResponse(request, () =>
            {
                HttpResponseMessage response = request.CreateResponse(HttpStatusCode.NotFound);
                if (!ModelState.IsValid)
                {
                    response = request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
                }
                else
                {
                    var productAttribute = _productAttributeService.GetProductAttributeById(id);
                    if (productAttribute != null)
                    {
                        _productAttributeService.DeleteProductAttribute(productAttribute);
                        //activity log
                        _customerActivityService.InsertActivity("DeleteProductAttribute", _localizationService.GetResource("ActivityLog.DeleteProductAttribute"), productAttribute.Name);

                        _baseService.Commit();
                        response = request.CreateResponse <ProductAttribute>(HttpStatusCode.OK, productAttribute);
                    }
                }
                return response;
            }));
        }
コード例 #4
0
        public ActionResult Delete(int id)
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManageCatalog))
            {
                return(AccessDeniedView());
            }

            var productAttribute = _productAttributeService.GetProductAttributeById(id);

            if (productAttribute == null)
            {
                //No product attribute found with the specified id
                return(RedirectToAction("List"));
            }
            var groups = productAttribute.CategoryProductAttribute;

            if (groups != null && groups.Count > 0)
            {
                ErrorNotification(_localizationService.GetResource("Admin.ETF.PRoductAttribute.Conflict"));
                return(RedirectToAction("List"));
            }

            _productAttributeService.DeleteProductAttribute(productAttribute);

            //activity log
            _customerActivityService.InsertActivity("DeleteProductAttribute", _localizationService.GetResource("ActivityLog.DeleteProductAttribute"), productAttribute.Name);

            SuccessNotification(_localizationService.GetResource("Admin.Catalog.Attributes.ProductAttributes.Deleted"));
            return(RedirectToAction("List"));
        }
コード例 #5
0
        public virtual async Task DeleteProductAttribute(ProductAttributeDto model)
        {
            var productAttribute = await _productAttributeService.GetProductAttributeById(model.Id);

            if (productAttribute != null)
            {
                await _productAttributeService.DeleteProductAttribute(productAttribute);

                //activity log
                await _customerActivityService.InsertActivity("DeleteProductAttribute", productAttribute.Id, _localizationService.GetResource("ActivityLog.DeleteProductAttribute"), productAttribute.Name);
            }
        }
        public async Task <bool> Handle(DeleteProductAttributeCommand request, CancellationToken cancellationToken)
        {
            var productAttribute = await _productAttributeService.GetProductAttributeById(request.Model.Id);

            if (productAttribute != null)
            {
                await _productAttributeService.DeleteProductAttribute(productAttribute);

                //activity log
                await _customerActivityService.InsertActivity("DeleteProductAttribute", productAttribute.Id,
                                                              _localizationService.GetResource("ActivityLog.DeleteProductAttribute"), productAttribute.Name);
            }
            return(true);
        }
コード例 #7
0
 public ActionResult Delete(string proAttrId)
 {
     try
     {
         // TODO: Add delete logic here
         Guid g = Guid.Parse(proAttrId);
         _iProductAttributeService.DeleteProductAttribute(g);
         return(RedirectToAction("Index"));
     }
     catch
     {
         return(View());
     }
 }
コード例 #8
0
        public ActionResult DeleteConfirmed(int id)
        {
            var productAttribute = _productAttributeService.GetProductAttributeById(id);

            if (productAttribute == null)
            {
                return(RedirectToAction("List"));
            }

            _productAttributeService.DeleteProductAttribute(productAttribute);

            _customerActivityService.InsertActivity("DeleteProductAttribute", T("ActivityLog.DeleteProductAttribute", productAttribute.Name));

            NotifySuccess(T("Admin.Catalog.Attributes.ProductAttributes.Deleted"));
            return(RedirectToAction("List"));
        }
コード例 #9
0
        public ActionResult DeleteConfirmed(int id)
        {
            if (!_permissionService.Authorize(StandardPermissionProvider.ManageCatalog))
            {
                return(AccessDeniedView());
            }

            var productAttribute = _productAttributeService.GetProductAttributeById(id);

            _productAttributeService.DeleteProductAttribute(productAttribute);

            //activity log
            _customerActivityService.InsertActivity("DeleteProductAttribute", _localizationService.GetResource("ActivityLog.DeleteProductAttribute"), productAttribute.Name);

            SuccessNotification(_localizationService.GetResource("Admin.Catalog.Attributes.ProductAttributes.Deleted"));
            return(RedirectToAction("List"));
        }
コード例 #10
0
        private void UninstallAttributes(CcSettings settings)
        {
            // remove product attributes
            var attribute = _productAttributeService.GetProductAttributeById(settings.CcIdAttributeId);

            if (attribute != null)
            {
                _productAttributeService.DeleteProductAttribute(attribute);
            }

            // remove specification attributes
            var specificationAttribute =
                _specificationAttributeService.GetSpecificationAttributeById(settings.EditorConfigurationSpecificationAttributeId);

            if (specificationAttribute != null)
            {
                _specificationAttributeService.DeleteSpecificationAttribute(specificationAttribute);
            }

            specificationAttribute =
                _specificationAttributeService.GetSpecificationAttributeById(settings.EditorDefinitionSpecificationAttributeId);
            if (specificationAttribute != null)
            {
                _specificationAttributeService.DeleteSpecificationAttribute(specificationAttribute);
            }

            var specificationAttributeOption =
                _specificationAttributeService.GetSpecificationAttributeOptionById(settings.EditorDefinitionSpecificationOptionId);

            if (specificationAttributeOption != null)
            {
                _specificationAttributeService.DeleteSpecificationAttributeOption(specificationAttributeOption);
            }

            specificationAttributeOption =
                _specificationAttributeService.GetSpecificationAttributeOptionById(settings.EditorConfigurationSpecificationOptionId);
            if (specificationAttributeOption != null)
            {
                _specificationAttributeService.DeleteSpecificationAttributeOption(specificationAttributeOption);
            }
        }
        public IActionResult DeleteProductAttribute(int id)
        {
            if (id <= 0)
            {
                return(Error(HttpStatusCode.BadRequest, "id", "invalid id"));
            }

            ProductAttribute productAttribute = _productAttributesApiService.GetById(id);

            if (productAttribute == null)
            {
                return(Error(HttpStatusCode.NotFound, "product attribute", "not found"));
            }

            _productAttributeService.DeleteProductAttribute(productAttribute);

            //activity log
            _customerActivityService.InsertActivity("DeleteProductAttribute", _localizationService.GetResource("ActivityLog.DeleteProductAttribute"), productAttribute.Name);

            return(new RawJsonActionResult("{}"));
        }
コード例 #12
0
        public IActionResult Delete(string id)
        {
            var productAttribute = _productAttributeService.GetProductAttributeById(id);

            if (productAttribute == null)
            {
                //No product attribute found with the specified id
                return(RedirectToAction("List"));
            }
            if (ModelState.IsValid)
            {
                _productAttributeService.DeleteProductAttribute(productAttribute);

                //activity log
                _customerActivityService.InsertActivity("DeleteProductAttribute", productAttribute.Id, _localizationService.GetResource("ActivityLog.DeleteProductAttribute"), productAttribute.Name);

                SuccessNotification(_localizationService.GetResource("Admin.Catalog.Attributes.ProductAttributes.Deleted"));
                return(RedirectToAction("List"));
            }
            ErrorNotification(ModelState);
            return(RedirectToAction("Edit", new { id = productAttribute.Id }));
        }
コード例 #13
0
 public ActionResult Delete(int productAttriId)
 {
     _productAttributeService.DeleteProductAttribute(productAttriId);
     return(RedirectToAction("Index"));
 }