Try your search with a different keyword or use * as a wildcard.
using Nop.Core;
using Nop.Core.Caching;
using Nop.Core.Infrastructure;
using Nop.Web.Areas.Admin.Infrastructure.Cache;
namespace Nop.Web.Areas.Admin.Helpers;
///
/// Summernote helper
///
public partial class SummernoteHelper : ISummernoteHelper
{
protected readonly INopFileProvider _nopFileProvider;
protected readonly IStaticCacheManager _staticCacheManager;
protected readonly IWorkContext _workContext;
public SummernoteHelper(
INopFileProvider nopFileProvider,
IStaticCacheManager staticCacheManager,
IWorkContext workContext)
{
_nopFileProvider = nopFileProvider;
_staticCacheManager = staticCacheManager;
_workContext = workContext;
}
///
/// Get Summernote language name for current language
///
///
/// A task that represents the asynchronous operation
/// The task result contains the Summernote language name
///
public virtual async Task GetRichEditorLanguageAsync()
{
var languageCulture = (await _workContext.GetWorkingLanguageAsync()).LanguageCulture;
var cacheKey = _staticCacheManager.PrepareKeyForDefaultCache(NopModelCacheDefaults.SummernoteLanguageKey,
languageCulture);
return await _staticCacheManager.GetAsync(cacheKey, () =>
{
var langFile = $"summernote-{languageCulture}.min.js";
var directoryPath = _nopFileProvider.GetAbsolutePath(@"lib_npm\summernote\lang");
var fileExists = _nopFileProvider.FileExists($"{directoryPath}\\{langFile}");
return fileExists ? languageCulture : string.Empty;
});
}
}