pub trait RuniqueUser: Send + Sync {
fn user_id(&self) -> crate::utils::pk::Pk;
fn username(&self) -> &str;
fn email(&self) -> &str;
fn password_hash(&self) -> &str;
fn is_active(&self) -> bool;
fn is_staff(&self) -> bool;
fn is_superuser(&self) -> bool;
fn roles(&self) -> Vec<String> {
vec![]
}
fn can_access_admin(&self) -> bool {
self.is_active() && (self.is_staff() || self.is_superuser())
}
}