X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=scripts%2Fndrank.pl;fp=scripts%2Fndrank.pl;h=cc7c12767e190b8681de3b72f44cdc663703998d;hb=c643b311c8f134a59625192b900aa28b3f12d4f1;hp=0000000000000000000000000000000000000000;hpb=2cd372a8eefbd0878546ba2b63940c8c96166bf7;p=ndwebbie.git diff --git a/scripts/ndrank.pl b/scripts/ndrank.pl new file mode 100755 index 0000000..cc7c127 --- /dev/null +++ b/scripts/ndrank.pl @@ -0,0 +1,52 @@ +#!/usr/bin/perl +q{ +/*************************************************************************** + * Copyright (C) 2006 by Michael Andreen * + * * + * This program is free software; you can redistribute it and/or modify * + * it under the terms of the GNU General Public License as published by * + * the Free Software Foundation; either version 2 of the License, or * + * (at your option) any later version. * + * * + * This program is distributed in the hope that it will be useful, * + * but WITHOUT ANY WARRANTY; without even the implied warranty of * + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * + * GNU General Public License for more details. * + * * + * You should have received a copy of the GNU General Public License * + * along with this program; if not, write to the * + * Free Software Foundation, Inc., * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * + ***************************************************************************/ +}; + +use strict; +use warnings; +use DBI; +use DBD::Pg qw(:pg_types); + +use LWP::Simple; + +our $dbh; +for my $file ("/home/whale/db.pl") +{ + unless (my $return = do $file){ + warn "couldn't parse $file: $@" if $@; + warn "couldn't do $file: $!" unless defined $return; + warn "couldn't run $file" unless $return; + } +} + +$dbh->begin_work; +my $st = $dbh->prepare(q{SELECT uid FROM current_planet_stats p JOIN users u ON p.id = u.planet WHERE alliance_id = 1 ORDER BY score DESC}); +my $update = $dbh->prepare(q{UPDATE users SET rank = ? WHERE uid = ?}); +$st->execute; +my $rank = 1; +while (my ($uid) = $st->fetchrow){ + $update->execute($rank,$uid); + $rank++; +} + +$dbh->commit; + +$dbh->disconnect;