Update access times from selectors

This commit is contained in:
Elias Projahn 2022-04-10 13:54:27 +02:00
parent a0554a478f
commit 3064f18323
6 changed files with 33 additions and 0 deletions

View file

@ -5,6 +5,7 @@ use crate::widgets::Widget;
use adw::prelude::*;
use gettextrs::gettext;
use glib::clone;
use log::warn;
use musicus_backend::db::Ensemble;
use std::rc::Rc;
@ -46,7 +47,12 @@ impl Screen<(), Ensemble> for EnsembleSelector {
.build();
let ensemble = ensemble.to_owned();
row.connect_activated(clone!(@weak this => move |_| {
if let Err(err) = this.handle.backend.db().update_ensemble(ensemble.clone()) {
warn!("Failed to update access time. {err}");
}
this.handle.pop(Some(ensemble.clone()))
}));

View file

@ -5,6 +5,7 @@ use crate::widgets::Widget;
use adw::prelude::*;
use gettextrs::gettext;
use glib::clone;
use log::warn;
use musicus_backend::db::Instrument;
use std::rc::Rc;
@ -46,7 +47,12 @@ impl Screen<(), Instrument> for InstrumentSelector {
.build();
let instrument = instrument.to_owned();
row.connect_activated(clone!(@weak this => move |_| {
if let Err(err) = this.handle.backend.db().update_instrument(instrument.clone()) {
warn!("Failed to update access time. {err}");
}
this.handle.pop(Some(instrument.clone()))
}));

View file

@ -4,6 +4,7 @@ use crate::widgets::Widget;
use adw::prelude::*;
use gettextrs::gettext;
use glib::clone;
use log::warn;
use musicus_backend::db::{Medium, PersonOrEnsemble};
use std::rc::Rc;
@ -109,6 +110,10 @@ impl Screen<PersonOrEnsemble, Medium> for MediumSelectorMediumScreen {
let medium = medium.to_owned();
row.connect_activated(clone!(@weak this => move |_| {
if let Err(err) = this.handle.backend.db().update_medium(medium.clone()) {
warn!("Failed to update access time. {err}");
}
this.handle.pop(Some(medium.clone()));
}));

View file

@ -5,6 +5,7 @@ use crate::widgets::Widget;
use adw::prelude::*;
use gettextrs::gettext;
use glib::clone;
use log::warn;
use musicus_backend::db::Person;
use std::rc::Rc;
@ -46,7 +47,12 @@ impl Screen<(), Person> for PersonSelector {
.build();
let person = person.to_owned();
row.connect_activated(clone!(@weak this => move |_| {
if let Err(err) = this.handle.backend.db().update_person(person.clone()) {
warn!("Failed to update access time. {err}");
}
this.handle.pop(Some(person.clone()));
}));

View file

@ -5,6 +5,7 @@ use crate::widgets::Widget;
use adw::prelude::*;
use gettextrs::gettext;
use glib::clone;
use log::warn;
use musicus_backend::db::{Person, Recording, Work};
use std::rc::Rc;
@ -196,6 +197,10 @@ impl Screen<Work, Recording> for RecordingSelectorRecordingScreen {
let recording = recording.to_owned();
row.connect_activated(clone!(@weak this => move |_| {
if let Err(err) = this.handle.backend.db().update_recording(recording.clone()) {
warn!("Failed to update access time. {err}");
}
this.handle.pop(Some(recording.clone()));
}));

View file

@ -5,6 +5,7 @@ use crate::widgets::Widget;
use adw::prelude::*;
use gettextrs::gettext;
use glib::clone;
use log::warn;
use musicus_backend::db::{Person, Work};
use std::rc::Rc;
@ -123,6 +124,10 @@ impl Screen<Person, Work> for WorkSelectorWorkScreen {
let work = work.to_owned();
row.connect_activated(clone!(@weak this => move |_| {
if let Err(err) = this.handle.backend.db().update_work(work.clone()) {
warn!("Failed to update access time. {err}");
}
this.handle.pop(Some(work.clone()));
}));