Merge pull request #162 from kdheepak/prefill-additional-modify-information

Prefill additional information during modify
This commit is contained in:
Dheepak Krishnamurthy 2021-03-31 02:12:42 -06:00 committed by GitHub
commit 1135686007
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -26,7 +26,7 @@ use uuid::Uuid;
use unicode_segmentation::Graphemes;
use unicode_segmentation::UnicodeSegmentation;
use chrono::{Datelike, Local, NaiveDate, NaiveDateTime, TimeZone};
use chrono::{Datelike, Local, NaiveDate, NaiveDateTime, TimeZone, Timelike};
use anyhow::Result;
@ -1830,7 +1830,36 @@ impl TaskwarriorTuiApp {
match self.task_table_state.mode() {
TableMode::SingleSelection => match self.task_current() {
Some(t) => {
let s = format!("{} ", t.description());
let mut s = format!("{} ", t.description().replace("'", "\\'"));
if t.tags().is_some() {
let virtual_tags = self.task_report_table.virtual_tags.clone();
for tag in t.tags().unwrap() {
if !virtual_tags.contains(tag) {
s = format!("{}+{} ", s, tag);
}
}
}
if t.project().is_some() {
s = format!("{}project:{} ", s, t.project().unwrap());
}
if t.priority().is_some() {
s = format!("{}priority:{} ", s, t.priority().unwrap());
}
if t.due().is_some() {
let date = t.due().unwrap();
let now = Local::now();
let date = TimeZone::from_utc_datetime(now.offset(), date);
s = format!(
"{}due:'{:04}-{:02}-{:02}T{:02}:{:02}:{:02}' ",
s,
date.year(),
date.month(),
date.day(),
date.hour(),
date.minute(),
date.second(),
)
}
self.modify.update(&s, s.as_str().len())
}
None => self.modify.update("", 0),
@ -2445,8 +2474,6 @@ mod tests {
}
fn test_task_later_today() {
use chrono::Timelike;
let total_tasks: u64 = 26;
let mut app = TaskwarriorTuiApp::new().unwrap();