how can i show resource value for nivo slider for a language

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.
7 years ago
in nivo slider there is this code

this.AddOrUpdatePluginLocaleResource("Plugins.Widgets.NivoSlider.Picture1", "Picture 1");
            this.AddOrUpdatePluginLocaleResource("Plugins.Widgets.NivoSlider.Picture2", "Picture 2");
            this.AddOrUpdatePluginLocaleResource("Plugins.Widgets.NivoSlider.Picture3", "Picture 3");
            this.AddOrUpdatePluginLocaleResource("Plugins.Widgets.NivoSlider.Picture4", "Picture 4");
            this.AddOrUpdatePluginLocaleResource("Plugins.Widgets.NivoSlider.Picture5", "Picture 5");
            



I added the german language in nopCommerce

the nivo slider show "Plugins.Widgets.NivoSlider.Picture1" for picture 1 when the resource item "Plugins.Widgets.NivoSlider.Picture1" is already in german language resources.

how to show the value for resource item Plugins.Widgets.NivoSlider.Picture1 in other non english languages?

7 years ago
Just add appropriate string resources here:
admin area -> Configuration -> Languages - Choose language - View string resources -> Add new record
In this case 'Resource name' field is 'Plugins.Widgets.NivoSlider.Picture1' and value is what you want to see in result.
7 years ago
using System.ComponentModel.DataAnnotations;
using System.Web.Mvc;
using Nop.Web.Framework;
using Nop.Web.Framework.Mvc;
using Nop.Web.Framework.Localization;
using System.Collections.Generic;

namespace Nop.Plugin.Widgets.NivoSlider.Models
{
    public class ConfigurationModel : BaseNopModel, ILocalizedModel<ConfigurationModel.ConfigurationLocalizedModel>
    {
        public ConfigurationModel()
        {
            Locales = new List<ConfigurationLocalizedModel>();
        }
        public int ActiveStoreScopeConfiguration { get; set; }


