mirror of
https://github.com/LemmyNet/lemmy.git
synced 2024-11-28 23:31:21 +00:00
address comments
This commit is contained in:
parent
809095f1fc
commit
74668f7e17
10 changed files with 25 additions and 12 deletions
|
@ -92,7 +92,6 @@ test("Create a post", async () => {
|
||||||
var block_instance_params: AdminBlockInstanceParams = {
|
var block_instance_params: AdminBlockInstanceParams = {
|
||||||
instance: "lemmy-alpha",
|
instance: "lemmy-alpha",
|
||||||
block: true,
|
block: true,
|
||||||
reason: undefined,
|
|
||||||
};
|
};
|
||||||
await epsilon.adminBlockInstance(block_instance_params);
|
await epsilon.adminBlockInstance(block_instance_params);
|
||||||
|
|
||||||
|
|
|
@ -205,7 +205,6 @@ async function allowInstance(api: LemmyHttp, instance: string) {
|
||||||
const params: AdminAllowInstanceParams = {
|
const params: AdminAllowInstanceParams = {
|
||||||
instance,
|
instance,
|
||||||
allow: true,
|
allow: true,
|
||||||
reason: undefined,
|
|
||||||
};
|
};
|
||||||
// Ignore errors from duplicate allows (because setup gets called for each test file)
|
// Ignore errors from duplicate allows (because setup gets called for each test file)
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -48,7 +48,7 @@ pub async fn admin_block_instance(
|
||||||
admin_person_id: local_user_view.person.id,
|
admin_person_id: local_user_view.person.id,
|
||||||
blocked: data.block,
|
blocked: data.block,
|
||||||
reason: data.reason.clone(),
|
reason: data.reason.clone(),
|
||||||
expires: data.expires,
|
when_: data.expires,
|
||||||
};
|
};
|
||||||
AdminBlockInstance::insert(&mut context.pool(), &mod_log_form).await?;
|
AdminBlockInstance::insert(&mut context.pool(), &mod_log_form).await?;
|
||||||
|
|
||||||
|
|
|
@ -49,7 +49,7 @@ diesel::table! {
|
||||||
admin_person_id -> Int4,
|
admin_person_id -> Int4,
|
||||||
allowed -> Bool,
|
allowed -> Bool,
|
||||||
reason -> Nullable<Text>,
|
reason -> Nullable<Text>,
|
||||||
published -> Timestamptz,
|
when_ -> Timestamptz,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -61,7 +61,7 @@ diesel::table! {
|
||||||
blocked -> Bool,
|
blocked -> Bool,
|
||||||
reason -> Nullable<Text>,
|
reason -> Nullable<Text>,
|
||||||
expires -> Nullable<Timestamptz>,
|
expires -> Nullable<Timestamptz>,
|
||||||
published -> Timestamptz,
|
when_ -> Timestamptz,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -126,7 +126,7 @@ pub struct AdminAllowInstance {
|
||||||
pub allowed: bool,
|
pub allowed: bool,
|
||||||
#[cfg_attr(feature = "full", ts(optional))]
|
#[cfg_attr(feature = "full", ts(optional))]
|
||||||
pub reason: Option<String>,
|
pub reason: Option<String>,
|
||||||
pub published: DateTime<Utc>,
|
pub when_: DateTime<Utc>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Clone, Default)]
|
#[derive(Clone, Default)]
|
||||||
|
@ -161,7 +161,7 @@ pub struct AdminBlockInstance {
|
||||||
pub reason: Option<String>,
|
pub reason: Option<String>,
|
||||||
#[cfg_attr(feature = "full", ts(optional))]
|
#[cfg_attr(feature = "full", ts(optional))]
|
||||||
pub expires: Option<DateTime<Utc>>,
|
pub expires: Option<DateTime<Utc>>,
|
||||||
pub published: DateTime<Utc>,
|
pub when_: DateTime<Utc>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Clone, Default)]
|
#[derive(Clone, Default)]
|
||||||
|
@ -172,5 +172,5 @@ pub struct AdminBlockInstanceForm {
|
||||||
pub admin_person_id: PersonId,
|
pub admin_person_id: PersonId,
|
||||||
pub blocked: bool,
|
pub blocked: bool,
|
||||||
pub reason: Option<String>,
|
pub reason: Option<String>,
|
||||||
pub expires: Option<DateTime<Utc>>,
|
pub when_: Option<DateTime<Utc>>,
|
||||||
}
|
}
|
||||||
|
|
|
@ -45,7 +45,7 @@ impl AdminAllowInstanceView {
|
||||||
query
|
query
|
||||||
.limit(limit)
|
.limit(limit)
|
||||||
.offset(offset)
|
.offset(offset)
|
||||||
.order_by(admin_allow_instance::published.desc())
|
.order_by(admin_allow_instance::when_.desc())
|
||||||
.load::<Self>(conn)
|
.load::<Self>(conn)
|
||||||
.await
|
.await
|
||||||
}
|
}
|
||||||
|
|
|
@ -45,7 +45,7 @@ impl AdminBlockInstanceView {
|
||||||
query
|
query
|
||||||
.limit(limit)
|
.limit(limit)
|
||||||
.offset(offset)
|
.offset(offset)
|
||||||
.order_by(admin_block_instance::published.desc())
|
.order_by(admin_block_instance::when_.desc())
|
||||||
.load::<Self>(conn)
|
.load::<Self>(conn)
|
||||||
.await
|
.await
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,7 +8,7 @@ CREATE TABLE admin_block_instance (
|
||||||
blocked bool NOT NULL,
|
blocked bool NOT NULL,
|
||||||
reason text,
|
reason text,
|
||||||
expires timestamptz,
|
expires timestamptz,
|
||||||
published timestamptz NOT NULL DEFAULT now()
|
when_ timestamptz NOT NULL DEFAULT now()
|
||||||
);
|
);
|
||||||
|
|
||||||
CREATE TABLE admin_allow_instance (
|
CREATE TABLE admin_allow_instance (
|
||||||
|
@ -17,6 +17,6 @@ CREATE TABLE admin_allow_instance (
|
||||||
admin_person_id int NOT NULL REFERENCES person (id) ON UPDATE CASCADE ON DELETE CASCADE,
|
admin_person_id int NOT NULL REFERENCES person (id) ON UPDATE CASCADE ON DELETE CASCADE,
|
||||||
allowed bool NOT NULL,
|
allowed bool NOT NULL,
|
||||||
reason text,
|
reason text,
|
||||||
published timestamptz NOT NULL DEFAULT now()
|
when_ timestamptz NOT NULL DEFAULT now()
|
||||||
);
|
);
|
||||||
|
|
|
@ -59,6 +59,7 @@ pub async fn setup(context: Data<LemmyContext>) -> LemmyResult<()> {
|
||||||
async move {
|
async move {
|
||||||
active_counts(&mut context.pool()).await;
|
active_counts(&mut context.pool()).await;
|
||||||
update_banned_when_expired(&mut context.pool()).await;
|
update_banned_when_expired(&mut context.pool()).await;
|
||||||
|
delete_instance_block_when_expired(&mut context.pool()).await;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -114,6 +115,7 @@ async fn startup_jobs(pool: &mut DbPool<'_>) {
|
||||||
active_counts(pool).await;
|
active_counts(pool).await;
|
||||||
update_hot_ranks(pool).await;
|
update_hot_ranks(pool).await;
|
||||||
update_banned_when_expired(pool).await;
|
update_banned_when_expired(pool).await;
|
||||||
|
delete_instance_block_when_expired(pool).await;
|
||||||
clear_old_activities(pool).await;
|
clear_old_activities(pool).await;
|
||||||
overwrite_deleted_posts_and_comments(pool).await;
|
overwrite_deleted_posts_and_comments(pool).await;
|
||||||
delete_old_denied_users(pool).await;
|
delete_old_denied_users(pool).await;
|
||||||
|
@ -440,7 +442,20 @@ async fn update_banned_when_expired(pool: &mut DbPool<'_>) {
|
||||||
.await
|
.await
|
||||||
.inspect_err(|e| error!("Failed to remove community_ban expired rows: {e}"))
|
.inspect_err(|e| error!("Failed to remove community_ban expired rows: {e}"))
|
||||||
.ok();
|
.ok();
|
||||||
|
}
|
||||||
|
Err(e) => {
|
||||||
|
error!("Failed to get connection from pool: {e}");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// Set banned to false after ban expires
|
||||||
|
async fn delete_instance_block_when_expired(pool: &mut DbPool<'_>) {
|
||||||
|
info!("Delete instance blocks when expired ...");
|
||||||
|
let conn = get_conn(pool).await;
|
||||||
|
|
||||||
|
match conn {
|
||||||
|
Ok(mut conn) => {
|
||||||
diesel::delete(
|
diesel::delete(
|
||||||
federation_blocklist::table.filter(federation_blocklist::expires.lt(now().nullable())),
|
federation_blocklist::table.filter(federation_blocklist::expires.lt(now().nullable())),
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in a new issue