X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=ND%2FWeb%2FPages%2FForum.pm;h=55cbe9615481a4ca5ffe35c84ba6fb47e80bd5c7;hb=1dd5131f6b4484797de54bd9bd2d67220c921608;hp=b18bc350c8ddb08044395c922377f5b02ba402de;hpb=c6a6e6dbab0ca435e6aeeb94e7c7329585b7b4f1;p=ndwebbie.git diff --git a/ND/Web/Pages/Forum.pm b/ND/Web/Pages/Forum.pm index b18bc35..55cbe96 100644 --- a/ND/Web/Pages/Forum.pm +++ b/ND/Web/Pages/Forum.pm @@ -131,13 +131,15 @@ sub render_body { GROUP BY fb.fbid,fb.board ORDER BY fb.fbid }); - my $threads = $DBH->prepare(q{SELECT ft.ftid AS id,ft.subject, + my $threads = $DBH->prepare(q{SELECT ft.ftid AS id,u.username,ft.subject, count(NULLIF(COALESCE(fp.time > ftv.time,TRUE),FALSE)) AS unread,count(fp.fpid) AS posts, date_trunc('seconds',max(fp.time)::timestamp) as last_post, min(fp.time)::date as posting_date, ft.sticky - FROM forum_threads ft JOIN forum_posts fp USING (ftid) LEFT OUTER JOIN (SELECT * FROM forum_thread_visits WHERE uid = $2) ftv ON ftv.ftid = ft.ftid + FROM forum_threads ft JOIN forum_posts fp USING (ftid) + JOIN users u ON u.uid = ft.uid + LEFT OUTER JOIN (SELECT * FROM forum_thread_visits WHERE uid = $2) ftv ON ftv.ftid = ft.ftid WHERE ft.fbid = $1 - GROUP BY ft.ftid, ft.subject,ft.sticky + GROUP BY ft.ftid, ft.subject,ft.sticky,u.username HAVING count(NULLIF(COALESCE(fp.time > ftv.time,TRUE),FALSE)) >= $3 ORDER BY sticky DESC,last_post DESC});