@program webmin.muf 1 10000 d i $include $lib/cgiparse $include $lib/alynna $include $web/login $def moderator? 5 perm.check $def operator? 6 perm.check $def admin? 7 perm.check $def god? 8 perm.check $def pclean "" ":" subst dup 1 1 midstr "/" stringcmp not if 1 strcut swap pop then dup dup strlen 1 midstr "/" stringcmp not if dup strlen -- strcut pop then INCLUDE_WEBVARS : perm.denyEx var! level { "

Permission Denied

" }w { "Go away..." }w level @ if { "WWW(Admin): Permission denied " myref "@" myip ": " myref not if 0 else myref mlevel then "<" level @ }cat logstatus else { "WWW(Admin): Permission denied " myref "@" myip }cat logstatus then ; : perm.deny 0 perm.denyEx ; : perm.check var! level myref not if level @ perm.denyEx 0 else myref mlevel level @ < if level @ perm.denyEx 0 else 1 then then ; : sys.mainmenu { "

Options:
" }w ; : list.edit "Wlistobj" getstat dup if match ok? not if { "

The object specified was not valid, reverting to $var/www

" }w "$var/www" "Wlistobj" setstat then else { "

The object was not specified, reverting to $var/www

" }w "$var/www" "Wlistobj" setstat then "Wlistpath" getstat dup if pclean "wlistpath" setstat else "" "wlistpath" setstat then { "

Edit list

" }w { "
" }w { "Web object: " }w { "
" }w { "  Web path: " }w { "
" }w { "" }w { "
" }w { "
" }w ; : list.change "webobj" post match ok? if "submit" post "write" smatch if "webobj" post match "webpath" post "page" raw setlist { "

... list was edited ...

" }w then "webobj" post "Wlistobj" setstat "webpath" post "Wlistpath" setstat else { "

The object specified was not valid.

" }w then list.edit ; : page.edit "Wwebobj" getstat dup if match ok? not if { "

The object specified was not valid, reverting to $var/www

" }w "$var/www" "Wwebobj" setstat then else { "

The object was not specified, reverting to $var/www

" }w "$var/www" "Wwebobj" setstat then "Wwebpath" getstat dup if pclean "wwebpath" setstat else "" "wwebpath" setstat then { "

Edit page

" }w { "
" }w { "Web object: " }w { "
" }w { "  Web path: " }w { "
" }w { "" }w { "
" }w { "
" }w { "
View this page" }w "Wlistobj" getstat "$var/www" smatch if "Wlistpath" getstat not if { "

Be careful, you are editing the front page!

" }w then then ; : page.change "webobj" post match ok? if "submit" post "write" smatch if "webobj" post match "/_/www" "webpath" post dup if "/" swap strcat else pop "" then strcat "page" raw setlist { "

... page was edited ...

" }w then "webobj" post "Wwebobj" setstat "webpath" post "Wwebpath" setstat else { "

The object specified was not valid.

" }w then page.edit ; : helpgen.edit "Hwebobj" getstat dup if match ok? not if { "

The object specified was not valid, reverting to $var/www

" }w "$var/www" "Hwebobj" setstat then else { "

The object was not specified, reverting to $var/www

" }w "$var/www" "Hwebobj" setstat then "Hwebpath" getstat dup if pclean "Hwebpath" setstat else "" "Hwebpath" setstat then { "

Edit help

" }w { "
" }w { "Web object: " }w { "
" }w { "  Web path: " }w { "
" }w { "" }w { "
" }w { "
" }w { "
View this page" }w "Hlistobj" getstat "$var/www" smatch if "Hlistpath" getstat not if { "

Be careful, you are editing the front page!

" }w then then ; : helpgen.change "webobj" post match ok? if "submit" post "write" smatch if "webobj" post match "/_/www" "webpath" post dup if "/" swap strcat else pop "" then strcat "/_help" strcat "page" raw "
" array_join astr setprop { "

... page was edited ...

" }w then "webobj" post "Hwebobj" setstat "webpath" post "Hwebpath" setstat else { "

The object specified was not valid.

" }w then helpgen.edit ; : param.edit { "
" }w { "
" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "" }w { "
Site body tag:
Proto coders list:
Stable src tag:
Beta src tag:
Stable winbin tag:
Beta winbin tag:
Stable winbinssl tag:
Beta winbinssl tag:
MUF websrv tag:
Basedb tag:
" }w ; : param.change myref not if { "

You can unlock, any door, if you only have the key.

" }w { "
Anotherwords, you need to log in.
" }w { "Return to selection page..." }w exit then WWW "_bodytag" "bodytag" post setprop WWW "_protomuckers" "protomuckers" post setprop WWW "_release/stable/source" "ssrc" post setprop WWW "_release/beta/source" "bsrc" post setprop WWW "_release/stable/winproto" "swin" post setprop WWW "_release/beta/winproto" "bwin" post setprop WWW "_release/stable/winproto-ssl" "swinssl" post setprop WWW "_release/beta/winproto-ssl" "bwinssl" post setprop WWW "_release/stable/muf-webserver" "mufwsrv" post setprop WWW "_release/stable/basedb" "basedb" post setprop { "

You just done updated the site information.

" }w param.edit ; : news.edit { "

Edit news

" }w { "" }w { "" }w { "
" }w { "
" }w ; : news.change WWW "NEWS" { "News" raw foreach swap pop dup not if pop "{null}" then repeat }array array_put_proplist { "

... news was edited ...

" }w news.edit ; : main PARSE_HEADERS { WWW "_/www/header" mpilist }w moderator? if wparam @ tolower case "page.change" smatch when admin? if page.change then end "page" smatch when admin? if page.edit then end "helpgen.change" smatch when moderator? if helpgen.change then end "helpgen" smatch when moderator? if helpgen.edit then end "list.change" smatch when admin? if list.change then end "list" smatch when admin? if list.edit then end "options.change" smatch when admin? if param.change then end "options" smatch when admin? if param.edit then end "news.change" smatch when operator? if news.change then end "news" smatch when operator? if news.edit then end default pop sys.mainmenu end endcase then { WWW "_/www/footer" mpilist }w ; . c q