diff options
Diffstat (limited to 'server/src/routes/userdata.rs')
-rw-r--r-- | server/src/routes/userdata.rs | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/server/src/routes/userdata.rs b/server/src/routes/userdata.rs index 6fcd7a0..01776da 100644 --- a/server/src/routes/userdata.rs +++ b/server/src/routes/userdata.rs @@ -26,10 +26,10 @@ pub enum UrlWatchedState { pub fn r_node_userdata( session: Session, db: &State<Database>, - id: &str, + id: NodeID, ) -> MyResult<Json<NodeUserData>> { let u = db - .get_node_udata(NodeID::from_slug(id), &session.user.name)? + .get_node_udata(id, &session.user.name)? .unwrap_or_default(); Ok(Json(u)) } @@ -38,11 +38,11 @@ pub fn r_node_userdata( pub async fn r_node_userdata_watched( session: Session, db: &State<Database>, - id: &str, + id: NodeID, state: UrlWatchedState, ) -> MyResult<Redirect> { // TODO perm - db.update_node_udata(NodeID::from_slug(id), &session.user.name, |udata| { + db.update_node_udata(id, &session.user.name, |udata| { udata.watched = match state { UrlWatchedState::None => WatchedState::None, UrlWatchedState::Watched => WatchedState::Watched, @@ -63,11 +63,11 @@ pub struct UpdateRating { pub async fn r_node_userdata_rating( session: Session, db: &State<Database>, - id: &str, + id: NodeID, form: Form<UpdateRating>, ) -> MyResult<Redirect> { // TODO perm - db.update_node_udata(NodeID::from_slug(id), &session.user.name, |udata| { + db.update_node_udata(id, &session.user.name, |udata| { udata.rating = form.rating; Ok(()) })?; @@ -78,11 +78,11 @@ pub async fn r_node_userdata_rating( pub async fn r_node_userdata_progress( session: Session, db: &State<Database>, - id: &str, + id: NodeID, t: f64, ) -> MyResult<()> { // TODO perm - db.update_node_udata(NodeID::from_slug(id), &session.user.name, |udata| { + db.update_node_udata(id, &session.user.name, |udata| { udata.watched = match udata.watched { WatchedState::None | WatchedState::Pending | WatchedState::Progress(_) => { WatchedState::Progress(t) |