Skip to content

Commit

Permalink
feat: output to UI
Browse files Browse the repository at this point in the history
  • Loading branch information
Sciroccogti committed May 6, 2020
1 parent 62522fe commit 5dc898e
Show file tree
Hide file tree
Showing 8 changed files with 63 additions and 66 deletions.
2 changes: 1 addition & 1 deletion assets.go

Large diffs are not rendered by default.

8 changes: 4 additions & 4 deletions foldest.go
Original file line number Diff line number Diff line change
Expand Up @@ -56,9 +56,9 @@ func main() {
// You may use console.log to debug your JS code, it will be printed via
// log.Println(). Also exceptions are printed in a similar manner.
pf.Ui.Eval(`
console.log("Hello, world!");
console.log('Multiple values:', [1, false, {"x":5}]);
`)
console.log("Hello, world!");
console.log('Multiple values:', [1, false, {"x":5}]);
`)

// Wait until the interrupt signal arrives or browser window is closed
sigc := make(chan os.Signal)
Expand All @@ -73,7 +73,7 @@ func main() {
// utils.Plog.Init(&stdout)
// go func() {
// for {
// utils.Plog.Print("hoho\n")
// utils.Plog.Print("Scanning %c[0;34m%s%c[0m ...\n", 0x1B, "path", 0x1B)
// utils.Plog.Print("hehe\n")
// }

Expand Down
23 changes: 11 additions & 12 deletions utils/classify.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package utils

import (
"fmt"
"io/ioutil"
"os"
"reflect"
Expand All @@ -24,13 +23,13 @@ func ReadRules() (rules *Rules) {

yamlFile, err := ioutil.ReadFile("rules.yml")
if err != nil {
fmt.Printf("Error while reading rules.yml :\n")
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while reading rules.yml :\n")
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
}
err = yaml.Unmarshal(yamlFile, rules)
if err != nil {
fmt.Printf("Error while reading rules.yml :\n")
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while reading rules.yml :\n")
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
}

return rules
Expand Down Expand Up @@ -63,11 +62,11 @@ func doRule(rule *Rule, path string, isVerbose bool) {
}
_, err := os.Stat(path + rule.Name)
if err != nil {
fmt.Printf("Making folder %c[0;33m%s%c[0m ...\n", 0x1B, rule.Name, 0x1B)
Plog.Print("Making folder %c[0;33m%s%c[0m ...\n", 0x1B, rule.Name, 0x1B)
err := os.Mkdir(path+rule.Name, 0777)
if err != nil {
fmt.Printf("Error while making folder %c[0;33m%s%c[0m ...\n", 0x1B, rule.Name, 0x1B)
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while making folder %c[0;33m%s%c[0m ...\n", 0x1B, rule.Name, 0x1B)
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
}
}

Expand All @@ -90,22 +89,22 @@ func doRule(rule *Rule, path string, isVerbose bool) {
modTime, strerr := GetFileModTime(path + file.Name())
if strerr == "" {
if isVerbose {
fmt.Printf("%c[0;34m%s%c[0m %c[0;32m%s%c[0m %d\n", 0x1B, file.Name(), 0x1B, 0x1B, modTime, 0x1B, file.Size())
Plog.Print("%c[0;34m%s%c[0m %c[0;32m%s%c[0m %d\n", 0x1B, file.Name(), 0x1B, 0x1B, modTime, 0x1B, file.Size())
}
// If file reaches deleteday
if time.Now().Unix()-modTime.Unix() >= int64(rule.Thresh*86400) {
if (rule.Maxsize <= 0 || file.Size() < (int64)(rule.Maxsize)*1024*1024) && file.Size() > (int64)(rule.Minsize)*1024*1024 {
if isVerbose {
fmt.Printf("%c[0;34m%s%c[0m matches %c[0;33m%s%c[0m\n", 0x1B, file.Name(), 0x1B, 0x1B, rule.Name, 0x1B)
Plog.Print("%c[0;34m%s%c[0m matches %c[0;33m%s%c[0m\n", 0x1B, file.Name(), 0x1B, 0x1B, rule.Name, 0x1B)
}
src := path + file.Name()
des := path + rule.Name + file.Name()
MoveAll(file, src, des)
}
}
} else {
fmt.Printf("Error while scanning %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while scanning %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
}
}
}
Expand Down
12 changes: 6 additions & 6 deletions utils/conf.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,13 @@ func ReadConf() (conf *Conf) {
} else {
yamlFile, err := ioutil.ReadFile("conf.yml")
if err != nil {
fmt.Printf("Error while reading conf.yml :\n")
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while reading conf.yml :\n")
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
}
err = yaml.Unmarshal(yamlFile, conf)
if err != nil {
fmt.Printf("Error while reading conf.yml :\n")
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while reading conf.yml :\n")
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
}
}

Expand Down Expand Up @@ -93,8 +93,8 @@ func SaveConf(conf *Conf) {
Plog.Print("Saving conf.yml ...\n")
yamlChanged, err := yaml.Marshal(conf)
if err != nil {
fmt.Printf("Error while saving conf.yml :\n")
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while saving conf.yml :\n")
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
}
err = ioutil.WriteFile("conf.yml", yamlChanged, 0644)
}
27 changes: 13 additions & 14 deletions utils/file.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package utils

import (
"fmt"
"io"
"io/ioutil"
"os"
Expand Down Expand Up @@ -51,25 +50,25 @@ func CopyFile(src, des string) (written int64, err error) {
func MoveAll(file os.FileInfo, src, des string) {
// Check if file already existed in rule dir
if _, err := os.Stat(des); !os.IsNotExist(err) {
fmt.Printf("Error while moving %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
fmt.Printf("\t%c[0;31m%s already existed in %s%c[0m\n", 0x1B, file.Name(), strings.Replace(des, file.Name(), "", 1), 0x1B)
Plog.Print("Error while moving %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
Plog.Print("\t%c[0;31m%s already existed in %s%c[0m\n", 0x1B, file.Name(), strings.Replace(des, file.Name(), "", 1), 0x1B)
} else {
if !file.IsDir() { // file, not folder
_, err := CopyFile(src, des)
if err != nil {
fmt.Printf("Error while moving %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while moving %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
}
err = os.Remove(src)
if err != nil {
fmt.Printf("Error while moving %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while moving %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
}
} else { // folder
err := os.Rename(src, des)
if err != nil {
fmt.Printf("Error while moving %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while moving %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
}
}
}
Expand All @@ -79,20 +78,20 @@ func MoveAll(file os.FileInfo, src, des string) {
func CheckDir(path string) (isDir bool) {
info, err := os.Stat(path)
if err != nil || !info.IsDir() {
fmt.Printf("Error while scanning %c[0;34m%s%c[0m :", 0x1B, path, 0x1B)
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while scanning %c[0;34m%s%c[0m :", 0x1B, path, 0x1B)
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
return false
}
return true
}

//OpenDir : Open a folder
func OpenDir(path string) (dir []os.FileInfo) {
fmt.Printf("Scanning %c[0;34m%s%c[0m ...\n", 0x1B, path, 0x1B)
Plog.Print("Scanning %c[0;34m%s%c[0m ...\n", 0x1B, path, 0x1B)
dir, err := ioutil.ReadDir(path)
if err != nil {
fmt.Printf("Error while scanning %c[0;34m%s%c[0m :", 0x1B, path, 0x1B)
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while scanning %c[0;34m%s%c[0m :", 0x1B, path, 0x1B)
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
return nil
}
return dir
Expand Down
17 changes: 12 additions & 5 deletions utils/logjs.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package utils

import (
"fmt"
"regexp"
"strings"
"sync"
)

Expand Down Expand Up @@ -36,10 +36,17 @@ func (pl *Logjs) Print(format string, a ...interface{}) {
// mu.Lock()
// defer mu.Unlock()
s := fmt.Sprintf(format, a...)
end := regexp.MustCompile(`.*?%c[0;\dm.*?(%c[0m)`)
s = end.ReplaceAllString(s, "</span>")
red := regexp.MustCompile(`.*?(%c[0;31m).*?%c[0m`)
s = red.ReplaceAllString(s, "<span style=\"color: red;\">")
s = strings.ReplaceAll(s, (string)(0x1B)+"[0m", "</span>")
s = strings.ReplaceAll(s, (string)(0x1B)+"[0;31m", "<span style=\"color: red;\">")
s = strings.ReplaceAll(s, (string)(0x1B)+"[0;32m", "<span style=\"color: green;\">")
s = strings.ReplaceAll(s, (string)(0x1B)+"[0;33m", "<span style=\"color: yellow;\">")
s = strings.ReplaceAll(s, (string)(0x1B)+"[0;34m", "<span style=\"color: blue;\">")
// green := regexp.MustCompile(`.*?(%c\[0;32m)%s%c\[0m`)
// s = green.ReplaceAllString(s, "<span style=\"color: green;\">")
// yellow := regexp.MustCompile(`.*?(%c\[0;33m)%s%c\[0m`)
// s = yellow.ReplaceAllString(s, "<span style=\"color: yellow;\">")
// blue := regexp.MustCompile(`.*?(%c\[0;34m)%s%c\[0m`)
// s = blue.ReplaceAllString(s, "<span style=\"color: blue;\">")
*Plog.stdout <- s
// Plog.Buf.WriteString(line)
}
Expand Down
27 changes: 13 additions & 14 deletions utils/tmpbin.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
package utils

import (
"fmt"
"os"
"time"
)
Expand All @@ -11,11 +10,11 @@ func Manage(conf *Conf) {
// Make dir 'tmpbin/'
_, err := os.Stat(conf.Targetdir + conf.Tmpbin.Name)
if err != nil {
fmt.Printf("Making folder %c[0;34m%s%c[0m ...\n", 0x1B, conf.Tmpbin.Name, 0x1B)
Plog.Print("Making folder %c[0;34m%s%c[0m ...\n", 0x1B, conf.Tmpbin.Name, 0x1B)
err := os.Mkdir(conf.Targetdir+conf.Tmpbin.Name, 0777)
if err != nil {
fmt.Printf("Error while making folder %c[0;34m%s%c[0m ...\n", 0x1B, conf.Tmpbin.Name, 0x1B)
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while making folder %c[0;34m%s%c[0m ...\n", 0x1B, conf.Tmpbin.Name, 0x1B)
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
}
}

Expand All @@ -37,22 +36,22 @@ func Manage(conf *Conf) {
}

if conf.Verbose {
fmt.Printf("%c[0;34m%s%c[0m %c[0;32m%s%c[0m\n", 0x1B, file.Name(), 0x1B, 0x1B, modTime, 0x1B)
Plog.Print("%c[0;34m%s%c[0m %c[0;32m%s%c[0m\n", 0x1B, file.Name(), 0x1B, 0x1B, modTime, 0x1B)
}

// If file reaches thresh
if time.Now().Unix()-modTime.Unix() >= int64(conf.Tmpbin.Thresh*86400) {
//if conf.Verbose {
fmt.Printf("Moving %c[0;34m%s%c[0m\n", 0x1B, file.Name(), 0x1B)
Plog.Print("Moving %c[0;34m%s%c[0m\n", 0x1B, file.Name(), 0x1B)
//}
src := conf.Targetdir + file.Name()
des := conf.Targetdir + conf.Tmpbin.Name + file.Name()
MoveAll(file, src, des)
}

} else {
fmt.Printf("Error while scanning %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while scanning %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
}
}

Expand All @@ -65,13 +64,13 @@ func Manage(conf *Conf) {
modTime, strerr := GetFileModTime(conf.Targetdir + conf.Tmpbin.Name + file.Name())
if strerr == "" {
if conf.Verbose {
fmt.Printf("%c[0;34m%s%c[0m %c[0;32m%s%c[0m\n", 0x1B, file.Name(), 0x1B, 0x1B, modTime, 0x1B)
Plog.Print("%c[0;34m%s%c[0m %c[0;32m%s%c[0m\n", 0x1B, file.Name(), 0x1B, 0x1B, modTime, 0x1B)
}

// If file reaches deleteday
if time.Now().Unix()-modTime.Unix() >= int64(conf.Tmpbin.Delete*86400) {
//if conf.Verbose {
fmt.Printf("Deleting %c[0;34m%s%c[0m\n", 0x1B, file.Name(), 0x1B)
Plog.Print("Deleting %c[0;34m%s%c[0m\n", 0x1B, file.Name(), 0x1B)
//}
src := conf.Targetdir + conf.Tmpbin.Name + file.Name()
if file.IsDir() {
Expand All @@ -81,13 +80,13 @@ func Manage(conf *Conf) {
}

if err != nil {
fmt.Printf("Error while deleting %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while deleting %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
}
}
} else {
fmt.Printf("Error while scanning %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
fmt.Printf("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
Plog.Print("Error while scanning %c[0;34m%s%c[0m :", 0x1B, file.Name(), 0x1B)
Plog.Print("\t%c[0;31m%s%c[0m\n", 0x1B, err, 0x1B)
}
}
}
13 changes: 3 additions & 10 deletions www/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,6 @@
<div class="output-outer">
<div class="output-inner">
Welcome to Foldest, Press the button to start.<br>
<!-- Lorem ipsum dolor sit amet, consectetur adipisicing elit. Beatae nemo, sed porro, officiis, commodi sunt mollitia nihil deleniti perspiciatis repellat facere excepturi laborum. Esse iusto, quam repudiandae consequatur doloremque, id! -->
</div>
</div>
</div>
Expand All @@ -112,7 +111,6 @@
const panel = document.querySelector('.panel');
const btnStart = document.querySelector('.btn-start');
const inner = document.querySelector('.output-inner');
// const btnDecr = document.querySelector('.btn-decr');

// We use async/await because Go functions are asynchronous
const render = async () => {
Expand All @@ -123,21 +121,16 @@
panel.innerText = `Exited`;
document.getElementsByClassName("btn-start").disabled = false;
}
inner.innerText += `${await window.getline()}`;
inner.insertAdjacentHTML('beforeend', `${await window.getline()}`);
inner.insertAdjacentHTML('beforeend', "<br>");
render();
console.log("render")
// counter.innerText = `Count: ${await window.counterValue()}`;
console.log("rendering...")
};

btnStart.addEventListener('click', async () => {
await mainStart(); // Call Go function
render();
});

// btnDecr.addEventListener('click', async () => {
// await counterAdd(-1); // Call Go function
// render();
// });
render();
</script>
</body>
Expand Down

0 comments on commit 5dc898e

Please sign in to comment.