Webboard

Pełna wersja: Avatar zamiast nicku odnośnikiem do profilu w czacie
Aktualnie przeglądasz uproszczoną wersję forum. Kliknij tutaj, by zobaczyć wersję z pełnym formatowaniem.
wersja skryptu MyBB: 1.8.6
adres forum: cs-zn.pl
na czym polega problem (screen, opis, komunikaty, nazwa i wersja wtyczki): Witam, korzystam z pluginu (DVS Shoutbox) i chciałbym zamienić odnośnik do profilu z nicku na avatar, żeby po kliknięciu w avatar przenosiło na profil użytkownika, a po kliknięciu w nick pojawiał on się w postaci w polu tekstowym.
Jeżeli nie ma takiej opcji w ustawieniach to musisz się pobawić w kodzie pluginu. Dokładniej musisz znaleźć skrypt js za to odpowiedzialny i go przerobić.
Dodatkowo musiałbyś usunąć link z nicku i dać go na obrazek. Nie wiem jak to dokładnie zrobić, musiałbym do kodu zerknąć.
Domyślam się że trzeba pogrzebać w kodzie, jednak myślałem że już ktoś kiedyś też tak zrobił i posiada gotowe rozwiązanie.
Nie bardzo ogarniam js i nie chcę popsuć :/
To zostaje ci sie poduczyc lub napisac do autora ;)
Chyba ze znajdzie sie ktos kto jednak to robil.
(25.04.2016, 19:09)Zielek napisał(a): [ -> ]Nie bardzo ogarniam js i nie chcę popsuć :/
To zrób kopię pliku przed zmianami. Nie jesteś saperem.

Zobacz plik dvz_shoutbox.php linia 1078
Kod PHP:
$username htmlspecialchars_uni($data['username']);
        
$user     build_profile_link(format_name($username$data['usergroup'], $data['displaygroup']), (int)$data['uid']);
        
$avatar   '<img src="' . (empty($data['avatar']) ? htmlspecialchars_uni($mybb->settings['useravatar']) : htmlspecialchars_uni($data['avatar'])) . '" alt="avatar" />'
Możesz zamienić na coś takiego
Kod PHP:
$username htmlspecialchars_uni($data['username']);
        
$user     format_name($username$data['usergroup'], $data['displaygroup']);
        
$avatar   '<img src="' . (empty($data['avatar']) ? htmlspecialchars_uni($mybb->settings['useravatar']) : htmlspecialchars_uni($data['avatar'])) . '" alt="avatar" />';
       
$avatar build_profile_link($avatar, (int)$data['uid']); 

plik .js praktycznie na końcu
Kod PHP:
$(document).on('click''#shoutbox .entry .avatar', function() {
    
dvz_shoutbox.call( $(this).parents('.entry').attr('data-username') );
    return 
false;
}); 
na
Kod PHP:
$(document).on('click''#shoutbox .entry .user', function() {
    
dvz_shoutbox.call( $(this).parents('.entry').attr('data-username') );
    return 
false;
}); 
Działa :)