X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=bin%2Ffs-radius-add-check;h=ee093b375e7835d8e12a3738f64d9691738d9b2b;hp=eedd9b6997f438116d15568a2d8af0b9f74faea0;hb=1f2021c9b76da7cc59e2a981fbac6b24312876d2;hpb=3beb58199322355f8caa166000bb94e9419b4232 diff --git a/bin/fs-radius-add-check b/bin/fs-radius-add-check index eedd9b699..ee093b375 100755 --- a/bin/fs-radius-add-check +++ b/bin/fs-radius-add-check @@ -1,20 +1,18 @@ #!/usr/bin/perl -Tw # quick'n'dirty hack of fs-setup to add radius attributes +# (i'm not sure this even works in the new world of schema changes - everyone +# uses attributes via groups now) use strict; use DBI; -use FS::UID qw(adminsuidsetup checkeuid getsecrets); +use FS::UID qw(adminsuidsetup); use FS::raddb; -die "Not running uid freeside!" unless checkeuid(); - my %attrib2db = - map { $FS::raddb::attrib{lc($_)} => $_ } keys %FS::raddb::attrib; + map { lc($FS::raddb::attrib{$_}) => $_ } keys %FS::raddb::attrib; my $user = shift or die &usage; -getsecrets($user); - my $dbh = adminsuidsetup $user; ### @@ -39,20 +37,30 @@ my($char_d) = 80; #default maxlength for text fields ### foreach my $attribute ( @attributes ) { - foreach my $statement ( - "ALTER TABLE svc_acct ADD rc_$attribute varchar($char_d) NULL", -# "ALTER TABLE part_svc ADD svc_acct__rc_$attribute varchar($char_d) NULL;", -# "ALTER TABLE part_svc ADD svc_acct__rc_${attribute}_flag char(1) NULL;", - ) { - $dbh->do( $statement ) or warn "Error executing $statement: ". $dbh->errstr; } + + my $statement = + "ALTER TABLE svc_acct ADD COLUMN rc_$attribute varchar($char_d) NULL"; + my $sth = $dbh->prepare( $statement ) + or warn "Error preparing $statement: ". $dbh->errstr; + my $rc = $sth->execute + or warn "Error executing $statement: ". $sth->errstr; + + $statement = + "ALTER TABLE h_svc_acct ADD COLUMN rc_$attribute varchar($char_d) NULL"; + $sth = $dbh->prepare( $statement ) + or warn "Error preparing $statement: ". $dbh->errstr; + $rc = $sth->execute + or warn "Error executing $statement: ". $sth->errstr; + } +$dbh->commit or die $dbh->errstr; + $dbh->disconnect or die $dbh->errstr; print "\n\n", "Now you must run dbdef-create.\n\n"; sub usage { - die "Usage:\n fs-radius-add user\n"; + die "Usage:\n fs-radius-add-check user\n"; } -