diff --git a/plugins/Directory/lib/sortablegrouplist.php b/plugins/Directory/lib/sortablegrouplist.php
index 4f34a8a897..709547ae0f 100644
--- a/plugins/Directory/lib/sortablegrouplist.php
+++ b/plugins/Directory/lib/sortablegrouplist.php
@@ -149,6 +149,24 @@ class SortableGroupListItem extends SortableSubscriptionListItem
}
}
+ function showDescription()
+ {
+ if (!empty($this->profile->description)) {
+ $cutoff = 140; // XXX Should this be configurable?
+ $description = htmlspecialchars($this->profile->description);
+
+ if (mb_strlen($description) > $cutoff) {
+ $description = mb_substr($description, 0, $cutoff - 1)
+ .'…';
+ }
+
+ $this->out->elementStart('p', 'note');
+ $this->out->raw($description);
+ $this->out->elementEnd('p');
+ }
+
+ }
+
function showAvatar()
{
$logo = ($this->profile->stream_logo) ?
@@ -205,6 +223,19 @@ class SortableGroupListItem extends SortableSubscriptionListItem
}
}
+ function showProfile()
+ {
+ $this->startProfile();
+ $this->showAvatar();
+ $this->showFullName();
+ $this->showLocation();
+ $this->showHomepage();
+ $this->showDescription(); // groups have this instead of bios
+ // Relevant portion!
+ $this->showTags();
+ $this->endProfile();
+ }
+
function showActions()
{
$this->startActions();
diff --git a/plugins/Directory/lib/sortablesubscriptionlist.php b/plugins/Directory/lib/sortablesubscriptionlist.php
index 8f6e66d20a..7685c86a6a 100644
--- a/plugins/Directory/lib/sortablesubscriptionlist.php
+++ b/plugins/Directory/lib/sortablesubscriptionlist.php
@@ -249,6 +249,27 @@ class SortableSubscriptionListItem extends SubscriptionListItem
$this->out->elementEnd('td');
}
+ /**
+ * Overrided to truncate the bio if it's real long, because it
+ * looks better that way in the SortableSubscriptionList's table
+ */
+ function showBio()
+ {
+ if (!empty($this->profile->bio)) {
+ $cutoff = 140; // XXX Should this be configurable?
+ $bio = htmlspecialchars($this->profile->bio);
+
+ if (mb_strlen($bio) > $cutoff) {
+ $bio = mb_substr($bio, 0, $cutoff - 1)
+ .'…';
+ }
+
+ $this->out->elementStart('p', 'note');
+ $this->out->raw($bio);
+ $this->out->elementEnd('p');
+ }
+ }
+
/**
* Only show the tags if we're logged in
*/