Данный мод позволяет полностью интегрировать Gravatar для DLE!
Если у пользователя нет собственного аватара, то отображается Gravatar, если и он отсутствует, то стандартное изображение "нет аватара".
Делается очень просто, для этого нужно будет отредактировать несколько файлов:
./engine/classes/comments.class.php
./engine/modules/profile.php
./engine/modules/fullsearch.php
./engine/modules/search.php
./engine/inc/editusers.phpИ так, открываем файл
./engine/classes/comments.class.phpНаходим в нем строку:
else $tpl->set( '{foto}', "/templates/Simple/images/noavatar.png" );
И заменяем её на:
else {
$grav_url = 'http://gravatar.com/avatar/' . md5( $row['gast_email'] ) . "?s=100&r=g&d=" . $config['http_home_url'] . 'templates/' . $config['skin'] . '/images/noavatar.png';
$tpl->set('{foto}', $grav_url);
}
Теперь в файлах:
./engine/modules/profile.php
./engine/modules/fullsearch.php
./engine/modules/search.phpБудем делать следующие изменения (просто повторите данную операция над всеми файлами):
Находим строку:
else $tpl->set( '{foto}', "/templates/Simple/images/noavatar.png" );
И заменяем её на:
else {
$grav_url = 'http://gravatar.com/avatar/' . md5( stripslashes( $row['email'] ) ) . "?s=100&r=g&d=" . $config['http_home_url'] . 'templates/' . $config['skin'] . '/images/noavatar.png';
$tpl->set('{foto}', $grav_url);
}
При желании можете так же добавить отображение gravatar в админке:
Для этого откройте файл
./engine/inc/editusers.phpНайдите в нем строку:
$avatar = "engine/skins/images/noavatar.png";
И замените на:
else {
$avatar = 'http://gravatar.com/avatar/' . md5( stripslashes( $row['email'] ) ) . "?s=100&r=g&d=" . $config['http_home_url'] . 'templates/' . $config['skin'] . '/images/noavatar.png';
}
У меня на блоге стоит мод "кто онлайн", поэтому для него я проделал следующие изменения (таких модов много, так что для вашего может не подойти):
Для начала надо сделать SQL запрос:
ALTER TABLE `dle_online` ADD `email` VARCHAR( 80 ) NOT NULL AFTER `foto`
Теперь открываем
./engine/inc/online.phpИ ищем все (2 раза):
`foto`,
После вставляем
`email`,
Ищем
'{$member_id['foto']}',
И после вставляем
'{$member_id['email']}',
Ищем
`foto`=VALUES(`foto`),
И после вставляем
`email`=VALUES(`email`),
Ищем
'unknown',
И после вставляем
'unknown',
Ищем
`foto`='unknown',
И после вставляем
`email`='',
И наконец ищем
$foto = $config['http_home_url']."templates/".$config['skin']."/images/noavatar.png";
И заменяем эту строку на
$foto = 'http://gravatar.com/avatar/' . md5( stripslashes( $row['email'] ) ) . "?s=100&r=g&d=" . $config['http_home_url'] . 'templates/' . $config['skin'] . '/images/noavatar.png';
Обратите внимание на имя файла "noavatar.png" - у вас оно может быть с расширением jpg, gif (только если Вы сами изменили его).
Входящие переменные для gravatar:
s=100 - размер аватары в пикселях, в данном случае 100px. От 1 до 512 пикселей.
r=g - категория аватара (g, pg, r, x)