net3000.adminservices
1.0.6
dotnet add package net3000.adminservices --version 1.0.6
NuGet\Install-Package net3000.adminservices -Version 1.0.6
<PackageReference Include="net3000.adminservices" Version="1.0.6" />
<PackageVersion Include="net3000.adminservices" Version="1.0.6" />
<PackageReference Include="net3000.adminservices" />
paket add net3000.adminservices --version 1.0.6
#r "nuget: net3000.adminservices, 1.0.6"
#:package net3000.adminservices@1.0.6
#addin nuget:?package=net3000.adminservices&version=1.0.6
#tool nuget:?package=net3000.adminservices&version=1.0.6
AdminServices
Overview
The AdminServices library bundles helper logic for Net3000 administrator portals. It coordinates access to account data, mailing list records, and configuration in order to assemble admin dashboards, build navigation menus, and hydrate email recipient lists for campaign reporting.
Public API
<details> <summary>net3000.AdminServices.adminlib</summary>
| Member | Summary | Parameters |
|---|---|---|
Task<List<menu>> adminMenus(string? appCode) |
Admin Menus. | appCode (string?) |
</details>
Usage Notes
- Set the
adminlib.myConfig,accountsDB, andaccountproperties before invoking any lookup to ensure the library is scoped to the correct tenant.
License
This library is proprietary to Net3000. Redistribution or use outside Net3000.ca solutions is not permitted.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Google.Apis.MapsPlaces.v1 (>= 1.73.0.4099)
- net3000.common (>= 10.0.21)
- net3000.common.models (>= 1.0.15)
- System.IdentityModel.Tokens.Jwt (>= 8.17.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
1.0.6: ReadContext session self-heal — an expired user_team_token for an account-based user is now revived from the still-valid ASP.NET principal instead of hard-returning a 401 that only a manual sign-out/sign-in could clear (Classy CC-Auth "Unauthorized" reports). The sliding-expiry refresh now fires on every authenticated request (the old 20-minutes-before-expiry window almost never triggered, so 12h tokens simply died). Stale user_team_token cookies are dropped on the remaining fail-closed paths (disabled user, expired client-level token) so browser session restore cannot re-present a dead token. Client-level users (account NULL) still fail closed by design.
1.0.5: Demo-account write-protection helpers (issue #1330). AdminControllerBase now exposes IsDemoAccountContext / IsCurrentUserPlatformStaff / IsDemoWriteBlocked and DemoWriteBlockedResponse() so admin controllers can short-circuit non-staff writes to demo accounts with a clean 403, and ReadContext publishes IsDemoAccount / IsPlatformStaff / DemoWriteBlocked to ViewData for the shared badge/banner partials. Net3000 staff (platformAccountId) pass through with full controls.
1.0.4: Adds shared AdminControllerBase — owns the user_team_token auth flow, CheckTeamPermissions, and lib/adminlib bootstrapping so admin apps (net3000.core, ClassyAdmin) inherit one base controller instead of copy-pasting ReadContext(). Apps override VirtualDirectory / IsAccountAllowed / TryFallbackAuthAsync for app-specific behavior.