Skip to content

Commit

Permalink
use due object
Browse files Browse the repository at this point in the history
  • Loading branch information
kobtea committed Sep 11, 2019
1 parent 15e414d commit 82b9edb
Show file tree
Hide file tree
Showing 6 changed files with 45 additions and 37 deletions.
2 changes: 1 addition & 1 deletion cmd/todoist/cmd/inbox.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ var inboxCmd = &cobra.Command{
inbox := projects[0]
items := client.Item.FindByProjectIDs([]todoist.ID{inbox.ID})
relations := client.Relation.Items(items)
fmt.Println(util.ItemTableString(items, relations, func(i todoist.Item) todoist.Time { return i.DueDateUtc }))
fmt.Println(util.ItemTableString(items, relations, func(i todoist.Item) todoist.Time { return i.Due.Date }))
return nil
},
}
Expand Down
14 changes: 7 additions & 7 deletions cmd/todoist/cmd/item.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ var itemListCmd = &cobra.Command{
}
items := client.Item.GetAll()
relations := client.Relation.Items(items)
fmt.Println(util.ItemTableString(items, relations, func(i todoist.Item) todoist.Time { return i.DueDateUtc }))
fmt.Println(util.ItemTableString(items, relations, func(i todoist.Item) todoist.Time { return i.Due.Date }))
return nil
},
}
Expand Down Expand Up @@ -78,7 +78,7 @@ var itemAddCmd = &cobra.Command{
return errors.New("invalid due date format")
}
if len(due) > 0 {
item.DateString = due
item.Due.String = due
}

priority, err := cmd.Flags().GetInt("priority")
Expand Down Expand Up @@ -108,7 +108,7 @@ var itemAddCmd = &cobra.Command{
syncedItem := items[len(items)-1]
relations := client.Relation.Items([]todoist.Item{syncedItem})
fmt.Println("Successful addition of an item.")
fmt.Println(util.ItemTableString([]todoist.Item{syncedItem}, relations, func(i todoist.Item) todoist.Time { return i.DueDateUtc }))
fmt.Println(util.ItemTableString([]todoist.Item{syncedItem}, relations, func(i todoist.Item) todoist.Time { return i.Due.Date }))
return nil
},
}
Expand Down Expand Up @@ -157,7 +157,7 @@ var itemUpdateCmd = &cobra.Command{
return errors.New("invalid due date format")
}
if len(due) > 0 {
item.DateString = due
item.Due.String = due
}

priority, err := cmd.Flags().GetInt("priority")
Expand All @@ -182,7 +182,7 @@ var itemUpdateCmd = &cobra.Command{
}
relations := client.Relation.Items([]todoist.Item{*syncedItem})
fmt.Println("success to update the item")
fmt.Println(util.ItemTableString([]todoist.Item{*syncedItem}, relations, func(i todoist.Item) todoist.Time { return i.DueDateUtc }))
fmt.Println(util.ItemTableString([]todoist.Item{*syncedItem}, relations, func(i todoist.Item) todoist.Time { return i.Due.Date }))
return nil
},
}
Expand All @@ -204,7 +204,7 @@ var itemDeleteCmd = &cobra.Command{
items = append(items, *item)
}
relations := client.Relation.Items(items)
fmt.Println(util.ItemTableString(items, relations, func(i todoist.Item) todoist.Time { return i.DueDateUtc }))
fmt.Println(util.ItemTableString(items, relations, func(i todoist.Item) todoist.Time { return i.Due.Date }))

