X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=ND%2FInclude.pm;h=81b21122f70ce7e446b643ee17baaa65c1b6101b;hb=b7cdc3406c4e318da99e18827e18d52311a56b06;hp=96f64da1e5eee58d5cec4b751ce201f51b51fc5e;hpb=354c2fb813a139fb08476b6d0e7f30308091038a;p=ndwebbie.git diff --git a/ND/Include.pm b/ND/Include.pm index 96f64da..81b2112 100644 --- a/ND/Include.pm +++ b/ND/Include.pm @@ -20,39 +20,44 @@ package ND::Include; use strict; use warnings FATAL => 'all'; +use CGI qw{:standard}; require Exporter; our @ISA = qw/Exporter/; -our @EXPORT = qw/isMember isHC isDC isBC isOfficer isScanner isIntel parseMarkup min max listTargets - alliances intelquery generateClaimXml/; +our @EXPORT = qw/isMember isHC isDC isBC isOfficer isScanner isIntel isTech parseMarkup min max listTargets + alliances intelquery generateClaimXml markThreadAsRead/; sub isMember { - return exists $ND::GROUPS{Members}; + return exists $ND::GROUPS{Members} || isTech(); } sub isHC { - return exists $ND::GROUPS{HC}; + return exists $ND::GROUPS{HC} || isTech(); } sub isDC { - return exists $ND::GROUPS{DC}; + return exists $ND::GROUPS{DC} || isTech(); } sub isBC { - return exists $ND::GROUPS{BC}; + return exists $ND::GROUPS{BC} || isTech(); } sub isOfficer { - return exists $ND::GROUPS{Officers}; + return exists $ND::GROUPS{Officers} || isTech(); } sub isScanner { - return exists $ND::GROUPS{Scanners}; + return exists $ND::GROUPS{Scanners} || isTech(); } sub isIntel { - return exists $ND::GROUPS{Intel}; + return exists $ND::GROUPS{Intel} || isTech(); +} + +sub isTech { + return exists $ND::GROUPS{Tech}; } sub parseMarkup { @@ -63,6 +68,18 @@ sub parseMarkup { return $text; } +sub markThreadAsRead { + my ($thread) = @_; + my $rows = $ND::DBH->do(q{UPDATE forum_thread_visits SET time = now() +WHERE uid = $1 AND ftid = $2},undef,$ND::UID,$thread); + if ($rows == 0){ + $ND::DBH->do(q{INSERT INTO forum_thread_visits (uid,ftid) VALUES ($1,$2)} + ,undef,$ND::UID,$thread) or $ND::ERROR .= p($ND::DBH->errstr); + }elsif(not defined $rows){ + $ND::ERROR .= p($ND::DBH->errstr); + } +} + sub min { my ($x,$y) = @_; return ($x > $y ? $y : $x); @@ -99,6 +116,7 @@ ORDER BY r.tick+c.wave,x,y,z}); sub alliances { my ($alliance) = @_; my @alliances; + $alliance = -1 unless defined $alliance; push @alliances,{Id => -1, Name => ' ', Selected => not $alliance}; my $query = $ND::DBH->prepare(q{SELECT id,name FROM alliances ORDER BY name}); $query->execute;