docenttmp, возьмите, пожалуйста, zyprofile в кавычки в вашем коде в avatar_process.php и avatar_showform.php
Ага, есть такое дело, спс. Ну как же без ошибок!?))
Предлагаю добавить настройку кеша для модуля
Зачем? Плагинов для кэша туча + сама Joomla + на хостинге системы кэширования. Или я не понял вопроса.
Долгожданная плюшка для связки JComments + Zygo - online/offline пользователь
без излишней нагрузки на бд.
Для тех кто уже интегрировал JComments + Zygo :
в plugins/jcomments/avatar/avatar.php
находим :
$users = array();
foreach ($comments as &$comment) {
if ($comment->userid != 0) {
$users[] = (int)$comment->userid;
}
$comment->avatar = '';
}
заменяем на :
$users = array();
foreach ($comments as &$comment) {
if ($comment->userid != 0) {
$users[] = (int)$comment->userid;
}
$comment->avatar = '';
$comment->online = '';
}
находим :
$db->setQuery('SELECT user_id, profile_value as avatar FROM `#__user_profiles` '.
'WHERE user_id in (' . implode(',', $users). ') AND profile_key = '.$db->quote("zygo_profile.".$fid));
заменяем на :
$db->setQuery('SELECT user_id, profile_value as avatar, userid as online FROM `#__user_profiles` '.
'LEFT JOIN `#__session` ON user_id=userid WHERE user_id in (' . implode(',', $users). ') AND profile_key = '.$db->quote("zygo_profile.".$fid));
находим :
if (isset($avatars[$uid]) && !empty(trim($avatars[$uid]->avatar))) {
$comment->avatar = JURI::base(). $avatars[$uid]->avatar;
}
заменяем на :
if (isset($avatars[$uid]) && !empty(trim($avatars[$uid]->avatar))) {
$comment->avatar = JURI::base(). $avatars[$uid]->avatar;
$comment->online = $avatars[$uid]->online;
}
В шаблон Jcomments - tpl_comment.php вписываем куда надо :
<?php
if($comment->userid==0) { echo 'guest';}
elseif($comment->online==$comment->userid) { echo 'online';}
else { echo 'offline';}
?>
ну и оформляем по своему.
P.S. Первая так сказать паблик версия. Время сессии = системным настройкам в Joomla.