reader := bufio.NewReader(os.Stdin)
fmt.Print("are you sure to delete above item(s)? (y/[n]): ")
Expand Down Expand Up @@ -272,7 +272,7 @@ var itemMoveCmd = &cobra.Command{
}
relations := client.Relation.Items([]todoist.Item{*syncedItem})
fmt.Println("Successful move item.")
fmt.Println(util.ItemTableString([]todoist.Item{*syncedItem}, relations, func(i todoist.Item) todoist.Time { return i.DueDateUtc }))
fmt.Println(util.ItemTableString([]todoist.Item{*syncedItem}, relations, func(i todoist.Item) todoist.Time { return i.Due.Date }))
return nil
},
}
Expand Down
4 changes: 2 additions & 2 deletions cmd/todoist/cmd/next.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,10 @@ var nextCmd = &cobra.Command{
}
}
sort.Slice(items, func(i, j int) bool {
return items[i].DueDateUtc.Before(items[j].DueDateUtc)
return items[i].Due.Date.Before(items[j].Due.Date)
})
relations := client.Relation.Items(items)
fmt.Println(util.ItemTableString(items, relations, func(i todoist.Item) todoist.Time { return i.DueDateUtc }))
fmt.Println(util.ItemTableString(items, relations, func(i todoist.Item) todoist.Time { return i.Due.Date }))
return nil
},
}
Expand Down
4 changes: 2 additions & 2 deletions cmd/todoist/cmd/today.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,10 @@ var todayCmd = &cobra.Command{
}
}
sort.Slice(items, func(i, j int) bool {
return items[i].DueDateUtc.Before(items[j].DueDateUtc)
return items[i].Due.Date.Before(items[j].Due.Date)
})
relations := client.Relation.Items(items)
fmt.Println(util.ItemTableString(items, relations, func(i todoist.Item) todoist.Time { return i.DueDateUtc }))
fmt.Println(util.ItemTableString(items, relations, func(i todoist.Item) todoist.Time { return i.Due.Date }))
return nil
},
}
Expand Down
48 changes: 26 additions & 22 deletions todoist/item.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,30 +12,34 @@ import (

type Item struct {
Entity
UserID ID `json:"user_id,omitempty"`
ProjectID ID `json:"project_id,omitempty"`
Content string `json:"content"`
DateString string `json:"date_string,omitempty"`
DateLang string `json:"date_lang,omitempty"`
DueDateUtc Time `json:"due_date_utc,omitempty"`
Priority int `json:"priority,omitempty"`
Indent int `json:"indent,omitempty"`
ItemOrder int `json:"item_order,omitempty"`
DayOrder int `json:"day_order,omitempty"`
Collapsed int `json:"collapsed,omitempty"`
Labels []ID `json:"labels,omitempty"`
AssignedByUID ID `json:"assigned_by_uid,omitempty"`
ResponsibleUID ID `json:"responsible_uid,omitempty"`
Checked int `json:"checked,omitempty"`
InHistory int `json:"in_history,omitempty"`
IsArchived int `json:"is_archived,omitempty"`
SyncID int `json:"sync_id,omitempty"`
DateAdded Time `json:"date_added,omitempty"`
CompletedDate Time `json:"completed_date"`
UserID ID `json:"user_id,omitempty"`
ProjectID ID `json:"project_id,omitempty"`
Content string `json:"content"`
Due struct {
Date Time `json:"date"`
Timezone string `json:"timezone"`
IsRecurring bool `json:"is_recurring"`
String string `json:"string"`
Lang string `json:"lang"`
} `json:"due,omitempty"`
Priority int `json:"priority,omitempty"`
Indent int `json:"indent,omitempty"`
ItemOrder int `json:"item_order,omitempty"`
DayOrder int `json:"day_order,omitempty"`
Collapsed int `json:"collapsed,omitempty"`
Labels []ID `json:"labels,omitempty"`
AssignedByUID ID `json:"assigned_by_uid,omitempty"`
ResponsibleUID ID `json:"responsible_uid,omitempty"`
Checked int `json:"checked,omitempty"`
InHistory int `json:"in_history,omitempty"`
IsArchived int `json:"is_archived,omitempty"`
SyncID int `json:"sync_id,omitempty"`
DateAdded Time `json:"date_added,omitempty"`
CompletedDate Time `json:"completed_date"`
}

func (i Item) IsOverDueDate() bool {
return i.DueDateUtc.Before(Time{time.Now().UTC()})
return i.Due.Date.Before(Time{time.Now().UTC()})
}

func (i Item) IsChecked() bool {
Expand Down Expand Up @@ -232,7 +236,7 @@ func (c ItemClient) FindByContent(substr string) []Item {
func (c ItemClient) FindByDueDate(time Time) []Item {
var res []Item
for _, i := range c.GetAll() {
if !i.DueDateUtc.IsZero() && i.DueDateUtc.Before(time) {
if !i.Due.Date.IsZero() && i.Due.Date.Before(time) {
res = append(res, i)
}
}
Expand Down
10 changes: 7 additions & 3 deletions todoist/reminder.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,13 @@ type Reminder struct {
ItemID ID `json:"item_id"`
Service string `json:"service"`
Type string `json:"type"`
DateString string `json:"date_string"`
DateLang string `json:"date_lang"`
DueDateUtc Time `json:"due_date_utc"`
Due struct {
Date Time `json:"date"`
Timezone string `json:"timezone"`
IsRecurring bool `json:"is_recurring"`
String string `json:"string"`
Lang string `json:"lang"`
} `json:"due"`
MmOffset int `json:"mm_offset"`
Name string `json:"name"`
LocLat string `json:"loc_lat"`
Expand Down

0 comments on commit 82b9edb

Please sign in to comment.