Recordad que para pedir soporte alguno, debéis facilitar los datos de soporte oportunos por favor, mirad aquí y leer las Normas generales del foro, esto nos servirá de ayuda para dar el mejor soporte..

Gracias.

La Administración de phpBB España.

No leídos en header con contadorTema Solucionado

Foros donde podréis dejar vuestras dudas sobre phpBB 3.0.x
Cerrado
Avatar de Usuario
merlet
Asiduo/a
Mensajes: 130
Registrado: 13 Ene 2013, 16:45
Género:
Edad: 47

No leídos en header con contador

#1

Mensaje por merlet »

URL: http://www.pasionreef.com
Versión phpBB: 3.0.11
MODs Instalados: Blockgets
Registro por invitación
Tapatalk
Recent topics
Antidouble post
Tengo más instalados
Plantilla(s) usada(s): Prosilver
Servidor: De pago
Actualización desde otra versión: No
Conversión desde otro sistema de foros: No

Buenas.,

He buscado en el foro pero no lo he encontrado.

Es posible poner en el header "no leídos" igual que aquí pero con contador igual que en "mensajes nuevos".

He encontrado como poner la pestaña "mensajes nuevos" con contador, pero no he encontrado la misma operación para poner "no leídos".

Saludos.
Oscar.

http://www.pasionreef.com
Última edición por merlet el 13 Feb 2013, 07:52, editado 1 vez en total.
Versión phpBB: 3.2
Actualización: phpBB 3.0.12 a 3.2
Estilo Visual: Milk v2

Extensiones:
- Tapatalk Plugin for phpBB 3.1/3.2
- cBB Blockgets
Blockgets hace phpBB más fácil y accesible para todo el mundo.

URL: https://www.pasionreef.com

Avatar de Usuario
Alorse
Ex Staff
Mensajes: 5144
Registrado: 22 Mar 2008, 02:14
Género:
Edad: 37

Re: No leídos en header con contador

#2

Mensaje por Alorse »

Por favor, ya no eres un usuarios nuevo Oscar, debes dejar tus datos de soporte completos, si quieres ponlos en la firma, recuerda que ese es un motivo para enviar el tema a la pepelera.
Abre el archivo includes/functions.php y busca:

