X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=mason%2Fsave;h=c749084c757cb10928d2f7e25c804135f1c44703;hb=dc799127a0e7b0599248dd9669652aeb4af59454;hp=a34abe970ca4bae07d15c80c4eea51b9cc927ef0;hpb=1c77410d03dd2442b7b11fb5c896bcac983219df;p=nj-awaymsg.git diff --git a/mason/save b/mason/save index a34abe9..c749084 100755 --- a/mason/save +++ b/mason/save @@ -1,5 +1,6 @@ <%init> use AwayMsg; +use Data::Dumper; db_connect(); www_begin($r,$m); <%args> @@ -27,7 +28,7 @@ if ($textid ne 'new') { } if ($textid eq 'new') { - my $textid = time; + $textid = time; my $ntextq = $dbh->prepare("SELECT textid FROM texts". " ORDER BY textid DESC LIMIT 1"); $ntextq->execute(); @@ -38,10 +39,28 @@ if ($textid eq 'new') { } } +print STDERR Dumper([$textid, $desc, $subject, $text]); + my $dinsertq = $dbh->prepare("INSERT INTO texts (textid, desc, subject, text)". " VALUES (?,?,?,?)"); $dinsertq->execute($textid, $desc, $subject, $text); +my $tdeleteq = $dbh->prepare("DELETE FROM addresses WHERE textid = ?"); +$tdeleteq->execute($textid); + +my $odeleteq = $dbh->prepare("DELETE FROM addresses WHERE emailaddr = ?"); + +my $tinsertq = $dbh->prepare("INSERT INTO addresses (emailaddr, textid)". + " VALUES (?,?)"); +my $tlistq = $dbh->prepare("SELECT * FROM config"); +$tlistq->execute(); +while (my $row = $tlistq->fetchrow_hashref()) { + if ($ARGS{"u_".hquote($row->{'emailaddr'})}) { + $odeleteq->execute($row->{'emailaddr'}); + $tinsertq->execute($row->{'emailaddr'}, $textid); + } +} + db_commit(); <& htmlhead, subpage => "Saved \"$desc\"" &>