Implement models::instance::Instance.has_admin
This commit is contained in:
parent
a7774444fe
commit
f8372f6383
@ -1,7 +1,8 @@
|
||||
use diesel;
|
||||
use diesel::{ QueryDsl, RunQueryDsl, ExpressionMethods, PgConnection };
|
||||
use std::iter::Iterator;
|
||||
use schema::instances;
|
||||
use schema::{instances, users};
|
||||
use models::user::User;
|
||||
|
||||
#[derive(Identifiable, Queryable)]
|
||||
pub struct Instance {
|
||||
@ -54,6 +55,10 @@ impl Instance {
|
||||
pub fn block(&self) {}
|
||||
|
||||
pub fn has_admin(&self, conn: &PgConnection) -> bool {
|
||||
false
|
||||
users::table.filter(users::instance_id.eq(self.id))
|
||||
.filter(users::is_admin.eq(true))
|
||||
.load::<User>(conn)
|
||||
.expect("Couldn't load admins")
|
||||
.len() > 0
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user