Merge branch 'master' of git://gitorious.org/laconica/br3nda into review/master

This commit is contained in:
CiaranG 2009-04-08 22:11:58 +01:00
commit 85873b1f2b
4 changed files with 25 additions and 4 deletions

View File

@ -107,6 +107,7 @@ class FeaturedAction extends Action
$featured_nicks = common_config('nickname', 'featured'); $featured_nicks = common_config('nickname', 'featured');
if (count($featured_nicks) > 0) { if (count($featured_nicks) > 0) {
$quoted = array(); $quoted = array();
@ -118,7 +119,7 @@ class FeaturedAction extends Action
$user = new User; $user = new User;
$user->whereAdd(sprintf('nickname IN (%s)', implode(',', $quoted))); $user->whereAdd(sprintf('nickname IN (%s)', implode(',', $quoted)));
$user->limit(($this->page - 1) * PROFILES_PER_PAGE, PROFILES_PER_PAGE + 1); $user->limit(($this->page - 1) * PROFILES_PER_PAGE, PROFILES_PER_PAGE + 1);
$user->orderBy('user.nickname ASC'); $user->orderBy(common_database_tablename('user') .'.nickname ASC');
$user->find(); $user->find();
@ -145,4 +146,4 @@ class FeaturedAction extends Action
$this->page, 'featured'); $this->page, 'featured');
} }
} }
} }

View File

@ -67,6 +67,8 @@ class Notice extends Memcached_DataObject
$this->blowSubsCache(true); $this->blowSubsCache(true);
$this->query('BEGIN'); $this->query('BEGIN');
//Null any notices that are replies to this notice
$this->query(sprintf("UPDATE notice set reply_to = null WHERE reply_to = %d", $this->id));
$related = array('Reply', $related = array('Reply',
'Fave', 'Fave',
'Notice_tag', 'Notice_tag',

View File

@ -57,9 +57,14 @@ class FeaturedUsersSection extends ProfileSection
$quoted[] = "'$nick'"; $quoted[] = "'$nick'";
} }
$table = "user";
if(common_config('db','quote_identifiers')) {
$table = '"' . $table . '"';
}
$qry = 'SELECT profile.* ' . $qry = 'SELECT profile.* ' .
'FROM profile JOIN user on profile.id = user.id ' . 'FROM profile JOIN '. $table .' on profile.id = '. $table .'.id ' .
'WHERE user.nickname in (' . implode(',', $quoted) . ') ' . 'WHERE '. $table .'.nickname in (' . implode(',', $quoted) . ') ' .
'ORDER BY profile.created DESC '; 'ORDER BY profile.created DESC ';
$limit = PROFILES_PER_SECTION + 1; $limit = PROFILES_PER_SECTION + 1;

View File

@ -1321,3 +1321,16 @@ function common_compatible_license($from, $to)
// XXX: better compatibility check needed here! // XXX: better compatibility check needed here!
return ($from == $to); return ($from == $to);
} }
/**
* returns a quoted table name, if required according to config
*/
function common_database_tablename($tablename)
{
if(common_config('db','quote_identifiers')) {
$tablename = '"'. $tablename .'"';
}
//table prefixes could be added here later
return $tablename;
}