reformat userservice::getWatchNames
This commit is contained in:
parent
dda05f5cc7
commit
f647c48477
1 changed files with 29 additions and 8 deletions
|
@ -492,10 +492,18 @@ class SemanticScuttle_Service_User extends SemanticScuttle_DbService
|
||||||
return $arrWatch;
|
return $arrWatch;
|
||||||
}
|
}
|
||||||
|
|
||||||
function getWatchNames($uId, $watchedby = false) {
|
|
||||||
// Gets the list of user names being watched by the given user.
|
/**
|
||||||
// - If $watchedby is false get the list of users that $uId watches
|
* Gets the list of user names being watched by the given user.
|
||||||
// - If $watchedby is true get the list of users that watch $uId
|
*
|
||||||
|
* @param integer $uId User ID
|
||||||
|
* @param boolean $watchedby if false: get the list of users that $uId watches
|
||||||
|
* if true: get the list of users that watch $uId
|
||||||
|
*
|
||||||
|
* @return array Array of user names
|
||||||
|
*/
|
||||||
|
public function getWatchNames($uId, $watchedby = false)
|
||||||
|
{
|
||||||
if ($watchedby) {
|
if ($watchedby) {
|
||||||
$table1 = 'b';
|
$table1 = 'b';
|
||||||
$table2 = 'a';
|
$table2 = 'a';
|
||||||
|
@ -503,10 +511,22 @@ class SemanticScuttle_Service_User extends SemanticScuttle_DbService
|
||||||
$table1 = 'a';
|
$table1 = 'a';
|
||||||
$table2 = 'b';
|
$table2 = 'b';
|
||||||
}
|
}
|
||||||
$query = 'SELECT '. $table1 .'.'. $this->getFieldName('username') .' FROM '. $GLOBALS['tableprefix'] .'watched AS W, '. $this->getTableName() .' AS a, '. $this->getTableName() .' AS b WHERE W.watched = a.'. $this->getFieldName('primary') .' AND W.uId = b.'. $this->getFieldName('primary') .' AND '. $table2 .'.'. $this->getFieldName('primary') .' = '. intval($uId) .' ORDER BY '. $table1 .'.'. $this->getFieldName('username');
|
$primary = $this->getFieldName('primary');
|
||||||
|
$userfield = $this->getFieldName('username');
|
||||||
|
$query = 'SELECT '. $table1 .'.'. $userfield
|
||||||
|
. ' FROM '. $GLOBALS['tableprefix'] . 'watched AS W,'
|
||||||
|
. ' ' . $this->getTableName() .' AS a,'
|
||||||
|
. ' ' . $this->getTableName() .' AS b'
|
||||||
|
. ' WHERE W.watched = a.' . $primary
|
||||||
|
. ' AND W.uId = b.' . $primary
|
||||||
|
. ' AND ' . $table2 . '.' . $primary . ' = '. intval($uId)
|
||||||
|
. ' ORDER BY '. $table1 . '.' . $userfield;
|
||||||
|
|
||||||
if (!($dbresult =& $this->db->sql_query($query))) {
|
if (!($dbresult = $this->db->sql_query($query))) {
|
||||||
message_die(GENERAL_ERROR, 'Could not get watchlist', '', __LINE__, __FILE__, $query, $this->db);
|
message_die(
|
||||||
|
GENERAL_ERROR, 'Could not get watchlist',
|
||||||
|
'', __LINE__, __FILE__, $query, $this->db
|
||||||
|
);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -515,13 +535,14 @@ class SemanticScuttle_Service_User extends SemanticScuttle_DbService
|
||||||
$this->db->sql_freeresult($dbresult);
|
$this->db->sql_freeresult($dbresult);
|
||||||
return $arrWatch;
|
return $arrWatch;
|
||||||
}
|
}
|
||||||
while ($row =& $this->db->sql_fetchrow($dbresult)) {
|
while ($row = $this->db->sql_fetchrow($dbresult)) {
|
||||||
$arrWatch[] = $row[$this->getFieldName('username')];
|
$arrWatch[] = $row[$this->getFieldName('username')];
|
||||||
}
|
}
|
||||||
$this->db->sql_freeresult($dbresult);
|
$this->db->sql_freeresult($dbresult);
|
||||||
return $arrWatch;
|
return $arrWatch;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function getWatchStatus($watcheduser, $currentuser) {
|
function getWatchStatus($watcheduser, $currentuser) {
|
||||||
// Returns true if the current user is watching the given user, and false otherwise.
|
// Returns true if the current user is watching the given user, and false otherwise.
|
||||||
$query = 'SELECT watched FROM '. $GLOBALS['tableprefix'] .'watched AS W INNER JOIN '. $this->getTableName() .' AS U ON U.'. $this->getFieldName('primary') .' = W.watched WHERE U.'. $this->getFieldName('primary') .' = '. intval($watcheduser) .' AND W.uId = '. intval($currentuser);
|
$query = 'SELECT watched FROM '. $GLOBALS['tableprefix'] .'watched AS W INNER JOIN '. $this->getTableName() .' AS U ON U.'. $this->getFieldName('primary') .' = W.watched WHERE U.'. $this->getFieldName('primary') .' = '. intval($watcheduser) .' AND W.uId = '. intval($currentuser);
|
||||||
|
|
Loading…
Reference in a new issue