public ActionResult Edit(SpecificationAttributeModel model, bool continueEditing) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageCatalog)) { return(AccessDeniedView()); } var specificationAttribute = _specificationAttributeService.GetSpecificationAttributeById(model.Id); if (specificationAttribute == null) { return(RedirectToAction("List")); } if (ModelState.IsValid) { specificationAttribute = model.ToEntity(specificationAttribute); _specificationAttributeService.UpdateSpecificationAttribute(specificationAttribute); UpdateAttributeLocales(specificationAttribute, model); //activity log _customerActivityService.InsertActivity("EditSpecAttribute", _localizationService.GetResource("ActivityLog.EditSpecAttribute"), specificationAttribute.Name); NotifySuccess(_localizationService.GetResource("Admin.Catalog.Attributes.SpecificationAttributes.Updated")); return(continueEditing ? RedirectToAction("Edit", specificationAttribute.Id) : RedirectToAction("List")); } //If we got this far, something failed, redisplay form return(View(model)); }
public ActionResult Create(SpecificationAttributeModel model, bool continueEditing) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageAttributes)) { return(AccessDeniedView()); } if (ModelState.IsValid) { var specificationAttribute = model.ToEntity(); _specificationAttributeService.InsertSpecificationAttribute(specificationAttribute); UpdateAttributeLocales(specificationAttribute, model); //activity log _customerActivityService.InsertActivity("AddNewSpecAttribute", _localizationService.GetResource("ActivityLog.AddNewSpecAttribute"), specificationAttribute.Name); SuccessNotification(_localizationService.GetResource("Admin.Catalog.Attributes.SpecificationAttributes.Added")); if (continueEditing) { //selected tab SaveSelectedTabName(); return(RedirectToAction("Edit", new { id = specificationAttribute.Id })); } return(RedirectToAction("List")); } //If we got this far, something failed, redisplay form return(View(model)); }
public virtual async Task <IActionResult> CreateSpecificationAttribute(SpecificationAttributeModel model, bool continueEditing) { if (!await _permissionService.AuthorizeAsync(StandardPermissionProvider.ManageAttributes)) { return(AccessDeniedView()); } if (ModelState.IsValid) { var specificationAttribute = model.ToEntity <SpecificationAttribute>(); await _specificationAttributeService.InsertSpecificationAttributeAsync(specificationAttribute); await UpdateAttributeLocalesAsync(specificationAttribute, model); await _customerActivityService.InsertActivityAsync("AddNewSpecAttribute", string.Format(await _localizationService.GetResourceAsync("ActivityLog.AddNewSpecAttribute"), specificationAttribute.Name), specificationAttribute); _notificationService.SuccessNotification(await _localizationService.GetResourceAsync("Admin.Catalog.Attributes.SpecificationAttributes.SpecificationAttribute.Added")); if (!continueEditing) { return(RedirectToAction("List")); } return(RedirectToAction("EditSpecificationAttribute", new { id = specificationAttribute.Id })); } model = await _specificationAttributeModelFactory.PrepareSpecificationAttributeModelAsync(model, null, true); //if we got this far, something failed, redisplay form return(View(model)); }
public async Task <IActionResult> Edit(SpecificationAttributeModel model, bool continueEditing) { var specificationAttribute = await _specificationAttributeService.GetSpecificationAttributeById(model.Id); if (specificationAttribute == null) { //No specification attribute found with the specified id return(RedirectToAction("List")); } if (ModelState.IsValid) { specificationAttribute = model.ToEntity(specificationAttribute); specificationAttribute.SeName = SeoExtensions.GetSeName(string.IsNullOrEmpty(specificationAttribute.SeName) ? specificationAttribute.Name : specificationAttribute.SeName, _seoSettings); await _specificationAttributeService.UpdateSpecificationAttribute(specificationAttribute); //activity log await _customerActivityService.InsertActivity("EditSpecAttribute", specificationAttribute.Id, _localizationService.GetResource("ActivityLog.EditSpecAttribute"), specificationAttribute.Name); SuccessNotification(_localizationService.GetResource("Admin.Catalog.Attributes.SpecificationAttributes.Updated")); if (continueEditing) { //selected tab await SaveSelectedTabIndex(); return(RedirectToAction("Edit", new { id = specificationAttribute.Id })); } return(RedirectToAction("List")); } //If we got this far, something failed, redisplay form return(View(model)); }
public ActionResult Edit(SpecificationAttributeModel model, bool continueEditing) { var specificationAttribute = _specificationAttributeService.GetSpecificationAttributeById(model.Id); if (specificationAttribute == null) { return(RedirectToAction("List")); } if (ModelState.IsValid) { specificationAttribute = model.ToEntity(specificationAttribute); try { _specificationAttributeService.UpdateSpecificationAttribute(specificationAttribute); UpdateAttributeLocales(specificationAttribute, model); } catch (Exception ex) { ModelState.AddModelError("", ex.Message); return(View(model)); } _customerActivityService.InsertActivity("EditSpecAttribute", T("ActivityLog.EditSpecAttribute"), specificationAttribute.Name); NotifySuccess(T("Admin.Catalog.Attributes.SpecificationAttributes.Updated")); return(continueEditing ? RedirectToAction("Edit", specificationAttribute.Id) : RedirectToAction("List")); } return(View(model)); }
public ActionResult Create(SpecificationAttributeModel model, bool continueEditing) { if (ModelState.IsValid) { var specificationAttribute = model.ToEntity(); try { _specificationAttributeService.InsertSpecificationAttribute(specificationAttribute); } catch (Exception ex) { ModelState.AddModelError("", ex.Message); return(View(model)); } try { UpdateAttributeLocales(specificationAttribute, model); } catch (Exception ex) { continueEditing = true; NotifyError(ex.Message); } _customerActivityService.InsertActivity("AddNewSpecAttribute", T("ActivityLog.AddNewSpecAttribute"), specificationAttribute.Name); NotifySuccess(T("Admin.Catalog.Attributes.SpecificationAttributes.Added")); return(continueEditing ? RedirectToAction("Edit", new { id = specificationAttribute.Id }) : RedirectToAction("List")); } return(View(model)); }
public void UpdateAttributeLocales(SpecificationAttribute specificationAttribute, SpecificationAttributeModel model) { foreach (var localized in model.Locales) { _localizedEntityService.SaveLocalizedValue(specificationAttribute, x => x.Name, localized.Name, localized.LanguageId); } }
//create public ActionResult Create() { if (!_permissionService.Authorize(StandardPermissionProvider.ManageAttributes)) { return(AccessDeniedView()); } var model = new SpecificationAttributeModel(); //categories model.AvailableCategories.Add(new SelectListItem() { Text = _localizationService.GetResource("Admin.Common.All"), Value = "0" }); var categories = _categoryService.GetAllCategoriesByParentCategoryId(0, showHidden: true); foreach (var c in categories) { model.AvailableCategories.Add(new SelectListItem() { Text = c.GetFormattedBreadCrumb(categories), Value = c.Id.ToString() }); } //locales AddLocales(_languageService, model.Locales); return(View(model)); }
public ActionResult Create() { var model = new SpecificationAttributeModel(); AddLocales(_languageService, model.Locales); return(View(model)); }
public async Task <IActionResult> Create() { var model = new SpecificationAttributeModel(); //locales await AddLocales(_languageService, model.Locales); return(View(model)); }
//create public ActionResult Create() { if (!_permissionService.Authorize(StandardPermissionProvider.ManageCatalog)) return AccessDeniedView(); var model = new SpecificationAttributeModel(); //locales AddLocales(_languageService, model.Locales); return View(model); }
public async Task <IActionResult> Create() { var model = new SpecificationAttributeModel(); //locales await AddLocales(_languageService, model.Locales); //Stores await model.PrepareStoresMappingModel(null, _storeService, false, _workContext.CurrentCustomer.StaffStoreId); return(View(model)); }
//create public ActionResult Create() { if (!_permissionService.Authorize(StandardPermissionProvider.ManageAttributes)) { return(AccessDeniedView()); } var model = new SpecificationAttributeModel(); //locales AddLocales(_languageService, model.Locales); return(View(model)); }
public IActionResult Create(SpecificationAttributeModel model, bool continueEditing) { if (ModelState.IsValid) { var specificationAttribute = model.ToEntity(); _specificationAttributeService.InsertSpecificationAttribute(specificationAttribute); //activity log _customerActivityService.InsertActivity("AddNewSpecAttribute", specificationAttribute.Id, _localizationService.GetResource("ActivityLog.AddNewSpecAttribute"), specificationAttribute.Name); SuccessNotification(_localizationService.GetResource("Admin.Catalog.Attributes.SpecificationAttributes.Added")); return(continueEditing ? RedirectToAction("Edit", new { id = specificationAttribute.Id }) : RedirectToAction("List")); } //If we got this far, something failed, redisplay form return(View(model)); }
public async Task <IActionResult> Edit(SpecificationAttributeModel model, bool continueEditing) { var specificationAttribute = await _specificationAttributeService.GetSpecificationAttributeById(model.Id); if (specificationAttribute == null) { //No specification attribute found with the specified id return(RedirectToAction("List")); } if (ModelState.IsValid) { specificationAttribute = model.ToEntity(specificationAttribute); specificationAttribute.SeName = SeoExtensions.GetSeName(string.IsNullOrEmpty(specificationAttribute.SeName) ? specificationAttribute.Name : specificationAttribute.SeName, _seoSettings); if (_workContext.CurrentCustomer.IsStaff()) { model.LimitedToStores = true; model.SelectedStoreIds = new string[] { _workContext.CurrentCustomer.StaffStoreId }; } await _specificationAttributeService.UpdateSpecificationAttribute(specificationAttribute); //activity log await _customerActivityService.InsertActivity("EditSpecAttribute", specificationAttribute.Id, _localizationService.GetResource("ActivityLog.EditSpecAttribute"), specificationAttribute.Name); SuccessNotification(_localizationService.GetResource("Admin.Catalog.Attributes.SpecificationAttributes.Updated")); if (continueEditing) { //selected tab await SaveSelectedTabIndex(); return(RedirectToAction("Edit", new { id = specificationAttribute.Id })); } return(RedirectToAction("List")); } //If we got this far, something failed, redisplay form //Stores await model.PrepareStoresMappingModel(specificationAttribute, _storeService, false, _workContext.CurrentCustomer.StaffStoreId); //locales await AddLocales(_languageService, model.Locales, (locale, languageId) => { locale.Name = specificationAttribute.GetLocalized(x => x.Name, languageId, false, false); }); return(View(model)); }
public virtual IActionResult Edit(SpecificationAttributeModel model, bool continueEditing) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageAttributes)) { return(AccessDeniedView()); } //try to get a specification attribute with the specified id var specificationAttribute = _specificationAttributeService.GetSpecificationAttributeById(model.Id); if (specificationAttribute == null) { return(RedirectToAction("List")); } if (ModelState.IsValid) { specificationAttribute = model.ToEntity(specificationAttribute); _specificationAttributeService.UpdateSpecificationAttribute(specificationAttribute); UpdateAttributeLocales(specificationAttribute, model); //activity log _customerActivityService.InsertActivity("EditSpecAttribute", string.Format(_localizationService.GetResource("ActivityLog.EditSpecAttribute"), specificationAttribute.Name), specificationAttribute); _notificationService.SuccessNotification(_localizationService.GetResource("Admin.Catalog.Attributes.SpecificationAttributes.Updated")); if (!continueEditing) { return(RedirectToAction("List")); } //selected tab SaveSelectedTabName(); return(RedirectToAction("Edit", new { id = specificationAttribute.Id })); } //prepare model model = _specificationAttributeModelFactory.PrepareSpecificationAttributeModel(model, specificationAttribute, true); //if we got this far, something failed, redisplay form return(View(model)); }
public ActionResult Edit(SpecificationAttributeModel model, bool continueEditing) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageAttributes)) { return(AccessDeniedView()); } var specificationAttribute = _specificationAttributeService.GetSpecificationAttributeById(model.Id); if (specificationAttribute == null) { //No specification attribute found with the specified id return(RedirectToAction("List")); } if (ModelState.IsValid) { specificationAttribute = model.ToEntity(specificationAttribute); _specificationAttributeService.UpdateSpecificationAttribute(specificationAttribute); UpdateAttributeLocales(specificationAttribute, model); //activity log _customerActivityService.InsertActivity("EditSpecAttribute", _localizationService.GetResource("ActivityLog.EditSpecAttribute"), specificationAttribute.Name); _categorySpecificationAtrributeService.UpdateCategorySpecificationAtrribute(new CategorySpecificationAtrribute { AllowFiltering = model.AllowFiltering, CategoryId = model.SearchCategoryId, Deleted = false, SpecificationAttributeId = specificationAttribute.Id }); SuccessNotification(_localizationService.GetResource("Admin.Catalog.Attributes.SpecificationAttributes.Updated")); if (continueEditing) { //selected tab SaveSelectedTabIndex(); return(RedirectToAction("Edit", specificationAttribute.Id)); } else { return(RedirectToAction("List")); } } //If we got this far, something failed, redisplay form return(View(model)); }
public async Task <IActionResult> Create(SpecificationAttributeModel model, bool continueEditing) { if (ModelState.IsValid) { var specificationAttribute = model.ToEntity(); specificationAttribute.SeName = SeoExtensions.GetSeName(string.IsNullOrEmpty(specificationAttribute.SeName) ? specificationAttribute.Name : specificationAttribute.SeName, _seoSettings); await _specificationAttributeService.InsertSpecificationAttribute(specificationAttribute); //activity log await _customerActivityService.InsertActivity("AddNewSpecAttribute", specificationAttribute.Id, _localizationService.GetResource("ActivityLog.AddNewSpecAttribute"), specificationAttribute.Name); SuccessNotification(_localizationService.GetResource("Admin.Catalog.Attributes.SpecificationAttributes.Added")); return(continueEditing ? RedirectToAction("Edit", new { id = specificationAttribute.Id }) : RedirectToAction("List")); } //If we got this far, something failed, redisplay form return(View(model)); }
public ActionResult Create(SpecificationAttributeModel model, bool continueEditing) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageCatalog)) { return(AccessDeniedView()); } if (ModelState.IsValid) { var specificationAttribute = model.ToEntity(); try { _specificationAttributeService.InsertSpecificationAttribute(specificationAttribute); } catch (Exception exception) { ModelState.AddModelError("", exception.Message); return(View(model)); } try { UpdateAttributeLocales(specificationAttribute, model); } catch (Exception exception) { continueEditing = true; NotifyError(exception.Message); } //activity log _customerActivityService.InsertActivity("AddNewSpecAttribute", _localizationService.GetResource("ActivityLog.AddNewSpecAttribute"), specificationAttribute.Name); NotifySuccess(_localizationService.GetResource("Admin.Catalog.Attributes.SpecificationAttributes.Added")); return(continueEditing ? RedirectToAction("Edit", new { id = specificationAttribute.Id }) : RedirectToAction("List")); } //If we got this far, something failed, redisplay form return(View(model)); }
public ActionResult Create(SpecificationAttributeModel model, bool continueEditing) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageCatalog)) return AccessDeniedView(); if (ModelState.IsValid) { var specificationAttribute = model.ToEntity(); _specificationAttributeService.InsertSpecificationAttribute(specificationAttribute); UpdateAttributeLocales(specificationAttribute, model); //activity log _customerActivityService.InsertActivity("AddNewSpecAttribute", _localizationService.GetResource("ActivityLog.AddNewSpecAttribute"), specificationAttribute.Name); SuccessNotification(_localizationService.GetResource("Admin.Catalog.Attributes.SpecificationAttributes.Added")); return continueEditing ? RedirectToAction("Edit", new { id = specificationAttribute.Id }) : RedirectToAction("List"); } //If we got this far, something failed, redisplay form return View(model); }
public async Task <IActionResult> Create(SpecificationAttributeModel model, bool continueEditing) { if (ModelState.IsValid) { var specificationAttribute = model.ToEntity(); specificationAttribute.SeName = SeoExtensions.GetSeName(string.IsNullOrEmpty(specificationAttribute.SeName) ? specificationAttribute.Name : specificationAttribute.SeName, _seoSettings.ConvertNonWesternChars, _seoSettings.AllowUnicodeCharsInUrls, _seoSettings.SeoCharConversion); if (await _groupService.IsStaff(_workContext.CurrentCustomer)) { model.Stores = new string[] { _workContext.CurrentCustomer.StaffStoreId }; } await _specificationAttributeService.InsertSpecificationAttribute(specificationAttribute); //activity log await _customerActivityService.InsertActivity("AddNewSpecAttribute", specificationAttribute.Id, _translationService.GetResource("ActivityLog.AddNewSpecAttribute"), specificationAttribute.Name); Success(_translationService.GetResource("Admin.Catalog.Attributes.SpecificationAttributes.Added")); return(continueEditing ? RedirectToAction("Edit", new { id = specificationAttribute.Id }) : RedirectToAction("List")); } //If we got this far, something failed, redisplay form return(View(model)); }
public static SpecificationAttribute ToEntity(this SpecificationAttributeModel model, SpecificationAttribute entity) { MapperFactory.Map(model, entity); return(entity); }
public static SpecificationAttribute ToEntity(this SpecificationAttributeModel model, SpecificationAttribute destination) { return(model.MapTo(destination)); }
public static SpecificationAttribute ToEntity(this SpecificationAttributeModel model) { return(model.MapTo <SpecificationAttributeModel, SpecificationAttribute>()); }
public ActionResult Edit(SpecificationAttributeModel model, bool continueEditing) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageAttributes)) return AccessDeniedView(); var specificationAttribute = _specificationAttributeService.GetSpecificationAttributeById(model.Id); if (specificationAttribute == null) //No specification attribute found with the specified id return RedirectToAction("List"); if (ModelState.IsValid) { specificationAttribute = model.ToEntity(specificationAttribute); _specificationAttributeService.UpdateSpecificationAttribute(specificationAttribute); UpdateAttributeLocales(specificationAttribute, model); //activity log _customerActivityService.InsertActivity("EditSpecAttribute", _localizationService.GetResource("ActivityLog.EditSpecAttribute"), specificationAttribute.Name); SuccessNotification(_localizationService.GetResource("Admin.Catalog.Attributes.SpecificationAttributes.Updated")); if (continueEditing) { //selected tab SaveSelectedTabIndex(); return RedirectToAction("Edit", specificationAttribute.Id); } else { return RedirectToAction("List"); } } //If we got this far, something failed, redisplay form return View(model); }
protected virtual List<LocalizedProperty> UpdateAttributeLocales(SpecificationAttribute specificationAttribute, SpecificationAttributeModel model) { List<LocalizedProperty> localized = new List<LocalizedProperty>(); foreach (var local in model.Locales) { if (!(String.IsNullOrEmpty(local.Name))) localized.Add(new LocalizedProperty() { LanguageId = local.LanguageId, LocaleKey = "Name", LocaleValue = local.Name, _id = ObjectId.GenerateNewId().ToString(), Id = localized.Count > 0 ? localized.Max(x => x.Id) + 1 : 1, }); } return localized; }
protected virtual List <LocalizedProperty> UpdateAttributeLocales(SpecificationAttribute specificationAttribute, SpecificationAttributeModel model) { List <LocalizedProperty> localized = new List <LocalizedProperty>(); foreach (var local in model.Locales) { if (!(String.IsNullOrEmpty(local.Name))) { localized.Add(new LocalizedProperty() { LanguageId = local.LanguageId, LocaleKey = "Name", LocaleValue = local.Name, }); } } return(localized); }
/// <summary> /// Prepare specification attribute model /// </summary> /// <param name="model">Specification attribute model</param> /// <param name="specificationAttribute">Specification attribute</param> /// <param name="excludeProperties">Whether to exclude populating of some properties of model</param> /// <returns> /// A task that represents the asynchronous operation /// The task result contains the specification attribute model /// </returns> public virtual async Task <SpecificationAttributeModel> PrepareSpecificationAttributeModelAsync(SpecificationAttributeModel model, SpecificationAttribute specificationAttribute, bool excludeProperties = false) { Func <SpecificationAttributeLocalizedModel, int, Task> localizedModelConfiguration = null; if (specificationAttribute != null) { //fill in model values from the entity model ??= specificationAttribute.ToModel <SpecificationAttributeModel>(); //prepare nested search models PrepareSpecificationAttributeOptionSearchModel(model.SpecificationAttributeOptionSearchModel, specificationAttribute); PrepareSpecificationAttributeProductSearchModel(model.SpecificationAttributeProductSearchModel, specificationAttribute); //define localized model configuration action localizedModelConfiguration = async(locale, languageId) => { locale.Name = await _localizationService.GetLocalizedAsync(specificationAttribute, entity => entity.Name, languageId, false, false); }; } //prepare localized models if (!excludeProperties) { model.Locales = await _localizedModelFactory.PrepareLocalizedModelsAsync(localizedModelConfiguration); await _baseAdminModelFactory.PrepareSpecificationAttributeGroupsAsync(model.AvailableGroups, defaultItemText : await _localizationService.GetResourceAsync("Admin.Catalog.Attributes.SpecificationAttributes.SpecificationAttribute.Fields.SpecificationAttributeGroup.None")); } return(model); }
/// <summary> /// Prepare specification attribute model /// </summary> /// <param name="model">Specification attribute model</param> /// <param name="specificationAttribute">Specification attribute</param> /// <param name="excludeProperties">Whether to exclude populating of some properties of model</param> /// <returns>Specification attribute model</returns> public virtual SpecificationAttributeModel PrepareSpecificationAttributeModel(SpecificationAttributeModel model, SpecificationAttribute specificationAttribute, bool excludeProperties = false) { Action <SpecificationAttributeLocalizedModel, int> localizedModelConfiguration = null; if (specificationAttribute != null) { //fill in model values from the entity model ??= specificationAttribute.ToModel <SpecificationAttributeModel>(); //prepare nested search models PrepareSpecificationAttributeOptionSearchModel(model.SpecificationAttributeOptionSearchModel, specificationAttribute); PrepareSpecificationAttributeProductSearchModel(model.SpecificationAttributeProductSearchModel, specificationAttribute); //define localized model configuration action localizedModelConfiguration = (locale, languageId) => { locale.Name = _localizationService.GetLocalized(specificationAttribute, entity => entity.Name, languageId, false, false); }; } //prepare localized models if (!excludeProperties) { model.Locales = _localizedModelFactory.PrepareLocalizedModels(localizedModelConfiguration); } return(model); }
/// <returns>A task that represents the asynchronous operation</returns> protected virtual async Task UpdateAttributeLocalesAsync(SpecificationAttribute specificationAttribute, SpecificationAttributeModel model) { foreach (var localized in model.Locales) { await _localizedEntityService.SaveLocalizedValueAsync(specificationAttribute, x => x.Name, localized.Name, localized.LanguageId); } }
public static SpecificationAttribute ToEntity(this SpecificationAttributeModel model) { return(Mapper.Map <SpecificationAttributeModel, SpecificationAttribute>(model)); }
protected virtual void UpdateAttributeLocales(SpecificationAttribute specificationAttribute, SpecificationAttributeModel model) { foreach (var localized in model.Locales) { _localizedEntityService.SaveLocalizedValue(specificationAttribute, x => x.Name, localized.Name, localized.LanguageId); } }
protected virtual List <LocalizedProperty> UpdateAttributeLocales(SpecificationAttribute specificationAttribute, SpecificationAttributeModel model) { List <LocalizedProperty> localized = new List <LocalizedProperty>(); foreach (var local in model.Locales) { if (!(String.IsNullOrEmpty(local.Name))) { localized.Add(new LocalizedProperty() { LanguageId = local.LanguageId, LocaleKey = "Name", LocaleValue = local.Name, _id = ObjectId.GenerateNewId().ToString(), Id = localized.Count > 0 ? localized.Max(x => x.Id) + 1 : 1, }); } } return(localized); }