view_count) {
$results .= "
";
$results .= t("Views: %view_count", array("view_count" => $item->view_count));
$results .= "";
}
// rWatcher Edit: Display Tags on Thumbnails
if (module::is_active("tag")) {
$tags = ORM::factory("tag")
->join("items_tags", "tags.id", "items_tags.tag_id")
->where("items_tags.item_id", "=", $item->id)
->find_all();
if (count($tags) > 0) {
$results .= "";
$results .= t("Tags:") . " ";
$anchors = array();
foreach ($tags as $tag) {
$anchors[] = "" . html::clean($tag->name) . "";
}
$results .= join(", ", $anchors) . "";
}
}
// rWatcher End Edit
if ($item->owner) {
// rWatcher Edit: Display profile instead of web site, if viewable.
$str_owner_url = $item->owner->url;
if (rwinfo_theme_Core::_can_view_profile_pages(identity::lookup_user($item->owner->id))) {
$str_owner_url = user_profile::url($item->owner->id);
}
// rWatcher End Edit
$results .= "";
if ($str_owner_url) { //rW Edit str_owner_url
$results .= t("By: %owner_name",
array("owner_name" => $item->owner->display_name(),
"owner_url" => $str_owner_url)); // rW Edit str_owner_url
} else {
$results .= t("By: %owner_name", array("owner_name" => $item->owner->display_name()));
}
$results .= "";
}
return $results;
}
// This came from modules/gallery/controllers/user_profile.php.
static private function _can_view_profile_pages($user) {
if (!$user->loaded()) {
return false;
}
if ($user->id == identity::active_user()->id) {
// You can always view your own profile
return true;
}
switch (module::get_var("gallery", "show_user_profiles_to")) {
case "admin_users":
return identity::active_user()->admin;
case "registered_users":
return !identity::active_user()->guest;
case "everybody":
return true;
default:
// Fail in private mode on an invalid setting
return false;
}
}
}