import os, re,asyncfile, jester, asyncdispatch, htmlgen, asyncnet, net, browsers, parseutils, strutils, parseopt2
echo "\"./upload insecure\" to share also subdirectorys"
echo "\"./upload 5000\" to serve on port 5000"
echo "\"./upload insecure 5000\" to share also subdirectorys and serve on port 5000"
var port = 8080
var insecure_world = false
var html_temp = ""
html_temp.add ""
html_temp.add ""
html_temp.add ""
html_temp.add "
"
proc stringToUri(input: string): string =
var result = input.replace(re"\(", "%28")
result = result.replace(re"%", "%25")
result = result.replace(re"\s", "%20")
result = result.replace(re"\)", "%29")
result = result.replace(re"\,", "%2C")
result = result.replace(re"&", "%26")
result
proc uriToString(input: string): string =
var result = input.replace("%28", "(")
result = result.replace("%20", " ")
result = result.replace("%29", ")")
result = result.replace("%2C", ",")
result = result.replace("%26", "&")
result = result.replace("%25", "%")
result
proc parseCommArgs()=
for kind, key, val in getopt():
case key
of "insecure", "-i": insecure_world = true
if parseInt(key, port) == 0:
discard parseInt(key, port)
proc default() =
settings:
port = Port(port)
routes:
get "/":
var html = html_temp
html.add "