• ¡Bienvenido a XenFácil!

    Estás viendo el sitio como Invitado. Para poder participar en este sitio

    y obtendrás privilegios adicionales, acceso a otras áreas y mucho mas.

    ¡Es gratis!


    ¿Ya eres miembro? Inicia sesión

Solucionado Quiero crear una condición

Estado
Cerrado para nuevas respuestas

Diesan Romero

XenForoUser
Quiero crear una condición donde: si un usuario pertenece a un grupo específico, esa condición se cumpla. La idea es mostrar a los usuarios de un grupo en la barra lateral, así como se muestra a los miembros del staff. ¿Alguien tiene alguna idea de cómo hacer esto?

Por ejemplo, he visto que la condición para verificar si un usuario es miembro del staff o no, este es el código:
<xen:if is="{$user.is_staff}"> <li> <xen:avatar user="$user" size="s" img="true" /> <xen:username user="$user" rich="true" /> <div class="userTitle">{xen:helper userTitle, $user}</div> </li> </xen:if>

¿Cómo verificaría en este caso si un usuario es miembro de un grupo?

He creado este tema en Inglés también, en xenforo.com por si alguien quiere pasar y responder.
 

Diesan Romero

XenForoUser
Si creo que aprendí algunas cosas, pero, no se como hacer lo que quiero. Osea, como puedo poner que si un usuario pertenece a un grupo se cumpla la condición.

Por ejemplo, tengo más o menos la idea de algo así:

<xen:if is="{$user ismemberof ...}">

Me falta especificar el grupo, como hago esto? alguna variable o algo? o el ID de grupo? No se si me explico bien.
 

lms

Administrador
<xen:if is="{$user ismemberof 3,4}">

Esta es la fórmula. Separa los IDs de grupo por coma y pon todos los IDs que quieras.

Salud2
 

Diesan Romero

XenForoUser
Hola @lms estoy intentando hacer lo siguiente.
Quiero hacer algo parecido a lo que muestra los miembros del staff conectados, pero que me nuestre los miembros conectados de un grupo específico.

Ya di con el código que muestra a los miembros del staff, pero no sé crear dichas condiciones para que eso suceda. ¿Puede usted ayudarme?
 

DL6

Moderador
Hola @lms estoy intentando hacer lo siguiente.
Quiero hacer algo parecido a lo que muestra los miembros del staff conectados, pero que me nuestre los miembros conectados de un grupo específico.

Ya di con el código que muestra a los miembros del staff, pero no sé crear dichas condiciones para que eso suceda. ¿Puede usted ayudarme?
Como quieres que se muestre?
Una lista simple con el nick, nick y avatar o solo el avatar?
Lo quieres en un bloque separado de la lista de usuarios conectados como el del staff o algo parecido a los usuarios a los que sigues?
upload_2017-11-6_16-9-29.png
Por cierto @lms el código correcto es este <xen:if is="{xen:helper ismemberof, $user, 1,2,3}">contenido</xen:if>

Saludos
 

Diesan Romero

XenForoUser
@DL6 lo que quiero es que se muestre igual que los miembros del equipo, pero sólo de un grupo específico. Ósea una sección para moderadores, otra para los administradores. Igual que con los miembros del staff, con avatar y todo.
 

DL6

Moderador
Si quieres algo así
upload_2017-11-7_16-39-50.png
Cambia:
Insertar CODE, HTML o PHP:
                        <xen:foreach loop="$onlineUsers.records" value="$user">
                            <xen:if is="{$user.is_staff}">
                                <li>
                                    <xen:avatar user="$user" size="s" img="true" />
                                    <xen:username user="$user" rich="true" />
                                    <div class="userTitle">{xen:helper userTitle, $user}</div>
                                </li>
                            </xen:if>
                        </xen:foreach>
por algo como esto
Rich (BB code):
                        <xen:if hascontent="true">
                            <h4 class="minorHeading">Nombre del grupo:</h4>
                                <xen:contentcheck>
                                <xen:foreach loop="$onlineUsers.records" value="$user">
                                    <xen:if is="{$condicion}">
                                        <li>
                                            <xen:avatar user="$user" size="s" img="true" />
                                            <xen:username user="$user" rich="true" />
                                            <div class="userTitle">{xen:helper userTitle, $user}</div>
                                        </li>
                                    </xen:if>
                                </xen:foreach>
                                </xen:contentcheck>
                        </xen:if>