        [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Picture")]
        [UIHint("Picture")]
        public int Picture1Id { get; set; }
        public bool Picture1Id_OverrideForStore { get; set; }
        [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Text")]
        [AllowHtml]
        public string Text1 { get; set; }
        public bool Text1_OverrideForStore { get; set; }
        [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Link")]
        [AllowHtml]
        public string Link1 { get; set; }
        public bool Link1_OverrideForStore { get; set; }

        [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Picture")]
        [UIHint("Picture")]
        public int Picture2Id { get; set; }
        public bool Picture2Id_OverrideForStore { get; set; }
        [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Text")]
        [AllowHtml]
        public string Text2 { get; set; }
        public bool Text2_OverrideForStore { get; set; }
        [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Link")]
        [AllowHtml]
        public string Link2 { get; set; }
        public bool Link2_OverrideForStore { get; set; }

        [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Picture")]
        [UIHint("Picture")]
        public int Picture3Id { get; set; }
        public bool Picture3Id_OverrideForStore { get; set; }
        [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Text")]
        [AllowHtml]
        public string Text3 { get; set; }
        public bool Text3_OverrideForStore { get; set; }
        [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Link")]
        [AllowHtml]
        public string Link3 { get; set; }
        public bool Link3_OverrideForStore { get; set; }

        [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Picture")]
        [UIHint("Picture")]
        public int Picture4Id { get; set; }
        public bool Picture4Id_OverrideForStore { get; set; }
        [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Text")]
        [AllowHtml]
        public string Text4 { get; set; }
        public bool Text4_OverrideForStore { get; set; }
        [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Link")]
        [AllowHtml]
        public string Link4 { get; set; }
        public bool Link4_OverrideForStore { get; set; }

        [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Picture")]
        [UIHint("Picture")]
        public int Picture5Id { get; set; }
        public bool Picture5Id_OverrideForStore { get; set; }
        [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Text")]
        [AllowHtml]
        public string Text5 { get; set; }
        public bool Text5_OverrideForStore { get; set; }
        [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Link")]
        [AllowHtml]
        public string Link5 { get; set; }
        public bool Link5_OverrideForStore { get; set; }

        public IList<ConfigurationLocalizedModel> Locales { get; set; }

        #region Nested class

        public partial class ConfigurationLocalizedModel : ILocalizedModelLocal
        {
            public int LanguageId { get; set; }

            [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Picture")]
            [UIHint("Picture")]
            public int Picture1Id { get; set; }

            [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Text")]
            [AllowHtml]
            public string Text1 { get; set; }

            [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Link")]
            [AllowHtml]
            public string Link1 { get; set; }

            [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Picture")]
            [UIHint("Picture")]
            public int Picture2Id { get; set; }

            [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Text")]
            [AllowHtml]
            public string Text2 { get; set; }

            [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Link")]
            [AllowHtml]
            public string Link2 { get; set; }

            [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Picture")]
            [UIHint("Picture")]
            public int Picture3Id { get; set; }

            [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Text")]
            [AllowHtml]
            public string Text3 { get; set; }

            [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Link")]
            [AllowHtml]
            public string Link3 { get; set; }

            [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Picture")]
            [UIHint("Picture")]
            public int Picture4Id { get; set; }

            [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Text")]
            [AllowHtml]
            public string Text4 { get; set; }

            [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Link")]
            [AllowHtml]
            public string Link4 { get; set; }

            [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Picture")]
            [UIHint("Picture")]
            public int Picture5Id { get; set; }

            [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Text")]
            [AllowHtml]
            public string Text5 { get; set; }

            [NopResourceDisplayName("Plugins.Widgets.NivoSlider.Link")]
            [AllowHtml]
            public string Link5 { get; set; }
        }

        #endregion
    }
}


[AdminAuthorize]
        [ChildActionOnly]
        public ActionResult Configure()
        {
            //load settings for a chosen store scope
            var storeScope = this.GetActiveStoreScopeConfiguration(_storeService, _workContext);
            var nivoSliderSettings = _settingService.LoadSetting<NivoSliderSettings>(storeScope);
            var model = new ConfigurationModel();
            int pic1Id = 0;
            int pic2Id = 0;
            int pic3Id = 0;
            int pic4Id = 0;
            int pic5Id = 0;
            int.TryParse(nivoSliderSettings.Picture1Id, out pic1Id);
            int.TryParse(nivoSliderSettings.Picture2Id, out pic2Id);
            int.TryParse(nivoSliderSettings.Picture3Id, out pic3Id);
            int.TryParse(nivoSliderSettings.Picture4Id, out pic4Id);
            int.TryParse(nivoSliderSettings.Picture5Id, out pic5Id);

            model.Picture1Id = pic1Id;
            model.Text1 = nivoSliderSettings.Text1;
            model.Link1 = nivoSliderSettings.Link1;
            model.Picture2Id = pic2Id;
            model.Text2 = nivoSliderSettings.Text2;
            model.Link2 = nivoSliderSettings.Link2;
            model.Picture3Id = pic3Id;
            model.Text3 = nivoSliderSettings.Text3;
            model.Link3 = nivoSliderSettings.Link3;
            model.Picture4Id = pic4Id;
            model.Text4 = nivoSliderSettings.Text4;
            model.Link4 = nivoSliderSettings.Link4;
            model.Picture5Id = pic5Id;
            model.Text5 = nivoSliderSettings.Text5;
            model.Link5 = nivoSliderSettings.Link5;
            
            //locales
            AddLocales(_languageService, model.Locales, (locale, languageId) =>
            {
                int.TryParse(nivoSliderSettings.GetLocalizedSetting(x => x.Picture1Id, languageId, false, false), out pic1Id);
                int.TryParse(nivoSliderSettings.GetLocalizedSetting(x => x.Picture2Id, languageId, false, false), out pic2Id);
                int.TryParse(nivoSliderSettings.GetLocalizedSetting(x => x.Picture3Id, languageId, false, false), out pic3Id);
                int.TryParse(nivoSliderSettings.GetLocalizedSetting(x => x.Picture4Id, languageId, false, false), out pic4Id);
                int.TryParse(nivoSliderSettings.GetLocalizedSetting(x => x.Picture5Id, languageId, false, false), out pic5Id);
                locale.Picture1Id = pic1Id;
                locale.Text1 = nivoSliderSettings.GetLocalizedSetting(x => x.Text1, languageId, false, false);
                locale.Link1 = nivoSliderSettings.GetLocalizedSetting(x => x.Link1, languageId, false, false);
                locale.Picture2Id = pic2Id;
                locale.Text2 = nivoSliderSettings.GetLocalizedSetting(x => x.Text2, languageId, false, false);
                locale.Link2 = nivoSliderSettings.GetLocalizedSetting(x => x.Link2, languageId, false, false);
                locale.Picture3Id = pic3Id;
                locale.Text3 = nivoSliderSettings.GetLocalizedSetting(x => x.Text3, languageId, false, false);
                locale.Link3 = nivoSliderSettings.GetLocalizedSetting(x => x.Link3, languageId, false, false);
                locale.Picture4Id = pic4Id;
                locale.Text4 = nivoSliderSettings.GetLocalizedSetting(x => x.Text4, languageId, false, false);
                locale.Link4 = nivoSliderSettings.GetLocalizedSetting(x => x.Link4, languageId, false, false);
                locale.Picture5Id = pic5Id;
                locale.Text5 = nivoSliderSettings.GetLocalizedSetting(x => x.Text5, languageId, false, false);
                locale.Link5 = nivoSliderSettings.GetLocalizedSetting(x => x.Link5, languageId, false, false);
            });

            model.ActiveStoreScopeConfiguration = storeScope;
            if (storeScope > 0)
            {
                model.Picture1Id_OverrideForStore = _settingService.SettingExists(nivoSliderSettings, x => x.Picture1Id, storeScope);
                model.Text1_OverrideForStore = _settingService.SettingExists(nivoSliderSettings, x => x.Text1, storeScope);
                model.Link1_OverrideForStore = _settingService.SettingExists(nivoSliderSettings, x => x.Link1, storeScope);
                model.Picture2Id_OverrideForStore = _settingService.SettingExists(nivoSliderSettings, x => x.Picture2Id, storeScope);
                model.Text2_OverrideForStore = _settingService.SettingExists(nivoSliderSettings, x => x.Text2, storeScope);
                model.Link2_OverrideForStore = _settingService.SettingExists(nivoSliderSettings, x => x.Link2, storeScope);
                model.Picture3Id_OverrideForStore = _settingService.SettingExists(nivoSliderSettings, x => x.Picture3Id, storeScope);
                model.Text3_OverrideForStore = _settingService.SettingExists(nivoSliderSettings, x => x.Text3, storeScope);
                model.Link3_OverrideForStore = _settingService.SettingExists(nivoSliderSettings, x => x.Link3, storeScope);
                model.Picture4Id_OverrideForStore = _settingService.SettingExists(nivoSliderSettings, x => x.Picture4Id, storeScope);
                model.Text4_OverrideForStore = _settingService.SettingExists(nivoSliderSettings, x => x.Text4, storeScope);
                model.Link4_OverrideForStore = _settingService.SettingExists(nivoSliderSettings, x => x.Link4, storeScope);
                model.Picture5Id_OverrideForStore = _settingService.SettingExists(nivoSliderSettings, x => x.Picture5Id, storeScope);
                model.Text5_OverrideForStore = _settingService.SettingExists(nivoSliderSettings, x => x.Text5, storeScope);
                model.Link5_OverrideForStore = _settingService.SettingExists(nivoSliderSettings, x => x.Link5, storeScope);
            }

            return View("~/Plugins/Widgets.NivoSlider/Views/WidgetsNivoSlider/Configure.cshtml", model);
        }


[HttpPost]
        [AdminAuthorize]
        [ChildActionOnly]
        public ActionResult Configure(ConfigurationModel model)
        {
            //load settings for a chosen store scope
            var storeScope = this.GetActiveStoreScopeConfiguration(_storeService, _workContext);
            var nivoSliderSettings = _settingService.LoadSetting<NivoSliderSettings>(storeScope);
            nivoSliderSettings.Picture1Id = model.Picture1Id.ToString();
            nivoSliderSettings.Text1 = model.Text1;
            nivoSliderSettings.Link1 = model.Link1;
            nivoSliderSettings.Picture2Id = model.Picture2Id.ToString();
            nivoSliderSettings.Text2 = model.Text2;
            nivoSliderSettings.Link2 = model.Link2;
            nivoSliderSettings.Picture3Id = model.Picture3Id.ToString();
            nivoSliderSettings.Text3 = model.Text3;
            nivoSliderSettings.Link3 = model.Link3;
            nivoSliderSettings.Picture4Id = model.Picture4Id.ToString();
            nivoSliderSettings.Text4 = model.Text4;
            nivoSliderSettings.Link4 = model.Link4;
            nivoSliderSettings.Picture5Id = model.Picture5Id.ToString();
            nivoSliderSettings.Text5 = model.Text5;
            nivoSliderSettings.Link5 = model.Link5;

            /* We do not clear cache after each setting update.
             * This behavior can increase performance because cached settings will not be cleared
             * and loaded from database after each update */

            if (model.Picture1Id_OverrideForStore || storeScope == 0)
                _settingService.SaveSetting(nivoSliderSettings, x => x.Picture1Id, storeScope, false);
            else if (storeScope > 0)
                _settingService.DeleteSetting(nivoSliderSettings, x => x.Picture1Id, storeScope);
            
            if (model.Text1_OverrideForStore || storeScope == 0)
                _settingService.SaveSetting(nivoSliderSettings, x => x.Text1, storeScope, false);
            else if (storeScope > 0)
                _settingService.DeleteSetting(nivoSliderSettings, x => x.Text1, storeScope);
            
            if (model.Link1_OverrideForStore || storeScope == 0)
                _settingService.SaveSetting(nivoSliderSettings, x => x.Link1, storeScope, false);
            else if (storeScope > 0)
                _settingService.DeleteSetting(nivoSliderSettings, x => x.Link1, storeScope);
            
            if (model.Picture2Id_OverrideForStore || storeScope == 0)
                _settingService.SaveSetting(nivoSliderSettings, x => x.Picture2Id, storeScope, false);
            else if (storeScope > 0)
                _settingService.DeleteSetting(nivoSliderSettings, x => x.Picture2Id, storeScope);
            
            if (model.Text2_OverrideForStore || storeScope == 0)
                _settingService.SaveSetting(nivoSliderSettings, x => x.Text2, storeScope, false);
            else if (storeScope > 0)
                _settingService.DeleteSetting(nivoSliderSettings, x => x.Text2, storeScope);
            
            if (model.Link2_OverrideForStore || storeScope == 0)
                _settingService.SaveSetting(nivoSliderSettings, x => x.Link2, storeScope, false);
            else if (storeScope > 0)
                _settingService.DeleteSetting(nivoSliderSettings, x => x.Link2, storeScope);
            
            if (model.Picture3Id_OverrideForStore || storeScope == 0)
                _settingService.SaveSetting(nivoSliderSettings, x => x.Picture3Id, storeScope, false);
            else if (storeScope > 0)
                _settingService.DeleteSetting(nivoSliderSettings, x => x.Picture3Id, storeScope);
            
            if (model.Text3_OverrideForStore || storeScope == 0)
                _settingService.SaveSetting(nivoSliderSettings, x => x.Text3, storeScope, false);
            else if (storeScope > 0)
                _settingService.DeleteSetting(nivoSliderSettings, x => x.Text3, storeScope);
            
            if (model.Link3_OverrideForStore || storeScope == 0)
                _settingService.SaveSetting(nivoSliderSettings, x => x.Link3, storeScope, false);
            else if (storeScope > 0)
                _settingService.DeleteSetting(nivoSliderSettings, x => x.Link3, storeScope);
            
            if (model.Picture4Id_OverrideForStore || storeScope == 0)
                _settingService.SaveSetting(nivoSliderSettings, x => x.Picture4Id, storeScope, false);
            else if (storeScope > 0)
                _settingService.DeleteSetting(nivoSliderSettings, x => x.Picture4Id, storeScope);
            
            if (model.Text4_OverrideForStore || storeScope == 0)
                _settingService.SaveSetting(nivoSliderSettings, x => x.Text4, storeScope, false);
            else if (storeScope > 0)
                _settingService.DeleteSetting(nivoSliderSettings, x => x.Text4, storeScope);

            if (model.Link4_OverrideForStore || storeScope == 0)
                _settingService.SaveSetting(nivoSliderSettings, x => x.Link4, storeScope, false);
            else if (storeScope > 0)
                _settingService.DeleteSetting(nivoSliderSettings, x => x.Link4, storeScope);

            if (model.Picture5Id_OverrideForStore || storeScope == 0)
                _settingService.SaveSetting(nivoSliderSettings, x => x.Picture5Id, storeScope, false);
            else if (storeScope > 0)
                _settingService.DeleteSetting(nivoSliderSettings, x => x.Picture5Id, storeScope);

            if (model.Text5_OverrideForStore || storeScope == 0)
                _settingService.SaveSetting(nivoSliderSettings, x => x.Text5, storeScope, false);
            else if (storeScope > 0)
                _settingService.DeleteSetting(nivoSliderSettings, x => x.Text5, storeScope);

            if (model.Link5_OverrideForStore || storeScope == 0)
                _settingService.SaveSetting(nivoSliderSettings, x => x.Link5, storeScope, false);
            else if (storeScope > 0)
                _settingService.DeleteSetting(nivoSliderSettings, x => x.Link5, storeScope);
            
            //now clear settings cache
            _settingService.ClearCache();

            //localization. no multi-store support for localization yet.
            foreach (var localized in model.Locales)
            {
                nivoSliderSettings.SaveLocalizedSetting(x => x.Picture1Id,
                    localized.LanguageId,
                    localized.Picture1Id.ToString());
                
                nivoSliderSettings.SaveLocalizedSetting(x => x.Text1,
                    localized.LanguageId,
                    localized.Text1);

                nivoSliderSettings.SaveLocalizedSetting(x => x.Link1,
                    localized.LanguageId,
                    localized.Link1);

                nivoSliderSettings.SaveLocalizedSetting(x => x.Picture2Id,
                    localized.LanguageId,
                    localized.Picture2Id.ToString());

                nivoSliderSettings.SaveLocalizedSetting(x => x.Text2,
                    localized.LanguageId,
                    localized.Text2);

                nivoSliderSettings.SaveLocalizedSetting(x => x.Link2,
                    localized.LanguageId,
                    localized.Link2);

                nivoSliderSettings.SaveLocalizedSetting(x => x.Picture3Id,
                    localized.LanguageId,
                    localized.Picture3Id.ToString());

                nivoSliderSettings.SaveLocalizedSetting(x => x.Text3,
                    localized.LanguageId,
                    localized.Text3);

                nivoSliderSettings.SaveLocalizedSetting(x => x.Link3,
                    localized.LanguageId,
                    localized.Link3);

                nivoSliderSettings.SaveLocalizedSetting(x => x.Picture4Id,
                    localized.LanguageId,
                    localized.Picture4Id.ToString());

                nivoSliderSettings.SaveLocalizedSetting(x => x.Text4,
                    localized.LanguageId,
                    localized.Text4);

                nivoSliderSettings.SaveLocalizedSetting(x => x.Link4,
                    localized.LanguageId,
                    localized.Link4);

                nivoSliderSettings.SaveLocalizedSetting(x => x.Picture5Id,
                    localized.LanguageId,
                    localized.Picture5Id.ToString());

                nivoSliderSettings.SaveLocalizedSetting(x => x.Text5,
                    localized.LanguageId,
                    localized.Text5);

                nivoSliderSettings.SaveLocalizedSetting(x => x.Link5,
                    localized.LanguageId,
                    localized.Link5);
            }

            SuccessNotification(_localizationService.GetResource("Admin.Plugins.Saved"));
            return Configure();
        }


[ChildActionOnly]
        public ActionResult PublicInfo(string widgetZone, object additionalData = null)
        {
            var nivoSliderSettings = _settingService.LoadSetting<NivoSliderSettings>(_storeContext.CurrentStore.Id);
            var model = new PublicInfoModel();

            int pic1Id = 0;
            int pic2Id = 0;
            int pic3Id = 0;
            int pic4Id = 0;
            int pic5Id = 0;
            int.TryParse(nivoSliderSettings.Picture1Id, out pic1Id);
            int.TryParse(nivoSliderSettings.Picture2Id, out pic2Id);
            int.TryParse(nivoSliderSettings.Picture3Id, out pic3Id);
            int.TryParse(nivoSliderSettings.Picture4Id, out pic4Id);
            int.TryParse(nivoSliderSettings.Picture5Id, out pic5Id);
            pic1Id = int.Parse(nivoSliderSettings.GetLocalizedSetting(x => x.Picture1Id, _workContext.WorkingLanguage.Id));
            pic2Id = int.Parse(nivoSliderSettings.GetLocalizedSetting(x => x.Picture2Id, _workContext.WorkingLanguage.Id));
            pic3Id = int.Parse(nivoSliderSettings.GetLocalizedSetting(x => x.Picture3Id, _workContext.WorkingLanguage.Id));
            pic4Id = int.Parse(nivoSliderSettings.GetLocalizedSetting(x => x.Picture4Id, _workContext.WorkingLanguage.Id));
            pic5Id = int.Parse(nivoSliderSettings.GetLocalizedSetting(x => x.Picture5Id, _workContext.WorkingLanguage.Id));
            pic1Id = pic1Id == 0 ? int.Parse(nivoSliderSettings.Picture1Id) : pic1Id;
            pic2Id = pic2Id == 0 ? int.Parse(nivoSliderSettings.Picture2Id) : pic2Id;
            pic3Id = pic3Id == 0 ? int.Parse(nivoSliderSettings.Picture3Id) : pic3Id;
            pic4Id = pic4Id == 0 ? int.Parse(nivoSliderSettings.Picture4Id) : pic4Id;
            pic5Id = pic5Id == 0 ? int.Parse(nivoSliderSettings.Picture5Id) : pic5Id;

            
            model.Picture1Url = GetPictureUrl(pic1Id);
            model.Text1 = nivoSliderSettings.GetLocalizedSetting(x => x.Text1, _workContext.WorkingLanguage.Id);
            model.Link1 = nivoSliderSettings.GetLocalizedSetting(x => x.Link1, _workContext.WorkingLanguage.Id);

            model.Picture2Url = GetPictureUrl(pic2Id);
            model.Text2 = nivoSliderSettings.GetLocalizedSetting(x => x.Text2, _workContext.WorkingLanguage.Id);
            model.Link2 = nivoSliderSettings.GetLocalizedSetting(x => x.Link2, _workContext.WorkingLanguage.Id);

            model.Picture3Url = GetPictureUrl(pic3Id);
            model.Text3 = nivoSliderSettings.GetLocalizedSetting(x => x.Text3, _workContext.WorkingLanguage.Id);
            model.Link3 = nivoSliderSettings.GetLocalizedSetting(x => x.Link3, _workContext.WorkingLanguage.Id);

            model.Picture4Url = GetPictureUrl(pic4Id);
            model.Text4 = nivoSliderSettings.GetLocalizedSetting(x => x.Text4, _workContext.WorkingLanguage.Id);
            model.Link4 = nivoSliderSettings.GetLocalizedSetting(x => x.Link4, _workContext.WorkingLanguage.Id);

            model.Picture5Url = GetPictureUrl(pic5Id);
            model.Text5 = nivoSliderSettings.GetLocalizedSetting(x => x.Text5, _workContext.WorkingLanguage.Id);
            model.Link5 = nivoSliderSettings.GetLocalizedSetting(x => x.Link5, _workContext.WorkingLanguage.Id);

            if (string.IsNullOrEmpty(model.Picture1Url) && string.IsNullOrEmpty(model.Picture2Url) &&
                string.IsNullOrEmpty(model.Picture3Url) && string.IsNullOrEmpty(model.Picture4Url) &&
                string.IsNullOrEmpty(model.Picture5Url))
                //no pictures uploaded
                return Content("");


            return View("~/Plugins/Widgets.NivoSlider/Views/WidgetsNivoSlider/PublicInfo.cshtml", model);
        }


[code]@{
    Layout = "";
}
@model ConfigurationModel
@using Nop.Plugin.Widgets.NivoSlider.Models
@using Nop.Web.Framewor
7 years ago
@{
    Layout = "";
}
@model ConfigurationModel
@using Nop.Plugin.Widgets.NivoSlider.Models
@using Nop.Web.Framework;
@Html.Action("StoreScopeConfiguration", "Setting", new { area = "Admin" })
@using (Html.BeginForm())
{
    @Html.AntiForgeryToken()
    @(Html.LocalizedEditor<ConfigurationModel, ConfigurationModel.ConfigurationLocalizedModel>("plugin-settings-localized",
    @<div>
    <fieldset>
        <legend><strong>@T("Plugins.Widgets.NivoSlider.Picture1")</strong></legend>
        <table class="adminContent">
            <tr>
                <td class="adminTitle">
                    @Html.OverrideStoreCheckboxFor(model => model.Picture1Id_OverrideForStore, model => model.Locales[item].Picture1Id, Model.ActiveStoreScopeConfiguration)
                    @Html.NopLabelFor(model => model.Locales[item].Picture1Id):
                </td>
                <td class="adminData">
                    @Html.EditorFor(model => model.Locales[item].Picture1Id)
                    @Html.ValidationMessageFor(model => model.Locales[item].Picture1Id)
                </td>
            </tr>
            <tr>
                <td class="adminTitle">
                    @Html.OverrideStoreCheckboxFor(model => model.Text1_OverrideForStore, model => model.Locales[item].Text1, Model.ActiveStoreScopeConfiguration)
                    @Html.NopLabelFor(model => model.Locales[item].Text1):
                </td>
                <td class="adminData">
                    @Html.EditorFor(model => model.Locales[item].Text1)
                    @Html.ValidationMessageFor(model => model.Locales[item].Text1)
                </td>
            </tr>
            <tr>
                <td class="adminTitle">
                    @Html.OverrideStoreCheckboxFor(model => model.Link1_OverrideForStore, model => model.Locales[item].Link1, Model.ActiveStoreScopeConfiguration)
                    @Html.NopLabelFor(model => model.Locales[item].Link1):
                </td>
                <td class="adminData">
                    @Html.EditorFor(model => model.Locales[item].Link1)
                    @Html.ValidationMessageFor(model => model.Locales[item].Link1)
                </td>
            </tr>
        </table>
    </fieldset>
    <br />
    <fieldset>
        <legend><strong>@T("Plugins.Widgets.NivoSlider.Picture2")</strong></legend>
        <table class="adminContent">
            <tr>
                <td class="adminTitle">
                    @Html.OverrideStoreCheckboxFor(model => model.Picture2Id_OverrideForStore, model => model.Locales[item].Picture2Id, Model.ActiveStoreScopeConfiguration)
                    @Html.NopLabelFor(model => model.Locales[item].Picture2Id):
                </td>
                <td class="adminData">
                    @Html.EditorFor(model => model.Locales[item].Picture2Id)
                    @Html.ValidationMessageFor(model => model.Locales[item].Picture2Id)
                </td>
            </tr>
            <tr>
                <td class="adminTitle">
                    @Html.OverrideStoreCheckboxFor(model => model.Text2_OverrideForStore, model => model.Locales[item].Text2, Model.ActiveStoreScopeConfiguration)
                    @Html.NopLabelFor(model => model.Locales[item].Text2):
                </td>
                <td class="adminData">
                    @Html.EditorFor(model => model.Locales[item].Text2)
                    @Html.ValidationMessageFor(model => model.Locales[item].Text2)
                </td>
            </tr>
            <tr>
                <td class="adminTitle">
                    @Html.OverrideStoreCheckboxFor(model => model.Link2_OverrideForStore, model => model.Locales[item].Link2, Model.ActiveStoreScopeConfiguration)
                    @Html.NopLabelFor(model => model.Locales[item].Link2):
                </td>
                <td class="adminData">
                    @Html.EditorFor(model => model.Locales[item].Link2)
                    @Html.ValidationMessageFor(model => model.Locales[item].Link2)
                </td>
            </tr>
        </table>
    </fieldset>
    <br />
    <fieldset>
            <legend><strong>@T("Plugins.Widgets.NivoSlider.Picture3")</strong></legend>
            <table class="adminContent">
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Picture3Id_OverrideForStore, model => model.Locales[item].Picture3Id, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Locales[item].Picture3Id):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Locales[item].Picture3Id)
                        @Html.ValidationMessageFor(model => model.Locales[item].Picture3Id)
                    </td>
                </tr>
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Text3_OverrideForStore, model => model.Locales[item].Text3, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Locales[item].Text3):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Locales[item].Text3)
                        @Html.ValidationMessageFor(model => model.Locales[item].Text3)
                    </td>
                </tr>
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Link3_OverrideForStore, model => model.Locales[item].Link3, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Locales[item].Link3):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Locales[item].Link3)
                        @Html.ValidationMessageFor(model => model.Locales[item].Link3)
                    </td>
                </tr>
            </table>
        </fieldset>
    <br />
    <fieldset>
            <legend><strong>@T("Plugins.Widgets.NivoSlider.Picture4")</strong></legend>
            <table class="adminContent">
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Picture4Id_OverrideForStore, model => model.Locales[item].Picture4Id, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Locales[item].Picture4Id):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Locales[item].Picture4Id)
                        @Html.ValidationMessageFor(model => model.Locales[item].Picture4Id)
                    </td>
                </tr>
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Text4_OverrideForStore, model => model.Locales[item].Text4, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Locales[item].Text4):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Locales[item].Text4)
                        @Html.ValidationMessageFor(model => model.Locales[item].Text4)
                    </td>
                </tr>
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Link4_OverrideForStore, model => model.Locales[item].Link4, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Locales[item].Link4):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Locales[item].Link4)
                        @Html.ValidationMessageFor(model => model.Locales[item].Link4)
                    </td>
                </tr>
            </table>
        </fieldset>
    <br />
    <fieldset>
            <legend><strong>@T("Plugins.Widgets.NivoSlider.Picture5")</strong></legend>
            <table class="adminContent">
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Picture5Id_OverrideForStore, model => model.Locales[item].Picture5Id, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Locales[item].Picture5Id):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Locales[item].Picture5Id)
                        @Html.ValidationMessageFor(model => model.Locales[item].Picture5Id)
                    </td>
                </tr>
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Text5_OverrideForStore, model => model.Locales[item].Text5, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Locales[item].Text5):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Locales[item].Text5)
                        @Html.ValidationMessageFor(model => model.Locales[item].Text5)
                    </td>
                </tr>
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Link5_OverrideForStore, model => model.Locales[item].Link5, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Locales[item].Link5):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Locales[item].Link5)
                        @Html.ValidationMessageFor(model => model.Locales[item].Link5)
                    </td>
                </tr>
                <tr>
                    <td colspan="2">
                        @Html.HiddenFor(model => model.Locales[item].LanguageId)
                    </td>
                </tr>
            </table>
        </fieldset>
    <br /></div>
    ,
    @<div>
    <fieldset>
    <legend><strong>@T("Plugins.Widgets.NivoSlider.Picture1")</strong></legend>
    <table class="adminContent">
        <tr>
            <td class="adminTitle">
                @Html.OverrideStoreCheckboxFor(model => model.Picture1Id_OverrideForStore, model => model.Picture1Id, Model.ActiveStoreScopeConfiguration)
                @Html.NopLabelFor(model => model.Picture1Id):
            </td>
            <td class="adminData">
                @Html.EditorFor(model => model.Picture1Id)
                @Html.ValidationMessageFor(model => model.Picture1Id)
            </td>
        </tr>
        <tr>
            <td class="adminTitle">
                @Html.OverrideStoreCheckboxFor(model => model.Text1_OverrideForStore, model => model.Text1, Model.ActiveStoreScopeConfiguration)
                @Html.NopLabelFor(model => model.Text1):
            </td>
            <td class="adminData">
                @Html.EditorFor(model => model.Text1)
                @Html.ValidationMessageFor(model => model.Text1)
            </td>
        </tr>
        <tr>
            <td class="adminTitle">
                @Html.OverrideStoreCheckboxFor(model => model.Link1_OverrideForStore, model => model.Link1, Model.ActiveStoreScopeConfiguration)
                @Html.NopLabelFor(model => model.Link1):
            </td>
            <td class="adminData">
                @Html.EditorFor(model => model.Link1)
                @Html.ValidationMessageFor(model => model.Link1)
            </td>
        </tr>
    </table>
</fieldset>
    <br />
    <fieldset>
            <legend><strong>@T("Plugins.Widgets.NivoSlider.Picture2")</strong></legend>
            <table class="adminContent">
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Picture2Id_OverrideForStore, model => model.Picture2Id, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Picture2Id):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Picture2Id)
                        @Html.ValidationMessageFor(model => model.Picture2Id)
                    </td>
                </tr>
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Text2_OverrideForStore, model => model.Text2, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Text2):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Text2)
                        @Html.ValidationMessageFor(model => model.Text2)
                    </td>
                </tr>
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Link2_OverrideForStore, model => model.Link2, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Link2):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Link2)
                        @Html.ValidationMessageFor(model => model.Link2)
                    </td>
                </tr>
            </table>
        </fieldset>
    <br />
    <fieldset>
            <legend><strong>@T("Plugins.Widgets.NivoSlider.Picture3")</strong></legend>
            <table class="adminContent">
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Picture3Id_OverrideForStore, model => model.Picture3Id, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Picture3Id):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Picture3Id)
                        @Html.ValidationMessageFor(model => model.Picture3Id)
                    </td>
                </tr>
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Text3_OverrideForStore, model => model.Text3, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Text3):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Text3)
                        @Html.ValidationMessageFor(model => model.Text3)
                    </td>
                </tr>
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Link3_OverrideForStore, model => model.Link3, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Link3):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Link3)
                        @Html.ValidationMessageFor(model => model.Link3)
                    </td>
                </tr>
            </table>
        </fieldset>
    <br />
    <fieldset>
            <legend><strong>@T("Plugins.Widgets.NivoSlider.Picture4")</strong></legend>
            <table class="adminContent">
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Picture4Id_OverrideForStore, model => model.Picture4Id, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Picture4Id):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Picture4Id)
                        @Html.ValidationMessageFor(model => model.Picture4Id)
                    </td>
                </tr>
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Text4_OverrideForStore, model => model.Text4, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Text4):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Text4)
                        @Html.ValidationMessageFor(model => model.Text4)
                    </td>
                </tr>
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Link4_OverrideForStore, model => model.Link4, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Link4):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Link4)
                        @Html.ValidationMessageFor(model => model.Link4)
                    </td>
                </tr>
            </table>
        </fieldset>
    <br />
    <fieldset>
            <legend><strong>@T("Plugins.Widgets.NivoSlider.Picture5")</strong></legend>
            <table class="adminContent">
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Picture5Id_OverrideForStore, model => model.Picture5Id, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Picture5Id):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Picture5Id)
                        @Html.ValidationMessageFor(model => model.Picture5Id)
                    </td>
                </tr>
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Text5_OverrideForStore, model => model.Text5, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Text5):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Text5)
                        @Html.ValidationMessageFor(model => model.Text5)
                    </td>
                </tr>
                <tr>
                    <td class="adminTitle">
                        @Html.OverrideStoreCheckboxFor(model => model.Link5_OverrideForStore, model => model.Link5, Model.ActiveStoreScopeConfiguration)
                        @Html.NopLabelFor(model => model.Link5):
                    </td>
                    <td class="adminData">
                        @Html.EditorFor(model => model.Link5)
                        @Html.ValidationMessageFor(model => model.Link5)
                    </td>
                </tr>
            </table>
        </fieldset>
    <br /></div>
    ,
    //localizable settings per store (overrriden store settings) are not supported yet
    true
    ))
    <table class="adminContent">
        <tr>
            <td colspan="2">
                <input type="submit" name="save" class="k-button" value="@T("Admin.Common.Save")" />
            </td>
        </tr>
    </table>
}
7 years ago
i shared this code for multilanguage nivoslider support.
4 years ago
Here is plugin source code which is contributed by weaponx
This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.