Fix broken random password number range; consistently make random instead of using...
[interchange.git] / code / UserTag / fortune.tag
1 # Copyright 2002-2007 Interchange Development Group and others
2
3 # This program is free software; you can redistribute it and/or modify
4 # it under the terms of the GNU General Public License as published by
5 # the Free Software Foundation; either version 2 of the License, or
6 # (at your option) any later version.  See the LICENSE file for details.
7
8 UserTag fortune Order   short
9 UserTag fortune addAttr
10 UserTag fortune Version 1.7
11 UserTag fortune Routine <<EOR
12 sub {
13         my ($short, $opt) = @_;
14         my $cmd = $Global::Variable->{MV_FORTUNE_COMMAND} || '/usr/games/fortune';
15         my @flags;
16         push @flags, '-s' if is_yes($short);
17         for(grep length($_) == 1, keys %$opt) {
18                 push @flags, "-$_" if $opt->{$_};
19         }
20
21         if(is_yes($opt->{no_computer}) ) {
22                 push @flags, qw/
23                         6% education 
24                         6% food 
25                         6% humorists 
26                         6% kids 
27                         6% law 
28                         6% literature 
29                         6% love 
30                         6% medicine 
31                         6% people 
32                         6% pets 
33                         6% platitudes 
34                         6% politics 
35                         6% science 
36                         6% sports 
37                         6% work
38                         10% wisdom
39                         /;
40         }
41
42         my $out = '';
43         open(FORT, '-|') || exec ($cmd, @flags);
44
45         while (<FORT>) {
46                 $out .= $_
47         }
48
49         unless($opt->{raw}) {
50                 $out = filter_value('text2html', $out);
51                 $out =~ s/--(?!:.*--)/<br>--/s;
52         }
53         return $out;
54 }
55 EOR