Merge pull request #5483 from sbwalker/dev

add authorization convenience methods to ModuleBase
This commit is contained in:
Shaun Walker
2025-08-13 08:18:33 -04:00
committed by GitHub

View File

@ -8,6 +8,7 @@ using Microsoft.AspNetCore.Components;
using Microsoft.JSInterop; using Microsoft.JSInterop;
using Oqtane.Enums; using Oqtane.Enums;
using Oqtane.Models; using Oqtane.Models;
using Oqtane.Security;
using Oqtane.Services; using Oqtane.Services;
using Oqtane.Shared; using Oqtane.Shared;
using Oqtane.UI; using Oqtane.UI;
@ -147,6 +148,7 @@ namespace Oqtane.Modules
} }
// fingerprint hash code for static assets // fingerprint hash code for static assets
public string Fingerprint public string Fingerprint
{ {
get get
@ -155,6 +157,18 @@ namespace Oqtane.Modules
} }
} }
// authorization methods
public bool IsAuthorizedRole(string roleName)
{
return UserSecurity.IsAuthorized(PageState.User, roleName);
}
public bool IsAuthorizedPermission(string permissionName)
{
return UserSecurity.IsAuthorized(PageState.User, permissionName, ModuleState.PermissionList);
}
// url methods // url methods
// navigate url // navigate url
@ -417,6 +431,9 @@ namespace Oqtane.Modules
await interop.ScrollTo(0, 0, "smooth"); await interop.ScrollTo(0, 0, "smooth");
} }
// token replace methods
public string ReplaceTokens(string content) public string ReplaceTokens(string content)
{ {
return ReplaceTokens(content, null); return ReplaceTokens(content, null);
@ -501,6 +518,7 @@ namespace Oqtane.Modules
} }
// date conversion methods // date conversion methods
public DateTime? UtcToLocal(DateTime? datetime) public DateTime? UtcToLocal(DateTime? datetime)
{ {
// Early return if input is null // Early return if input is null