Skip to content

Commit

Permalink
Cleaned up some logic
Browse files Browse the repository at this point in the history
  • Loading branch information
davorg committed Jan 18, 2016
1 parent 354dad4 commit 0d3efcf
Showing 1 changed file with 38 additions and 37 deletions.
75 changes: 38 additions & 37 deletions lib/Lystyng.pm
Expand Up @@ -34,49 +34,50 @@ get '/user' => sub {
};

get '/user/:username' => sub {
if (my $user = resultset('User')->find({
my $user = resultset('User')->find({
username => params->{username},
}, {
prefetch => 'lists'
})) {
template 'user', {
user => $user,
};
} else {
send_error 'User not found', 404;
}
});

send_error 'User not found', 404 unless $user;

template 'user', {
user => $user,
};
};

get '/list/add' => needs login => sub {
template 'addlist';
};

post '/list/add' => needs login => sub {
session('user')->add_to_lists({
title => params->{list_title},
slug => params->{list_slug},
description => params->{list_description},
});
my $user = session('user');
my $list_data;
$list_data->{$_} = params->{"list_$_"}
for (qw[title slug description]);

$user->add_to_lists($list_data);

redirect '/user/' . session('user')->username;
redirect '/user/' . $user->username .
'/list/' . $list_data->{slug};
};

get '/user/:username/list/:list' => sub {
my $user;
unless ($user = resultset('User')->find({
my $user = resultset('User')->find({
username => params->{username},
})) {
send_error 'User not found', 404;
};
});

send_error 'User not found', 404 unless $user;

if (my $list = $user->lists->find({
my $list = $user->lists->find({
slug => params->{list},
})) {
template 'list', {
list => $list,
};
} else {
send_error 'List not found', 404;
});

send_error 'List not found', 404 unless $list;

template 'list', {
list => $list,
};
};

Expand Down Expand Up @@ -107,21 +108,21 @@ post '/register' => sub {
};

if (@errors) {
template 'register', {
return template 'register', {
errors => \@errors,
};
} else {
$user = $user_rs->create({
username => param('username'),
name => param('name'),
email => param('email'),
password => param('password'),
});
}

session user => $user;
$user = $user_rs->create({
username => param('username'),
name => param('name'),
email => param('email'),
password => param('password'),
});

redirect '/user/' . $user->username;
}
session user => $user;

redirect '/user/' . $user->username;
};

get '/login' => sub {
Expand Down

0 comments on commit 0d3efcf

Please sign in to comment.