74 lines
1.5 KiB
Go

// +build js
package main
import (
"crypto/md5"
"encoding/hex"
"github.com/gopherjs/gopherjs/js"
)
func O() *js.Object {
return js.Global.Get("Object").New()
}
func Alert(in interface{}) {
js.Global.Call("alert", in)
}
//Converts string to MD5 hex representation, avoid using fmt package
func StringToMD5(input string) string {
sum := md5.Sum([]byte(input))
dst := make([]byte, hex.EncodedLen(len(sum)))
hex.Encode(dst, sum[:])
return string(dst)
}
func BytesToMD5(input []byte) string {
sum := md5.Sum(input)
dst := make([]byte, hex.EncodedLen(len(sum)))
hex.Encode(dst, sum[:])
return string(dst)
}
/*
func UploadHIDScript(filename string, content string) (err error) {
ctx,cancel := context.WithTimeout(context.Background(), 30*time.Second)
defer cancel()
//ToDo: filename could be generated here and returned as result
//ToDo: split upload data into chunks
client := pb.NewP4WNP1Client(serverAddr)
_,err = client.FSWriteFile(
ctx,
&pb.WriteFileRequest{
Data: []byte(content),
Append: false,
Filename:filename,
Folder: pb.AccessibleFolder_TMP,
MustNotExist: false,
},
)
return err
}
func RunHIDScript(filename string, timeoutSeconds uint32) (job *pb.HIDScriptJob,err error) {
ctx,cancel := context.WithTimeout(context.Background(), 30*time.Second)
defer cancel()
//ToDo: split upload data into chunks
client := pb.NewP4WNP1Client(serverAddr)
return client.HIDRunScriptJob(
ctx,
&pb.HIDScriptRequest{
ScriptPath: "/tmp/" + filename,
TimeoutSeconds: timeoutSeconds,
},
)
}
*/