X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=ND.pm;h=82a477ab5a60e17c064b9b829fd399d92bb22163;hb=bea9ca01144b2ecfdd1fb0f7efc7b21f170da8c3;hp=46a9de3877b166927b4ae30c657d088ce6462012;hpb=30ff54d1d68e41a17bd8a7ff57e4104021e52ff5;p=ndwebbie.git diff --git a/ND.pm b/ND.pm index 46a9de3..82a477a 100755 --- a/ND.pm +++ b/ND.pm @@ -24,7 +24,7 @@ use HTML::Template; use DBI; use DBD::Pg qw(:pg_types); use Apache2::Request; -use ND::Include; +use ND::Web::Include; use ND::DB; use Tie::File; use Fcntl 'O_RDONLY'; @@ -81,9 +81,6 @@ sub page { $ATTACKER = 1 if $attack; } - - our $LOG = $DBH->prepare('INSERT INTO log (uid,text) VALUES(?,?)'); - tie my @pages, 'Tie::File', "/var/www/ndawn/code/pages", mode => O_RDONLY, memory => 0 or die $!; $ND::PAGE = 'main' unless grep { /^$ND::PAGE$/ } @pages; @@ -115,11 +112,11 @@ sub page { my ($unread) = $DBH->selectrow_array(q{ SELECT count(*) AS unread -FROM forum_boards fb NATURAL JOIN forum_access fa NATURAL JOIN forum_threads ft +FROM forum_boards fb NATURAL JOIN forum_threads ft JOIN forum_posts fp USING (ftid) LEFT OUTER JOIN (SELECT * FROM forum_thread_visits WHERE uid = $1) ftv ON ftv.ftid = ft.ftid -WHERE ftv.time IS NULL OR fp.time > ftv.time AND (gid = -1 OR gid IN (SELECT gid FROM groupmembers - WHERE uid = $1)) +WHERE (ftv.time IS NULL OR fp.time > ftv.time) AND fbid > 0 AND + fbid IN (SELECT fbid FROM forum_access WHERE gid IN (SELECT groups($1))) },undef,$UID) or $ERROR .= p($DBH->errstr); $TEMPLATE->param(UnreadPosts => $unread);