parent
32e86d1129
commit
e29d79e5f9
@ -0,0 +1,2 @@
|
|||||||
|
|
||||||
|
</html>
|
@ -0,0 +1,11 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>binit</title>
|
||||||
|
<style type="text/css">
|
||||||
|
pre {margin-left: 50px; border-left: solid 3px #0000ff; padding:
|
||||||
|
5px;}
|
||||||
|
</style>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -0,0 +1,7 @@
|
|||||||
|
<body>
|
||||||
|
|
||||||
|
<pre>
|
||||||
|
{{CONTENT}}
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
</body>
|
@ -0,0 +1,84 @@
|
|||||||
|
/*
|
||||||
|
*
|
||||||
|
* Templating support for binit
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
package main
|
||||||
|
|
||||||
|
|
||||||
|
import (
|
||||||
|
"os"
|
||||||
|
"io/ioutil"
|
||||||
|
"regexp"
|
||||||
|
"errors"
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
func prepare_paste_page(c *Config, paste_ID string) (string, error) {
|
||||||
|
|
||||||
|
s:= ""
|
||||||
|
|
||||||
|
// insert header
|
||||||
|
|
||||||
|
head_file := c.templ_dir + "/header.html"
|
||||||
|
|
||||||
|
f_head, err := os.Open(head_file)
|
||||||
|
defer f_head.Close()
|
||||||
|
|
||||||
|
if err == nil {
|
||||||
|
cont, err := ioutil.ReadFile(head_file)
|
||||||
|
if err == nil{
|
||||||
|
s += string(cont)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// insert content
|
||||||
|
|
||||||
|
cont_file := c.paste_dir + "/" + paste_ID
|
||||||
|
f_cont, err := os.Open(cont_file)
|
||||||
|
defer f_cont.Close()
|
||||||
|
|
||||||
|
if err == nil {
|
||||||
|
// Let's read the content of the paste
|
||||||
|
|
||||||
|
cont, err := ioutil.ReadFile(cont_file)
|
||||||
|
if err == nil {
|
||||||
|
paste_buf := string(cont)
|
||||||
|
|
||||||
|
// ...Let's read the template
|
||||||
|
templ_file := c.templ_dir + "/templ.html"
|
||||||
|
f_templ, err := os.Open(templ_file)
|
||||||
|
defer f_templ.Close()
|
||||||
|
|
||||||
|
cont, err := ioutil.ReadFile(templ_file)
|
||||||
|
if err == nil {
|
||||||
|
tmpl := string(cont)
|
||||||
|
// ...and replace {{CONTENT}} with the paste itself!
|
||||||
|
re,_ := regexp.Compile("{{CONTENT}}")
|
||||||
|
tmpl = string(re.ReplaceAll([]byte(tmpl), []byte(paste_buf)))
|
||||||
|
|
||||||
|
s += tmpl
|
||||||
|
|
||||||
|
} else {
|
||||||
|
return "", errors.New("Error opening template file")
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
return "", errors.New("Error opening paste")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// insert footer
|
||||||
|
foot_file := c.templ_dir + "/footer.html"
|
||||||
|
f_foot, err := os.Open(foot_file)
|
||||||
|
defer f_foot.Close()
|
||||||
|
|
||||||
|
if err == nil {
|
||||||
|
cont, err := ioutil.ReadFile(foot_file)
|
||||||
|
if err == nil{
|
||||||
|
s += string(cont)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return s, nil
|
||||||
|
}
|
Loading…
Reference in new issue