| Revision: | 1.1 |
| Committed: | Fri Dec 15 19:29:18 2006 UTC (19 years, 10 months ago) by root |
| Branch: | MAIN |
| CVS Tags: | rel-2_82, rel-2_81, rel-2_80, rel-2_6, rel-2_7, rel-2_4, rel-2_5, rel-2_2, rel-2_3, rel-2_0, rel-2_1, rel-2_72, rel-2_73, rel-2_71, rel-2_76, rel-2_77, rel-2_74, rel-2_75, rel-2_54, rel-2_55, rel-2_56, rel-2_79, rel-2_52, rel-2_53, rel-2_32, rel-2_90, rel-2_92, rel-2_93, rel-2_78, rel-2_61, rel-2_43, rel-2_42, rel-2_41 |
| Log Message: | moved perl extensions into server codebase, where they belong |
| # | User | Rev | Content |
|---|---|---|---|
| 1 | root | 1.1 | #! perl |
| 2 | #CONVERSION: BROKEN, MISSING ON_APPLY | ||
| 3 | |||
| 4 | # generic perl code evaluator | ||
| 5 | |||
| 6 | sub eval_event { | ||
| 7 | my ($event, %vars) = @_; | ||
| 8 | |||
| 9 | my $code = $event->message; | ||
| 10 | my $who = eval { $event->environment->name } || "<unknown>"; | ||
| 11 | |||
| 12 | my $rv = cf::safe_eval $code, %vars; | ||
| 13 | |||
| 14 | warn $@ if $@; | ||
| 15 | |||
| 16 | $rv | ||
| 17 | } | ||
| 18 | |||
| 19 | sub on_say { | ||
| 20 | my ($event, $ob, $who, $msg) = @_; | ||
| 21 | |||
| 22 | local $_ = $msg; | ||
| 23 | |||
| 24 | eval_event $event, ob => $ob, who => $who, msg => $msg | ||
| 25 | } | ||
| 26 | |||
| 27 | sub on_apply { | ||
| 28 | my ($event, $ob, $who) = @_; | ||
| 29 | |||
| 30 | eval_event $event, ob => $ob, who => $who | ||
| 31 | } |