Advertisement
Guest User

Untitled

a guest
Feb 14th, 2016
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.98 KB | None | 0 0
  1. package Moblo::Post;
  2. use Mojo::Base 'Mojolicious::Controller';
  3. use DateTime;
  4. use Data::Dumper;
  5.  
  6. sub create{
  7. my $self = shift;
  8. my $title = $self->param('title');
  9. my $content = $self->param('content');
  10. my $user = $self->_user_from_session;
  11.  
  12. $self->db->resultset('Post')->create({
  13. title => $title,
  14. content => $content,
  15. author => $self->session('username'),
  16.  
  17. #aici e cred ca e buba !!!. In tutorial era sintaxa: author_id => $user->id
  18. #care crapa
  19. author_id => $user->id,
  20. date_published => DateTime->now->iso8601,
  21. });
  22.  
  23. my $a = $self->session('username') ;
  24. my $b = $self->session('id');#$self->_user_from_session;
  25. warn "|author|";
  26.  
  27. warn "the user is:|$a|";
  28. warn "the user id is|$b|";
  29. #warn $self->session('id');
  30. $self->flash(post_saved => 1);
  31. $self->redirect_to('restricted_area');
  32. warn "|$content|";
  33. }
  34.  
  35. sub delete{
  36. my $self = shift;
  37. my $posts = $self->db->resultset('Post');
  38. $self->app->log->info($self->stash('id'));
  39. $posts->search({ id => $self->stash('id') })->delete;
  40. $self->flash(post_deleted => '1');
  41. $self->redirect_to('restricted_area');
  42. }
  43.  
  44. sub show{
  45. my $self = shift;
  46. my $post = $self->_post_from_stash;
  47. my $user = $self->_user_from_session;
  48. warn "|$post|";
  49.  
  50. if(defined $post){
  51. $self->render(post => $post, logged_in => defined($user), user => $user);
  52. } else {
  53. $self->render_not_found;
  54.  
  55. }
  56. }
  57.  
  58. #warn $self->session('id');
  59. sub comment{
  60. my $self = shift;
  61.  
  62. # Retrieve dbic objects
  63. my $post = $self->_post_from_stash;
  64. my $user = $self->_user_from_session;
  65.  
  66. $post->create_related('comments',{
  67. user_id => $user->id,
  68. content => $self->param('content'),
  69.  
  70. #warn $self->session('id');
  71. });
  72. }
  73.  
  74. # This should be a helper.
  75. sub _user_from_session{
  76. my $self = shift;
  77.  
  78. if( $self->session('logged_in'))
  79. {
  80. my $user_id = $self->db->resultset('User')->find($self->session('user_id'));
  81. return $user_id;
  82.  
  83.  
  84. warn "the value of __user_from_session|$user_id|";
  85. }
  86.  
  87. }
  88.  
  89. sub _post_from_stash{
  90. my $self = shift;
  91. return $self->db->resultset('Post')->find($self->stash('id'));
  92. }
  93.  
  94. 1;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement