Skip to content

Commit 39e16de

Browse files
committed
Cleanup for UserChannels.
1 parent 5b3245e commit 39e16de

File tree

8 files changed

+37
-19
lines changed

8 files changed

+37
-19
lines changed

Web/lib/OpenNewsWire/Web.pm

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ use Moose;
33
use namespace::autoclean;
44
use Catalyst::Runtime 5.80;
55
use Catalyst qw| -Debug Static::Simple Session Session::Store::Cookie Session::State::Cookie|;
6+
use URI;
67
extends 'Catalyst';
78

89
our $VERSION = '0.01';
@@ -33,6 +34,9 @@ __PACKAGE__->config(
3334
path => [qw( root )],
3435
suffix => 'tx',
3536
syntax => 'Metakolon',
37+
function => {
38+
domain => sub { return URI->new(shift)->host },
39+
},
3640
},
3741
);
3842

Web/lib/OpenNewsWire/Web/Controller/Create.pm

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,10 @@ sub show_create_message :Chained('base') PathPart('message') Args(0) Method('GET
4141

4242
if ( $c->req->params->{topic} ) {
4343
$c->stash->{form_to} = 't/' . $c->req->params->{topic};
44+
} elsif ( $c->req->params->{selfpost} ) {
45+
$c->stash->{form_to} = 'u/' . $c->stash->{user}->name;
4446
}
47+
4548
$c->stash->{template} = 'create/message.tx';
4649
}
4750

@@ -58,7 +61,7 @@ sub create_message :Chained('base') PathPart('message') Args(0) Method('POST') {
5861
my $msg_id = $c->req->params->{message_id};
5962
my $msg_slug = $c->req->params->{message_slug};
6063
my $chan_name = $c->req->params->{channel_name};
61-
my $self_post = 0;
64+
my $user_name = $c->req->params->{user_name};
6265

6366
$c->stash(
6467
form_to => $target,
@@ -93,13 +96,13 @@ sub create_message :Chained('base') PathPart('message') Args(0) Method('POST') {
9396
message_id => $message->id,
9497
});
9598
# Set the variables so that the user is redirected to the new message post..
96-
( $msg_id, $msg_slug, $self_post ) = ( $message->id, $message->slug, 1 );
99+
( $msg_id, $msg_slug, $user_name ) = ( $message->id, $message->slug, $c->stash->{user}->name );
97100
}
98101
}
99102
});
100103

101-
if ( $self_post ) {
102-
$c->res->redirect( $c->uri_for_action( '/userchannel/get_user_message', [], $c->stash->{user}->name, $msg_id, $msg_slug ) );
104+
if ( $user_name ) {
105+
$c->res->redirect( $c->uri_for_action( '/userchannel/get_user_message', [ $user_name ], $msg_id, $msg_slug ) );
103106
}
104107

105108
if ( $msg_id && $msg_slug && $chan_name ) {

Web/lib/OpenNewsWire/Web/Controller/UserChannel.pm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ sub get_user_comments :Chained('base') PathPart('comments) Args(0) Method('GET')
4242
push @{$c->stash->{messages}},
4343
$c->model('DB')->resultset('Message')->search({
4444
author_id => $c->stash->{user_profile}->id,
45-
parent_id => { '!=' => [ 0, undef ] },
45+
parent_id => { '!=' => undef },
4646
})->all;
4747
}
4848

Web/root/_sidebar.tx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,13 @@
99
Create New Topic
1010
</a>
1111
</li>
12+
<li class="nav-item">
13+
<a class="nav-link [% $sb_active == "dashboard" ? "active" : "" %]" aria-current="page"
14+
href="[% $c.uri_for_action( '/create/create_message', [], { selfpost => 1 } ) %]">
15+
<span data-feather="home"></span>
16+
Create Self-Post
17+
</a>
18+
</li>
1219
%% if ( $topic ) {
1320
<li class="nav-item">
1421
<a class="nav-link [% $sb_active == "dashboard" ? "active" : "" %]" aria-current="page"

Web/root/user/_show_topic_message_comment.tx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,13 @@
99
</div>
1010
<br />
1111
<a class="card-link" data-bs-toggle="collapse" href="#replyForm[% $comment.message.id %]" role="button" aria-expanded="false" aria-controls="replyForm[% $comment.message.id %]">[Reply]</a>
12-
<a href="[% $c.uri_for_action( '/topicchannel/get_topic_message', [], $channel.name, $comment.message.id, 'permlink' ) %]" class="card-link">[Permlink]</a>
12+
<a href="[% $c.uri_for_action( '/userchannel/get_user_message', [ $user_profile.name ], $comment.message.id, 'permlink' ) %]" class="card-link">[Permlink]</a>
1313
<div id="replyForm[% $comment.message.id %]" class="row mx-2 my-4 collapse">
1414
<form method="POST" action="/create/message">
1515
<input type="hidden" name="reply_to" value="[% $comment.message.id %]" />
1616
<input type="hidden" name="message_id" value="[% $message.id %]" />
1717
<input type="hidden" name="message_slug" value="[% $message.title %]" />
18-
<input type="hidden" name="channel_name" value="[% $channel.name %]" />
18+
<input type="hidden" name="user_name" value="[% $user_profile.name %]" />
1919
<div class="mb-3">
2020
<label for="message" class="form-label">Post a Reply</label>
2121
<textarea class="form-control" name="message" id="message" rows="3"></textarea>
@@ -27,7 +27,7 @@
2727
</div>
2828
%% for $comment.children -> $child_comment {
2929
<div style="margin-left: 2em">
30-
%% include "topic/_show_topic_message_comment.tx" { comment => $child_comment };
30+
%% include "user/_show_topic_message_comment.tx" { comment => $child_comment };
3131
</div>
3232
%% }
3333
</div>

Web/root/user/show_user.tx

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,18 @@
2121
<div class="card my-4">
2222
<div class="card-body">
2323
%% if ( $message.message.url ) {
24-
<h5 class="card-title"><a href="[% $message.message.url %]">[% $message.message.title %]</a></h5>
25-
<small class="text-mute">[% $message.message.url %]</small>
24+
<h5 class="card-title">
25+
<a href="[% $message.message.url %]">[% $message.message.title %]</a>
26+
<span class="text-mute" style="font-size: 0.6em">([% $message.message.url | domain %])</span>
27+
</h5>
2628
%% } else {
27-
<h5 class="card-title"><a href="[% $c.uri_for_action( '/userchannel/get_user_message', [ $user_profile.name ], $message.message.id, $message.message.slug ) %]">[% $message.message.title %]</a></h5>
28-
<small class="text-mute">(text post)</small>
29+
<h5 class="card-title">
30+
<a href="[% $c.uri_for_action( '/userchannel/get_user_message', [ $user_profile.name ], $message.message.id, $message.message.slug ) %]">[% $message.message.title %]</a>
31+
<span class="text-mute" style="font-size: 0.6em">(text post)</span>
32+
</h5>
2933
%% }
3034
<br />
31-
<a href="#" class="card-link">Comments ([% $message.message.comment_count %])</a>
35+
<a href="[% $c.uri_for_action( '/userchannel/get_user_message', [ $user_profile.name ], $message.message.id, $message.message.slug ) %]" class="card-link">Comments ([% $message.message.comment_count %])</a>
3236
<a class="card-link" href="[% $c.uri_for_action( '/userchannel/get_user', [ $message.author.name ] ) %]">u/[% $message.author.name %]</a>
3337
<small><span title="[% $message.message.created_at.strftime('%Y %T') %]">[% $message.message.time_ago %]</span></small>
3438
</div>

Web/root/user/show_user_comments.tx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
<div class="card my-4">
2222
<div class="card-body">
2323
<p>[% $message.content %]</p>
24-
<p><small><span title="[% $message.message.created_at.strftime('%Y %T') %]">&nbsp; ~ &nbsp; [% $message.time_ago %]</span></small></p>
24+
<p><small><span title="[% $message.created_at.strftime('%Y %T') %]">&nbsp; ~ &nbsp; [% $message.time_ago %]</span></small></p>
2525
</div>
2626
</div>
2727
%% }

Web/root/user/show_user_message.tx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,16 +15,16 @@
1515
<h5 class="card-title" style="display: inline"><a href="[% $message.url %]">[% $message.title %]</a></h5>
1616
<small class="text-mute">[% $message.url %]</small>
1717
%% } else {
18-
<h5 class="card-title" style="display: inline"><a href="[% $c.uri_for_action( '/topicchannel/get_topic_message', [ ], $channel.name, $message.id, $message.title ) %]">[% $message.title %]</a></h5>
18+
<h5 class="card-title" style="display: inline"><a href="[% $c.uri_for_action( '/userchannel/get_user_message', [ $user_profile.name ], $message.id, $message.title ) %]">[% $message.title %]</a></h5>
1919
<small class="text-mute">(text post)</small>
2020
%% }
2121
<div class="pt-4">
2222
%% $message.content
2323
</div>
2424
<br />
25-
<a href="[% $c.uri_for_action( '/topicchannel/get_topic_message', [], $channel.name, $message.id, $message.title ) %]" class="card-link">[Comments <small>([% $comment_count %])</small>]</a>
25+
<a href="[% $c.uri_for_action( '/userchannel/get_user_message', [ $user_profile.name ], $message.id, $message.title ) %]" class="card-link">[Comments <small>([% $comment_count %])</small>]</a>
2626
%% if ( $message.parent_id ) {
27-
<a href="[% $c.uri_for_action( '/topicchannel/get_topic_message', [], $channel.name, $message.parent_id, 'parent' ) %]" class="card-link">[Parent]</a>
27+
<a href="[% $c.uri_for_action( '/userchannel/get_user_message', [ $user_profile.name ], $message.parent_id, 'parent' ) %]" class="card-link">[Parent]</a>
2828
%% }
2929
</div>
3030
</div>
@@ -35,7 +35,7 @@
3535
<input type="hidden" name="reply_to" value="[% $message.id %]" />
3636
<input type="hidden" name="message_id" value="[% $message.id %]" />
3737
<input type="hidden" name="message_slug" value="[% $message.title %]" />
38-
<input type="hidden" name="channel_name" value="[% $channel.name %]" />
38+
<input type="hidden" name="user_name" value="[% $user_profile.name %]" />
3939
<div class="mb-3">
4040
<label for="message" class="form-label">Post a response</label>
4141
<textarea class="form-control" name="message" id="message" rows="3"></textarea>
@@ -46,7 +46,7 @@
4646
</div>
4747

4848
%% for $comments -> $comment {
49-
%% include "/topic/_show_topic_message_comment.tx" { comment => $comment };
49+
%% include "/user/_show_topic_message_comment.tx" { comment => $comment };
5050
%% }
5151

5252
%% }

0 commit comments

Comments
 (0)