X-Git-Url: http://git.freeside.biz/gitweb/?p=freeside.git;a=blobdiff_plain;f=fs_webdemo%2Fregisterd.Pg;h=8c8b94557b757473a275fbd6ffe67e445e905cab;hp=a4fd0552cbc8fdb4d2f70b88fdf3a45c5575b1b2;hb=3919924e14e1d0fa70e0e194f8da045389f34e8e;hpb=f3235d39d083518d47f21cd5585e5f9a13070763 diff --git a/fs_webdemo/registerd.Pg b/fs_webdemo/registerd.Pg index a4fd0552c..8c8b94557 100755 --- a/fs_webdemo/registerd.Pg +++ b/fs_webdemo/registerd.Pg @@ -1,6 +1,6 @@ #!/usr/bin/perl -w # -# $Id: registerd.Pg,v 1.1 2001-04-23 12:40:30 ivan Exp $ +# $Id: registerd.Pg,v 1.10 2001-09-30 07:55:52 ivan Exp $ use strict; use vars qw( @@ -50,7 +50,7 @@ die "not running as root user" $dbh = DBI->connect( $datasrc, $user, $pass, { 'AutoCommit' => 'true', } ) or die "DBI->connect error: $DBI::errstr\n"; -$x = $DBI::errstr; #silly; to avoid "used only once" warning +#$x = $DBI::errstr; #silly; to avoid "used only once" warning while ( 1 ) { @@ -65,13 +65,13 @@ while ( 1 ) { $sth->execute or die $sth->errstr; $sth = $dbh->prepare( - 'SELECT * FROM mysql_auth WHERE status = "unconfigured" OR status = "reconfigure"' + 'SELECT * FROM mysql_auth WHERE status = "unconfigured"' ); $sth->execute or die $sth->errstr; my $pending = $sth->fetchall_arrayref( {} ); $sth = $dbh->prepare( - 'UPDATE mysql_auth SET status = "locked" WHERE status = "unconfigured" OR status = "reconfigure"' + 'UPDATE mysql_auth SET status = "locked" WHERE status = "unconfigured"' ); $sth->execute or die $sth->errstr; @@ -84,11 +84,29 @@ while ( 1 ) { my $username = $row->{'username'}; my $email = $row->{'passwd'}; - my $status = $row->{'status'}; - system("/usr/bin/createdb --username freeside demo_$username >/dev/null"); + my $pdbh = DBI->connect( 'DBI:Pg:host=localhost;dbname=demo_template', 'freeside', 'maelcolm' ) + or do { &myerr("$username: ". $DBI::errstr); next; }; - system "psql -U freeside demo_$username prepare("CREATE DATABASE demo_$username") + or do { &myerr("$username: ". $pdbh->errstr); next; }; + $psth->execute() + or do { &myerr("$username: ". $psth->errstr); next; }; + + $pdbh->disconnect + or do { &myerr("fatal: $DBI::errstr"); die; }; + + open(PSQL,"|psql -U freeside demo_$username") + or do { &myerr("|psql -U freeside demo_$username: $!"); next; }; + open(PSQLDATA, ") { + print PSQL $_; + } + close PSQLDATA + or do { &myerr("/usr/local/etc/freeside/demo_template.Pg: $!"); next; }; + close PSQL + or do { &myerr("|psql -U freeside demo_$username: $!"); next; }; mkdir "${freeside_conf}conf.DBI:Pg:host=localhost;dbname=demo_$username", 0755; system "cp -pr ${freeside_conf}conf.DBI:Pg:host=localhost\\;dbname=demo_template/* ". @@ -145,41 +163,40 @@ while ( 1 ) { ); $sth->execute or die $sth->errstr; - if ( $status eq "unconfigured" ) { - - #$ENV{SMTPHOSTS} = "localhost"; - $ENV{SMTPHOSTS} = "192.168.1.1"; - $ENV{MAILADDRESS} = 'ivan-fsreg@sisd.com'; - $ENV{TZ} = "PST8PDT"; - $header = Mail::Header->new( [ - 'From: ivan-fsreg@sisd.com', - "To: $email", - 'Bcc: ivan-fsreg_bcc@sisd.com', - 'Sender: ivan-fsreg@sisd.com', - 'Reply-To: ivan-fsreg@sisd.com', - #'Date: '. time2str("%a, %d %b %Y %X %z", time ), - 'Date: '. time2str("%a, %d %b %Y %X ", time ). "-0800", - 'Subject: Freeside demo information', - ] ); - $msg = Mail::Internet->new( - 'Header' => $header, - 'Body' => [ - "Hello,\n", - "\n", - "Your sample Freeside database has been setup.\n", - "\n", - "Point your web browswer at http://freeside.sisd.com/ and use the following\n", - "authentication information:\n", - "\n", - "Username: $username\n", - "Password: $user_pw\n", - "\n", - "-- \n", - "ivan\n", - ] - ); - $msg->smtpsend or die "Can\'t send registration email!"; - } + #$ENV{SMTPHOSTS} = "localhost"; + $ENV{SMTPHOSTS} = "192.168.1.1"; + $ENV{MAILADDRESS} = 'ivan-fsreg@sisd.com'; + $ENV{TZ} = "PST8PDT"; + $header = Mail::Header->new( [ + 'From: ivan-fsreg@sisd.com', + "To: $email", + 'Bcc: ivan-fsreg_bcc@sisd.com', + 'Sender: ivan-fsreg@sisd.com', + 'Reply-To: ivan-fsreg@sisd.com', + #'Date: '. time2str("%a, %d %b %Y %X %z", time ), + 'Date: '. time2str("%a, %d %b %Y %X ", time ). "-0800", + 'Subject: Freeside demo information', + ] ); + $msg = Mail::Internet->new( + 'Header' => $header, + 'Body' => [ + "Hello,\n", + "\n", + "Your sample Freeside database has been setup.\n", + "\n", + "Your login and database will be automatically deleted in 1-2 months.\n", + "\n", + "Point your web browswer at http://freeside.sisd.com/ and use the following\n", + "authentication information:\n", + "\n", + "Username: $username\n", + "Password: $user_pw\n", + "\n", + "-- \n", + "ivan\n", + ] + ); + $msg->smtpsend or die "Can\'t send registration email!"; } @@ -194,3 +211,11 @@ while ( 1 ) { } +sub myerr { + my $msg = shift; + open(MAIL,"|mail ivan-fsdemoerr\@420.am"); + print MAIL $msg, "\n\n"; + print MAIL $msg, "\n\n"; + close MAIL; +}; +