Fall back to event time if set time isn't recorded
This commit is contained in:
parent
1aa1b87211
commit
1aa85bd989
3 changed files with 32 additions and 18 deletions
|
|
@ -86,7 +86,7 @@ pub struct EventSetsResponse {
|
|||
#[derive(Debug)]
|
||||
pub struct SetData {
|
||||
pub id: SetId,
|
||||
pub time: Timestamp,
|
||||
pub time: Option<Timestamp>,
|
||||
pub teams: Teams<PlayerData>,
|
||||
pub winner: usize,
|
||||
}
|
||||
|
|
@ -130,7 +130,7 @@ impl QueryUnwrap<EventSetsVars> for EventSets {
|
|||
.try_collect()?;
|
||||
Some(SetData {
|
||||
id: set.id?,
|
||||
time: set.start_at.or(set.started_at)?,
|
||||
time: set.start_at.or(set.started_at),
|
||||
teams,
|
||||
winner,
|
||||
})
|
||||
|
|
|
|||
|
|
@ -53,7 +53,6 @@ struct PageInfo {
|
|||
#[derive(cynic::QueryFragment, Debug)]
|
||||
#[cynic(variables = "TournamentEventsVars")]
|
||||
struct Tournament {
|
||||
name: Option<String>,
|
||||
#[arguments(limit: 99999, filter: { videogameId: [$game_id] })]
|
||||
#[cynic(flatten)]
|
||||
events: Vec<Event>,
|
||||
|
|
@ -63,6 +62,7 @@ struct Tournament {
|
|||
#[cynic(variables = "TournamentEventsVars")]
|
||||
struct Event {
|
||||
id: Option<EventId>,
|
||||
start_at: Option<Timestamp>,
|
||||
}
|
||||
|
||||
// Unwrap
|
||||
|
|
@ -75,8 +75,13 @@ pub struct TournamentEventResponse {
|
|||
|
||||
#[derive(Debug, Clone)]
|
||||
pub struct TournamentData {
|
||||
pub name: String,
|
||||
pub events: Vec<EventId>,
|
||||
pub events: Vec<EventData>,
|
||||
}
|
||||
|
||||
#[derive(Debug, Clone)]
|
||||
pub struct EventData {
|
||||
pub id: EventId,
|
||||
pub time: Timestamp,
|
||||
}
|
||||
|
||||
impl<'a> QueryUnwrap<TournamentEventsVars<'a>> for TournamentEvents {
|
||||
|
|
@ -92,11 +97,15 @@ impl<'a> QueryUnwrap<TournamentEventsVars<'a>> for TournamentEvents {
|
|||
.into_iter()
|
||||
.filter_map(|tour| {
|
||||
Some(TournamentData {
|
||||
name: tour.name?,
|
||||
events: tour
|
||||
.events
|
||||
.into_iter()
|
||||
.filter_map(|event| event.id)
|
||||
.filter_map(|event| {
|
||||
Some(EventData {
|
||||
id: event.id?,
|
||||
time: event.start_at?,
|
||||
})
|
||||
})
|
||||
.collect(),
|
||||
})
|
||||
})
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue