aboutsummaryrefslogtreecommitdiffstats
path: root/rust/src/endpoint_handlers.rs
diff options
context:
space:
mode:
authorBryan Newbold <bnewbold@robocracy.org>2019-05-14 18:29:51 -0700
committerBryan Newbold <bnewbold@robocracy.org>2019-05-14 18:29:51 -0700
commita69fb6bfd45b99a2001a12524714fc2542a6d9ca (patch)
treeb6b100d2fc235b439c98ad9f1ee4915b5ac83660 /rust/src/endpoint_handlers.rs
parent7c18e1d22b16bb920c9bb9a788691820bbdb2bfa (diff)
downloadfatcat-a69fb6bfd45b99a2001a12524714fc2542a6d9ca.tar.gz
fatcat-a69fb6bfd45b99a2001a12524714fc2542a6d9ca.zip
rust: return editors and cl index for editgroup more often
Diffstat (limited to 'rust/src/endpoint_handlers.rs')
-rw-r--r--rust/src/endpoint_handlers.rs14
1 files changed, 8 insertions, 6 deletions
diff --git a/rust/src/endpoint_handlers.rs b/rust/src/endpoint_handlers.rs
index dcc647ea..ba8505e1 100644
--- a/rust/src/endpoint_handlers.rs
+++ b/rust/src/endpoint_handlers.rs
@@ -460,7 +460,7 @@ impl Server {
editgroup: models::Editgroup,
) -> Result<Editgroup> {
let row = editgroup.db_create(conn, false)?;
- Ok(row.into_model_partial(None))
+ Ok(row.into_model_partial(None, None))
}
pub fn get_editgroup_handler(
@@ -469,7 +469,8 @@ impl Server {
editgroup_id: FatcatId,
) -> Result<Editgroup> {
let (eg_row, cl_row) = Editgroup::db_get_with_changelog(conn, editgroup_id)?;
- let mut editgroup = eg_row.into_model_partial(cl_row.map(|cl| cl.id));
+ let editor = Editor::db_get(&conn, FatcatId::from_uuid(&eg_row.editor_id))?.into_model();
+ let mut editgroup = eg_row.into_model_partial(cl_row.map(|cl| cl.id), Some(editor));
let edits = EditgroupEdits {
containers: Some(
@@ -546,17 +547,18 @@ impl Server {
) -> Result<Vec<ChangelogEntry>> {
let limit = limit.unwrap_or(50);
- let changes: Vec<(ChangelogRow, EditgroupRow)> = changelog::table
- .inner_join(editgroup::table)
+ let changes: Vec<(EditgroupRow, ChangelogRow, EditorRow)> = editgroup::table
+ .inner_join(changelog::table)
+ .inner_join(editor::table)
.order(changelog::id.desc())
.limit(limit)
.load(conn)?;
let entries = changes
.into_iter()
- .map(|(cl_row, eg_row)| ChangelogEntry {
+ .map(|(eg_row, cl_row, editor_row)| ChangelogEntry {
index: cl_row.id,
- editgroup: Some(eg_row.into_model_partial(None)),
+ editgroup: Some(eg_row.into_model_partial(Some(cl_row.id), Some(editor_row.into_model()))),
editgroup_id: uuid2fcid(&cl_row.editgroup_id),
timestamp: chrono::DateTime::from_utc(cl_row.timestamp, chrono::Utc),
})