package main import ( "fmt" "flag" _ "log" //"bufio" "os" //"strings" _ "os/exec" ) //var svar string var starttime,stoptime string var projectid, edittaskid, editprojectid int var newproject, newtask, stoptask, allproj bool func init() { flag.BoolVar(&allproj, "all", false, "Show all Projects") flag.BoolVar(&newtask, "startnow", false, "Start a new Task in current project") flag.IntVar(&edittaskid, "edittask", 0, "Specify which Task to edit") flag.IntVar(&editprojectid, "editproject", 0, "Specify which project to edit") flag.IntVar(&projectid, "project", 0, "Specify which project to track") flag.BoolVar(&stoptask, "stopnow", false, "Stop the currently open task") flag.StringVar(&starttime, "start", "now", "Start a new Task in current project\nFormat: 'YYYY-MM-DD HH:MM' or 'HH:MM'") flag.StringVar(&stoptime, "stop", "now", "Stop to Track the current Task\nFormat: 'YYYY-MM-DD HH:MM' or 'HH:MM'") flag.BoolVar(&newproject, "new", false, "Create a new project") //flag.StringVar(&svar, "svar", "bar", "A String Var") flag.Parse() } func main() { if len(flag.Args())>0 { fmt.Println("Unknown Commands: ",flag.Args()) } fmt.Println("Laboravi Started") initDB("./.mytimes.db") getLastProject() //getProjects() getOpenTask() if allproj { allProjects() } if newproject { newProject() os.Exit(0) } else if newtask { newTask(projectid) showLastProject() getClosedTasks(0) showOpenTask() os.Exit(0) } else if stoptask { closeTask() showLastProject() getClosedTasks(0) showOpenTask() } else if (starttime != "now") { newTaskTime(projectid,starttime) os.Exit(0) } else if (stoptime != "now") { closeTaskTime(stoptime) showLastProject() getClosedTasks(0) showOpenTask() } else if (edittaskid>0) { editTask(edittaskid) } else if (editprojectid>0) { editProject(editprojectid) } else if (projectid>0) { setProject(projectid) showLastProject() getClosedTasks(0) showOpenTask() } else { showLastProject() getClosedTasks(0) showOpenTask() } //fmt.Println("Start Act:",actstart) //fmt.Println("Stop Act:",actstop) //fmt.Println("Project:",projectid) //fmt.Println("New Project:",newproject) //fmt.Println("svar:",svar) //fmt.Println("Unknown Commands: ",flag.Args()) }