fix localdata with correct paths
[spider.git] / perl / update_sysop.pl
index af128c946238ae5c8a30f134cb1466e3762911d3..613e91f0bc35f9602846463d0a14624c648e8a4b 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
@@ -10,7 +10,7 @@
 #
 # Copyright (c) 1998 Dirk Koopman G1TLH
 #
-# $Id$
+#
 # 
 
 # make sure that modules are searched in the order local then perl
@@ -23,13 +23,15 @@ BEGIN {
 }
 
 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 +57,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();
        }
@@ -75,6 +77,7 @@ sub create_it
        $self->{dxok} = 1;
        $self->{annok} = 1;
        $self->{lang} = 'en';
+       $self->{group} = [qw(local #9000)];
   
        # write it away
        $self->close();
@@ -82,7 +85,9 @@ sub create_it
 
 }
 
-$lockfn = "$root/perl/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 = localdata("cluster.lck");       # lock file name
 if (-e $lockfn) {
        open(CLLOCK, "$lockfn") or die "Can't open Lockfile ($lockfn) $!";
        my $pid = <CLLOCK>;
@@ -91,9 +96,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);