+++ /dev/null
-<?php
-/**
- * Elgg user display (small)
- *
- * @package ElggGroups
- *
- * @uses $vars['entity'] The user entity
- */
-
-$icon = elgg_view(
- "groups/icon", array(
- 'entity' => $vars['entity'],
- 'size' => 'tiny',
-));
-
-//get the membership type
-$membership = $vars['entity']->membership;
-if($membership == ACCESS_PUBLIC) {
- $mem = elgg_echo("groups:open");
-} else {
- $mem = elgg_echo("groups:closed");
-}
-
-$info .= "<p class='entity-subtext groups'>" . $mem . " / <b>" . get_group_members($vars['entity']->guid, 10, 0, 0, true) ."</b> " . elgg_echo("groups:member");
-
-//for admins only - display the feature or unfeature option
-if(isadminloggedin()) {
- if($vars['entity']->featured_group == "yes"){
- $url = elgg_add_action_tokens_to_url(elgg_get_site_url() . "action/groups/featured?group_guid=" . $vars['entity']->guid . "&action_type=unfeature");
- $wording = elgg_echo("groups:makeunfeatured");
- }else{
- $url = elgg_add_action_tokens_to_url(elgg_get_site_url() . "action/groups/featured?group_guid=" . $vars['entity']->guid . "&action_type=feature");
- $wording = elgg_echo("groups:makefeatured");
- }
- // display 'make featured' option
- $info .= "<br /><a href=\"{$url}\">{$wording}</a>";
-}
-
-$info .= "</p>";
-$info .= "<p class='entity-title'><a href=\"" . $vars['entity']->getUrl() . "\">" . $vars['entity']->name . "</a></p>";
-$info .= "<p class='entity-subtext'>" . $vars['entity']->briefdescription . "</p>";
-
-echo elgg_view_image_block($icon, $info);
<?php
/**
- * Elgg Groups latest discussion listing
+ * Forum topic entity view
*
* @package ElggGroups
*/
-//get the required variables
-$title = htmlentities($vars['entity']->title, ENT_QUOTES, 'UTF-8');
-//$description = get_entity($vars['entity']->description);
-$topic_owner = get_user($vars['entity']->owner_guid);
-$group = get_entity($vars['entity']->container_guid);
-$forum_created = elgg_view_friendly_time($vars['entity']->time_created);
-$counter = $vars['entity']->countAnnotations("generic_comment");
-$last_post = $vars['entity']->getAnnotations("generic_comment", 1, 0, "desc");
-//get the time and user
-if ($last_post) {
- foreach($last_post as $last) {
- $last_time = $last->time_created;
- $last_user = $last->owner_guid;
- }
+//$full = elgg_get_array_value('full', $vars, FALSE);
+$topic = elgg_get_array_value('entity', $vars, FALSE);
+
+if (!$topic) {
+ return true;
}
-$u = get_user($last_user);
+$poster = $topic->getOwnerEntity();
+$group = $topic->getContainerEntity();
+$excerpt = elgg_get_excerpt($topic->description);
-//select the correct output depending on where you are
-if (elgg_get_context() == "search") {
- var_export($counter);
- if($counter == 1){
- $info = "<p class='entity-subtext groups'>" . elgg_echo('groups:forum:created:single', array($forum_created, $counter)) . "<br />";
- }else{
- $info = "<p class='entity-subtext groups'>" . elgg_echo('groups:forum:created', array($forum_created, $counter)) . "<br />";
- }
- if (($last_time) && ($u)) $info.= elgg_echo('groups:lastupdated', array(elgg_view_friendly_time($last_time), " <a href=\"" . $u->getURL() . "\">" . $u->name . "</a>"));
- $info .= '</p>';
- //get the group avatar
- $icon = elgg_view("profile/icon",array('entity' => $u, 'size' => 'tiny'));
- //get the group and topic title
- $info .= "<p class='entity-subtext'><b>" . elgg_echo('groups:topic') . ":</b> <a href=\"".elgg_get_site_url()."mod/groups/topicposts.php?topic={$vars['entity']->guid}&group_guid={$group->guid}\">{$title}</a></p>";
- if ($group instanceof ElggGroup) {
- $info .= "<p class='entity-title'><b>" . elgg_echo('group') . ":</b> <a href=\"{$group->getURL()}\">".htmlentities($group->name, ENT_QUOTES, 'UTF-8') ."</a></p>";
- }
+$poster_icon = elgg_view('profile/icon', array('entity' => $poster, 'size' => 'tiny'));
+$poster_link = elgg_view('output/url', array(
+ 'href' => $poster->getURL(),
+ 'text' => $poster->name,
+));
+$poster_text = elgg_echo('groups:started', array($poster->name));
-} else {
- if($counter == 1){
- $info = "<p class='entity-subtext groups'>" . elgg_echo('groups:forum:created:single', array($forum_created, $counter)) . "</p>";
- }else{
- $info = "<p class='entity-subtext groups'>" . elgg_echo('groups:forum:created', array($forum_created, $counter)) . "</p>";
- }
- $info .= "<p class='entity-title'>" . elgg_echo('groups:started') . " " . $topic_owner->name . ": <a href=\"".elgg_get_site_url()."mod/groups/topicposts.php?topic={$vars['entity']->guid}&group_guid={$group->guid}\">{$title}</a></p>";
+$tags = elgg_view('output/tags', array('tags' => $topic->tags));
+$date = elgg_view_friendly_time($topic->time_created);
- if (groups_can_edit_discussion($vars['entity'], elgg_get_page_owner()->owner_guid)) {
- // display the delete link to those allowed to delete
- $info .= "<div class='entity-metadata'>";
- $info .= '<span class="entity-edit">' . elgg_view("output/url", array(
- 'href' => "mod/groups/edittopic.php?group={$vars['entity']->container_guid}&topic={$vars['entity']->guid}",
- 'text' => elgg_echo('edit'),
- ));
- $info .= '</span>';
+$comments_link = '';
+$comments_text = '';
+$num_comments = elgg_count_comments($topic);
+if ($num_comments != 0) {
+ $last_comment = $topic->getAnnotations("generic_comment", 1, 0, "desc");
+ $commenter = $last_comment[0]->getOwnerEntity();
+ $comment_time = elgg_view_friendly_time($last_comment[0]->time_created);
+ $comments_text = elgg_echo('groups:updated', array($commenter->name, $comment_time));
+
+ $comments_link = elgg_view('output/url', array(
+ 'href' => $topic->getURL() . '#topic-comments',
+ 'text' => elgg_echo("comments") . " ($num_comments)",
+ ));
+}
- // display the delete link to those allowed to delete
- $info .= '<span class="delete-button">' . elgg_view("output/confirmlink", array(
- 'href' => "action/groups/deletetopic?topic=" . $vars['entity']->guid . "&group=" . $vars['entity']->container_guid,
- 'text' => elgg_echo('delete'),
- 'confirm' => elgg_echo('deleteconfirm'),
- ));
- $info .= "</span></div>";
+$metadata = elgg_view('layout/objects/list/metadata', array(
+ 'entity' => $topic,
+ 'handler' => 'forum',
+));
-}
+$subtitle = "$poster_text $date $comments_link <span class=\"groups-latest-comment\">$comments_text</span>";
- if (($last_time) && ($u)) {
- $commenter_link = "<a href\"{$u->getURL()}\">$u->name</a>";
- $text = elgg_echo('groups:lastcomment', array(elgg_view_friendly_time($last_time), $commenter_link));
- $info .= "<p class='entity-subtext'>$text</p>";
- }
- //get the user avatar
- $icon = elgg_view("profile/icon",array('entity' => $topic_owner, 'size' => 'tiny'));
+// do not show the metadata and controls in widget view
+if (elgg_in_context('widgets')) {
+ $metadata = '';
}
-//display
-echo elgg_view_listing($icon, $info);
\ No newline at end of file
+if ($full) {
+
+} else {
+ // brief view
+
+ $params = array(
+ 'entity' => $topic,
+ 'metadata' => $metadata,
+ 'subtitle' => $subtitle,
+ 'tags' => $tags,
+ 'content' => $excerpt,
+ );
+ $list_body = elgg_view('layout/objects/list/body', $params);
+
+ echo elgg_view_image_block($poster_icon, $list_body);
+}
<?php
- $hidden_groups = $vars['entity']->hidden_groups;
- if (!$hidden_groups) $hidden_groups = 'no';
-?>
-<p>
- <?php echo elgg_echo('groups:allowhiddengroups'); ?>
-
- <?php
- echo elgg_view('input/pulldown', array(
- 'internalname' => 'params[hidden_groups]',
- 'options_values' => array(
- 'no' => elgg_echo('option:no'),
- 'yes' => elgg_echo('option:yes')
- ),
- 'value' => $hidden_groups
- ));
- ?>
-</p>
\ No newline at end of file
+/**
+ * Groups plugin settings
+ */
+
+// set default value
+if (!isset($vars['entity']->hidden_groups)) {
+ $vars['entity']->hidden_groups = 'no';
+}
+
+echo '<p>';
+echo elgg_echo('groups:allowhiddengroups');
+echo ' ';
+echo elgg_view('input/pulldown', array(
+ 'internalname' => 'params[hidden_groups]',
+ 'options_values' => array(
+ 'no' => elgg_echo('option:no'),
+ 'yes' => elgg_echo('option:yes')
+ ),
+ 'value' => $vars['entity']->hidden_groups,
+));
+echo '</p>';