From 23587a410e4514c5fd76ff89d29e1ea31b083621 Mon Sep 17 00:00:00 2001 From: Al Beano Date: Tue, 3 Oct 2017 21:59:08 +0100 Subject: [PATCH] Collect WHOIS privacy setting on account page --- dbupdate/8.sql | 2 ++ lib/cyberman/Account.pm | 5 +++++ schema.sql | 5 +++-- views/account.tt | 22 ++++++++++++++++++++++ 4 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 dbupdate/8.sql diff --git a/dbupdate/8.sql b/dbupdate/8.sql new file mode 100644 index 0000000..4cce336 --- /dev/null +++ b/dbupdate/8.sql @@ -0,0 +1,2 @@ +alter table user add column email_pub integer not null default 0; +update cyberman set dbrev=9; diff --git a/lib/cyberman/Account.pm b/lib/cyberman/Account.pm index 1f05f46..b5b4449 100644 --- a/lib/cyberman/Account.pm +++ b/lib/cyberman/Account.pm @@ -70,6 +70,10 @@ post '/account' => sub { $errs{"e_bad_sheet"} = 1; } + if (param("email_pub") !~ m/^[01]$/) { + $errs{"e_bad_privacy"} = 1; + } + if (scalar(keys %errs) != 0) { return template 'account' => { "user" => $user, @@ -133,6 +137,7 @@ post '/account' => sub { }, { "stylesheet" => param("stylesheet"), + "email_pub" => param("email_pub"), }, ); diff --git a/schema.sql b/schema.sql index 10bb62c..51b594a 100644 --- a/schema.sql +++ b/schema.sql @@ -6,7 +6,7 @@ create table cyberman ( lastserial integer not null default 0, zonecheckstatus integer not null default 0, ); -insert into cyberman (dbrev) values (8); +insert into cyberman (dbrev) values (9); drop table if exists user; create table user ( @@ -19,7 +19,8 @@ create table user ( newemail text, recoverytoken text, stylesheet text, - admin integer not null default 0 + admin integer not null default 0, + email_pub integer not null default 0 ); drop table if exists session; diff --git a/views/account.tt b/views/account.tt index 01c3216..30a08b6 100644 --- a/views/account.tt +++ b/views/account.tt @@ -34,6 +34,9 @@ <% IF e_bad_sheet %>
  • The stylesheet selected was invalid.
  • <% END %> + <% IF e_bad_privacy %> +
  • Please select a value for WHOIS privacy.
  • + <% END %> @@ -91,6 +94,25 @@ + + + + + + + +
     ]