• ¡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

Ayuda Acceso a un foro mediante las preferencias

DL6

Moderador
Mensajes
162
Puntuación de reacciones
61
Puntos
28
País
México
Versión de XenForo
2.1.x
Página web
Web
Es posible añadir un checkbox en las preferencias de usuario y, en función de si lo tienen activado o no darles acceso (o no) a un determinado subforo?


Gracias
 

lms

Administrador
Mensajes
7.741
Puntuación de reacciones
2.163
Puntos
2.613
Sitio web
xenfacil.com
País
España
Versión de XenForo
2.1.x
PayPal
Donar dinero a este usuario
Página web
Web
Es posible, pero hay que crear un complemento.

Salud2
 

luis

Administrador
Mensajes
1.636
Puntuación de reacciones
727
Puntos
613
Sitio web
xenfacil.com
País
España
Versión de XenForo
1.5.12
PayPal
Donar dinero a este usuario
Página web
Web
Con unos cuantos clics seguramente puede conseguirse.

Crear el campo personalizado.
Crear un grupo de usuarios
Crear una promoción que promueva o degrade al usuario a dicho grupo en función de lo seleccionado en dicho campo.

No sé si me he explicado???
 

DL6

Moderador
Mensajes
162
Puntuación de reacciones
61
Puntos
28
País
México
Versión de XenForo
2.1.x
Página web
Web
Gracias a ambos, ya logré lo que quería, el objetivo era que desde las preferencias los usuarios pudiesen elegir ver o no ver un foro en especifico en la lista de foros sin la necesidad de recurrir a los grupos de usuarios, por si alguien le resulta útil lo hice de la siguiente manera:

  • hice el campo personalizado
  • modifiqué la palntilla "node_forum_level_2" de la siguiente manera
Rich (BB code):
<xen:require css="node_list.css" />
<xen:require css="node_forum.css" />

<xen:if is="({$visitor.customFields.id del campo personalizado} and {$forum.node_id} ==id del nodo) or ({$forum.node_id} != id del nodo)">  
<li class="node forum level_{$level} {xen:if '{$level} == 1 AND !{$renderedChildren}', 'groupNoChildren'} node_{$forum.node_id}" ">


    
   <xen:if is="{$level} == 1"><div class="categoryStrip subHeading"></div></xen:if>
   <div class="nodeInfo forumNodeInfo primaryContent {xen:if $forum.hasNew, 'unread'}">


     <span class="nodeIcon" title="{xen:if $forum.hasNew, '{xen:phrase unread_messages}', ''}"></span>

     <div class="nodeText">
  
       <h3 class="nodeTitle"><xen:if is="{$watchCheckBoxName}"><input type="checkbox" name="{$watchCheckBoxName}" value="{$forum.node_id}" />&nbsp;</xen:if><a href="{xen:link forums, $forum}" data-description="{xen:if @nodeListDescriptionTooltips, '#nodeDescription-{$forum.node_id}'}">{$forum.title}</a></h3>

       <xen:if is="{$forum.description} AND @nodeListDescriptions">
         <blockquote class="nodeDescription {xen:if @nodeListDescriptionTooltips, nodeDescriptionTooltip} baseHtml" id="nodeDescription-{$forum.node_id}">{xen:raw $forum.description}</blockquote>
       </xen:if>
    
       <div class="nodeLastPost">
         <xen:if is="{$forum.privateInfo}">
           <span class="noMessages muted">({xen:phrase private})</span>
         <xen:elseif is="{$forum.lastPost.date}" />
           <span class="lastThreadTitle"><span>{xen:phrase latest}:</span> <a href="{xen:link posts, $forum.lastPost}" title="{$forum.lastPost.title}">{$forum.lastPost.title}</a> {xen:phrase by}</span>
           <span class="lastThreadMeta">
             <span class="lastThreadUser"><xen:if is="{xen:helper isIgnored, $forum.last_post_user_id}">{xen:phrase ignored_member}<xen:else /><xen:username user="$forum.lastPost" /></xen:if>,</span>
             <xen:datetime time="$forum.lastPost.date" class="muted lastThreadDate" data-latest="{xen:phrase latest}: " />
           </span>
         <xen:else />
           <span class="noMessages muted">({xen:phrase contains_no_messages})</span>
         </xen:if>
       </div>

       <div class="nodeStats pairsInline">
       <xen:if is="!@nodestatsindex">
         <dl><dt>{xen:phrase discussions}:</dt> <dd>{xen:if $forum.privateInfo, '&ndash;', {xen:number $forum.discussion_count}}</dd></dl>
         <dl><dt>{xen:phrase messages}:</dt> <dd>{xen:if $forum.privateInfo, '&ndash;', {xen:number $forum.message_count}}</dd></dl>
         </xen:if>
      
         <xen:if is="{$renderedChildren} AND {$level} == 2 AND @nodeListSubForumPopup">
           <div class="Popup subForumsPopup">
             <a href="{xen:link forums, $forum}" rel="Menu" class="cloaked" data-closemenu="true"><span class="dt">{xen:phrase sub_forums}:</span> {xen:number $forum.childCount}</a>
          
             <div class="Menu JsOnly subForumsMenu">
               <div class="primaryContent menuHeader">
                 <h3>{$forum.title}</h3>
                 <div class="muted">{xen:phrase sub_forums}</div>
               </div>
               <ol class="secondaryContent blockLinksList">
               <xen:foreach loop="$renderedChildren" value="$child">
                 {xen:raw $child}
               </xen:foreach>
               </ol>
             </div>
           </div>
        
         </xen:if>
       </div>
    
    

    
       {xen:raw $nodeExtraHtml}
     </div>

     <xen:if is="{$renderedChildren} AND {$level} == 2 AND !@nodeListSubForumPopup">
       <ol class="subForumList">
       <xen:foreach loop="$renderedChildren" value="$child">
         {xen:raw $child}
       </xen:foreach>
       </ol>
    

    
    
     </xen:if>
  
     <xen:hook name="node_forum_level_2_before_lastpost" params="{xen:array 'forum={$forum}'}" />

     <xen:if is="@nodestatsindex AND {$forum.lastPost.date}">
       <div class='idstats'>
         <dl><dd>{xen:if $forum.privateInfo, '&ndash;', {xen:number $forum.discussion_count}}</dd><dt>{xen:phrase discussions}</dt></dl>
         <dl><dd>{xen:if $forum.privateInfo, '&ndash;', {xen:number $forum.message_count}}</dd><dt>{xen:phrase messages}</dt></dl>
       </div>
         </xen:if>
       <xen:if is="{$forum.description} AND @nodeListDescriptions">
         <blockquote class="nodeDescription {xen:if @nodeListDescriptionTooltips, nodeDescriptionTooltip} baseHtml" id="nodeDescription-{$forum.node_id}">{xen:raw $forum.description}</blockquote>
       </xen:if>
    
  
   </div>


   <xen:if is="{$renderedChildren} AND {$level} == 1">
     <ol class="nodeList">
       <xen:foreach loop="$renderedChildren" value="$child">{xen:raw $child}</xen:foreach>
     </ol>
   </xen:if>

</li>
</xen:if>

Saludos :)
 
Última edición por un moderador:
  • Me Gusta
Reacciones: lms

luis

Administrador
Mensajes
1.636
Puntuación de reacciones
727
Puntos
613
Sitio web
xenfacil.com
País
España
Versión de XenForo
1.5.12
PayPal
Donar dinero a este usuario
Página web
Web
Está bien que lo hayas conseguido y compartido la forma en que lo has logrado.
 
Arriba