-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathutils.go
69 lines (56 loc) · 1.48 KB
/
utils.go
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
package main
import (
"io/ioutil"
"os"
"path/filepath"
"strconv"
)
// Generates a boring dummy template.
func generateDummyTemplate() map[string]string {
var template = make(map[string]string)
template["name"] = "template"
template["template"] = "<html><body><h1>Hello world</h1><p>Some template</p></body></html>"
return template
}
// Generates num (int) boring dummy templates.
func generateDummyTemplates(num int) [10]map[string]string {
var response [10]map[string]string
limit := 10
if num < limit {
limit = num
}
for i := 0; i < limit; i++ {
response[i] = generateDummyTemplate()
}
return response
}
// Tool for generating a JSON blob containing an error and a HTTP status code
func generateJSONErr(status_code int, message string) map[string]string {
var response = make(map[string]string)
response["status_code"] = strconv.Itoa(status_code)
response["message"] = message
return response
}
func check(e error) {
if e != nil {
panic(e)
}
}
func loadDefaultTemplates(templates_path string) {
file_list := []string{}
err := filepath.Walk(templates_path, func(path string, f os.FileInfo, err error) error {
if path != templates_path {
file_list = append(file_list, path)
}
return nil
})
check(err)
for _, file := range file_list {
data, err := ioutil.ReadFile(file)
check(err)
var extension = filepath.Ext(file)
var name = file[len(templates_path) : len(file)-len(extension)]
template := Template{name, string(data)}
insertTemplate(DB, template)
}
}