Refactored output

This commit is contained in:
マリウス 2020-10-15 22:07:36 +01:00
parent 5ab14a2467
commit 398460201e
No known key found for this signature in database
GPG key ID: C228EF0A530AF06F
6 changed files with 34 additions and 27 deletions

View file

@ -35,7 +35,7 @@ func InitDatabase() (*Database, error) {
func (database *Database) NewID() (string) {
id, err := uuid.NewRandom()
if err != nil {
log.Fatalln("Could not generate UUID: %+v", err)
log.Fatalln("could not generate UUID: %+v", err)
}
return id.String()
}
@ -91,11 +91,11 @@ func (database *Database) FinishEntry(user string, entry Entry) (string, error)
dberr := database.DB.Update(func(tx *buntdb.Tx) error {
runningEntryId, grerr := tx.Get(user + ":status:running")
if grerr != nil {
return errors.New("No currently running entry found!")
return errors.New("no currently running entry found!")
}
if runningEntryId != entry.ID {
return errors.New("Specified entry is not currently running!")
return errors.New("specified entry is not currently running!")
}
_, _, srerr := tx.Set(user + ":status:running", "", nil)

View file

@ -103,14 +103,14 @@ func (entry *Entry) GetOutputForTrack(isRunning bool, wasRunning bool) (string)
}
if entry.Task != "" && entry.Project != "" {
return fmt.Sprintf("▷ %s %s on %s%s\n", outputPrefix, color.FgLightWhite.Render(entry.Task), color.FgLightWhite.Render(entry.Project), outputSuffix)
return fmt.Sprintf("%s %s %s on %s%s\n", CharTrack, outputPrefix, color.FgLightWhite.Render(entry.Task), color.FgLightWhite.Render(entry.Project), outputSuffix)
} else if entry.Task != "" && entry.Project == "" {
return fmt.Sprintf("▷ %s %s%s\n", outputPrefix, color.FgLightWhite.Render(entry.Task), outputSuffix)
return fmt.Sprintf("%s %s %s%s\n", CharTrack, outputPrefix, color.FgLightWhite.Render(entry.Task), outputSuffix)
} else if entry.Task == "" && entry.Project != "" {
return fmt.Sprintf("▷ %s task on %s%s\n", outputPrefix, color.FgLightWhite.Render(entry.Project), outputSuffix)
return fmt.Sprintf("%s %s task on %s%s\n", CharTrack, outputPrefix, color.FgLightWhite.Render(entry.Project), outputSuffix)
}
return fmt.Sprintf("▷ %s task%s\n", outputPrefix, outputSuffix)
return fmt.Sprintf("%s %s task%s\n", CharTrack, outputPrefix, outputSuffix)
}
func (entry *Entry) GetOutputForFinish() (string) {
@ -122,12 +122,12 @@ func (entry *Entry) GetOutputForFinish() (string) {
outputSuffix = fmt.Sprintf(" for %sh", color.FgLightWhite.Render(trackDiffOut.Format("15:04")))
if entry.Task != "" && entry.Project != "" {
return fmt.Sprintf("□ finished tracking %s on %s%s\n", color.FgLightWhite.Render(entry.Task), color.FgLightWhite.Render(entry.Project), outputSuffix)
return fmt.Sprintf("%s finished tracking %s on %s%s\n", CharFinish, color.FgLightWhite.Render(entry.Task), color.FgLightWhite.Render(entry.Project), outputSuffix)
} else if entry.Task != "" && entry.Project == "" {
return fmt.Sprintf("□ finished tracking %s%s\n", color.FgLightWhite.Render(entry.Task), outputSuffix)
return fmt.Sprintf("%s finished tracking %s%s\n", CharFinish, color.FgLightWhite.Render(entry.Task), outputSuffix)
} else if entry.Task == "" && entry.Project != "" {
return fmt.Sprintf(" finished tracking task on %s%s\n", color.FgLightWhite.Render(entry.Project), outputSuffix)
return fmt.Sprintf("%s finished tracking task on %s%s\n", CharFinish, color.FgLightWhite.Render(entry.Project), outputSuffix)
}
return fmt.Sprintf("□ finished tracking task%s\n", outputSuffix)
return fmt.Sprintf("%s finished tracking task%s\n", CharFinish, outputSuffix)
}

View file

@ -16,24 +16,24 @@ var finishCmd = &cobra.Command{
runningEntryId, err := database.GetRunningEntryId(user)
if err != nil {
fmt.Printf("△ %+v\n", err)
fmt.Printf("%s %+v\n", CharError, err)
os.Exit(1)
}
if runningEntryId == "" {
fmt.Printf("□ not running\n")
fmt.Printf("%s not running\n", CharFinish)
os.Exit(1)
}
runningEntry, err := database.GetEntry(user, runningEntryId)
if err != nil {
fmt.Printf("△ %+v\n", err)
fmt.Printf("%s %+v\n", CharError, err)
os.Exit(1)
}
tmpEntry, err := NewEntry(runningEntry.ID, begin, finish, project, task, user)
if err != nil {
fmt.Printf("△ %+v\n", err)
fmt.Printf("%s %+v\n", CharError, err)
os.Exit(1)
}
@ -57,7 +57,7 @@ var finishCmd = &cobra.Command{
_, err = database.FinishEntry(user, runningEntry)
if err != nil {
fmt.Printf("△ %+v\n", err)
fmt.Printf("%s %+v\n", CharError, err)
os.Exit(1)
}
@ -76,7 +76,7 @@ func init() {
var err error
database, err = InitDatabase()
if err != nil {
fmt.Printf("△ %+v\n", err)
fmt.Printf("%s %+v\n", CharError, err)
os.Exit(1)
}
}

View file

@ -15,6 +15,13 @@ var task string
var force bool
const(
CharTrack = "▶"
CharFinish = "■"
CharErase = "◀"
CharError = "▲"
)
var rootCmd = &cobra.Command{
Use: "zeit",
Short: "Command line Zeiterfassung",
@ -23,7 +30,7 @@ var rootCmd = &cobra.Command{
func Execute() {
if err := rootCmd.Execute(); err != nil {
fmt.Printf("△ %+v\n", err)
fmt.Printf("%s %+v\n", CharError, err)
os.Exit(-1)
}
}

View file

@ -15,18 +15,18 @@ var trackCmd = &cobra.Command{
runningEntryId, err := database.GetRunningEntryId(user)
if err != nil {
fmt.Printf("△ %+v\n", err)
fmt.Printf("%s %+v\n", CharError, err)
os.Exit(1)
}
if runningEntryId != "" {
fmt.Printf("▷ a task is already running\n")
fmt.Printf("%s a task is already running\n", CharTrack)
os.Exit(1)
}
newEntry, err := NewEntry("", begin, finish, project, task, user)
if err != nil {
fmt.Printf("△ %+v\n", err)
fmt.Printf("%s %+v\n", CharError, err)
os.Exit(1)
}
@ -34,7 +34,7 @@ var trackCmd = &cobra.Command{
_, err = database.AddEntry(user, newEntry, isRunning)
if err != nil {
fmt.Printf("△ %+v\n", err)
fmt.Printf("%s %+v\n", CharError, err)
os.Exit(1)
}
@ -54,7 +54,7 @@ func init() {
var err error
database, err = InitDatabase()
if err != nil {
fmt.Printf("△ %+v\n", err)
fmt.Printf("%s %+v\n", CharError, err)
os.Exit(1)
}
}

View file

@ -15,18 +15,18 @@ var trackingCmd = &cobra.Command{
runningEntryId, err := database.GetRunningEntryId(user)
if err != nil {
fmt.Printf("△ %+v\n", err)
fmt.Printf("%s %+v\n", CharError, err)
os.Exit(1)
}
if runningEntryId == "" {
fmt.Printf("□ not running\n")
fmt.Printf("%s not running\n", CharFinish)
os.Exit(1)
}
runningEntry, err := database.GetEntry(user, runningEntryId)
if err != nil {
fmt.Printf("△ %+v\n", err)
fmt.Printf("%s %+v\n", CharError, err)
os.Exit(1)
}
@ -41,7 +41,7 @@ func init() {
var err error
database, err = InitDatabase()
if err != nil {
fmt.Printf("△ %+v\n", err)
fmt.Printf("%s %+v\n", CharError, err)
os.Exit(1)
}
}