Anuncio

Colapsar
No hay anuncio todavía.

Asignar grupo de usuario segun campo de perfil.

Colapsar
X
 
  • Filtrar
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes

  • Asignar grupo de usuario segun campo de perfil.

    Holas
    mi duda es la siguiente , como logro que los usuarios que elijan una opcion de capo de perfil al registrarse sean agregados a un grupo por defecto ..
    Por ejemplo :
    Que al elejir el genero masculino valla al grupo Hombres y si se elije femenino va al grupo Mujer..
    Muchas gracias espero puedan darme una respuesta .
    Pd: uso vB 4.1.4.

  • #2
    Pasa por http://www.vbulletin.org/forum/showthread.php?t=267585

    Salud2
    Salud2 a to2

    Comentario


    • #3
      Originalmente publicado por snake23
      Hola lms con respecto a este Thread, lamentablemente no poseo licensia de vbulletin y mi ingles es malo, es posible que puedas explicarme las instrucciones en este foro por favor . muchas gracias
      Salud2
      Salud2 a to2

      Comentario


      • #4
        Bien, aquí está la explicación de como vBulletin 4.x selecciona un grupo al registrarse.
        Lo voy a demostrar usándolo para hombres y mujeres.
        1. Ve a Campos personales de usuario ---> Crea un nuevo campo para el perfil ---> Selección simple
          [TIP]Título: Selecciona tu género
          Descripción: aquí seleccionas tu género
          Opciones:
          Hombre
          Mujer
          Predeterminar: Sí, incluyendo una primera opción en blanco
          Campo editable por el usuario: Sólo al registrarse
          (Deja todo lo demás por defecto como está, o ponlo según tu opinión)[/TIP]
        2. Abre el archivo register.php (está ubicado en el directorio raíz de tu foro)
        3. Busca:
          Código PHP:
          if ($vbulletin->options['verifyemail'])
              {
                  
          $newusergroupid 3;
              }
              else if (
          $vbulletin->options['moderatenewmembers'] OR $vbulletin->GPC['coppauser'])
              {
                  
          $newusergroupid 4;
              }
              else
              {
                  
          $newusergroupid 2;
              } 
          Reemplazalo por:
          Código PHP:
          if ($vbulletin->options['verifyemail'])
              {
                  
          $newusergroupid 3;
              }
              else if (
          $vbulletin->options['moderatenewmembers'] OR $vbulletin->GPC['coppauser'])
              {
                  
          $newusergroupid 4;
              }
              else if (
          $vbulletin->userinfo['fieldX'] == "Women")
              {
                  
          $newusergroupid W;
              }
              else
              {
              
          $newusergroupid 2;
              } 
          [NOTA]NOTA: Donde aquí la X supone el número de id del campo creado
          Aquí puedes ver el número del campo:

          Y donde la W supone el ID del grupo de usuario de destino, que en este caso es mujer.
          Aquí te dice el número de ID, que en este caso se corresponde con el grupo de usuarios Mujer.

          En esta línea está la X:
          Código PHP:
          else if ($vbulletin->userinfo['fieldX'] == "Women"
          En esta línea está la W:
          Código PHP:
          $newusergroupid W
          [/NOTA]
        4. [NOTA]NOTA: Con todo lo echo aquí, siempre que alguien se registre y si está seleccionado NO email de confirmación, los hombres que se registren se les asignará el grupo de usuarios predeterminado que es el número de ID 2, y cuando una mujer se registre se seleccionará el grupo de usuarios en el que has colocado la identificación correspondiente.
          Sin embargo, cuando la opción de correo electrónico de confirmación está activada, debes también reemplazar en register.php:
          (Ambos pasos son recomendables para poder tener la opción de confirmar la cuenta por email)[/NOTA]Busca:
          Código PHP:
          if ($vbulletin->options['verifyemail'])
                      {
                          
          $activateid build_user_activation_id($userid, (($vbulletin->options['moderatenewmembers'] OR $vbulletin->GPC['coppauser']) ? 2), 0);

                          eval(
          fetch_email_phrases('activateaccount'));

                          
          vbmail($email$subject$messagetrue);

                      } 
          Reemplaza por:
          Código PHP:
          if ($vbulletin->options['verifyemail'])
                      {
                          if (
          $vbulletin->userinfo['fieldX'] == "Mujer")
                          {
                              
          $activateid build_user_activation_id($userid, (($vbulletin->options['moderatenewmembers'] OR $vbulletin->GPC['coppauser']) ? 16), 0);
                          }
                          else
                          {    
                              
          $activateid build_user_activation_id($userid, (($vbulletin->options['moderatenewmembers'] OR $vbulletin->GPC['coppauser']) ? 2), 0);
                          }

                          eval(
          fetch_email_phrases('activateaccount'));

                          
          vbmail($email$subject$messagetrue);
                      } 
          [NOTA]NOTA: la X supone el número de id del campo creado
          Aquí puedes ver el número del campo:

          En esta línea está la X:
          Código PHP:
          if ($vbulletin->userinfo['fieldX'] == "Mujer"
          [/NOTA]
        5. Reemplaza el archivo register.php por el modificado y listo, en el momento del registro, al elegir el género se les asigna un grupo. Si eligen Hombre o no eligen sexo, se les asigna el grupo predeterminado que es el de hombres



        [INFO]Artículo original de lympboy en http://www.vbulletin.org/forum/showthread.php?t=267585.
        Traducido por lms.[/INFO]

        Salud2
        Salud2 a to2

        Comentario


        • #5
          lsm hice todo al pie de la letra pero a la hora de registrar un usuario femenino salta el siguiente aviso
          [ATTACH]386.vB[/ATTACH]
          gracias.
          Archivos Adjuntos

          Comentario


          • #6
            Eso es que al modificar el código, te ha tomado el grupo de excluidos o baneados como grupo donde los "coloca".
            Repasa los IDs de grupo de tu foro y corrige según proceda.

            Salud2
            Salud2 a to2

            Comentario


            • #7
              estube viendo y lo que hace es mandar el usuario nuevo al grupo " (COPPA) Users Awaiting Moderation "
              intente cambiando el id de ese grupo al de Registradas.. pero el resultado es el mismo ..
              acontinuacion adjunto mi register.php ya que no se que es lo que estoy haciendo mal ... disculpa las molestias ..

              [CODE]

              Comentario


              • #8
                Hice todo y no me sale , al crearme el usuario sigue siendo USUARIO hombre , y no mujer con su respectivo color.
                Dejo el code me dicen si hice algo mal

                if ($vbulletin->options['verifyemail']) {
                $newusergroupid = 3;
                }
                else if ($vbulletin->options['moderatenewmembers'] OR $vbulletin->GPC['coppauser'])
                {
                $newusergroupid = 4;
                }
                else if ($vbulletin->userinfo['field17'] == "Mujer")
                {
                $newusergroupid = 9;
                }
                else
                {
                $newusergroupid = 2;

                }


                mi field es 17 y mi id de las mujeres es 9.

                vB version 4.1.8

                Comentario


                • #9
                  [quote="snake23, post: 11206"]estube viendo y lo que hace es mandar el usuario nuevo al grupo " (COPPA) Users Awaiting Moderation "
                  intente cambiando el id de ese grupo al de Registradas.. pero el resultado es el mismo ..
                  acontinuacion adjunto mi register.php ya que no se que es lo que estoy haciendo mal ... disculpa las molestias ..

                  [CODE]
                  Salud2 a to2

                  Comentario


                  • #10
                    Originalmente publicado por Yhooon, post: 0
                    Hice todo y no me sale , al crearme el usuario sigue siendo USUARIO hombre , y no mujer con su respectivo color.
                    Dejo el code me dicen si hice algo mal
                    Código:
                    if ($vbulletin->options['verifyemail']) {
                    $newusergroupid = 3;
                    }
                    else if ($vbulletin->options['moderatenewmembers'] OR $vbulletin->GPC['coppauser'])
                    {
                    $newusergroupid = 4;
                    }
                    else if ($vbulletin->userinfo['field17'] == "Mujer")
                    {
                    $newusergroupid = 9;
                    }
                    else
                    {
                    $newusergroupid = 2;
                    
                    }


                    mi field es 17 y mi id de las mujeres es 9.

                    vB version 4.1.8
                    Siguiendo las instrucciones, éste es el código:
                    Código:
                    if ($vbulletin->options['verifyemail'])
                                {
                                    if ($vbulletin->userinfo['field17'] == "Mujer")
                                    {
                                        $activateid = build_user_activation_id($userid, (($vbulletin->options['moderatenewmembers'] OR $vbulletin->GPC['coppauser']) ? 4 : 9), 0);
                                    }
                                    else
                                    {    
                                        $activateid = build_user_activation_id($userid, (($vbulletin->options['moderatenewmembers'] OR $vbulletin->GPC['coppauser']) ? 4 : 2), 0);
                                    }
                    
                                    eval(fetch_email_phrases('activateaccount'));
                    
                                    vbmail($email, $subject, $message, true);
                                }
                    Salud2
                    Salud2 a to2

                    Comentario


                    • #11
                      Lastima que no funcione en vbulletin 4.2.0

                      Comentario


                      • #12
                        Intentaré hacerlo rular.

                        Salud2
                        Salud2 a to2

                        Comentario


                        • #13
                          buenas, lo habeis podido hacer funcionar en 4.2 ??

                          Comentario

                          Trabajando...
                          X