serve: limit events to 2 weeks
This commit is contained in:
parent
cd6cb485f2
commit
26e14b1d90
|
@ -9,7 +9,7 @@ use mime::TEXT_HTML;
|
||||||
|
|
||||||
use typed_html::{html, text, dom::DOMTree, types::{Class, SpacedSet}};
|
use typed_html::{html, text, dom::DOMTree, types::{Class, SpacedSet}};
|
||||||
use diesel::prelude::*;
|
use diesel::prelude::*;
|
||||||
use chrono::{offset::Local, Datelike, NaiveDate};
|
use chrono::{offset::Local, Datelike, Duration, NaiveDate};
|
||||||
|
|
||||||
use libticker::{
|
use libticker::{
|
||||||
schema::{self, events::dsl::events},
|
schema::{self, events::dsl::events},
|
||||||
|
@ -56,8 +56,11 @@ fn group_by_day(es: &[Event]) -> Vec<DayEvents> {
|
||||||
fn render_index(app_state: &AppState) -> String {
|
fn render_index(app_state: &AppState) -> String {
|
||||||
let db = app_state.db.lock().unwrap();
|
let db = app_state.db.lock().unwrap();
|
||||||
let today = Local::today().naive_local().and_hms(0, 0, 0);
|
let today = Local::today().naive_local().and_hms(0, 0, 0);
|
||||||
|
let limit = Local::today().naive_local().and_hms(0, 0, 0) +
|
||||||
|
Duration::weeks(2);
|
||||||
let es = events
|
let es = events
|
||||||
.filter(schema::events::dtstart.ge(&today))
|
.filter(schema::events::dtstart.ge(&today))
|
||||||
|
.filter(schema::events::dtstart.lt(&limit))
|
||||||
.order_by(schema::events::dtstart.asc())
|
.order_by(schema::events::dtstart.asc())
|
||||||
.then_order_by(schema::events::dtend.desc())
|
.then_order_by(schema::events::dtend.desc())
|
||||||
.load::<Event>(&*db)
|
.load::<Event>(&*db)
|
||||||
|
|
Loading…
Reference in New Issue