From b457d1167a923c5bb31b86febef69254d4113548 Mon Sep 17 00:00:00 2001 From: Marcus Gesing Date: Mon, 29 Apr 2019 14:35:13 +0200 Subject: [PATCH 001/262] Fixes top-border of list-group-flush not working correctly --- .../SmartStore.Web/Administration/Content/_admin.scss | 6 ------ .../SmartStore.Web/Content/bs4/scss/_list-group.scss | 10 ++++------ 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/src/Presentation/SmartStore.Web/Administration/Content/_admin.scss b/src/Presentation/SmartStore.Web/Administration/Content/_admin.scss index fd39fad16b..e8fe29879f 100644 --- a/src/Presentation/SmartStore.Web/Administration/Content/_admin.scss +++ b/src/Presentation/SmartStore.Web/Administration/Content/_admin.scss @@ -1402,8 +1402,6 @@ table.payment-method-features td { left: 0; top: 0; bottom: 0; - /*opacity: 0; - transition: opacity 0.05s linear;*/ > .btn { position: relative; @@ -1414,10 +1412,6 @@ table.payment-method-features td { opacity: 1; } } - - :not(:last-child) .sub-item:last-child { - border-bottom: 0 none; - } } diff --git a/src/Presentation/SmartStore.Web/Content/bs4/scss/_list-group.scss b/src/Presentation/SmartStore.Web/Content/bs4/scss/_list-group.scss index 9f145c1d30..de32ec9c03 100644 --- a/src/Presentation/SmartStore.Web/Content/bs4/scss/_list-group.scss +++ b/src/Presentation/SmartStore.Web/Content/bs4/scss/_list-group.scss @@ -91,17 +91,15 @@ @include border-radius(0); } - &:first-child { - .list-group-item:first-child { - border-top: 0; - } - } - &:last-child { .list-group-item:last-child { border-bottom: 0; } } + + > .list-group-item:first-child { + border-top: 0; + } } From 417b5bf828666f0d2115207eda91bbc438984f00 Mon Sep 17 00:00:00 2001 From: Marcus Gesing Date: Mon, 29 Apr 2019 15:31:30 +0200 Subject: [PATCH 002/262] Fixes broken unit tests --- .../SmartStore.Core/Fakes/FakeHttpContext.cs | 2 ++ .../SmartStore.Core/Fakes/FakeHttpHandler.cs | 15 +++++++++++++++ .../SmartStore.Core/SmartStore.Core.csproj | 1 + 3 files changed, 18 insertions(+) create mode 100644 src/Libraries/SmartStore.Core/Fakes/FakeHttpHandler.cs diff --git a/src/Libraries/SmartStore.Core/Fakes/FakeHttpContext.cs b/src/Libraries/SmartStore.Core/Fakes/FakeHttpContext.cs index 4a024630cc..68302e9a61 100644 --- a/src/Libraries/SmartStore.Core/Fakes/FakeHttpContext.cs +++ b/src/Libraries/SmartStore.Core/Fakes/FakeHttpContext.cs @@ -66,6 +66,8 @@ public FakeHttpContext(string relativeUrl, _serverVariables = serverVariables; _items = new Dictionary(); + + Handler = new FakeHttpHandler(); } public override IHttpHandler Handler { get; set; } diff --git a/src/Libraries/SmartStore.Core/Fakes/FakeHttpHandler.cs b/src/Libraries/SmartStore.Core/Fakes/FakeHttpHandler.cs new file mode 100644 index 0000000000..ea0839801a --- /dev/null +++ b/src/Libraries/SmartStore.Core/Fakes/FakeHttpHandler.cs @@ -0,0 +1,15 @@ +using System; +using System.Web; + +namespace SmartStore.Core.Fakes +{ + public class FakeHttpHandler : IHttpHandler + { + public bool IsReusable => true; + + public void ProcessRequest(HttpContext context) + { + throw new NotImplementedException(); + } + } +} diff --git a/src/Libraries/SmartStore.Core/SmartStore.Core.csproj b/src/Libraries/SmartStore.Core/SmartStore.Core.csproj index 74c7269317..60553396a0 100644 --- a/src/Libraries/SmartStore.Core/SmartStore.Core.csproj +++ b/src/Libraries/SmartStore.Core/SmartStore.Core.csproj @@ -270,6 +270,7 @@ + From 4b01b2f67bcc86146f3dc756a556aafd1b466646 Mon Sep 17 00:00:00 2001 From: Michael Herzog Date: Mon, 29 Apr 2019 17:07:57 +0200 Subject: [PATCH 003/262] Added posibility to set maxitems & appendmode for entity picker via data attributes --- .../Scripts/smartstore.entityPicker.js | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/src/Presentation/SmartStore.Web/Scripts/smartstore.entityPicker.js b/src/Presentation/SmartStore.Web/Scripts/smartstore.entityPicker.js index e775021c03..4cf694d67b 100644 --- a/src/Presentation/SmartStore.Web/Scripts/smartstore.entityPicker.js +++ b/src/Presentation/SmartStore.Web/Scripts/smartstore.entityPicker.js @@ -49,7 +49,7 @@ if (typeof method === 'object' || !method) { var btn = this; - $(btn).on('click', function (e) { + $(btn).on('click', function (e) { if (!btn.is('.disabled')) { loadDialog(btn, normalizeOptions(method, btn)); } @@ -91,7 +91,15 @@ if (_.isEmpty(options.url)) { options.url = self.attr('data-url'); - } + } + + if (options.maxItems == 0 && !_.isEmpty(self.data('maxitems'))) { + options.maxItems = self.data('maxitems'); + } + + if (options.appendMode == true && !_.isEmpty(self.data('appendmode'))) { + options.appendMode = self.data('appendmode'); + } if (_.isEmpty(options.url)) { console.error('EntityPicker cannot find the url for entity picker!'); @@ -241,11 +249,11 @@ fillList(this, { append: false }); }); - // lazy loading + // lazy loading dialog.find('.modal-body').on('scroll', function (e) { if (dialog.find('.load-more:not(.loading)').visible(true, false, 'vertical')) { fillList(this, { append: true }); - } + } }); // item select and item hover @@ -319,7 +327,8 @@ $(opts.targetInput) .val(selectedValues.join(opts.delim)) .focus() - .blur(); + .blur() + .trigger("change"); } if (_.isFunction(opts.onSelectionCompleted)) { From 8dabe721e9cd2d94d4a4ef029f8e0fc8c443795e Mon Sep 17 00:00:00 2001 From: Murat Cakir Date: Wed, 1 May 2019 03:56:22 +0200 Subject: [PATCH 004/262] PB: added "Homepage" special item to topics chooser --- .../Administration/Controllers/TopicController.cs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/Presentation/SmartStore.Web/Administration/Controllers/TopicController.cs b/src/Presentation/SmartStore.Web/Administration/Controllers/TopicController.cs index 1a19f59ffb..1d6543ab6a 100644 --- a/src/Presentation/SmartStore.Web/Administration/Controllers/TopicController.cs +++ b/src/Presentation/SmartStore.Web/Administration/Controllers/TopicController.cs @@ -376,7 +376,7 @@ public ActionResult DeleteConfirmed(int id) } // AJAX - public ActionResult AllTopics(string label, int selectedId, bool useTitles = false, bool includeWidgets = false) + public ActionResult AllTopics(string label, int selectedId, bool useTitles = false, bool includeWidgets = false, bool includeHomePage = false) { var query = from x in _topicService.GetAllTopics(showHidden: true).SourceQuery where (includeWidgets || !x.RenderAsWidget) @@ -405,6 +405,16 @@ public ActionResult AllTopics(string label, int selectedId, bool useTitles = fal topics.Insert(0, labelTopic); } + if (includeHomePage) + { + topics.Insert(0, new Topic + { + Id = -10, + Title = T("Admin.ContentManagement.Homepage"), + SystemName = T("Admin.ContentManagement.Homepage"), + }); + } + var list = from x in topics select new { From 5c7214f532b92646d9563f81d6957fa8f3d3ac98 Mon Sep 17 00:00:00 2001 From: Michael Herzog Date: Thu, 2 May 2019 13:22:21 +0200 Subject: [PATCH 005/262] Sets correct properties for system topics that are rendered as widgets by internal code --- .../201905020948354_WidgetTopics.Designer.cs | 29 ++++ .../201905020948354_WidgetTopics.cs | 48 +++++++ .../201905020948354_WidgetTopics.resx | 126 ++++++++++++++++++ .../SmartStore.Data/SmartStore.Data.csproj | 7 + 4 files changed, 210 insertions(+) create mode 100644 src/Libraries/SmartStore.Data/Migrations/201905020948354_WidgetTopics.Designer.cs create mode 100644 src/Libraries/SmartStore.Data/Migrations/201905020948354_WidgetTopics.cs create mode 100644 src/Libraries/SmartStore.Data/Migrations/201905020948354_WidgetTopics.resx diff --git a/src/Libraries/SmartStore.Data/Migrations/201905020948354_WidgetTopics.Designer.cs b/src/Libraries/SmartStore.Data/Migrations/201905020948354_WidgetTopics.Designer.cs new file mode 100644 index 0000000000..7a420fcffe --- /dev/null +++ b/src/Libraries/SmartStore.Data/Migrations/201905020948354_WidgetTopics.Designer.cs @@ -0,0 +1,29 @@ +// +namespace SmartStore.Data.Migrations +{ + using System.CodeDom.Compiler; + using System.Data.Entity.Migrations; + using System.Data.Entity.Migrations.Infrastructure; + using System.Resources; + + [GeneratedCode("EntityFramework.Migrations", "6.2.0-61023")] + public sealed partial class WidgetTopics : IMigrationMetadata + { + private readonly ResourceManager Resources = new ResourceManager(typeof(WidgetTopics)); + + string IMigrationMetadata.Id + { + get { return "201905020948354_WidgetTopics"; } + } + + string IMigrationMetadata.Source + { + get { return null; } + } + + string IMigrationMetadata.Target + { + get { return Resources.GetString("Target"); } + } + } +} diff --git a/src/Libraries/SmartStore.Data/Migrations/201905020948354_WidgetTopics.cs b/src/Libraries/SmartStore.Data/Migrations/201905020948354_WidgetTopics.cs new file mode 100644 index 0000000000..4bc080d4fc --- /dev/null +++ b/src/Libraries/SmartStore.Data/Migrations/201905020948354_WidgetTopics.cs @@ -0,0 +1,48 @@ +namespace SmartStore.Data.Migrations +{ + using System; + using System.Data.Entity.Migrations; + using System.Linq; + using SmartStore.Core.Data; + using SmartStore.Core.Domain.Topics; + using SmartStore.Data.Setup; + + public partial class WidgetTopics : DbMigration, IDataSeeder + { + public override void Up() + { + } + + public override void Down() + { + } + + public bool RollbackOnFailure + { + get { return false; } + } + + public void Seed(SmartObjectContext context) + { + using (var scope = new DbContextScope(ctx: context, validateOnSave: false, hooksEnabled: false, autoCommit: false)) + { + var widgetTopics = new[] + { + "CheckoutAsGuestOrRegister", + "ContactUs", + "ForumWelcomeMessage", + "HomePageText", + "LoginRegistrationInfo" + }; + + var topics = context.Set().Where(x => widgetTopics.Contains(x.SystemName)).ToList(); + topics.Each(x => { + x.RenderAsWidget = true; + x.WidgetWrapContent = false; + }); + + context.SaveChanges(); + } + } + } +} diff --git a/src/Libraries/SmartStore.Data/Migrations/201905020948354_WidgetTopics.resx b/src/Libraries/SmartStore.Data/Migrations/201905020948354_WidgetTopics.resx new file mode 100644 index 0000000000..274628a4fc --- /dev/null +++ b/src/Libraries/SmartStore.Data/Migrations/201905020948354_WidgetTopics.resx @@ -0,0 +1,126 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 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 + + + dbo + + \ No newline at end of file diff --git a/src/Libraries/SmartStore.Data/SmartStore.Data.csproj b/src/Libraries/SmartStore.Data/SmartStore.Data.csproj index 4be41259d5..09b4fc7358 100644 --- a/src/Libraries/SmartStore.Data/SmartStore.Data.csproj +++ b/src/Libraries/SmartStore.Data/SmartStore.Data.csproj @@ -661,6 +661,10 @@ 201904110735029_Menus.cs + + + 201905020948354_WidgetTopics.cs + @@ -1185,6 +1189,9 @@ 201904110735029_Menus.cs + + 201905020948354_WidgetTopics.cs + From 1cff031070a017537368993e04933e99545b6dfc Mon Sep 17 00:00:00 2001 From: Michael Herzog Date: Thu, 2 May 2019 13:39:07 +0200 Subject: [PATCH 006/262] Installation: sets correct properties for system topics that are rendered as widgets --- .../Setup/SeedData/InvariantSeedData.cs | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/src/Libraries/SmartStore.Data/Setup/SeedData/InvariantSeedData.cs b/src/Libraries/SmartStore.Data/Setup/SeedData/InvariantSeedData.cs index a7947fd324..fe8e4280be 100644 --- a/src/Libraries/SmartStore.Data/Setup/SeedData/InvariantSeedData.cs +++ b/src/Libraries/SmartStore.Data/Setup/SeedData/InvariantSeedData.cs @@ -3873,6 +3873,8 @@ public IList Topics() SystemName = "CheckoutAsGuestOrRegister", IncludeInSitemap = false, IsPasswordProtected = false, + RenderAsWidget = true, + WidgetWrapContent = false, Title = "", Body = "

Register and save time!
Register with us for future convenience:

  • Fast and easy check out
  • Easy access to your order history and status
" }, @@ -3889,7 +3891,9 @@ public IList Topics() SystemName = "ContactUs", IncludeInSitemap = false, IsPasswordProtected = false, - Title = "Contact us", + RenderAsWidget = true, + WidgetWrapContent = false, + Title = "Contact us", Body = "

Put your contact information here. You can edit this in the admin site.

" }, new Topic @@ -3897,7 +3901,9 @@ public IList Topics() SystemName = "ForumWelcomeMessage", IncludeInSitemap = false, IsPasswordProtected = false, - Title = "Forums", + RenderAsWidget = true, + WidgetWrapContent = false, + Title = "Forums", Body = "

Put your welcome message here. You can edit this in the admin site.

" }, new Topic @@ -3905,7 +3911,9 @@ public IList Topics() SystemName = "HomePageText", IncludeInSitemap = false, IsPasswordProtected = false, - Title = "Welcome to our store", + RenderAsWidget = true, + WidgetWrapContent = false, + Title = "Welcome to our store", Body = "

Online shopping is the process consumers go through to purchase products or services over the Internet. You can edit this in the admin site.

" }, new Topic @@ -3913,7 +3921,9 @@ public IList Topics() SystemName = "LoginRegistrationInfo", IncludeInSitemap = false, IsPasswordProtected = false, - Title = "About login / registration", + RenderAsWidget = true, + WidgetWrapContent = false, + Title = "About login / registration", Body = "

Not registered yet?

Create your own account now and experience our diversity. With an account you can place orders faster and will always have a perfect overview of your current and previous orders.

" }, new Topic From c6661e7b1c2ba5c8209a01afdcf8384af04e5952 Mon Sep 17 00:00:00 2001 From: Marcus Gesing Date: Thu, 2 May 2019 16:16:48 +0200 Subject: [PATCH 007/262] Fixes menu editing exception when only one language is installed --- .../SmartStore.Data/Utilities/DataMigrator.cs | 2 +- .../Administration/Controllers/MenuController.cs | 16 +++++++++++----- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/Libraries/SmartStore.Data/Utilities/DataMigrator.cs b/src/Libraries/SmartStore.Data/Utilities/DataMigrator.cs index 569d41af2f..b93c7ca64b 100644 --- a/src/Libraries/SmartStore.Data/Utilities/DataMigrator.cs +++ b/src/Libraries/SmartStore.Data/Utilities/DataMigrator.cs @@ -558,7 +558,7 @@ public static void CreateSystemMenus(IDbContext context) IsSystemMenu = true, Published = true, Template = "Dropdown", - Title = GetResource("Menu.ServiceMenu") + Title = GetResource("Menu.ServiceMenu").NullEmpty() ?? "Service" }); scope.Commit(); diff --git a/src/Presentation/SmartStore.Web/Administration/Controllers/MenuController.cs b/src/Presentation/SmartStore.Web/Administration/Controllers/MenuController.cs index 527bf324dc..01f658c981 100644 --- a/src/Presentation/SmartStore.Web/Administration/Controllers/MenuController.cs +++ b/src/Presentation/SmartStore.Web/Administration/Controllers/MenuController.cs @@ -549,18 +549,24 @@ private void PrepareModel(MenuItemRecordModel model, MenuItemRecord entity) private void UpdateLocales(MenuRecord entity, MenuRecordModel model) { - foreach (var localized in model.Locales) + if (model.Locales != null) { - _localizedEntityService.SaveLocalizedValue(entity, x => x.Title, localized.Title, localized.LanguageId); + foreach (var localized in model.Locales) + { + _localizedEntityService.SaveLocalizedValue(entity, x => x.Title, localized.Title, localized.LanguageId); + } } } private void UpdateLocales(MenuItemRecord entity, MenuItemRecordModel model) { - foreach (var localized in model.Locales) + if (model.Locales != null) { - _localizedEntityService.SaveLocalizedValue(entity, x => x.Title, localized.Title, localized.LanguageId); - _localizedEntityService.SaveLocalizedValue(entity, x => x.ShortDescription, localized.ShortDescription, localized.LanguageId); + foreach (var localized in model.Locales) + { + _localizedEntityService.SaveLocalizedValue(entity, x => x.Title, localized.Title, localized.LanguageId); + _localizedEntityService.SaveLocalizedValue(entity, x => x.ShortDescription, localized.ShortDescription, localized.LanguageId); + } } } From 7985093b32865b85bcd930925f024630845155c1 Mon Sep 17 00:00:00 2001 From: Marcus Gesing Date: Thu, 2 May 2019 21:29:50 +0200 Subject: [PATCH 008/262] Added TabbableModel and publishing of ModelBoundEvent for menu item editing --- .../Controllers/MenuController.cs | 8 +- .../Models/Menus/MenuItemRecordModel.cs | 2 +- .../Views/Menu/_CreateOrUpdate.Item.cshtml | 292 +++++++++--------- .../Views/Menu/_CreateOrUpdate.cshtml | 4 +- 4 files changed, 160 insertions(+), 146 deletions(-) diff --git a/src/Presentation/SmartStore.Web/Administration/Controllers/MenuController.cs b/src/Presentation/SmartStore.Web/Administration/Controllers/MenuController.cs index 01f658c981..88255b9e60 100644 --- a/src/Presentation/SmartStore.Web/Administration/Controllers/MenuController.cs +++ b/src/Presentation/SmartStore.Web/Administration/Controllers/MenuController.cs @@ -285,7 +285,7 @@ public ActionResult CreateItem(string providerName, int menuId, int parentItemId // Do not name parameter "model" because of property of same name. [HttpPost, ValidateInput(false), ParameterBasedOnFormName("save-item-continue", "continueEditing")] - public ActionResult CreateItem(MenuItemRecordModel itemModel, bool continueEditing) + public ActionResult CreateItem(MenuItemRecordModel itemModel, bool continueEditing, FormCollection form) { if (!Services.Permissions.Authorize(StandardPermissionProvider.ManageMenus)) { @@ -301,6 +301,8 @@ public ActionResult CreateItem(MenuItemRecordModel itemModel, bool continueEditi _menuStorage.InsertMenuItem(item); UpdateLocales(item, itemModel); + + Services.EventPublisher.Publish(new ModelBoundEvent(itemModel, item, form)); NotifySuccess(T("Admin.Common.DataSuccessfullySaved")); if (continueEditing) @@ -345,7 +347,7 @@ public ActionResult EditItem(int id) // Do not name parameter "model" because of property of same name. [HttpPost, ValidateInput(false), ParameterBasedOnFormName("save-item-continue", "continueEditing")] - public ActionResult EditItem(MenuItemRecordModel itemModel, bool continueEditing) + public ActionResult EditItem(MenuItemRecordModel itemModel, bool continueEditing, FormCollection form) { if (!Services.Permissions.Authorize(StandardPermissionProvider.ManageMenus)) { @@ -367,6 +369,8 @@ public ActionResult EditItem(MenuItemRecordModel itemModel, bool continueEditing _menuStorage.UpdateMenuItem(item); UpdateLocales(item, itemModel); + + Services.EventPublisher.Publish(new ModelBoundEvent(itemModel, item, form)); NotifySuccess(T("Admin.Common.DataSuccessfullySaved")); if (continueEditing) diff --git a/src/Presentation/SmartStore.Web/Administration/Models/Menus/MenuItemRecordModel.cs b/src/Presentation/SmartStore.Web/Administration/Models/Menus/MenuItemRecordModel.cs index 2db3ae4c5b..c4c5dd22f4 100644 --- a/src/Presentation/SmartStore.Web/Administration/Models/Menus/MenuItemRecordModel.cs +++ b/src/Presentation/SmartStore.Web/Administration/Models/Menus/MenuItemRecordModel.cs @@ -12,7 +12,7 @@ namespace SmartStore.Admin.Models.Menus { [Validator(typeof(MenuItemRecordValidator))] - public class MenuItemRecordModel : EntityModelBase, IIcon, ILocalizedModel + public class MenuItemRecordModel : TabbableModel, IIcon, ILocalizedModel { public int MenuId { get; set; } public string Model { get; set; } diff --git a/src/Presentation/SmartStore.Web/Administration/Views/Menu/_CreateOrUpdate.Item.cshtml b/src/Presentation/SmartStore.Web/Administration/Views/Menu/_CreateOrUpdate.Item.cshtml index caebd48800..c5fe940eb0 100644 --- a/src/Presentation/SmartStore.Web/Administration/Views/Menu/_CreateOrUpdate.Item.cshtml +++ b/src/Presentation/SmartStore.Web/Administration/Views/Menu/_CreateOrUpdate.Item.cshtml @@ -6,167 +6,177 @@ @Html.HiddenFor(model => model.MenuId) @Html.HiddenFor(model => model.ProviderName) -