Fix follow IDs (#455)
* Generate valid IDs for Follow Fixes #449 * Use the new post-insert hook for all the models * Fix plume-cli build
This commit is contained in:
@@ -105,7 +105,6 @@ pub fn create(conn: DbConn, form: LenientForm<NewBlogForm>, user: User, intl: I1
|
||||
String::from(""),
|
||||
Instance::get_local(&*conn).expect("blog::create: instance error").id
|
||||
).expect("blog::create: new local error")).expect("blog::create: error");
|
||||
blog.update_boxes(&*conn).expect("blog::create: insert error");
|
||||
|
||||
BlogAuthor::insert(&*conn, NewBlogAuthor {
|
||||
blog_id: blog.id,
|
||||
|
||||
@@ -53,7 +53,7 @@ pub fn create(blog_name: String, slug: String, form: LenientForm<NewCommentForm>
|
||||
sensitive: !form.warning.is_empty(),
|
||||
spoiler_text: form.warning.clone(),
|
||||
public_visibility: true
|
||||
}).expect("comments::create: insert error").update_ap_url(&*conn).expect("comments::create: update ap url error");
|
||||
}).expect("comments::create: insert error");
|
||||
let new_comment = comm.create_activity(&*conn).expect("comments::create: activity error");
|
||||
|
||||
// save mentions
|
||||
|
||||
+1
-2
@@ -227,7 +227,6 @@ pub fn update(blog: String, slug: String, user: User, cl: ContentLen, form: Leni
|
||||
post.license = form.license.clone();
|
||||
post.cover_id = form.cover;
|
||||
post.update(&*conn, &searcher).expect("post::update: update error");;
|
||||
let post = post.update_ap_url(&*conn).expect("post::update: update ap url error");
|
||||
|
||||
if post.published {
|
||||
post.update_mentions(&conn, mentions.into_iter().filter_map(|m| Mention::build_activity(&conn, &m).ok()).collect())
|
||||
@@ -338,7 +337,7 @@ pub fn create(blog_name: String, form: LenientForm<NewPostForm>, user: User, cl:
|
||||
},
|
||||
&searcher,
|
||||
).expect("post::create: post save error");
|
||||
let post = post.update_ap_url(&*conn).expect("post::create: update ap url error");
|
||||
|
||||
PostAuthor::insert(&*conn, NewPostAuthor {
|
||||
post_id: post.id,
|
||||
author_id: user.id
|
||||
|
||||
+4
-9
@@ -78,18 +78,13 @@ pub fn details(
|
||||
let user_clone = user.clone();
|
||||
worker.execute(move || {
|
||||
for user_id in user_clone.fetch_followers_ids().expect("Remote user: fetching followers error") {
|
||||
let follower =
|
||||
User::find_by_ap_url(&*fetch_followers_conn, &user_id)
|
||||
.unwrap_or_else(|_| {
|
||||
User::fetch_from_url(&*fetch_followers_conn, &user_id)
|
||||
.expect("user::details: Couldn't fetch follower")
|
||||
});
|
||||
let follower = User::from_url(&*fetch_followers_conn, &user_id).expect("user::details: Couldn't fetch follower");
|
||||
follows::Follow::insert(
|
||||
&*fetch_followers_conn,
|
||||
follows::NewFollow {
|
||||
follower_id: follower.id,
|
||||
following_id: user_clone.id,
|
||||
ap_url: format!("{}/follow/{}", follower.ap_url, user_clone.ap_url),
|
||||
ap_url: String::new(),
|
||||
},
|
||||
).expect("Couldn't save follower for remote user");
|
||||
}
|
||||
@@ -147,7 +142,7 @@ pub fn follow(name: String, conn: DbConn, user: User, worker: Worker) -> Result<
|
||||
follows::NewFollow {
|
||||
follower_id: user.id,
|
||||
following_id: target.id,
|
||||
ap_url: format!("{}/follow/{}", user.ap_url, target.ap_url),
|
||||
ap_url: String::new(),
|
||||
},
|
||||
)?;
|
||||
f.notify(&*conn)?;
|
||||
@@ -359,7 +354,7 @@ pub fn create(conn: DbConn, form: LenientForm<NewUserForm>, intl: I18n) -> Resul
|
||||
"",
|
||||
form.email.to_string(),
|
||||
User::hash_pass(&form.password).map_err(to_validation)?,
|
||||
).and_then(|u| u.update_boxes(&*conn)).map_err(to_validation)?;
|
||||
).map_err(to_validation)?;
|
||||
Ok(Redirect::to(uri!(super::session::new: m = _)))
|
||||
})
|
||||
.map_err(|err| {
|
||||
|
||||
Reference in New Issue
Block a user