Для этого, по совету Александра, создал по типу стандартной функции GetAvatar свою - MyGetAvatar.
Итак, открываем файл: classes/login/class_account.php
Вставляем следующий код, ну допустим, после функции public function GetAvatar (в районе 277 строки):
// Моя функия аватары
public function MyGetAvatar($user=false)
{
if ($user===false or $user==='0')
return array('avatar'=>'','w'=>'','h'=>'','no'=>true);
$this->Mainclass->Db->Query('SELECT `id`, `name`, `avatar_location`, `avatar_size`, `avatar_type` FROM `f_users` INNER JOIN `f_users_extra` USING(`id`) WHERE `id`='.$user.' LIMIT 1',__file__,__line__);
while($arr=$this->Mainclass->Db->Fetch_assoc())
{
if(empty($arr['avatar_location']))
return array('avatar'=>$this->Mainclass->Template->GetImage($this->Mainclass->vars['noavatar']),'w'=>'auto','h'=>'auto','no'=>false);
if (strpos($arr['avatar_size'],'x')!==false)
{
$temp=explode('x',$arr['avatar_size'],2);
$width=$temp[0];
$height=$temp[1];
}
else
$width=$height='auto';
switch($arr['avatar_type'])
{
case 'local':
$avatar='images/avatars/'.$arr['avatar_location'];
break;
case 'upload':
$avatar=Mainclass::UPLOADS_DIR.'/uploaded_avatars/'.$arr['avatar_location'];
break;
case 'url':
$avatar=$arr['avatar_location'];
$temp=explode('x',$arr['avatar_size'],2);
break;
default:
$avatar='';
break;
}
}
return array('avatar'=>$avatar,'w'=>$width,'h'=>$height,'no'=>false);
}
И наслаждаемся новой функцией! )
Использование:
$av=$Mainclass->Account->MyGetAvatar($uid - это id пользователя);
$my_avatar=$av['no'] ? 'Нет Аватара' : '<img align="middle" src="'.$av['avatar'].'" width="'.$av['w'].'" height="'.$av['h'].'" border="0" alt="" >';
Пример использования в моем блоке комментариев:[attachment=351:avatara.png]