fix typo in Changes
[spider.git] / perl / update_sysop.pl
index cec9f56ec04757c7e32e70f7dbed105d28f26b80..74d6812ab6f6749f4cc9ac6629dfdb769fc83bc7 100755 (executable)
@@ -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
@@ -19,17 +19,20 @@ 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(uc $mycall)) {
+       while ($ref = DXUser::get(uc $mycall)) {
                print "old call $mycall deleted\n";
                $ref->del();
        }
@@ -55,7 +58,7 @@ sub create_it
        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();
        }
@@ -83,7 +86,9 @@ sub create_it
 
 }
 
-$lockfn = "$root/local/cluster.lck";       # 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 = <CLLOCK>;
@@ -92,9 +97,9 @@ if (-e $lockfn) {
        close CLLOCK;
 }
 
-DXUser->init($userfn, 1);
+DXUser::init(1);
 create_it();
-DXUser->finish();
+DXUser::finish();
 print "Update of $myalias on cluster $mycall successful\n";
 exit(0);