Plugin Directory

Changeset 151181


Ignore:
Timestamp:
09/01/2009 06:18:40 PM (17 years ago)
Author:
reblevins
Message:

Fixed a bug where the member roles were not being updated upon group creation.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • bp-groupblog/trunk/bp-groupblog.php

    r150539 r151181  
    9090    if ( !isset( $group_id ) )
    9191        $group_id = $bp->groups->current_group->id;
    92    
    93     //bp_core_add_message( "Trying to save setting. Save: " . $_POST['save'] . " Create new: " . $_POST['groupblog-create-new'] . " Group ID: " . $group_id . " Blog ID: " . $_POST['groupblog-blogid'] );
    94        
     92           
    9593    if ( $bp->current_component == $bp->groups->slug && 'group-blog' == $bp->action_variables[0] ) {
    9694        if ( $bp->is_item_admin || $bp->is_item_mod  ) {
     
    150148    if ( empty( $group_id ) )
    151149        return false;
    152 
     150       
    153151    groups_update_groupmeta ( $group_id, 'groupblog_enable_blog', $groupblog_enable_blog );
    154152    groups_update_groupmeta ( $group_id, 'groupblog_blog_id', $groupblog_blog_id );
     
    168166 *
    169167 * Saves the information from the BP group blog creation step.
     168 * TO-DO: groupblog-edit-settings is more efficient, rewrite this to be more like that one.
    170169 */
    171170
     
    179178        $groupblog_create_screen = false;
    180179    }
    181    
    182     $group_id = $_POST['groupblog-group-id'];
     180     
     181    $groupblog_default_admin_role = $_POST['default-administrator'];
     182    $groupblog_default_mod_role = $_POST['default-moderator'];
     183    $groupblog_default_member_role = $_POST['default-member'];
     184    $groupblog_group_id = $_POST['group_id'];
     185    $silent_add = $_POST['groupblog-silent-add'];
    183186   
    184187    if ( isset ($_POST['save'] ) && isset ($_POST['groupblog-create-save']) && isset($_POST['groupblog-enable-blog']) ) {
    185         if ( $_POST['groupblog-create-new'] == 'yes' ) {
    186             //Create a new blog and associate it with the group             
    187             if ( bp_groupblog_validate_blog_signup() ) {
    188                 if ( !groupblog_edit_base_settings( $_POST['groupblog-enable-blog'], $_POST['groupblog-silent-add'], $groupblog_default_admin_role, $groupblog_default_mod_role, $groupblog_default_member_role, $group_id, $groupblog_blog_id ) ) {
    189                     //bp_core_add_message( __( 'There was an error creating your group blog, please try again.' . $group_id, 'groupblog' ), 'error' );
    190                 }
     188        if ( $_POST['groupblog-create-new'] == 'yes' ) {
     189            //Create a new blog and assign the blog id to the global $groupblog_blog_id
     190            if ( !bp_groupblog_validate_blog_signup() ) {
     191                $errors = $filtered_results['errors'];
     192                bp_core_add_message ( $errors );
     193                $group_id = '';
    191194            }
    192195        } else if ( $_POST['groupblog-create-new'] == 'no' ) {
    193             //User wants to use an existing blog
    194             if ( $_POST['groupblog-blogid'] != 0 ) {
    195                 //If they have chosen a blog then we're okay
    196                 if ( !groupblog_edit_base_settings( $_POST['groupblog-enable-blog'], $_POST['groupblog-silent-add'], $groupblog_default_admin_role, $groupblog_default_mod_role, $groupblog_default_member_role, $group_id, $_POST['groupblog-blogid'] ) ) {
    197                 }           
    198             } else {
    199                 //They forgot to choose a blog, so send them back and make them do it!
     196            // They're using an existing blog, so we try to assign that to $groupblog_blog_id
     197            if ( !( $groupblog_blog_id = $_POST['groupblog-blogid'] ) ) {
     198                //They forgot to choose a blog, so send them back and make them do it!
    200199                bp_core_add_message( __( 'Please choose one of your blogs from the drop-down menu.' . $group_id, 'groupblog' ), 'error' );
    201200                if ( $bp->action_variables[0] == 'step' ) {
     
    205204                }
    206205            }
     206        } else {
     207            // They already have a blog associated with the group, we're just saving other settings
     208            $groupblog_blog_id = groups_get_groupmeta ( $bp->groups->current_group->id, 'groupblog_blog_id' );
     209        }
     210   
     211        if ( !groupblog_edit_base_settings( $_POST['groupblog-enable-blog'], $_POST['groupblog-silent-add'], $_POST['default-administrator'], $_POST['default-moderator'], $_POST['default-member'], $groupblog_group_id, $groupblog_blog_id ) ) {
     212            bp_core_add_message( __( 'There was an error creating your group blog, please try again.', 'groupblog' ), 'error' );
     213        } else {
     214            bp_core_add_message( __( 'Group details were successfully updated.', 'groupblog' ) );
    207215        }
    208216    }
Note: See TracChangeset for help on using the changeset viewer.