Index: bp-groups.php
===================================================================
--- bp-groups.php	(revision 3577)
+++ bp-groups.php	(working copy)
@@ -451,6 +451,8 @@
 				/* Check the nonce */
 				check_admin_referer( 'bp_forums_delete_topic' );
 
+				do_action( 'groups_before_delete_forum_topic', $topic_id );
+
 				if ( !groups_delete_group_forum_topic( $topic_id ) )
 					bp_core_add_message( __( 'There was an error deleting the topic', 'buddypress'), 'error' );
 				else
@@ -497,6 +499,8 @@
 				/* Check the nonce */
 				check_admin_referer( 'bp_forums_delete_post' );
 
+				do_action( 'groups_before_delete_forum_post', $post_id );
+
 				if ( !groups_delete_group_forum_post( $bp->action_variables[4], $topic_id ) )
 					bp_core_add_message( __( 'There was an error deleting that post', 'buddypress'), 'error' );
 				else
@@ -956,6 +960,8 @@
 			if ( !check_admin_referer( 'groups_delete_group' ) )
 				return false;
 
+			do_action( 'groups_before_group_deleted', $bp->groups->current_group->id );
+
 			// Group admin has deleted the group, now do it.
 			if ( !groups_delete_group( $bp->groups->current_group->id ) ) {
 				bp_core_add_message( __( 'There was an error deleting the group, please try again.', 'buddypress' ), 'error' );
@@ -1638,6 +1644,8 @@
 	if ( !$bp->is_item_admin )
 		return false;
 
+	do_action( 'groups_before_delete_group', $group_id);
+
 	// Get the group object
 	$group = new BP_Groups_Group( $group_id );
 	if ( !$group->delete() )
@@ -2171,6 +2179,8 @@
 	global $bp;
 
 	if ( bp_forums_delete_topic( array( 'topic_id' => $topic_id ) ) ) {
+		do_action( 'groups_before_delete_group_forum_topic', $topic_id );
+		
 		/* Delete the activity stream item */
 		if ( function_exists( 'bp_activity_delete' ) ) {
 			bp_activity_delete( array( 'item_id' => $bp->groups->current_group->id, 'secondary_item_id' => $topic_id, 'component' => $bp->groups->id, 'type' => 'new_forum_topic' ) );
@@ -2188,6 +2198,8 @@
 	global $bp;
 
 	if ( bp_forums_delete_post( array( 'post_id' => $post_id ) ) ) {
+		do_action( 'groups_before_delete_group_forum_post', $post_id, $topic_id );
+
 		/* Delete the activity stream item */
 		if ( function_exists( 'bp_activity_delete' ) ) {
 			bp_activity_delete( array( 'item_id' => $bp->groups->current_group->id, 'secondary_item_id' => $post_id, 'component' => $bp->groups->id, 'type' => 'new_forum_post' ) );
