Skip to content
Extraits de code Groupes Projets
Vérifiée Valider 2a7d8b33 rédigé par Kubat's avatar Kubat
Parcourir les fichiers

AMADEUS: Show more informations about playlists

parent 69fdd2f4
Aucune branche associée trouvée
Aucune étiquette associée trouvée
1 requête de fusion!197Draft: Refactor the whole code.
use crate::components::{self, icon, karalist, tip}; use crate::{
components::{self, icon, karalist, tip},
style_sheet::sizes::SIZE_FONT_MOAR,
};
use chrono::TimeZone;
use hashbrown::HashMap; use hashbrown::HashMap;
use iced::{widget::row, Command, Element}; use iced::{
widget::{column, horizontal_rule, row, text, vertical_space},
Command, Element,
};
use lektor_payloads::{KId, Kara, PlaylistInfo}; use lektor_payloads::{KId, Kara, PlaylistInfo};
use lektor_utils::log; use lektor_utils::log;
use std::sync::Arc; use std::sync::Arc;
...@@ -169,7 +176,40 @@ impl State { ...@@ -169,7 +176,40 @@ impl State {
pub fn view(&self, plt: &Arc<str>) -> Element<'_, Request> { pub fn view(&self, plt: &Arc<str>) -> Element<'_, Request> {
self.get(plt) self.get(plt)
.map(|(plt, _, content)| content.view().map(|req| Request::Inner(plt.clone(), req))) .map(|(plt, infos, content)| {
infos
.map(|infos| {
let PlaylistInfo { user, .. } = infos;
let mut column = user
.as_ref()
.map(|user| {
column![text(format!("Created by: {user}")).size(SIZE_FONT_MOAR)]
})
.unwrap_or_default();
if let Some(time) =
chrono::Local.timestamp_opt(infos.created_at, 0).latest()
{
let time = time.format("%Y-%m-%d %H:%M:%S");
column = column
.push(vertical_space(4))
.push(text(format!("Created at: {time}")));
};
if let Some(time) =
chrono::Local.timestamp_opt(infos.updated_at, 0).latest()
{
let time = time.format("%Y-%m-%d %H:%M:%S");
column = column
.push(vertical_space(4))
.push(text(format!("Updated at: {time}")));
};
column
.push(vertical_space(10))
.push(horizontal_rule(4))
})
.unwrap_or_default()
.push(content.view().map(|req| Request::Inner(plt.clone(), req)))
.into()
})
.unwrap_or(components::loading()) .unwrap_or(components::loading())
} }
} }
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter