diff options
-rw-r--r-- | classes/Profile.php | 13 | ||||
-rw-r--r-- | lib/gallery.php | 20 |
2 files changed, 24 insertions, 9 deletions
diff --git a/classes/Profile.php b/classes/Profile.php index 794dc1de9..2d6b48217 100644 --- a/classes/Profile.php +++ b/classes/Profile.php @@ -145,4 +145,17 @@ class Profile extends Memcached_DataObject } 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); + $tags = array(); + while ($profile_tag->fetch()) { + $tags[] = $profile_tag->tag; + } + $profile_tag->free(); + return $tags; + } } diff --git a/lib/gallery.php b/lib/gallery.php index ca89e1029..841076819 100644 --- a/lib/gallery.php +++ b/lib/gallery.php @@ -86,14 +86,16 @@ class GalleryAction extends Action { foreach ($tags as $t) { $content[common_local_url($this->trimmed('action'), array('tag' => $t))] = $t; } - common_element('a', array('href' => common_local_url($this->trimmed('action'), - array('nickname' => $profile->nickname))), - _('All')); - common_element_start('form', array('name' => 'bytag', 'id' => 'bytag')); - common_dropdown('tag', _('Tag'), $content, - _('Choose a tag to narrow list'), FALSE, $tag); - common_submit('go', _('Go')); - common_element_end('form'); + if ($tags) { + common_element('a', array('href' => common_local_url($this->trimmed('action'), + array('nickname' => $profile->nickname))), + _('All')); + common_element_start('form', array('name' => 'bytag', 'id' => 'bytag')); + common_dropdown('tag', _('Tag'), $content, + _('Choose a tag to narrow list'), FALSE, $tag); + common_submit('go', _('Go')); + common_element_end('form'); + } } function show_top($profile) { @@ -119,7 +121,7 @@ class GalleryAction extends Action { } # XXX: memcached results - # XXX: SQL injection on $tag + # FIXME: SQL injection on $tag $other->query('SELECT profile.* ' . 'FROM profile JOIN subscription ' . |