Suscribirse a un grupo cuando me registro

Alguno tiene una idea de como hacer posible la suscripción a un grupo cuando el usuario se este registrando o completando el perfil en ambos casos que el usuario escoja el grupo existente al cual quiere pertenecer.

Conozco del plugin autosuscribegroup pero este no me funciona de acuerdo a lo planteado.

  • Les cuento ya he avanzado ...ya logre cargar los grupos en el formulario de registro

    //Crear array con los grupos ya existentes, para agregar al pulldown
        $count_group = get_entities('group','',0,'',10,'',true);
        $groups = get_entities('group','',0,'',$count_group,''); 
         
        $groups_for_pulldown = array();
     
        foreach($groups as $group){
                $groups_for_pulldown[$group->guid] = $group->name;
        }

    //pulldown para agregar el campo del grupo al cual quiere pertenecer
        $form_body .= "<label>" . elgg_echo('Area de Poder') . "<br />" . elgg_view('input/pulldown' , array('internalname' => 'group_guid','options_values'=>$groups_for_pulldown)) . "</label><br />";

     

    Pero ahora estoy tratando de agregar el guardado en el action/register con el siguiente codigo

    $group_guid = get_input('group_guid');

    $group = get_entity($group_guid);
                           
                        if (($new_user instanceof ElggUser) && ($group instanceof ElggGroup))
                        {
                            if (($group->isPublicMembership()) || (check_entity_relationship($group->guid, 'invited', $new_user->guid)))
                            {
                                if ($group->join($user))
                                {
                                    system_message(elgg_echo("groups:joined"));
                                   
                                    // Remove any invite or join request flags
                                    remove_entity_relationship($group->guid, 'invited', $new_user->guid);
                                    remove_entity_relationship($new_user->guid, 'membership_request', $group->guid);
                                   
                                    // add to river
                                    add_to_river('river/group/create','join',$new_user->guid,$group->guid);
                                   
                                    forward($group->getURL());
                                    exit;
                                }
                                else
                                    register_error(elgg_echo("groups:cantjoin"));
                            }
                            else //Si no se puede agregar le solicitad invitación
                            {
                                // Closed group, request membership
                                system_message(elgg_echo('groups:privategroup'));
                                forward($CONFIG->url . "action/groups/joinrequest?user_guid={$new_user->guid}&group_guid=$group_guid");
                                exit;
                            }

    El problema se presenta cuando intento registrar un usuario, me saca esta excepcion:

    IOException

    No se han podido guardar las propiedades del nuevo objeto!

     

    Alguna idea de que puede estar pasando..!!!

     

Spanish Community Group

Spanish Community Group

Spanish support group. Grupo de apoyo de usuarios en español