Código: Seleccionar todo

    $template->assign_vars(array( 
Antes agrega:

Código: Seleccionar todo

function check_post_unread_count($forum_ids = array())
{
    global $db, $auth, $user;

    if (!$forum_ids)
    {
        // $forum_ids was not passed to the function, so include forum_id 0 (globals)
        // in the list and then look up and include all other forums the user is authorized to read
        $forum_ids[] = 0;

        $sql = 'SELECT forum_id
            FROM ' . FORUMS_TABLE;
        $result = $db->sql_query($sql);
        while ($row = $db->sql_fetchrow($result))
        {
            if ($auth->acl_get('f_read', $row['forum_id']))
            {
                $forum_ids[] = $row['forum_id'];
            }
        }
        $db->sql_freeresult($result);
    }

    // now count the posts with post time after each of the relevant times
    $sql = 'SELECT COUNT(p.post_id) as count
        FROM ' . POSTS_TABLE . ' p
            LEFT JOIN ' . FORUMS_TRACK_TABLE . ' ft ON (p.forum_id = ft.forum_id AND ft.user_id = ' . $user->data['user_id'] . ')
            LEFT JOIN ' . TOPICS_TRACK_TABLE . ' tt ON (p.topic_id = tt.topic_id AND tt.user_id = ' . $user->data['user_id'] . ')
                WHERE
                (
                    p.post_time > tt.mark_time
                    OR (tt.mark_time IS NULL AND p.post_time > ft.mark_time)
                    OR (ft.mark_time IS NULL AND p.post_time > ' . $user->data['user_lastmark'] . ')
                )
                AND ' . $db->sql_in_set('p.forum_id', $forum_ids);

    $result = $db->sql_query($sql);
    $unread_post_count = $db->sql_fetchfield('count', false, $result);
    $db->sql_freeresult($result);

    return $unread_post_count;
} 
Busca:

Código: Seleccionar todo

        'U_SEARCH_UNREAD'        => append_sid("{$phpbb_root_path}search.$phpEx", 'search_id=unreadposts'), 
Después agrega:

Código: Seleccionar todo

        'U_UNREAD_POSTS_COUNT'    => check_post_unread_count(), 
Y luego usa la variable {U_UNREAD_POSTS_COUNT} en cualquier lugar de la plantilla, donde sea que quieras mostrar el número de mensajes sin leer.

towen
Moderador
Mensajes: 489
Registrado: 27 Dic 2011, 05:17
Género:
Edad: 29

Re: No leídos en header con contador

#3

Mensaje por towen »

o si quieres el número de temas sin leer abre includes/functions.php
Busca

Código: Seleccionar todo

'S_NEW_PM'                => ($s_privmsg_new) ? 1 : 0, 

Después agrega

Código: Seleccionar todo

        'S_UNREAD_TOPIC_COUNT'                => count(get_unread_topics($user->data['user_id'])), 
Luego puedes poner la variable {S_UNREAD_TOPICS_COUNT} donde quieras en tu estilo.
Última edición por towen el 13 Feb 2013, 03:10, editado 1 vez en total.

Avatar de Usuario
merlet
Asiduo/a
Mensajes: 130
Registrado: 13 Ene 2013, 16:45
Género:
Edad: 47

Re: No leídos en header con contador

#4

Mensaje por merlet »

Buenas.,

Gracias a los dos por las respuestas, hoy me pongo.


P.D Perdón por los datos de soporte, ya los he añadido.
Versión phpBB: 3.2
Actualización: phpBB 3.0.12 a 3.2
Estilo Visual: Milk v2

Extensiones:
- Tapatalk Plugin for phpBB 3.1/3.2
- cBB Blockgets
Blockgets hace phpBB más fácil y accesible para todo el mundo.

URL: https://www.pasionreef.com

Avatar de Usuario
merlet
Asiduo/a
Mensajes: 130
Registrado: 13 Ene 2013, 16:45
Género:
Edad: 47

Re: No leídos en header con contador

#5

Mensaje por merlet »

Buenas.,

El último paso:

Y luego usa la variable {U_UNREAD_POSTS_COUNT} en cualquier lugar de la plantilla, donde sea que quieras mostrar el número de mensajes sin leer.

Luego puedes poner la variable {S_UNREAD_TOPICS_COUNT} donde quieras en tu estilo.



Es esto????
Abrir: styles/prosilver/template/overall_header.html

Buscar:

<a href="{U_SEARCH_SELF}">{L_SEARCH_SELF}</a>
<!-- ENDIF -->

Agregar antes:

<a href="{U_SEARCH_NEW}">Mensajes Nuevos ({NEW_POST_COUNT})</a> &bull;

Cambiando {U_SEARCH_NEW} por {U_UNREAD_POSTS_COUNT} o por {S_UNREAD_TOPICS_COUNT}
cambiando Mensajes Nuevos por "No leído" por ejemplo

Saludos
Gracias
Versión phpBB: 3.2
Actualización: phpBB 3.0.12 a 3.2
Estilo Visual: Milk v2

Extensiones:
- Tapatalk Plugin for phpBB 3.1/3.2
- cBB Blockgets
Blockgets hace phpBB más fácil y accesible para todo el mundo.

URL: https://www.pasionreef.com

Avatar de Usuario
Alorse
Ex Staff
Mensajes: 5144
Registrado: 22 Mar 2008, 02:14
Género:
Edad: 37

Re: No leídos en header con contador

#6

Mensaje por Alorse »

Cuando escribas código en el foro recuerdas hacerlo con el BBCode [code].
Si cambias {U_SEARCH_NEW} por lo que mencionas, se dañará el enlace, así que no lo puedes hacerlo, lo único que hace el código que hemos puesto más arriba, es poner un número, por ejemplo: 23, es todo, lo que debes hacer es ponerlo donde quieras que salga ese número, ya sea en el texto del enlace de Mensajes no leídos o donde quieras.

Avatar de Usuario
merlet
Asiduo/a
Mensajes: 130
Registrado: 13 Ene 2013, 16:45
Género:
Edad: 47

Re: No leídos en header con contador

#7

Mensaje por merlet »

Buenas Fredo.,

Disculpa, pero no lo he entendido.

Sobre no cambiar el {U_SEARCH_NEW}, perfecto, pero nada más.


Sigo sin entender donde colocar y como la variable {U_UNREAD_POSTS_COUNT}



Gracias y disculpa las molestias.
Versión phpBB: 3.2
Actualización: phpBB 3.0.12 a 3.2
Estilo Visual: Milk v2

Extensiones:
- Tapatalk Plugin for phpBB 3.1/3.2
- cBB Blockgets
Blockgets hace phpBB más fácil y accesible para todo el mundo.

URL: https://www.pasionreef.com

Avatar de Usuario
Alorse
Ex Staff
Mensajes: 5144
Registrado: 22 Mar 2008, 02:14
Género:
Edad: 37

Re: No leídos en header con contador  Tema Solucionado

#8

Mensaje por Alorse »

No hay problema, para eso estamos, en el archivo index_body.html de tu plantilla esta {L_SEARCH_UNREAD}, solo es que lo reemplaces por {L_SEARCH_UNREAD} ({U_UNREAD_POSTS_COUNT})
Y si quieres que se vea en todo el foro y no solo en el índice lo pones en el overall_header.html al lado de los mensajes nuevos.

Cerrado

Volver a “Foros de Soporte 3.0.x”