1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
use sea_orm::prelude::*;
use serde::{Deserialize, Serialize};
/// Enum for the different roles that a player could have used to
/// determine their permissions to access different server
/// functionality
#[derive(
Deserialize, Serialize, Debug, Clone, PartialEq, PartialOrd, Ord, Eq, EnumIter, DeriveActiveEnum,
)]
#[sea_orm(rs_type = "u8", db_type = "TinyUnsigned")]
#[repr(u8)]
pub enum PlayerRole {
/// The default no extra permissions level
#[sea_orm(num_value = 0)]
Default = 0,
/// Administrator role which can be added and removed by
/// super admin.
#[sea_orm(num_value = 1)]
Admin = 1,
/// Super admin role which is created on startup and used to
/// manage other user roles
#[sea_orm(num_value = 2)]
SuperAdmin = 2,
}