[geeklog-cvs] geeklog: Fixed counts for some items listed in the Admin Block, ...
geeklog-cvs at lists.geeklog.net
geeklog-cvs at lists.geeklog.net
Mon Dec 5 11:47:00 EST 2011
changeset 8454:ca5dc37cadde
url: http://project.geeklog.net/cgi-bin/hgwebdir.cgi/geeklog/rev/ca5dc37cadde
user: Tom <websitemaster at cogeco.net>
date: Mon Dec 05 11:42:09 2011 -0500
description:
Fixed counts for some items listed in the Admin Block, What's New Block and Older Stories Block
diffstat:
public_html/lib-common.php | 30 +++++++++++++++++-------------
1 files changed, 17 insertions(+), 13 deletions(-)
diffs (105 lines):
diff -r 87104da84532 -r ca5dc37cadde public_html/lib-common.php
--- a/public_html/lib-common.php Mon Dec 05 11:40:02 2011 -0500
+++ b/public_html/lib-common.php Mon Dec 05 11:42:09 2011 -0500
@@ -2623,14 +2623,15 @@
if (empty($topicsql)) {
$modnum += DB_count($_TABLES['storysubmission']);
} else {
- $sresult = DB_query("SELECT COUNT(*) AS count FROM {$_TABLES['storysubmission']}, {$_TABLES['topic_assignments']} ta WHERE ta.type = 'article' AND ta.id = sid AND ta.tdefault = 1 " . $topicsql);
+ $sql = "SELECT COUNT(DISTINCT sid) AS count FROM {$_TABLES['storysubmission']}, {$_TABLES['topic_assignments']} ta WHERE ta.type = 'article' AND ta.id = sid " . $topicsql;
+ $sresult = DB_query($sql);
$S = DB_fetchArray($sresult);
$modnum += $S['count'];
}
}
if (($_CONF['listdraftstories'] == 1) && SEC_hasRights('story.edit')) {
- $sql = "SELECT COUNT(*) AS count FROM {$_TABLES['stories']}, {$_TABLES['topic_assignments']} ta WHERE ta.type = 'article' AND ta.id = sid AND ta.tdefault = 1 AND draft_flag = 1";
+ $sql = "SELECT COUNT(DISTINCT sid) AS count FROM {$_TABLES['stories']}, {$_TABLES['topic_assignments']} ta WHERE ta.type = 'article' AND ta.id = sid AND draft_flag = 1";
if (!empty($topicsql)) {
$sql .= $topicsql;
}
@@ -2676,7 +2677,7 @@
}
else
{
- $nresult = DB_query( "SELECT COUNT(*) AS count FROM {$_TABLES['stories']}, {$_TABLES['topic_assignments']} ta WHERE ta.type = 'article' AND ta.id = sid AND ta.tdefault = 1 " . $topicsql . COM_getPermSql( 'AND' ));
+ $nresult = DB_query( "SELECT COUNT(DISTINCT sid) AS count FROM {$_TABLES['stories']}, {$_TABLES['topic_assignments']} ta WHERE ta.type = 'article' AND ta.id = sid " . $topicsql . COM_getPermSql( 'AND' ));
$N = DB_fetchArray( $nresult );
$numstories = $N['count'];
}
@@ -3419,16 +3420,18 @@
$sql['mysql'] = "SELECT sid,ta.tid,title,comments,UNIX_TIMESTAMP(date) AS day
FROM {$_TABLES['stories']}, {$_TABLES['topic_assignments']} ta
- WHERE ta.type = 'article' AND ta.id = sid AND ta.tdefault = 1
- AND (perm_anon = 2) AND (frontpage = 1) AND (date <= NOW()) AND (draft_flag = 0)" . COM_getTopicSQL('AND', 1, 'ta') . "
+ WHERE ta.type = 'article' AND ta.id = sid
+ AND (perm_anon = 2) AND (frontpage = 1) AND (date <= NOW()) AND (draft_flag = 0)" . COM_getTopicSQL('AND', 1, 'ta') . "
+ GROUP BY sid
ORDER BY featured DESC, date DESC LIMIT {$_CONF['limitnews']}, {$_CONF['limitnews']}";
$sql['mssql'] = $sql['mysql'];
- $sql['pgsql'] = "SELECT sid,tid,title,comments,date_part('epoch',date) AS day
+ $sql['pgsql'] = "SELECT sid,ta.tid,title,comments,date_part('epoch',date) AS day
FROM {$_TABLES['stories']}, {$_TABLES['topic_assignments']} ta
- WHERE ta.type = 'article' AND ta.id = sid AND ta.tdefault = 1
+ WHERE ta.type = 'article' AND ta.id = sid AND
AND (perm_anon = 2) AND (frontpage = 1) AND (date <= NOW()) AND (draft_flag = 0)" . COM_getTopicSQL('AND', 1, 'ta') . "
+ GROUP BY sid
ORDER BY featured DESC, date DESC LIMIT {$_CONF['limitnews']}, {$_CONF['limitnews']}";
$result = DB_query( $sql );
@@ -3625,6 +3628,7 @@
$blocksql['mysql'] .= $commonsql;
$blocksql['mssql'] .= $commonsql;
$blocksql['pgsql'] .= $commonsql;
+
$result = DB_query( $blocksql );
$nrows = DB_numRows( $result );
@@ -4337,7 +4341,7 @@
if( $_CONF['hidenewstories'] == 0 )
{
- $where_sql = " AND ta.type = 'article' AND ta.id = sid AND ta.tdefault = 1";
+ $where_sql = " AND ta.type = 'article' AND ta.id = sid";
$archsql = '';
$archivetid = DB_getItem( $_TABLES['topics'], 'tid', "archive_flag=1" );
@@ -4346,13 +4350,13 @@
}
// Find the newest stories
- $sql['mssql'] = "SELECT COUNT(*) AS count FROM {$_TABLES['stories']}, {$_TABLES['topic_assignments']} ta
+ $sql['mssql'] = "SELECT COUNT(DISTINCT sid) AS count FROM {$_TABLES['stories']}, {$_TABLES['topic_assignments']} ta
WHERE (date >= (date_sub(NOW(), INTERVAL {$_CONF['newstoriesinterval']} SECOND))) AND (date <= NOW()) AND (draft_flag = 0)" . $where_sql . COM_getPermSQL( 'AND' ) . $topicsql . COM_getLangSQL( 'sid', 'AND' );
- $sql['mysql'] = "SELECT COUNT(*) AS count FROM {$_TABLES['stories']}, {$_TABLES['topic_assignments']} ta
+ $sql['mysql'] = "SELECT COUNT(DISTINCT sid) AS count FROM {$_TABLES['stories']}, {$_TABLES['topic_assignments']} ta
WHERE (date >= (date_sub(NOW(), INTERVAL {$_CONF['newstoriesinterval']} SECOND))) AND (date <= NOW()) AND (draft_flag = 0)" . $where_sql . COM_getPermSQL( 'AND' ) . $topicsql . COM_getLangSQL( 'sid', 'AND' );
- $sql['pgsql'] = "SELECT COUNT(*) AS count FROM {$_TABLES['stories']}, {$_TABLES['topic_assignments']} ta
+ $sql['pgsql'] = "SELECT COUNT(DISTINCT sid) AS count FROM {$_TABLES['stories']}, {$_TABLES['topic_assignments']} ta
WHERE (date >= (NOW() - INTERVAL '{$_CONF['newstoriesinterval']} SECOND')) AND (date <= NOW()) AND (draft_flag = 0)" . $where_sql . COM_getPermSQL( 'AND' ) . $topicsql . COM_getLangSQL( 'sid', 'AND' );
$result = DB_query( $sql );
@@ -4476,7 +4480,7 @@
$sql['mysql'] = "SELECT DISTINCT COUNT(*) AS count,s.title,t.sid,max(t.date) AS lastdate
FROM {$_TABLES['trackback']} AS t, {$_TABLES['stories']} s, {$_TABLES['topic_assignments']} ta
- WHERE ta.type = 'article' AND ta.id = s.sid AND ta.tdefault = 1 AND (t.type = 'article') AND (t.sid = s.sid) AND (t.date >= (DATE_SUB(NOW(), INTERVAL {$_CONF['newtrackbackinterval']} SECOND)))" . COM_getPermSQL('AND', 0, 2, 's') . " AND (s.draft_flag = 0) AND (s.trackbackcode = 0)" . $topicsql . COM_getLangSQL('sid', 'AND', 's') . "
+ WHERE ta.type = 'article' AND ta.id = s.sid AND (t.type = 'article') AND (t.sid = s.sid) AND (t.date >= (DATE_SUB(NOW(), INTERVAL {$_CONF['newtrackbackinterval']} SECOND)))" . COM_getPermSQL('AND', 0, 2, 's') . " AND (s.draft_flag = 0) AND (s.trackbackcode = 0)" . $topicsql . COM_getLangSQL('sid', 'AND', 's') . "
GROUP BY t.sid, s.title
ORDER BY lastdate DESC LIMIT 15";
@@ -4484,7 +4488,7 @@
$sql['pgsql'] = "SELECT DISTINCT COUNT(*) AS count,s.title,t.sid,max(t.date) AS lastdate
FROM {$_TABLES['trackback']} AS t, {$_TABLES['stories']} s, {$_TABLES['topic_assignments']} ta
- WHERE ta.type = 'article' AND ta.id = s.sid AND ta.tdefault = 1 AND (t.type = 'article') AND (t.sid = s.sid) AND (t.date >= (NOW()+ INTERVAL '{$_CONF['newtrackbackinterval']} SECOND'))" . COM_getPermSQL('AND', 0, 2, 's') . " AND (s.draft_flag = 0) AND (s.trackbackcode = 0)" . $topicsql . COM_getLangSQL('sid', 'AND', 's') . "
+ WHERE ta.type = 'article' AND ta.id = s.sid AND (t.type = 'article') AND (t.sid = s.sid) AND (t.date >= (NOW()+ INTERVAL '{$_CONF['newtrackbackinterval']} SECOND'))" . COM_getPermSQL('AND', 0, 2, 's') . " AND (s.draft_flag = 0) AND (s.trackbackcode = 0)" . $topicsql . COM_getLangSQL('sid', 'AND', 's') . "
GROUP BY t.sid, s.title
ORDER BY lastdate DESC LIMIT 15";
More information about the geeklog-cvs
mailing list