@verb #83:"tell_www_body" this none this rxdo #789 @program #83:"tell_www_body" this none this player:isa($webber) && caller == this || raise(E_PERM) pass(@args) eval = $www:parse_GET("isindex") eval == E_PROPNF ? eval = "" | server_log(tostr("Web-eval: ", player.user:nn(), " -> ", eval)) if (player.referer && $www:previous_object() != this && player.user.programmer && eval) "We have an unknown form refering an eval to us with a programmer's perms..." $msg:mtell("www_error", "Warning! Previous page doesn't appear to be this one!") player:tell("For security reasons the eval will not be executed. Refering page: [", player.referer, "]") eval = "" endif player:tell(this.antistealth) player:tell("
;
") if (eval) victim = player.user.programmer ? player.user | $no_one if (victim == $no_one) $msg:mtell("www_error", "You must be logged in as a programmer to use the web eval system.") return endif player:tell("

", match(eval, "^ *%(;%|%(if%|fork?%|return%|while%)[^a-z0-9A-Z_]%)") ? ";" | "return ", $html_utils:literal_text(eval), ";
") set_task_perms(victim) result = victim:eval_cmd_string(eval, 0) if (result[1]) player:tell(victim:eval_value_to_string(result[2])) player:tell("
[used ", result[3], " tick", result[3] != 1 ? "s, " | ", ", result[4], " second", result[4] != 1 ? "s" | "", ".]") else player:tell(result[2]) nerrors = length(result[2]) player:tell(nerrors, " error", nerrors == 1 ? "." | "s.") endif player:tell("
") if (victim == $no_one) player:tell("
Note: You aren't logged in as a programmer, so ", victim:title(), "'s permissions were used.") endif endif "Last modified by Dax (#789) on Sat Jul 27 15:05:50 2002 MDT." .