diff options
author | dave <dave@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2010-06-19 16:31:35 +0000 |
---|---|---|
committer | dave <dave@36083f99-b078-4883-b0ff-0f9b5a30f544> | 2010-06-19 16:31:35 +0000 |
commit | 856dc92ef07c9fe06339349224533a12898b31d7 (patch) | |
tree | 4e1a665848a8339a0c37cab948edab259f338d5f /mod/groups/actions/forums/edittopic.php | |
parent | 47e359de2e11aac5c89039fbac11c1c871d3baed (diff) | |
download | elgg-856dc92ef07c9fe06339349224533a12898b31d7.tar.gz elgg-856dc92ef07c9fe06339349224533a12898b31d7.tar.bz2 |
There was no point in group discussions having their own comment annotations, better to use the generic comments so this has been changed and a full group activity stream added. For v1.8, there will need to be an upgrade script which will change 'group_topic_post' -> 'generic_comment' and on all existing topics, take the first annotation of type 'group_topic_post' and populate the topic's description.
git-svn-id: http://code.elgg.org/elgg/trunk@6526 36083f99-b078-4883-b0ff-0f9b5a30f544
Diffstat (limited to 'mod/groups/actions/forums/edittopic.php')
-rw-r--r-- | mod/groups/actions/forums/edittopic.php | 121 |
1 files changed, 50 insertions, 71 deletions
diff --git a/mod/groups/actions/forums/edittopic.php b/mod/groups/actions/forums/edittopic.php index 10b54ed61..b677a713c 100644 --- a/mod/groups/actions/forums/edittopic.php +++ b/mod/groups/actions/forums/edittopic.php @@ -1,87 +1,66 @@ <?php +/** +* Elgg groups plugin edit topic action. + */ - /** - * Elgg groups plugin edit topic action. - * - * @package ElggGroups - * @license http://www.gnu.org/licenses/old-licenses/gpl-2.0.html GNU Public License version 2 - * @author Curverider - * @copyright Curverider Ltd 2008-2010 - * @link http://elgg.com/ - */ - - // Make sure we're logged in (send us to the front page if not) - if (!isloggedin()) forward(); +// Make sure we're logged in (send us to the front page if not) +if (!isloggedin()) forward(); - // Check the user is a group member - $group_entity = get_entity(get_input('group_guid')); - if (!$group_entity->isMember($vars['user'])) forward(); +// Check the user is a group member +$group_entity = get_entity(get_input('group_guid')); +if (!$group_entity->isMember($vars['user'])) forward(); - - // Get input data - $title = strip_tags(get_input('topictitle')); - $message = get_input('topicmessage'); - $message_id = get_input('message_id'); - $tags = get_input('topictags'); - $topic_guid = get_input('topic'); - $access = get_input('access_id'); - $group_guid = get_input('group_guid'); - //$user = $_SESSION['user']->getGUID(); // you need to be logged in to comment on a group forum - $status = get_input('status'); // sticky, resolved, closed - - // Convert string of tags into a preformatted array - $tagarray = string_to_tag_array($tags); +// Get input data +$title = strip_tags(get_input('topictitle')); +$message = get_input('topicmessage'); +$message_id = get_input('message_id'); +$tags = get_input('topictags'); +$topic_guid = get_input('topic'); +$access = get_input('access_id'); +$group_guid = get_input('group_guid'); +$status = get_input('status'); // open, closed - // Make sure we actually have permission to edit - $topic = get_entity($topic_guid); - if ($topic) - { +// Convert string of tags into a preformatted array +$tagarray = string_to_tag_array($tags); - $user = $topic->getOwner(); - - if ($topic->getSubtype() == "groupforumtopic") { +// Make sure we actually have permission to edit +$topic = get_entity($topic_guid); +if ($topic){ + $user = $topic->getOwner(); + if ($topic->getSubtype() == "groupforumtopic") { - // Convert string of tags into a preformatted array - $tagarray = string_to_tag_array($tags); + // Convert string of tags into a preformatted array + $tagarray = string_to_tag_array($tags); + + // Make sure the title isn't blank + if (empty($title) || empty($message)) { + register_error(elgg_echo("groupstopic:blank")); - // Make sure the title isn't blank - if (empty($title) || empty($message)) { - register_error(elgg_echo("groupstopic:blank")); - // Otherwise, save the forum - } else { - - $topic->access_id = $access; - + } else { + $topic->access_id = $access; // Set its title - $topic->title = $title; - + $topic->title = $title; + // Set the message + $topic->description = $message; // if no tags are present, clear existing ones - if (is_array($tagarray)) { - $topic->tags = $tagarray; - } else $topic->clearMetadata('tags'); - + if (is_array($tagarray)) { + $topic->tags = $tagarray; + } else $topic->clearMetadata('tags'); // edit metadata - $topic->status = $status; // the current status i.e sticky, closed, resolved - - // now let's edit the message annotation - update_annotation($message_id, "group_topic_post", $message, "",$user, $access); - + $topic->status = $status; // the current status i.e sticky, closed, resolved + // save the changes - if (!$topic->save()) { + if (!$topic->save()) { // register_error(elgg_echo("forumtopic:error")); - } - - // Success message - system_message(elgg_echo("groups:forumtopic:edited")); - - } - } + } + // Success message + system_message(elgg_echo("groups:forumtopic:edited")); } - // Forward to the group forum page - global $CONFIG; - $url = $CONFIG->wwwroot . "pg/groups/forum/{$group_guid}/"; - forward($url); - -?> + } +} +// Forward to the group forum page +global $CONFIG; +$url = $CONFIG->wwwroot . "pg/groups/forum/{$group_guid}/"; +forward($url); |