Implement new function to Blog for the view
Added Blog::to_json and Blog::get_fqn
This commit is contained in:
parent
390d694cac
commit
aaae786fb7
|
@ -248,6 +248,21 @@ impl Blog {
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub fn get_fqn(&self, conn: &PgConnection) -> String {
|
||||||
|
if self.instance_id == Instance::local_id(conn) {
|
||||||
|
self.actor_id.clone()
|
||||||
|
} else {
|
||||||
|
format!("{}@{}", self.actor_id, self.get_instance(conn).public_domain)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
pub fn to_json(&self, conn: &PgConnection) -> serde_json::Value {
|
||||||
|
let mut json = serde_json::to_value(self).unwrap();
|
||||||
|
let formatted = serde_json::Value::String(format!("/~/{}",self.get_fqn(conn)));
|
||||||
|
json["fqn"] = formatted;
|
||||||
|
json
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl IntoId for Blog {
|
impl IntoId for Blog {
|
||||||
|
|
|
@ -187,8 +187,7 @@ impl Post {
|
||||||
"author": self.get_authors(conn)[0].to_json(conn),
|
"author": self.get_authors(conn)[0].to_json(conn),
|
||||||
"url": format!("/~/{}/{}/", blog.actor_id, self.slug),
|
"url": format!("/~/{}/{}/", blog.actor_id, self.slug),
|
||||||
"date": self.creation_date.timestamp(),
|
"date": self.creation_date.timestamp(),
|
||||||
"blog": blog,
|
"blog": blog.to_json(conn)
|
||||||
"blog_url": format!("/~/{}", blog.actor_id)
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue