Вопрос по моду PM informer

Автор wwwserfer, 04 апреля 2011, 19:31:12

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

wwwserfer

Приветствую!

Хотелось бы задать небольшой вопрос по моду PM informer

SMF 1.1.13
Данный мод установлен на форуме уже давно... сейчас вот взялся его немного переделать и добавить немного функциональности :)
Что на данный момент имеется:
при получении персональных сообщений пользователь кликом открывает окно предупреждения о новых сообщениях и видит:



Поля: От, Дата, Тема, Сообщения - тут все ясно...

Что я хотел бы: впихнуть дополнительно в это окно, кроме как имя от кого пришло письмо, так еще и аватар отправителя, если такой существует, а если нет, то чтобы он замещался дефолтной картинкой. С шаблоном то я и сам справлюсь, а вот как это прописать все, если мы имеем на данный момент:

Load.php:

function loadPmInformer()
{
global $scripturl, $db_prefix, $ID_MEMBER, $context, $user_info, $func;

//Gimme the newest pm, if we have.
if(!empty($user_info['unread_messages'])) {
$request = db_query("
SELECT
pm.ID_PM, pm.ID_MEMBER_FROM, pm.fromName, pm.msgtime, pm.subject, pm.body
FROM {$db_prefix}personal_messages AS pm
LEFT JOIN {$db_prefix}pm_recipients AS pmr ON (pmr.ID_PM = pm.ID_PM)
WHERE pmr.is_read = 0 AND pmr.ID_MEMBER = $ID_MEMBER
ORDER BY pm.msgtime DESC
LIMIT 1", __FILE__, __LINE__);
$context['pm_informer'] = array();
while ($row = mysql_fetch_assoc($request))
{
//You can't be so looongggg. He he. :)
if ($func['strlen']($row['body']) > 250)
$row['body'] = $func['substr']($row['body'], 0, 250) . '<a href="' . $scripturl . '?action=pm#msg' . $row['ID_PM'] . '">...</a>';

// Build the array.
$context['pm_informer'] = array(
'from' => $row['ID_MEMBER_FROM'],
'sender' => $row['fromName'],
'msgtime' => timeformat($row['msgtime'], false),
'subject' => $row['subject'],
'body' => parse_bbc($row['body']),
);
}
mysql_free_result($request);
}
}


Вывод в index.template.php:

траляляляляляля
..........................
<b>', $txt[318], ':</b> <a href="' . $scripturl . '?action=profile;u=', $context['pm_informer']['from'], '">', $context['pm_informer']['sender'], '</a><br />
<b>', $txt[319], ':</b> ', $context['pm_informer']['subject'], '<br />
<b>', $txt[317], ':</b> ', $context['pm_informer']['msgtime'], '<br />
<b>', $txt[72], ':</b> ', $context['pm_informer']['body'], '<br /><br />
<div align="right"><a href="' . $scripturl . '?action=pm"><span class="smalltext">', $txt['pmi_view_all'], '</span></a></div>


Пока мне никак не удается вывести аватар отправителя письма, - либо свой аватар выводится, либо пусто, либо ошибки... buck

Подскажете что следует дополнительно для этого прописать в коде Load.php?
Попытки прописать аватар отправителя взяв за основу PersonalMessage.template.php не увенчались успехом...:

// Show avatars, images, etc.?
if (!empty($settings['show_user_images']) && empty($options['show_no_avatars']))
echo '
', $message['member']['avatar']['image'], '<br />';


Спасибо за внимание!

Drakonsa


Inter

Запрос в базу делать в таблицу аттачей, если там нету аватара то в таблицу members, если там нету то я не знаю;
спросите у автора мода
I'm the law and you can't beat the law

|censored| 'em and their law

Crack down at sundown

wwwserfer

Цитата: Drakonsa от 04 апреля 2011, 19:56:25
loadmember чета там

O0  2funny - Не получается..

На самом деле.. пробовал по всякому..

wwwserfer

Цитата: Inter от 04 апреля 2011, 20:37:33
Запрос в базу делать в таблицу аттачей, если там нету аватара то в таблицу members, если там нету то я не знаю;
спросите у автора мода

Автор приписал к моду "[Temporarily archived]".... не отвечает... :-[
Может быть здесь кто знает, как грамотно составить запрос на аватар?