X-Git-Url: http://dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2Fupdate_sysop.pl;h=c77d012c0607f23fb93a006091c0de49ec4ef372;hb=refs%2Fheads%2Fnewusers;hp=a3675f813f63ce03753450a28e2aeab5288c557c;hpb=9c9635910bdfb6b633031a6c27a8721560407fad;p=spider.git diff --git a/perl/update_sysop.pl b/perl/update_sysop.pl index a3675f81..c77d012c 100755 --- a/perl/update_sysop.pl +++ b/perl/update_sysop.pl @@ -1,4 +1,4 @@ -#!/usr/bin/perl +#!/usr/bin/env perl # # remove all records with the sysop/cluster callsign and recreate # it from the information contained in DXVars @@ -10,7 +10,7 @@ # # Copyright (c) 1998 Dirk Koopman G1TLH # -# $Id$ +# # # make sure that modules are searched in the order local then perl @@ -19,31 +19,34 @@ BEGIN { $root = "/spider"; $root = $ENV{'DXSPIDER_ROOT'} if $ENV{'DXSPIDER_ROOT'}; + unshift @INC, "$root/perl"; # this IS the right way round! unshift @INC, "$root/local"; } use DXVars; +use SysVar; use DXUser; +use DXUtil; sub create_it { my $ref; - while ($ref = DXUser->get($mycall)) { + while ($ref = DXUser::get(uc $mycall)) { print "old call $mycall deleted\n"; $ref->del(); } - my $self = DXUser->new($mycall); - $self->{alias} = $myalias; + my $self = DXUser->new(uc $mycall); + $self->{alias} = uc $myalias; $self->{name} = $myname; $self->{qth} = $myqth; - $self->{qra} = $mylocator; + $self->{qra} = uc $mylocator; $self->{lat} = $mylatitude; $self->{long} = $mylongitude; $self->{email} = $myemail; $self->{bbsaddr} = $mybbsaddr; - $self->{homenode} = $mycall; + $self->{homenode} = uc $mycall; $self->{sort} = 'S'; # C - Console user, S - Spider cluster, A - AK1A, U - User, B - BBS $self->{priv} = 9; # 0 - 9 - with 9 being the highest $self->{lastin} = 0; @@ -51,38 +54,41 @@ sub create_it $self->{annok} = 1; # write it away - $self->close(); + $self->put(); print "new call $mycall added\n"; # now do one for the alias - while ($ref = DXUser->get($myalias)) { + while ($ref = DXUser::get($myalias)) { print "old call $myalias deleted\n"; $ref->del(); } - $self = DXUser->new($myalias); + $self = DXUser->new(uc $myalias); $self->{name} = $myname; $self->{qth} = $myqth; - $self->{qra} = $mylocator; + $self->{qra} = uc $mylocator; $self->{lat} = $mylatitude; $self->{long} = $mylongitude; $self->{email} = $myemail; $self->{bbsaddr} = $mybbsaddr; - $self->{homenode} = $mycall; + $self->{homenode} = uc $mycall; $self->{sort} = 'U'; # C - Console user, S - Spider cluster, A - AK1A, U - User, B - BBS $self->{priv} = 9; # 0 - 9 - with 9 being the highest $self->{lastin} = 0; $self->{dxok} = 1; $self->{annok} = 1; $self->{lang} = 'en'; + $self->{group} = [qw(local #9000)]; # write it away - $self->close(); + $self->put(); print "new call $myalias added\n"; } -$lockfn = "$root/perl/cluster.lock"; # lock file name +die "\$myalias \& \$mycall are the same ($mycall)!, they must be different (hint: make \$mycall = '${mycall}-2';).\n" if $mycall eq $myalias; + +$lockfn = "$main::local_data/cluster.lck"; # lock file name (now in local d if (-e $lockfn) { open(CLLOCK, "$lockfn") or die "Can't open Lockfile ($lockfn) $!"; my $pid = ; @@ -91,9 +97,9 @@ if (-e $lockfn) { close CLLOCK; } -DXUser->init($userfn, 1); +DXUser::init(4); create_it(); -DXUser->finish(); +DXUser::finish(); print "Update of $myalias on cluster $mycall successful\n"; exit(0);