wersja skryptu MyBB:1.6
adres forum:---
na czym polega problem (screen, opis, komunikaty, nazwa stylu/theme/szablonu):
Witam. Chciałbym, żeby na portalu, po lewej stronie jak są boxy to w boxie "online" nie pokazywało nazw użytkowników, tylko ich awatary i gdy klikniemy na ten awatar to przeniesie nas na jego profil. Wiem, że to kwestia pogrzebania w zmiennych, ale ja php nie ogarniam, liczę na waszą pomoc. Z góry dzięki.
ACP -> Style i szablony -> Szablony -> Twój szablon -> Portal -> portal_whosonline_memberbit
i zmień zawartość z :
Kod:
{$comma}<a href="{$mybb->settings['bburl']}/{$user['profilelink']}">{$user['username']}</a>{$invisiblemark}
na coś w stylu:
Kod:
<a href="{$mybb->settings['bburl']}/{$user['profilelink']}"><img src="{$user['avatar']}" width="100px" height="100px" /></a>
Podaj adres forum, chyba coś źle robie.
Już wiem,
otwórz plik portal.php za pomocą edytora tekstowego (najlepiej notepad++) następnie znajdz linijkę 254 w której zamień:
Kod:
$query = $db->query("
SELECT s.sid, s.ip, s.uid, s.time, s.location, u.username, u.invisible, u.usergroup, u.displaygroup
FROM ".TABLE_PREFIX."sessions s
LEFT JOIN ".TABLE_PREFIX."users u ON (s.uid=u.uid)
WHERE s.time>'$timesearch'
ORDER BY u.username ASC, s.time DESC
");
na
Kod:
$query = $db->query("
SELECT s.sid, s.ip, s.uid, s.time, s.location, u.username, u.avatar, u.invisible, u.usergroup, u.displaygroup
FROM ".TABLE_PREFIX."sessions s
LEFT JOIN ".TABLE_PREFIX."users u ON (s.uid=u.uid)
WHERE s.time>'$timesearch'
ORDER BY u.username ASC, s.time DESC
");
PS: Zainstaluj sobie ten plugin
https://webboard.pl/thread-15485.html?highlight=Default , aby nie było problemu z wyświetlaniem obrazków.
: Wartość tablicy, ^^
$user['avatar'] - Taka zmienna nie jest tam dostępna.
@UP: A czym się odwołujesz do tablicy?
Okey, działa. Podziękowanie leci. A jeszcze A:link w czym zrobić? Gdy na jadę na awatar to pokaże mi się border koloru na przykład czerwonego?
Kod:
<a href="{$mybb->settings['bburl']}/{$user['profilelink']}"><img src="{$user['avatar']}" width="100px" height="100px" /></a>
na:
Kod:
<a class="onlineav" href="{$mybb->settings['bburl']}/{$user['profilelink']}"><img src="{$user['avatar']}" width="50px" height="50px" /></a>
następnie w global.css w ACP dodaj:
Kod:
onlineav {
padding: 3px 3px 3px 3px;
background-color: #FFFFFF;
}
onlineav:hover {
background-color: #FF0000;
}
nie jestem pewien, ale raczej zadziała : )
Spróbuj tego:
Kod:
<a href="{$mybb->settings['bburl']}/{$user['profilelink']}"><img src="{$user['avatar']}" width="50px" height="50px" class="light" /></a>
CSS:
Kod:
.light:hover {
border: 1px solid red;
}
Testowałem i u mnie działa.
PS. Poprawiłem kod linka, bo zgubiłem jedną linijkę
Działa, lecz zamiast kwadracika 50px na 50px pokazuje coś takiego na samym dole awataru |_|
O teraz działa. Dzięki wielkie.
A jeszcze jedno. Jak najeżdżam na to, to pokazuje się obramowanie, ale awatar tak jakby się nieco powiększał i rusza całą tabelkę.
Możesz zrobić tak:
Kod:
<a href="{$mybb->settings['bburl']}/{$user['profilelink']}"><img src="{$user['avatar']}" class="light" /></a>
Kody CSS:
Kod:
.light {
width: 50px;
height: 50px;
}
.light:hover {
width: 48px;
height: 48px;
border: 1px solid red;
}
Awatar będzie 50x50, a po najechaniu zmniejszy się do 48x48
Tak, mój błąd
Jeśli:
Kod:
.light {
width: 50px;
height: 50px;
}
.light:hover {
width: 49px;
height: 49px;
border: 1px solid red;
}
To jeśli border ma 1 px, to raczej powinno być:
Kod:
.light {
width: 50px;
height: 50px;
}
.light:hover {
width: 48px;
height: 48px;
border: 1px solid red;
}
Gdyż 50-(2*1px) = 48
Lewa, prawa, aby nie skakało
Ale on się dalej rusza i rusza tabelką. Display:block nie działa. Nie mam pojęcia.
Działa. A nie da się tak zrobic, by awatar się nie zmniejszał ale żeby nie ruszało się to wszystko?
Gdyby awatar miał 48px a po najechaniu border 50px a awatar dalej 48px to było by wszystko okey. W sumie o takie coś mi chodzi.