only get tags for this profile list type

darcs-hash:20081124031549-84dde-c537cb25f301ac3368440d4d5f583ea3d713ac2c.gz
This commit is contained in:
Evan Prodromou 2008-11-23 22:15:49 -05:00
parent 079b88a688
commit f80cd3273e
2 changed files with 20 additions and 17 deletions

View File

@ -145,20 +145,4 @@ class Profile extends Memcached_DataObject
} }
return NULL; return NULL;
} }
# Get list of tags we tagged other users with
function getAllTags() {
$profile_tag = new Notice_tag();
$profile_tag->query('SELECT DISTINCT(tag) ' .
'FROM profile_tag ' .
'WHERE tagger = ' . $this->id . ' ' .
'AND tagger != tagged');
$tags = array();
while ($profile_tag->fetch()) {
$tags[] = $profile_tag->tag;
}
$profile_tag->free();
return $tags;
}
} }

View File

@ -81,7 +81,8 @@ class GalleryAction extends Action {
function show_tags_dropdown($profile) { function show_tags_dropdown($profile) {
$tag = $this->trimmed('tag'); $tag = $this->trimmed('tag');
$tags = $profile->getAllTags(); list($lst, $usr) = $this->fields();
$tags = $this->get_all_tags($profile, $lst, $usr);
$content = array(); $content = array();
foreach ($tags as $t) { foreach ($tags as $t) {
$content[$t] = $t; $content[$t] = $t;
@ -241,4 +242,22 @@ class GalleryAction extends Action {
common_element_end('p'); common_element_end('p');
} }
# Get list of tags we tagged other users with
function get_all_tags($profile, $lst, $usr) {
$profile_tag = new Notice_tag();
$profile_tag->query('SELECT DISTINCT(tag) ' .
'FROM profile_tag, subscription ' .
'WHERE tagger = ' . $profile->id . ' ' .
'AND ' . $usr . ' = ' . $profile->id . ' ' .
'AND ' . $lst . ' = tagged ' .
'AND tagger != tagged');
$tags = array();
while ($profile_tag->fetch()) {
$tags[] = $profile_tag->tag;
}
$profile_tag->free();
return $tags;
}
} }