diff options
Diffstat (limited to 'Pages/Component/Titlebar.razor')
| -rw-r--r-- | Pages/Component/Titlebar.razor | 93 |
1 files changed, 52 insertions, 41 deletions
diff --git a/Pages/Component/Titlebar.razor b/Pages/Component/Titlebar.razor index 48257b2..521fb46 100644 --- a/Pages/Component/Titlebar.razor +++ b/Pages/Component/Titlebar.razor @@ -1,5 +1,7 @@ @inject IJSRuntime jsRuntime -@inject IUserService userService +@inject NavigationManager nav +@inject HBSession session; +@* @inject IUserService userService *@ <script suppress-error="BL9992"> async function login() { @@ -40,48 +42,57 @@ } </script> -<AuthorizeView> - <Authorized> - <div id="navbar"> - <p class="mobile">HyperBooru</p> - <a class="mobile menu-button" href="javascript:toggleMobileMenu();">☰</a> +@if(!IsLoginPage) { + <div id="navbar"> + <p class="mobile">HyperBooru</p> + <a class="mobile menu-button" href="javascript:toggleMobileMenu();">☰</a> - <a class="desktop" href="/">Home</a> - <a class="desktop" href="/TagDefinitions">Tags</a> - <a class="desktop" href="/Gallery?ingest=true">Ingest</a> - <a class="desktop" href="/Upload">Upload</a> - <a class="desktop" href="javascript:;" @onclick=@(() => aboutDialog.Show())>About</a> + <a class="desktop" href="/">Home</a> + <a class="desktop" href="/TagDefinitions">Tags</a> + <a class="desktop" href="/Gallery?ingest=true">Ingest</a> + <a class="desktop" href="/Upload">Upload</a> + @* <a class="desktop" href="javascript:;" @onclick=@(() => aboutDialog.Show())>About</a> *@ + <a class="desktop" href="javascript:;">About</a> - <p class="desktop" id="nsfw-label">NSFW</p> - <div id="nsfw-switch" class="desktop"> - <NsfwSwitch/> - </div> - <form action="/Gallery" method="get" class="desktop"> - <input type="text" name="q" placeholder="Search"/> - </form> - <a class="desktop" href="javascript:logout();">Logout</a> - </div> - <AboutDialog @ref=aboutDialog/> - </Authorized> - <NotAuthorized> - <div id="navbar"> - <h2>Login</h2> - <form class="login" action="javascript:login();"> - <input - id="username" - placeholder="Username" - type="text" - autocorrect="off" - autocapitalize="off" - autocomplete="off" - autofocus/> - <input id="password" placeholder="Password" type="password"/> - </form> - <a href="javascript:login();">Login</a> - </div> - </NotAuthorized> -</AuthorizeView> + <p class="desktop" id="nsfw-label">NSFW</p> + <div id="nsfw-switch" class="desktop"> + <NsfwSwitch/> + </div> + <form action="/Gallery" method="get" class="desktop"> + <input type="text" name="q" placeholder="Search"/> + </form> + <a class="desktop" href="javascript:logout();">Logout</a> + </div> + @* <AboutDialog @ref=aboutDialog/> *@ +} else { + <div id="navbar"> + <h2>Login</h2> + <form class="login" action="javascript:login();"> + <input + id="username" + placeholder="Username" + type="text" + autocorrect="off" + autocapitalize="off" + autocomplete="off" + autofocus + @bind=Username/> + <input id="password" placeholder="Password" type="password" @bind=Password/> + </form> + <a @onclick=Login>Login</a> + </div> +} @code { - private AboutDialog aboutDialog; + // private AboutDialog aboutDialog; + + public string Username { get; set; } = ""; + public string Password { get; set; } = ""; + + private bool IsLoginPage => + new Uri(nav.Uri).AbsolutePath.Equals("/Login", StringComparison.OrdinalIgnoreCase); + + private async void Login() { + await session.LoginAsync(Username, Password); + } } |
