chiark / gitweb /
wip, before radiobuttons
[nj-awaymsg.git] / mason / edit
1 <%init>
2 use AwayMsg;
3 db_connect();
4 www_begin($r,$m);
5 </%init>
6
7 <%args>
8 $create => undef
9 </%args>
10
11 <%perl>
12
13 my $textid;
14
15 if (defined $create) {
16 } else {
17     foreach my $k (keys %ARGS) {
18         if ($k =~ m/^t(\d{0,7})$/) {
19             $textid= $1;
20             last;
21         }
22     }
23     die unless defined $textid;
24 }
25
26 my $tx;
27
28 if ($ARGS{'create'}) {
29     my $date = `date --iso-8601=minutes`; chomp $date or die;
30     $tx = { desc => "Message created $date",
31             subject => "Away from my email",
32             textid => "new",
33             text => "" };
34 } else {
35     my $sth = $dbh->prepare("SELECT * FROM texts WHERE textid=?");
36     $sth->execute($textid);
37     $tx = $sth->fetchrow_hashref();#
38 }
39
40 my $usedq = $dbh->prepare("SELECT * FROM addresses ORDER BY emailaddr");
41 $usedq->execute();
42
43 if (!$tx) { die "no such text $textid"; }
44
45 </%perl>
46 <& htmlhead, subpage => "Edit \"$tx->{'desc'}\"" &>
47 <form action="save" method="post">
48 <&| txtable, tx => $tx, inputs => 1 &>
49 <tr><td colspan=2><textarea name="text" cols="79" rows="15"><%
50   $tx->{'text'} |h %></textarea></td></tr>
51 </&>
52 </table><br><table>
53 % while (my $row = $usedq->fetchrow_hashref()) {
54 <tr><td>Use for <% $row->{'emailaddr'} |h %></td>
55 <td><input type="checkbox"
56 %     if ($usedq->
57 ></td></tr>
58 % }
59 <p>
60 <input type="hidden" name="textid" value="<% $tx->{'textid'} %>">
61 <input type="submit" name="save" value="Save">
62 <input type="submit" name="cancel" value="Cancel edit">