@namespace Oqtane.Modules.Admin.Sites
@inherits ModuleBase
@inject NavigationManager NavigationManager
@inject ITenantService TenantService
@inject IAliasService AliasService
@inject ISiteService SiteService
@inject IThemeService ThemeService
@if (tenants == null)
{
Loading...
}
else
{
Cancel
}
@code {
public override SecurityAccessLevel SecurityAccessLevel { get { return SecurityAccessLevel.Host; } }
Dictionary themes = new Dictionary();
Dictionary panelayouts = new Dictionary();
List tenants;
string tenantid = "";
string name = "";
string url = "";
string logo = "";
string themetype;
string layouttype;
protected override async Task OnInitializedAsync()
{
tenants = await TenantService.GetTenantsAsync();
url = PageState.Alias.Name;
themes = ThemeService.GetThemeTypes(PageState.Themes);
panelayouts = ThemeService.GetPaneLayoutTypes(PageState.Themes);
}
private async Task SaveSite()
{
Site site = new Site();
site.Name = name;
site.Logo = (logo == null ? "" : logo);
site.DefaultThemeType = themetype;
site.DefaultLayoutType = (layouttype == null ? "" : layouttype);
site = await SiteService.AddSiteAsync(site);
Alias alias = new Alias();
alias.Name = url;
alias.TenantId = int.Parse(tenantid);
alias.SiteId = site.SiteId;
await AliasService.AddAliasAsync(alias);
NavigationManager.NavigateTo("http://" + url, true);
}
}