diff --git a/base/nfs/dir.go b/base/nfs/dir.go index 50b9a6e6..a5d098ab 100644 --- a/base/nfs/dir.go +++ b/base/nfs/dir.go @@ -154,6 +154,7 @@ const ( ETC_CERT_PEM = "etc/cert/cert.pem" SRC_DOCUMENT = "src/document/" SRC_PRIVATE = "src/private/" + SRC_MAIN_PNG = "src/main.png" SRC_TEMPLATE = ice.SRC_TEMPLATE USR_TOOLKITS = ice.USR_TOOLKITS USR_ICEBERGS = ice.USR_ICEBERGS diff --git a/base/web/render.go b/base/web/render.go index 30159e33..dc951bc5 100644 --- a/base/web/render.go +++ b/base/web/render.go @@ -75,14 +75,16 @@ func Render(m *ice.Message, cmd string, args ...ice.Any) bool { res := m.Cmdx(nfs.CAT, arg[0]) fieldset := "fieldset." + m.Option(ctx.INDEX) m.W.Write([]byte(kit.ReplaceAll(res, + "$content", fieldset+">div.output>div.layout>div.layout>div.content", + "$profile", fieldset+">div.output>div.layout>div.layout>div.profile", + "$display", fieldset+">div.output>div.layout>div.display", + "$project", fieldset+">div.output>div.project", "$option", fieldset+">form.option", "$action", fieldset+">div.action", "$output", fieldset+">div.output", - "$project", fieldset+">div.output>div.project", - "$display", fieldset+">div.output>div.layout>div.display", - "$profile", fieldset+">div.output>div.layout>div.layout>div.profile", - "$content", fieldset+">div.output>div.layout>div.layout>div.content", - "$fieldset", fieldset, "$index", m.Option(ctx.INDEX), + "$status", fieldset+">div.status", + "$fieldset", fieldset, + "$index", m.Option(ctx.INDEX), "$input", "body>div.input.float."+m.Option(ctx.INDEX), ))) break diff --git a/base/web/spide.go b/base/web/spide.go index a54aa517..b369dad4 100644 --- a/base/web/spide.go +++ b/base/web/spide.go @@ -215,15 +215,17 @@ func _spide_save(m *ice.Message, action, file, uri string, res *http.Response) { m.Cmdy(CACHE, DOWNLOAD, res.Header.Get(html.ContentType), uri, kit.Dict(RESPONSE, res), m.OptionCB(SPIDE)) m.Echo(m.Append(mdb.HASH)) case SPIDE_STREAM: + cb, ok := m.Optionv(SPIDE_STREAM).(func(string)) + if !ok { + cb = func(text string) { PushNoticeGrow(m, m.Option("which"), text) } + } b := make([]byte, 1024) - cb := m.Optionv(SPIDE_STREAM).(func(string)) for { - n, e := res.Body.Read(b) - if e != nil { + if n, e := res.Body.Read(b); e != nil { break + } else { + cb(string(b[:n])) } - m.Info("what %v", string(b[:n])) - cb(string(b[:n])) } default: var data ice.Any