|
|
|
@ -54,6 +54,37 @@ sub blog_post ( $c ) { |
|
|
|
my $post = $c->stash->{post} = $c->jekyll($blog->domain->name)->get_post( $c->param('mdfile') ); |
|
|
|
my $post = $c->stash->{post} = $c->jekyll($blog->domain->name)->get_post( $c->param('mdfile') ); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
sub do_blog_post ( $c ) { |
|
|
|
|
|
|
|
my $blog = $c->stash->{blog} = $c->db->blog( $c->param('id') ); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if ( $blog->person->id ne $c->stash->{person}->id ) { |
|
|
|
|
|
|
|
$c->render( |
|
|
|
|
|
|
|
text => "Error: This blog isn't owned by you.", |
|
|
|
|
|
|
|
status => 404, |
|
|
|
|
|
|
|
format => 'txt', |
|
|
|
|
|
|
|
); |
|
|
|
|
|
|
|
return; |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
my $title = $c->stash->{form_title} = $c->param('postTitle'); |
|
|
|
|
|
|
|
my $date = $c->stash->{form_date} = $c->param('postDate'); |
|
|
|
|
|
|
|
my $content = $c->stash->{form_content} = $c->param('postContent'); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
my $jekyll = $c->jekyll($blog->domain->name); |
|
|
|
|
|
|
|
my $post = $c->stash->{post} = $jekyll->get_post( $c->param('mdfile') ); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$post->markdown( $content ); |
|
|
|
|
|
|
|
$post->headers->{title} = $title; |
|
|
|
|
|
|
|
$post->headers->{date} = $date; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$jekyll->update_post( $post ); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$c->minion->enqueue( 'deploy_blog', [ $blog->id ] ); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
$c->flash( confirmation => "Updated <strong>$title</strong>!" ); |
|
|
|
|
|
|
|
$c->redirect_to( $c->url_for( 'show_dashboard_blog_posts', { id => $blog->id } ) ); |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
sub blog_post_create ( $c ) { |
|
|
|
sub blog_post_create ( $c ) { |
|
|
|
my $blog = $c->stash->{blog} = $c->db->blog( $c->param('id') ); |
|
|
|
my $blog = $c->stash->{blog} = $c->db->blog( $c->param('id') ); |
|
|
|
|
|
|
|
|
|
|
|
|