From f6943940ffc36b5d4f8109e3f0ab27bec19a68b1 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Fri, 11 Mar 2011 17:30:43 +0100 Subject: Fix bug --- fripost-adduser | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'fripost-adduser') diff --git a/fripost-adduser b/fripost-adduser index 16f253c..1e3c08c 100755 --- a/fripost-adduser +++ b/fripost-adduser @@ -30,7 +30,7 @@ use YAML::Syck; # Prompt for user info sub read_user_info { - $username = prompt_username("New username: "); + my $username = prompt_username("New username: "); my $name = prompt "Full (real) name: "; my $domain = (split /\@/, $username)[1]; my $maildir = "$domain/". (split /\@/, $username)[0] . "/Maildir/"; # trailing slash important -- cgit v1.2.3 From 0dfd0f47ce5942e85aa8b270a4a9e6230339a32a Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Fri, 11 Mar 2011 17:32:25 +0100 Subject: Remove some useless documentation --- fripost-adduser | 5 ----- 1 file changed, 5 deletions(-) (limited to 'fripost-adduser') diff --git a/fripost-adduser b/fripost-adduser index 1e3c08c..e6bc5ab 100755 --- a/fripost-adduser +++ b/fripost-adduser @@ -8,11 +8,6 @@ use strict; fripost-adduser - Add a new mailbox to the system -=head1 DESCRIPTION - -This script eases the burden of adding a new user to the system. It simply adds -a new user to the database. - =cut our $VERSION = '0.02'; -- cgit v1.2.3 From f559605cb240edb57d1a0e0338b449e4ca767d51 Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Fri, 11 Mar 2011 19:04:17 +0100 Subject: adduser: die if user already exists --- fripost-adduser | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'fripost-adduser') diff --git a/fripost-adduser b/fripost-adduser index e6bc5ab..e4a4298 100755 --- a/fripost-adduser +++ b/fripost-adduser @@ -83,7 +83,9 @@ if ($conf->{pretend}) { exit 0; } -## TODO: Make sure the user does not already exist +die "User already exists" + if ($schema->resultset('Mailbox')->search({ + username => $user->{username} })->count); ## Insert user into database my $db_user = $schema->resultset('Mailbox')->new($user); -- cgit v1.2.3 From 846ba6f0a5a36ec34b48d9ebe8076fc69a42ff2a Mon Sep 17 00:00:00 2001 From: Stefan Kangas Date: Fri, 11 Mar 2011 19:27:24 +0100 Subject: send email to new user --- fripost-adduser | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'fripost-adduser') diff --git a/fripost-adduser b/fripost-adduser index e4a4298..0d65cf3 100755 --- a/fripost-adduser +++ b/fripost-adduser @@ -16,11 +16,13 @@ use FindBin qw($Bin); use lib "$Bin/lib"; use Data::Dumper; +use File::Slurp qw(slurp); use Fripost::Password; use Fripost::Prompt; use Fripost::Schema; use IO::Prompt; use Getopt::Long; +use MIME::Lite; use YAML::Syck; # Prompt for user info @@ -92,6 +94,18 @@ my $db_user = $schema->resultset('Mailbox')->new($user); $db_user->insert; say "New account $user->{username} added."; +## Send email +my $msg = MIME::Lite->new( + From => 'admin@fripost.org', + To => $user->{username}, + Subject => 'Välkommen till Fripost!', + Data => slurp('templ/new_user_mail.tt'), # TODO: actually use TT +); +$msg->send(); + +say "Sent welcome message: "; +say $message->as_text; + =head1 AUTHOR Stefan Kangas C<< >> -- cgit v1.2.3