Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ## Schema.pm
- package BoyosPlace::Schema;
- use strict;
- use warnings;
- use BoyosPlace;
- use BoyosPlace::Email;
- use base 'DBIx::Class::Schema';
- __PACKAGE__->load_classes;
- sub create_user {
- my ($self, $options) = @_;
- $options ||= {};
- my $config = BoyosPlace->config;
- my $email = BoyosPlace::Email->new(
- to => $options->{email},
- from => $config->{email}{from},
- subject => "Boyosplace.com Registration Confirmation",
- data => "Thank you for signing up!",
- );
- my $create = sub {
- $self->name( $options->{name} );
- $self->email( $options->{email} );
- $self->password( $options->{password} );
- $email->send;
- };
- $self->txn_do($create);
- if ($@) {
- die "Something went wrong creating a user: $@";
- exit
- }
- }
- 1;
- ## create action
- sub create : Path("/signup") : FormConfig {
- my ( $self, $c ) = @_;
- my $form = $c->stash->{form};
- $c->stash->{template} = "users/create.tt2";
- ## let's make sure we have a valid form
- if ( $form->submitted_and_valid ) {
- my $user = $c->model('DB::Schema')->create_user(
- {
- name => $form->param('name'),
- email => $form->param('email'),
- password => $form->param('password')
- }
- );
- }
- }
Add Comment
Please, Sign In to add comment