X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=ND%2FWeb%2FPages%2FIntel.pm;h=c129d907c2109a465a28833533b54a6f0047ca8d;hb=f6cfe40e6a8da61229131a2d38a2535ae66da359;hp=5a4a47c91551263674aa09e01b99f68fa65c8a26;hpb=9ce5a8529e75cb109ed9ba3fc788c94ef47b1080;p=ndwebbie.git diff --git a/ND/Web/Pages/Intel.pm b/ND/Web/Pages/Intel.pm index 5a4a47c..c129d90 100644 --- a/ND/Web/Pages/Intel.pm +++ b/ND/Web/Pages/Intel.pm @@ -25,28 +25,27 @@ use ND::Web::Include; use ND::Include; use CGI qw/:standard/; -$ND::PAGES{intel} = {parse => \&parse, process => \&process, render=> \&render}; +use base qw/ND::Web::XMLPage/; + +$ND::Web::Page::PAGES{intel} = __PACKAGE__; sub parse { - my ($uri) = @_; - if ($uri =~ m{^/.*/(\w+)$}){ - param('list',$1); + my $self = shift; + if ($self->{URI} =~ m{^/.*/((\d+)(?: |:)(\d+)(?: |:)(\d+))$}){ + param('coords',$1); } } -sub process { - -} +sub render_body { + my $self = shift; + my ($BODY) = @_; + $self->{TITLE} = 'Intel'; + my $DBH = $self->{DBH}; -sub render { - my ($DBH,$BODY) = @_; + return $self->noAccess unless $self->isIntel || $self->isHC; my $error; - $ND::TEMPLATE->param(TITLE => 'Intel'); - - return $ND::NOACCESS unless isIntel() || isHC(); - my $planet; if (defined param('coords') && param('coords') =~ /^(\d+)(?: |:)(\d+)(?: |:)(\d+)$/){ my $query = $DBH->prepare(q{SELECT x,y,z,coords(x,y,z),id, nick, alliance,alliance_id, planet_status,channel,ftid FROM current_planet_stats @@ -156,7 +155,7 @@ sub render { if ($planet){ $BODY->param(Coords => $planet->{coords}); $BODY->param(Planet => $planet->{id}); - $BODY->param(Nick => $planet->{nick}); + $BODY->param(Nick => escapeHTML($planet->{nick})); $BODY->param(Channel => $planet->{channel}); my @status; for my $status (" ","Friendly", "NAP", "Hostile"){ @@ -227,16 +226,6 @@ sub render { push @intellists,{Message => q{Intel where alliances doesn't match}, Intel => \@intel, Origin => 1, Target => 1}; $BODY->param(IntelLIsts => \@intellists); } - my $query = $DBH->prepare(q{SELECT i.id, u.username, i.message, report_date FROM intel_messages i - JOIN users u ON u.uid = i.uid - WHERE NOT handled ORDER BY report_date}); - $query->execute; - my @messages; - while (my $message = $query->fetchrow_hashref){ - $message->{message} = parseMarkup($message->{message}); - push @messages,$message; - } - #$BODY->param(IntelMessages => \@messages); $BODY->param(Error => $error); return $BODY; }