allow hiding by summary too
This commit is contained in:
parent
bf6e6fab0b
commit
456c502d3f
1 changed files with 11 additions and 4 deletions
15
src/main.rs
15
src/main.rs
|
@ -34,6 +34,8 @@ struct ConfigOutput {
|
||||||
/// Used as the OpenGraph description in meta tags
|
/// Used as the OpenGraph description in meta tags
|
||||||
description: String,
|
description: String,
|
||||||
|
|
||||||
|
hide_summaries: BTreeSet<String>,
|
||||||
|
|
||||||
/// Hide all these UIDs from the final output
|
/// Hide all these UIDs from the final output
|
||||||
hide_uids: BTreeSet<String>,
|
hide_uids: BTreeSet<String>,
|
||||||
|
|
||||||
|
@ -406,7 +408,7 @@ fn read_data_from_disk(config: &Config) -> Result<Data> {
|
||||||
|
|
||||||
fn process_data<'a>(
|
fn process_data<'a>(
|
||||||
data: &'a Data,
|
data: &'a Data,
|
||||||
hide_uids: &'a BTreeSet<String>,
|
config_output: &'a ConfigOutput,
|
||||||
now: DateTime<chrono_tz::Tz>,
|
now: DateTime<chrono_tz::Tz>,
|
||||||
) -> Result<Vec<EventWithUrl<'a>>> {
|
) -> Result<Vec<EventWithUrl<'a>>> {
|
||||||
let params = Parameters::new(now)?;
|
let params = Parameters::new(now)?;
|
||||||
|
@ -415,7 +417,12 @@ fn process_data<'a>(
|
||||||
for (ical, config) in &data.icals {
|
for (ical, config) in &data.icals {
|
||||||
for ei in ical.event_instances(¶ms)? {
|
for ei in ical.event_instances(¶ms)? {
|
||||||
if let Some(uid) = ei.ev.get_uid()
|
if let Some(uid) = ei.ev.get_uid()
|
||||||
&& hide_uids.contains(uid)
|
&& config_output.hide_uids.contains(uid)
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if let Some(summary) = ei.ev.get_summary()
|
||||||
|
&& config_output.hide_summaries.contains(summary)
|
||||||
{
|
{
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
@ -639,7 +646,7 @@ async fn do_everything(cli: &CliAuto) -> Result<()> {
|
||||||
|
|
||||||
let tz = &config.output.timezone;
|
let tz = &config.output.timezone;
|
||||||
let now = Utc::now().with_timezone(tz);
|
let now = Utc::now().with_timezone(tz);
|
||||||
let instances = process_data(&data, &config.output.hide_uids, now)?;
|
let instances = process_data(&data, &config.output, now)?;
|
||||||
output_html(&config.output, &instances, now)?;
|
output_html(&config.output, &instances, now)?;
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
@ -671,7 +678,7 @@ fn main_ics_debug(cli: CliIcsDebug) -> Result<()> {
|
||||||
|
|
||||||
let tz = &config.output.timezone;
|
let tz = &config.output.timezone;
|
||||||
let now = Utc::now().with_timezone(tz);
|
let now = Utc::now().with_timezone(tz);
|
||||||
let instances = process_data(&data, &config.output.hide_uids, now)?;
|
let instances = process_data(&data, &config.output, now)?;
|
||||||
output_html(&config.output, &instances, now)?;
|
output_html(&config.output, &instances, now)?;
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue