summaryrefslogtreecommitdiff
path: root/main.go
blob: bfce7b8233f27865f706db0387a337ca0af4f385 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
package main

import (
    "fmt"
    "flag"
    _ "log"
    //"bufio"
    "os"
    //"strings"
    _ "os/exec"
)

var svar string
var starttime,stoptime string
var projectid int
var newproject, newtask, stoptask, allproj bool

func init() {

    flag.BoolVar(&allproj,
        "all",
        false,
        "Show all Projects")
    flag.BoolVar(&newtask,
        "start",
        false,
        "Start a new Task in current project")
    flag.IntVar(&projectid,
        "project",
        0,
        "Specify which project to track")
    flag.BoolVar(&stoptask,
        "stop",
        false,
        "Stop the currently open task")
    flag.StringVar(&starttime,
        "starttime",
        "now",
        "")
    flag.StringVar(&stoptime,
        "stoptime",
        "now",
        "Stop to Track a Project")
    flag.BoolVar(&newproject,
        "new",
        false,
        "Create a new project")
    flag.StringVar(&svar, "svar", "bar", "A String Var")

    flag.Parse()

}

func main() {
    fmt.Println("Laboravi Started")
    initDB("./.mytimes.db")
    getLastProject()
    //getProjects()
    getOpenTask()

    if allproj {
        allProjects()
    }

    if newproject {
        //fmt.Print("Enter Project Name: ")
        //var input string
        //fmt.Scanln(&input)
        //in := bufio.NewReader(os.Stdin)
        //line, err := in.ReadString('\n')
        //line = strings.TrimSuffix(line, "\n")
        //checkErr(err)
//        fmt.Println(line)
        //newProject(line)
        newProject()
        os.Exit(0)
    } else if newtask {
        //fmt.Print("Specify Task: ")
        //in := bufio.NewReader(os.Stdin)
        //line, err := in.ReadString('\n')
        //line = strings.TrimSuffix(line, "\n")
        //checkErr(err)
  //      fmt.Println(line)
        //newTask(projectid,line)
        newTask(projectid)
        os.Exit(0)
    } else if stoptask {
        closeTask()
        showLastProject()
        getClosedTasks(0)
        //fmt.Print("Soon to Come...")
    } else if (starttime != "now") {
        //fmt.Print("Specify Task: ")
        //in := bufio.NewReader(os.Stdin)
        //line, err := in.ReadString('\n')
        //line = strings.TrimSuffix(line, "\n")
        //checkErr(err)
        //newTaskTime(projectid,line,starttime)

        newTaskTime(projectid,starttime)
        os.Exit(0)
        //fmt.Println("HmmmWTF")
        //fmt.Print("Soon to Come...")
    } else if (stoptime != "now") {
        fmt.Print("Soon to Come...")
    } 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())
}