Avatary w komentarzach
|
Mikolak |
Dodany dnia 30.05.2009 23:42:13
|
Przedszkolak
Postów: 66 Ostrzeżeń: 1
Data rejestracji: 25.12.2008 20:16
|
Dołączam się do prośby frames i netixo |
|
|
|
Wścibski Gość |
Dodany dnia 22.11.2024 00:58:59
|
Pan Kontekstualny
Postów: n^x
Data rejestracji: Zawsze
|
|
IP: localhost |
|
|
Nie zdradze nicka |
Dodany dnia 11.06.2009 16:33:35
|
Przedszkolak
Postów: 92 Pomógł: 3 Ostrzeżeń: 1
Data rejestracji: 13.09.2008 17:17
|
Było by dobrze, gdyby działały wszystkie funkcje z PF7 (emotki, edycja komentarzy itp.).
Z tego co się orientuje za wyświetlanie komentarzy odpowiada ten fragment pliku comments_include.php
opentable($locale['c100']);
echo "<a id='comments' name='comments'></a>";
$c_rows = dbcount("(comment_id)", DB_COMMENTS, "comment_item_id='$cid' AND comment_type='$ctype'");
if (!isset($_GET['c_start']) || !isnum($_GET['c_start'])) { $_GET['c_start'] = 0; }
$result = dbquery(
"SELECT tcm.*,user_name FROM ".DB_COMMENTS." tcm
LEFT JOIN ".DB_USERS." tcu ON tcm.comment_name=tcu.user_id
WHERE comment_item_id='$cid' AND comment_type='$ctype'
ORDER BY comment_datestamp ASC LIMIT ".$_GET['c_start'].",10"
);
if (dbrows($result)) {
$i = $_GET['c_start']+1;
if ($c_rows > 10) {
echo "<div style='text-align:center;margin-bottom:5px;'>".makecommentnav($_GET['c_start'], 10, $c_rows, 3, $clink."&")."</div>\n";
}
while ($data = dbarray($result)) {
echo "<div class='tbl2'>\n";
if ((iADMIN && checkrights("C")) || (iMEMBER && $data['comment_name'] == $userdata['user_id'] && isset($data['user_name']))) {
echo "<div style='float:right' class='comment_actions'><!--comment_actions-->\n<a href='".FUSION_REQUEST."&c_action=edit&comment_id=".$data['comment_id']."#edit_comment'>".$locale['c108']."</a> |\n";
echo "<a href='".FUSION_REQUEST."&c_action=delete&comment_id=".$data['comment_id']."'>".$locale['c109']."</a>\n</div>\n";
}
echo "<a href='".FUSION_REQUEST."#c".$data['comment_id']."' id='c".$data['comment_id']."' name='c".$data['comment_id']."'>#".$i."</a> | ";
if ($data['user_name']) {
echo "<span class='comment-name'><a href='".BASEDIR."profile.php?lookup=".$data['comment_name']."'>".$data['user_name']."</a></span>\n";
} else {
echo "<span class='comment-name'>".$data['comment_name']."</span>\n";
}
echo "<span class='small'>".$locale['global_071'].showdate("longdate", $data['comment_datestamp'])."</span>\n";
echo "</div>\n<div class='tbl1 comment_message'><!--comment_message-->".nl2br(parseubb(parsesmileys($data['comment_message'])))."</div>\n";
$i++;
}
if (iADMIN && checkrights("C")) {
echo "<div align='right' class='tbl2'><a href='".ADMIN."comments.php".$aidlink."&ctype=$ctype&cid=$cid'>".$locale['c106']."</a></div>\n";
}
if ($c_rows > 10) {
echo "<div style='text-align:center;margin-top:5px;'>".makecommentnav($_GET['c_start'], 10, $c_rows, 3, $clink."&")."</div>\n";
}
} else {
echo $locale['c101']."\n";
}
closetable();
Próbowałem to połączyć z tym fragmentem z pliku od Fenixa, ale coś schrzaniłem.
To jest ten sam fragment z pliku Fenixa:
opentable($locale['c100']);
$result = dbquery(
"SELECT tcm.*,user_name,user_avatar FROM ".DB_PREFIX."comments tcm
LEFT JOIN ".DB_PREFIX."users tcu ON tcm.comment_name=tcu.user_id
WHERE comment_item_id='$cid' AND comment_type='$ctype'
ORDER BY comment_datestamp ASC"
);
if (dbrows($result) != 0) {
$i = 0;
echo "<table width='100%' cellpadding='0' cellspacing='1' class='tbl-border'>\n";
while ($data = dbarray($result)) {
if ($data['user_avatar'] != "") {
$avatar = "<center><a href='".BASEDIR."profile.php?lookup=".$data['comment_name']."'><img height='50' width='50' border='0' src='".IMAGES."avatars/".$data['user_avatar']."'></center>";
} else {
$avatar = "<center><a href='".BASEDIR."profile.php?lookup=".$data['comment_name']."'><img height='50' width='50' border='0' src='".IMAGES."avatars/noav.gif'></center>";
}
echo "<tr><td class='".($i% 2==0?"tbl1":"tbl2")."'>".$avatar."</td>\n<td class='".($i% 2==0?"tbl1":"tbl2")."' valign='top'><span class='comment-name'>\n";
if ($data['user_name']) {
echo "<a href='".BASEDIR."profile.php?lookup=".$data['comment_name']."'>".$data['user_name']."</a>";
} else {
echo $data['comment_name'];
}
if ($data['comment_message'] == "1") {
$comment_message = parsesmileys($data['comment_message']);
} else {
$comment_message = $data['comment_message'];
}
$comment_message = nl2br(parseubb($comment_message));
echo "</span>\n<span class='small'>dnia ".showdate("longdate", $data['comment_datestamp'])."</span><br>\n";
echo $comment_message."</td>\n</tr>\n";
$i++;
}
if (checkrights("C")) echo "<tr>\n<td colspan='2' align='right' class='".($i% 2==0?"tbl1":"tbl2")."'><a href='".ADMIN."comments.php".$aidlink."&ctype=$ctype&cid=$cid'>".$locale['c106']."</a></td>\n</tr>\n";
echo "</table>\n";
} else {
echo $locale['c101']."\n";
}
closetable();
Mam pytanie: Czy ktoś planuje się tym zająć w najbliższej przyszłości?
Edytowane przez Pieka dnia 27.08.2011 10:36:29
|
|
|
|
Spaik |
Dodany dnia 11.06.2009 17:16:54
|
Bywalec
Postów: 310 Pomógł: 8
v9.03.80 Data rejestracji: 15.04.2007 12:34
|
Ja jedynie w czym moge pomoc to z pliku dodanego przez bartka z avatarami dodalem funkcje captcha ktora skutecznie zatrzymuje boty jednak problem z emotkami pozostaje dalej.
Plik zamieszczam w załaczniku.
Pozdrawiam
Spaik dodał/a następującą plik:
Edytowane przez Spaik dnia 11.06.2009 17:17:19
|
|
|
|
Gutaj |
Dodany dnia 26.06.2009 15:48:35
|
Przedszkolak
Postów: 44 Ostrzeżeń: 4
Data rejestracji: 18.06.2009 11:03
|
A mi nie działa to zbyt ładnie, pomijając fakt że emoty nie działają
Chciał bym aby po lewo od avatara i po prawo do treści nie było takiej przestrzeni od avka da sie to jakoś zmniejszyć te odstępy ?? |
|
|
|
qba88 |
Dodany dnia 24.08.2011 15:44:09
|
Początkujący
Postów: 277 Pomógł: 14
v7.02.03 Data rejestracji: 14.08.2006 14:57
|
A jak dodać awatary w najnowszej wersji fusiona tj. v7.02.03? W render_comments w theme.php dodaje:
if($data['user_avatar'] != ""){
echo "<img src='".IMAGES."avatars/".$data['user_avatar']."' class='comment-avatar' />";
} else {
echo "<img src='".IMAGES."noavatar.png' class='comment-avatar' />";
}
lecz nie działa.
Edytowane przez qba88 dnia 24.08.2011 16:42:16
Jeśli Ci pomogłem, kliknij "Pomógł"
|
|
|
|
PomPom |
Dodany dnia 24.08.2011 19:00:57
|
Przedszkolak
Postów: 25 Ostrzeżeń: 3
Data rejestracji: 30.03.2011 21:16
|
Dodałeś zmienną globalną userdata?
Wszystko i nic ;p
|
|
|
|
qba88 |
Dodany dnia 25.08.2011 11:52:52
|
Początkujący
Postów: 277 Pomógł: 14
v7.02.03 Data rejestracji: 14.08.2006 14:57
|
Ale po co userdata?
Mógłby ktoś pomóc z tym kodem? Trzeba jakoś przypisać tą zmienną do awatarów, ale ja nie wiem jak :/
function render_comments($c_data, $c_info){
global $locale;
if (!empty($c_data)){
echo "<div class='comments floatfix'>\n";
if ($c_info['admin_link'] !== false) {
echo "<div class='floatfix'>\n";
echo "<div class='comment_admin'>".$c_info['admin_link']."</div>\n";
echo "</div>\n";
}
foreach($c_data as $data) {
echo "<div class='comment-main spacer'>\n";
echo "<div class='comment-avatar-back'>";
if($data['user_avatar'] != ""){
echo "<img src='".IMAGES."avatars/".$data['user_avatar']."' class='comment-avatar' />";
} else {
echo "<img src='".IMAGES."noavatar50.png' class='comment-avatar' />";
}
echo "</div>";
echo "<div class='tbl2'>\n";
if ($data['edit_dell'] !== false) { echo "<div style='float:right' class='comment_actions'>".$data['edit_dell']."\n</div>\n"; }
echo "<a href='".FUSION_REQUEST."#c".$data['comment_id']."' id='c".$data['comment_id']."' name='c".$data['comment_id']."'>#".$data['i']."</a> |\n";
echo "<span class='comment-name'>".$data['comment_name']."</span>\n";
echo "<span class='small'>".$data['comment_datestamp']."</span>\n";
echo "</div>\n<div class='tbl1 comment_message'>".$data['comment_message']."</div>\n";
echo "</div>\n";
}
if ($c_info['c_makepagenav'] !== false) {
echo "<div class='comment-main clearfix spacer'>\n";
echo "<div class='flleft'>".$c_info['c_makepagenav']."</div>\n";
echo "</div>\n";
}
echo "</div>\n";
} else {
echo "<div class='nocomments-message spacer'>".$locale['c101']."</div>\n";
}
}
Edytowane przez qba88 dnia 27.08.2011 19:40:32
Jeśli Ci pomogłem, kliknij "Pomógł"
|
|
|
|
kefirek |
Dodany dnia 27.08.2011 19:19:13
|
Zaawansowany
Postów: 1191 Pomógł: 418 Ostrzeżeń: 1
v6.00.xxx Data rejestracji: 06.04.2008 21:59
|
W najnowszej wersji w pliku includes/comments_include.php zamieniasz linia 130:
$result = dbquery(
"SELECT tcm.comment_id, tcm.comment_name, tcm.comment_message, tcm.comment_datestamp,
tcu.user_name, tcu.user_status
FROM ".DB_COMMENTS." tcm
LEFT JOIN ".DB_USERS." tcu ON tcm.comment_name=tcu.user_id
WHERE comment_item_id='".$cid."' AND comment_type='".$ctype."' AND comment_hidden='0'
ORDER BY comment_datestamp ".$settings['comments_sorting']." LIMIT ".$_GET['c_start'].",".$cpp
);
na:
$result = dbquery(
"SELECT tcm.comment_id, tcm.comment_name, tcm.comment_message, tcm.comment_datestamp, tcu.user_avatar,
tcu.user_name, tcu.user_status
FROM ".DB_COMMENTS." tcm
LEFT JOIN ".DB_USERS." tcu ON tcm.comment_name=tcu.user_id
WHERE comment_item_id='".$cid."' AND comment_type='".$ctype."' AND comment_hidden='0'
ORDER BY comment_datestamp ".$settings['comments_sorting']." LIMIT ".$_GET['c_start'].",".$cpp
);
Oraz w Lini 144 przed:
$c_arr['c_con'][$i]['comment_id'] = $data['comment_id'];
dodaj:
$c_arr['c_con'][$i]['user_avatar'] = $data['user_avatar'];
Na końcu themes/twój_theme/themes.php w funkcji render_comments przed:
".$data['comment_message']."
dodaj:
".($data['user_avatar'] =='' ? "<img src='".IMAGES."avatars/noavatar100.png' style='vertical-align: middle'/>" : "<img src='".IMAGES."avatars/".$data['user_avatar']."' style='vertical-align: middle'/>")."
Całość powinna wyglądać tak:
echo "</div>\n<div class='tbl1 comment_message'>".($data['user_avatar'] =='' ? "<img src='".IMAGES."avatars/noavatar100.png' style='vertical-align: middle'/>" : "<img src='".IMAGES."avatars/".$data['user_avatar']."' style='vertical-align: middle'/>")." ".$data['comment_message']."</div>\n";
|
|
|
|
kacepi |
Dodany dnia 27.09.2011 11:14:21
|
Przedszkolak
Postów: 12 Ostrzeżeń: 3
v7.00.02 Data rejestracji: 16.07.2011 21:27
Złamana licencja
|
Mógł by ktoś dodać plik z działającymi emotkami-? Jeśli ktoś wie lub ma działający plik oczywiście.
Edytowane przez kacepi dnia 28.09.2011 08:43:12
|
|
|
|
pawelek12611 |
Dodany dnia 17.08.2012 13:50:21
|
Przedszkolak
Postów: 33 Ostrzeżeń: 4
Data rejestracji: 25.12.2011 10:28
|
A gdy jak mogę dodać domyślny avatar? Aby użytkowniką którzy nie mają avatara wyświetlał się domyślny
Połączony z 17 sierpień 2012 14:03:
Ok już sobie poradziłem
Edytowane przez pawelek12611 dnia 17.08.2012 14:03:13
|
|
|
|
gandak |
Dodany dnia 25.07.2013 14:23:32
|
Przedszkolak
Postów: 24 Ostrzeżeń: 1
Data rejestracji: 17.03.2012 19:36
|
A dałoby się jeszcze zrobić, żeby pisało w komentarzu czy ktoś jest online? |
|
|
|
ZielekStudio |
Dodany dnia 19.02.2016 15:30:21
|
Przedszkolak
Postów: 8 Ostrzeżeń: 2
Data rejestracji: 14.02.2016 16:02
|
Witam, jak mogę usunąć to czarne obramowanie wokół komentarzy? |
|
|
|
jantom |
Dodany dnia 20.02.2016 21:51:39
|
Weteran
Postów: 3460 Pomógł: 123
Data rejestracji: 31.03.2005 20:10
|
Odpowiednimi deklaracjami CSS. Wszystko zależy od skórki. |
|
|
|
ZielekStudio |
Dodany dnia 29.02.2016 12:52:14
|
Przedszkolak
Postów: 8 Ostrzeżeń: 2
Data rejestracji: 14.02.2016 16:02
|
Obramowanie pojawia się dopiero po wrzuceniu pliku dodającego avatar w komentarzach. |
|
|