[OH] Avatary w komentarzach
|
bartek124 |
Dodany dnia 17.10.2008 12:28:50
|
Weteran
Postów: 3264 Pomógł: 236
v7.02.06 Data rejestracji: 26.05.2007 12:25
|
Modyfikacja dodaje wyświetlanie avatara w komentarzach na stronie. Wszystko działa pięknie ładnie, tylko nie mam pojęcia jaki styl dodać, aby tekst otaczał avatar. Jeśli dodam:
float:left;
wszystko się sypie, a jeśli dodam:
vertical-align:text-top;
To tylko pierwsza linijka jest obok avatara.
Screen:
Jakby ktoś wiedział jak poprawnie wypozycjonować ten avatar to proszę dać znać.
Pozdro!
PS. Instalujemy jako panel i włączamy w Zarządzaniu panelami.
bartek124 dodał/a następującą plik:
Nie pomagam na komunikatorach oraz PW!
|
|
|
|
Wścibski Gość |
Dodany dnia 25.11.2024 00:29:46
|
Pan Kontekstualny
Postów: n^x
Data rejestracji: Zawsze
|
|
IP: localhost |
|
|
Wooya |
Dodany dnia 17.10.2008 18:41:40
|
Zaawansowany
Postów: 1449 Pomógł: 22
Data rejestracji: 30.01.2005 15:40
|
Oto rozwiazanie problemu:
GeSHi: PHP <?php function avatars_in_comments($buffer) { if(preg_match('#<!--comment_message-->#si', $buffer)) { // wyciagamy ID uzytkownikow ktorzy napisali komentarz(e) preg_match_all('#<a href=\'profile\.php\?lookup=([0-9]+)\'>.*?</a>.*?<!--comment_message-->#si', $buffer, $users_id_table); // usuwamy duplikaty // tworzymy zapytanie do tabeli mysql $i = 0; $query = ""; foreach($users_id_table as $id) { $query .= ($i !=0 ? " OR" : "")." user_id='".$id."'"; $i++; } // zapytanie mysql $result = dbquery("SELECT user_id, user_name, user_avatar FROM ".DB_USERS." WHERE user_avatar!='' AND ".$query); // wstawiamy avatar za pomoca preg_replace while($data = dbarray($result)) { $buffer = preg_replace("#<a href='profile\.php\?lookup=".$data['user_id']."'>".$data['user_name']."</a>(.*?)<!--comment_message-->(.*?)</div>#si", "<a href='profile.php?lookup=".$data['user_id']."'>".$data['user_name']."</a>\\1<!--comment_message--><img src='".IMAGES."avatars/".$data['user_avatar']."' style='float:left;margin: 2px 5px 2px 2px;' />\\2</div><div style='clear:left'></div>", $buffer); } } return $buffer; } add_handler("avatars_in_comments"); ?>
Zinterpretowano w sekund: 0.019, wykorzystano GeSHi 1.0.8.10
... Pomagam tylko przy najnowszych wersjach PHP-Fusion ...
|
|
|
|
Hanys997 |
Dodany dnia 26.10.2008 22:23:03
|
Przedszkolak
Postów: 74
Data rejestracji: 08.10.2006 13:16
|
A czy można ustalić przeskalowanie avatara do odpowiednich rozmiarów ?
Pozdrawiam Hanys !
|
|
|
|
Pieka |
Dodany dnia 26.10.2008 22:41:29
|
Postów: 19882 Pomógł: 767
v7.02.03 Data rejestracji: 23.02.2005 18:12
|
Jesli pytasz o kod Wooyi, wystarczy znalezc:
<img src='".IMAGES."avatars/".$data['user_avatar']."' style='float:left;margin: 2px 5px 2px 2px;' />
Kliknij i zaczekaj na załadowanie kodu ...
i zamienic na:
<img src='".IMAGES."avatars/".$data['user_avatar']."' width='50px' height='50px' style='float:left;margin: 2px 5px 2px 2px;' />
Kliknij i zaczekaj na załadowanie kodu ...
W przypadku bartek124, znajdz:
<img src='".IMAGES."avatars/".$data['user_avatar']."' style='vertical-align:text-top;margin: 2px 5px 2px 2px;' />
Kliknij i zaczekaj na załadowanie kodu ...
i zamien na:
<img src='".IMAGES."avatars/".$data['user_avatar']."' width='50px' height='50px' style='vertical-align:text-top;margin: 2px 5px 2px 2px;' />
Kliknij i zaczekaj na załadowanie kodu ...
Przykladowo ustawilem 50px dla width i height.
Edytowane przez Pieka dnia 26.10.2008 22:44:50
Jestem jaki jestem
|
|
|
|
bartek124 |
Dodany dnia 26.10.2008 22:46:38
|
Weteran
Postów: 3264 Pomógł: 236
v7.02.06 Data rejestracji: 26.05.2007 12:25
|
Można. W preg_replace, w drugim parametrze możesz sobie dodać width='XX' height='XX'
Nie pomagam na komunikatorach oraz PW!
|
|
|
|
BenLomax |
Dodany dnia 27.10.2008 16:17:40
|
Bywalec
Postów: 426 Pomógł: 25 Ostrzeżeń: 1
Data rejestracji: 25.06.2008 09:48
|
Jakoś dziwnie to działa, musiałem parę razy włączać/wyłączać w PA żeby zaskoczyło a jak się udało to wyświetla mi przy obojętnie jakim użytkowniku avatar admina.
Wiadomość doklejona:
Wygląda na to, że problem występuję przy użytkownikach, którzy się zarejestrowali przed włączeniem wtyczki.
Edytowane przez BenLomax dnia 27.10.2008 16:23:46
|
|
|
|
Kisioj |
Dodany dnia 05.02.2010 17:59:50
|
Przedszkolak
Postów: 5
Data rejestracji: 05.02.2010 13:44
|
Wooya twoje naprawienie problemu wywoluje blad podczas ladowania strony:
Parse error: syntax error, unexpected ';' in /virtual/k/i/kisioj.ugu.pl/infusions/avatars_in_comments_panel/avatars_in_comments_panel.php on line 11
Bardzo prosilbym aby ktos to poprawil :)
//Kolega wie do czego służą znaczniki? - hoopak
PS. Gdyby ktos byl laskaw rowniez dostosowac jeszcze moj panel ktory wyswietla dany obrazek jezeli uzytkownik nie ma avatara tak aby tenze obrazek rowniez wyswietlal sie w komentarzach w przypadku braku avatara przez komentujacego.
require_once LOCALE.LOCALESET."user_fields.php";
if (FUSION_SELF == "profile.php" && isset($_GET['lookup']) && isnum($_GET['lookup'])) {
replace_in_output("<table cellpadding=\'0\' cellspacing=\'1\' width=\'400\' class=\'tbl-border center\'>\n<tr>\n<td width=\'1%\' class=\'tbl1\' style=\'white-space:nowrap\'>".$locale['u001']."</td>\n<td align=\'right\' class=\'tbl1 profile_user_name\'><!--profile_user_name-->([-0-9A-Z_@\s]+)</td>\n</tr>", "<table cellpadding=\'0\' cellspacing=\'1\' width=\'400\' class=\'tbl-border center\'>\n<tr>\n<td rowspan=\'5\' width=\'1%\' class=\'tbl profile_user_avatar\'><!--profile_user_avatar--><img src=\'".IMAGES."noavatar.gif\' alt=\'\' /></td>\n<td width=\'1%\' class=\'tbl1\' style=\'white-space:nowrap\'>".$locale['u001']."</td>\n<td align=\'right\' class=\'tbl1 profile_user_name\'><!--profile_user_name-->\\1</td>\n</tr>", "si");
if (iMEMBER && $userdata['user_id'] != $_GET['lookup']) {
replace_in_output("<td colspan=\'2\' class=\'tbl2\' style=\'text-align:center;white-space:nowrap\'><a href=\'messages\.php\?msg_send=".$_GET['lookup']."\' title=\'".$locale['u043']."\'>".$locale['u043']."</a></td>\n</tr>\n", "<td colspan=\'3\' class=\'tbl2\' style=\'text-align:center;white-space:nowrap\'><a href=\'messages.php?msg_send=".$_GET['lookup']."\' title=\'".$locale['u043']."\'>".$locale['u043']."</a></td>\n</tr>\n");
}
} else if (FUSION_SELF == "viewthread.php") {
replace_in_output("<td valign=\'top\' class=\'tbl2\' style=\'width:140px\'>\n<span class=\'small\'>(.*?)</span><br /><br />\n<!--forum_thread_user_info-->", "<td valign=\'top\' class=\'tbl2\' style=\'width:140px\'>\n<img src=\'"
.IMAGES."noavatar.gif\' alt=\'\' /><br /><br />
\n<span class=\'small\'>\\1</span><br /><br />\n<!--forum_thread_user_info-->"
, "si");
}
Edytowane przez Kisioj dnia 05.02.2010 18:19:33
|
|
|
|
Pietras1987 |
Dodany dnia 03.05.2010 17:26:44
|
Przedszkolak
Postów: 60 Ostrzeżeń: 1
Data rejestracji: 06.10.2009 00:20
|
Mi na przykład wyświetla za każdym razem inny avatar co z tym zrobić ? |
|
|