Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package Moblo::Post;
- use Mojo::Base 'Mojolicious::Controller';
- use DateTime;
- use Data::Dumper;
- sub create{
- my $self = shift;
- my $title = $self->param('title');
- my $content = $self->param('content');
- my $user = $self->_user_from_session;
- $self->db->resultset('Post')->create({
- title => $title,
- content => $content,
- author => $self->session('username'),
- #aici e cred ca e buba !!!. In tutorial era sintaxa: author_id => $user->id
- #care crapa
- author_id => $self->session('id'),
- date_published => DateTime->now->iso8601,
- });
- my $a = $user;
- warn "|Dumper(/$a)|";
- $self->flash(post_saved => 1);
- $self->redirect_to('restricted_area');
- warn "|$content|";
- }
- sub delete{
- my $self = shift;
- my $posts = $self->db->resultset('Post');
- $self->app->log->info($self->stash('id'));
- $posts->search({ id => $self->stash('id') })->delete;
- $self->flash(post_deleted => '1');
- $self->redirect_to('restricted_area');
- }
- sub show{
- my $self = shift;
- my $post = $self->_post_from_stash;
- my $user = $self->_user_from_session;
- warn "|$post|";
- if(defined $post){
- $self->render(post => $post, logged_in => defined($user), user => $user);
- } else {
- $self->render_not_found;
- }
- }
- sub comment{
- my $self = shift;
- # Retrieve dbic objects
- my $post = $self->_post_from_stash;
- my $user = $self->_user_from_session;
- $post->create_related('comments',{
- user_id => $user->id,
- content => xml_escape($self->param('content')),
- });
- }
- # This should be a helper.
- sub _user_from_session{
- my $self = shift;
- if( $self->session('logged_in'))
- {
- return $self->db->resultset('User')->find($self->session('user_id'));
- }
- }
- sub _post_from_stash{
- my $self = shift;
- return $self->db->resultset('Post')->find($self->stash('id'));
- }
- 1;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement