admin pages
Pages can now be locked behind admin privileges
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
mod pages;
|
||||
mod auth;
|
||||
use crate::pages::*;
|
||||
mod pages;
|
||||
use crate::auth::ProtectedRoute;
|
||||
use crate::pages::*;
|
||||
use yew::prelude::*;
|
||||
use yew_router::prelude::*;
|
||||
|
||||
@@ -23,6 +23,8 @@ enum Route {
|
||||
AllUsers,
|
||||
#[at("/users/:id")]
|
||||
UserByID { id: i16 },
|
||||
#[at("/denied")]
|
||||
PermissionDenied,
|
||||
#[not_found]
|
||||
#[at("/404")]
|
||||
NotFound,
|
||||
@@ -30,43 +32,44 @@ enum Route {
|
||||
|
||||
fn switch(route: Route) -> Html {
|
||||
match route {
|
||||
Route::Home => html! {
|
||||
<ProtectedRoute>
|
||||
Route::Home => html! {
|
||||
<ProtectedRoute admin_page={false}>
|
||||
<basic_pages::Home/>
|
||||
</ProtectedRoute>
|
||||
},
|
||||
Route::NotFound => html! { <basic_pages::NotFound/> },
|
||||
Route::Ticket => html! {
|
||||
<ProtectedRoute>
|
||||
<ticket::SubmitTicket/>
|
||||
Route::Ticket => html! {
|
||||
<ProtectedRoute admin_page={false}>
|
||||
<ticket::SubmitTicket/>
|
||||
</ProtectedRoute>
|
||||
},
|
||||
Route::TicketById { id } => html! {
|
||||
<ProtectedRoute>
|
||||
<ticket::TicketByID {id}/>
|
||||
Route::TicketById { id } => html! {
|
||||
<ProtectedRoute admin_page={true}>
|
||||
<ticket::TicketByID {id}/>
|
||||
</ProtectedRoute>
|
||||
},
|
||||
Route::AllTickets => html! {
|
||||
<ProtectedRoute>
|
||||
<ticket::AllTickets/>
|
||||
Route::AllTickets => html! {
|
||||
<ProtectedRoute admin_page={false}>
|
||||
<ticket::AllTickets/>
|
||||
</ProtectedRoute>
|
||||
},
|
||||
Route::Register => html! {
|
||||
<ProtectedRoute>
|
||||
<user::Register/>
|
||||
Route::Register => html! {
|
||||
<ProtectedRoute admin_page={true}>
|
||||
<user::Register/>
|
||||
</ProtectedRoute>
|
||||
},
|
||||
Route::Login => html! { <user::Login/> },
|
||||
Route::AllUsers => html! {
|
||||
<ProtectedRoute>
|
||||
<ProtectedRoute admin_page={true}>
|
||||
<user::AllUsers/>
|
||||
</ProtectedRoute>
|
||||
},
|
||||
Route::UserByID { id } => html! {
|
||||
<ProtectedRoute>
|
||||
<user::UserByID {id}/>
|
||||
Route::UserByID { id } => html! {
|
||||
<ProtectedRoute admin_page={true}>
|
||||
<user::UserByID {id}/>
|
||||
</ProtectedRoute>
|
||||
},
|
||||
Route::PermissionDenied => html! { <basic_pages::PermissionDenied/> },
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user