To jest tylko wersja do druku, aby zobaczyć pełną wersję tematu, kliknij TUTAJ
phpBB2 by Przemo
Support forów phpBB2 modified by Przemo

Ogólna pomoc dotycząca stylów - własny nagłówek forum

Kartofelek_89 - 17-03-2015, 11:58
Temat postu: własny nagłówek forum
Przepraszam, że tak ciągle pytam i błądzę, ale nie chcę w poprzednim swoim temacie robić off-topicu, a chociaż problem się jeszcze do końca nie rozwiązał, to już oczywiście pojawił się kolejny :D Przy okazji zmiany stylu chcę też zrobić własny nagłówek i mam w związku z tym małą zagwozdkę.
Przekopałam trochę forum, ale albo czegoś podobnego nikt nie wyjaśnia, albo ja źle szukam. Otóż przede wszystkim chciałabym, aby nagłówek był zależny od stylu, ale z własnymi ikonami bez tekstu. Co do logo, wyszukiwajki i standardowych ikon problemu raczej nie ma, bo wystarczy chyba wyedytować tylko overall_header.tpl. Jest jednak kłopot w przypadku PM, ponieważ jeśli mam samą ikonę bez tekstu, to dobrze, aby się zmieniała, gdy przyjdą nowe wiadomości. Co i gdzie zmienić, aby zamiast jednej ikony wyświetlały się dwie, zależnie od stylu i przeczytanych/nieprzeczytanych wiadomości?

Tommekk80 - 17-03-2015, 12:53

Kartofelek_89 napisał/a:
ponieważ jeśli mam samą ikonę bez tekstu

Sama sobie odpowiadasz - wystarczy ścieżkę do grafiki ustawić do folderu /images stylu:
Kod:
<img src="templates/{STYLE_NAME}/images/pw.png

pw.png to przykład.

Ustawisz to w includes/page_header.php, dokładniej tu:
Kod:
//
// Obtain number of new private messages
// if user is logged in
//
if ( ($userdata['session_logged_in']) && (empty($gen_simple_header)) )
{
    if ( $userdata['user_new_privmsg'] )
    {
        $l_message_new = ( $userdata['user_new_privmsg'] == 1 ) ? $lang['New_pm'] : $lang['New_pms'];
        $l_privmsgs_text = sprintf($l_message_new, $userdata['user_new_privmsg']);

        if ( $userdata['user_last_privmsg'] > $userdata['user_lastvisit'] )
        {
            $sql = "UPDATE " . USERS_TABLE . "
                SET user_last_privmsg = " . $userdata['user_lastvisit'] . "
                WHERE user_id = " . $userdata['user_id'];
            if ( !$db->sql_query($sql) )
            {   
                message_die(GENERAL_ERROR, 'Could not update private message new/read time for user', '', __LINE__, __FILE__, $sql);
            }

            $s_privmsg_new = 1;
            $icon_pm = $images['pm_new_msg'];
        }
        else
        {
            $s_privmsg_new = 0;
            $icon_pm = $images['pm_new_msg'];
        }
    }
    else
    {
        if ( $userdata['user_unread_privmsg'] )
        {
            $l_message_unread = ( $userdata['user_unread_privmsg'] == 1 ) ? $lang['Unread_pm'] : $lang['Unread_pms'];
            $l_privmsgs_text  = sprintf($l_message_unread, $userdata['user_unread_privmsg']);
        }
        else
        {
            $l_privmsgs_text  = $lang['No_new_pm'];
        }

        $s_privmsg_new = 0;
        $icon_pm       = $images['pm_no_new_msg'];

    }
}
else
{
    $icon_pm = $images['pm_no_new_msg'];
    $l_privmsgs_text = $lang['Login_check_pm'];
    $s_privmsg_new = 0;
}

Kartofelek_89 - 17-03-2015, 18:58

Tommekk80 napisał/a:
Sama sobie odpowiadasz

Oj, może i sama odpowiadam na zasadzie, że wiem mniej więcej, co chcę i teoretycznie w jaki sposób to zrobić, czyli: pewnie napisać warunek i efekt, jeśli prawda/jeśli fałsz, ale nie umiem już sama napisać takiego warunku składając odpowiednio polecenia :D Jak tylko wrócę do swojego kompa, to na spokojnie sprawdzę, jak to hula, bo na razie wpadłam tylko na szybciutko :)



Powered by phpBB modified by Przemo © 2003 phpBB Group