Recuerda añadir uno de bajo de otro para varios grupos, esto lo que tengo para la imagen del ejemplo:
Rich (BB code):
                        <xen:if hascontent="true">
                            <h4 class="minorHeading">Administradores:</h4>
                                <xen:contentcheck>
                                <xen:foreach loop="$onlineUsers.records" value="$user">
                                    <xen:if is="{$user.is_admin}">
                                        <li>
                                            <xen:avatar user="$user" size="s" img="true" />
                                            <xen:username user="$user" rich="true" />
                                            <div class="userTitle">{xen:helper userTitle, $user}</div>
                                        </li>
                                    </xen:if>
                                </xen:foreach>
                                </xen:contentcheck>
                        </xen:if>

                        <xen:if hascontent="true">
                            <h4 class="minorHeading">Super Moderadores:</h4>
                                <xen:contentcheck>
                                <xen:foreach loop="$onlineUsers.records" value="$user">
                                    <xen:if is="{xen:helper ismemberof, $user, 5,41}">
                                        <li>
                                            <xen:avatar user="$user" size="s" img="true" />
                                            <xen:username user="$user" rich="true" />
                                            <div class="userTitle">{xen:helper userTitle, $user}</div>
                                        </li>
                                    </xen:if>
                                </xen:foreach>
                                </xen:contentcheck>
                        </xen:if>

                        <xen:if hascontent="true">
                            <h4 class="minorHeading">Moderadores:</h4>
                                <xen:contentcheck>
                                <xen:foreach loop="$onlineUsers.records" value="$user">
                                    <xen:if is="{xen:helper ismemberof, $user, 33,39}">
                                        <li>
                                            <xen:avatar user="$user" size="s" img="true" />
                                            <xen:username user="$user" rich="true" />
                                            <div class="userTitle">{xen:helper userTitle, $user}</div>
                                        </li>
                                    </xen:if>
                                </xen:foreach>
                                </xen:contentcheck>
                        </xen:if>
El de los moderadores no se muestra por que no tenía ningún moderador conectado en ese momento.

Saludos
 

DL6

Moderador
No está mal, pero quiero crear una caja para cada grupo.
Entonces solo debes cambiar lo que voy a marcar en rojo
Rich (BB code):
<!-- block: sidebar_online_staff -->
<xen:if hascontent="true">
    <div class="section staffOnline avatarList">
        <div class="secondaryContent">
            <h3><a href="{xen:link members, '', 'type=staff'}">{xen:phrase staff_online_now}</a></h3>
            <ul>
                <xen:contentcheck>
                    <xen:foreach loop="$onlineUsers.records" value="$user">
                        <xen:if is="{$user.is_staff}">
                            <li>
                                <xen:avatar user="$user" size="s" img="true" />
                                <xen:username user="$user" rich="true" />
                                <div class="userTitle">{xen:helper userTitle, $user}</div>
                            </li>
                        </xen:if>
                    </xen:foreach>
                </xen:contentcheck>
            </ul>
        </div>
    </div>
</xen:if>
<!-- end block: sidebar_online_staff -->
para añadir más debes copiar todo eso e ir a ajustandolo a cada grupo
Ejemplo de como quedaría el código para mi foro con los Administradores, moderadores, colaboradores y Editores
Rich (BB code):
<!-- block: sidebar_online_admins -->
<xen:if hascontent="true">
    <div class="section staffOnline avatarList">
        <div class="secondaryContent">
            <h3>Administradores conectados</h3>
            <ul>
                <xen:contentcheck>
                    <xen:foreach loop="$onlineUsers.records" value="$user">
                        <xen:if is="{$user.is_admin}">
                            <li>
                                <xen:avatar user="$user" size="s" img="true" />
                                <xen:username user="$user" rich="true" />
                                <div class="userTitle">{xen:helper userTitle, $user}</div>
                            </li>
                        </xen:if>
                    </xen:foreach>
                </xen:contentcheck>
            </ul>
        </div>
    </div>
</xen:if>
<!-- end block: sidebar_online_admins -->

<!-- block: sidebar_online_mods -->
<xen:if hascontent="true">
    <div class="section staffOnline avatarList">
        <div class="secondaryContent">
            <h3>Moderadores conectados</h3>
            <ul>
                <xen:contentcheck>
                    <xen:foreach loop="$onlineUsers.records" value="$user">
                        <xen:if is="{xen:helper ismemberof, $user, 5,33,39,41}">
                            <li>
                                <xen:avatar user="$user" size="s" img="true" />
                                <xen:username user="$user" rich="true" />
                                <div class="userTitle">{xen:helper userTitle, $user}</div>
                            </li>
                        </xen:if>
                    </xen:foreach>
                </xen:contentcheck>
            </ul>
        </div>
    </div>
</xen:if>
<!-- end block: sidebar_online_mods -->

<!-- block: sidebar_online_c&e -->
<xen:if hascontent="true">
    <div class="section staffOnline avatarList">
        <div class="secondaryContent">
            <h3>Colaboradores y Editores conectados</h3>
            <ul>
                <xen:contentcheck>
                    <xen:foreach loop="$onlineUsers.records" value="$user">
                        <xen:if is="{xen:helper ismemberof, $user, 10,20,72}">
                            <li>
                                <xen:avatar user="$user" size="s" img="true" />
                                <xen:username user="$user" rich="true" />
                                <div class="userTitle">{xen:helper userTitle, $user}</div>
                            </li>
                        </xen:if>
                    </xen:foreach>
                </xen:contentcheck>
            </ul>
        </div>
    </div>
</xen:if>
<!-- end block: sidebar_online_c&e -->

Resultado:
upload_2017-11-7_19-0-2.png
PD: Creo qu tu foro es el de videojuegos cierto?
No es mio pero si formo parte del staff de ese foro :)

Saludos
 
  • Me Gusta
Reacciones: lms
Estado
Cerrado para nuevas respuestas
Arriba