HTML шаблон для уведомлений с форума

хак

#1 21 февраля 2013 в 21:30
Добрый день, хочу открыть блог) для этого нужна карма...
поэтому свои хаки буду пока тут писать)

Для instans 1.10.1, но думаю можно и под другие)

Вот сделал недавно уведомления на почту пользователей о новых сообщения на форуме в html, красивее… может местами криво, рад буду если поможете сделать шаблоны для других уведомлений и этот поправить под разные почтовики…

Добавил возможность сразу отписать, перейти в профиль, посмотреть новые темы и сообщения, активно...

Иллюстрация

Строки примерно 1450 в файле /core/classes/user.class.php заменить на это

  1.  
  2. while ($user = $inDB->fetch_assoc($users_result)){
  3.  
  4. if ($user['id'] == $inUser->id) { continue; }
  5.  
  6. if ($user['subscribe_type']=='priv' || $user['subscribe_type']=='both'){
  7. $message = 'Произошло обновление: <a href="'.$comment['target_link'].'">'.$comment['target_title'].'</a>';
  8. self::sendMessage(USER_UPDATER, $user['id'], $message);
  9. }
  10.  
  11. if ($user['subscribe_type']=='mail' || $user['subscribe_type']=='both'){
  12. if (!$user['email']) { continue; }
  13. $user_letter = str_replace('{sitename}', $inConf->sitename, $letter);
  14. $user_letter = str_replace('{answerlink}', HOST.$comment['target_link'], $user_letter);
  15. $user_letter = str_replace('{pagetitle}', $comment['target_title'], $user_letter);
  16. $user_letter = str_replace('{date}', $postdate, $user_letter);
  17. $user_letter = str_replace('{author}', $comment['author'], $user_letter);
  18. // $inCore->mailText($user['email'], $letter_title.' - '.$inConf->sitename, $user_letter);
  19. $subcomment = substr($comment['content'], 0, 1000);
  20. $user_letter = str_replace('{content}', $subcomment, $user_letter);
  21. $user_letter = str_replace('{p_id}', $comment['thread_id'], $user_letter);
  22.  
  23. $user1 = $user['id'];
  24. $user2 = $inDB->get_fields('cms_users', "id = '$user1'", 'login');
  25. $user_login = $user2['login'];
  26. $user_letter = str_replace('{user_login}', $user_login, $user_letter);
  27.  
  28. $inCore->mailText($user['email'], 'Форум: '.$comment[target_title].' - '.$inConf->sitename, $user_letter,'text/html');
  29.  
  30. unset($user_letter);
  31. }
  32.  
  33. }
  34.  
  35. return;
  36. }
  37.  
В строках 1399 на это
  1.  
  2. //либо получаем нужную тему форума и автора последнего сообщения
  3. if ($target == 'forum'){
  4. $comment_sql = "SELECT ft.title as target_title,
  5. ft.id as thread_id,
  6. ft.post_count,
  7. fp.id as post_id,
  8. u.nickname as author,
  9. fp.content as content
  10. FROM cms_forum_threads ft, cms_forum_posts fp, cms_users u
  11. WHERE fp.thread_id='{$target_id}' AND fp.thread_id=ft.id AND fp.user_id = u.id
  12. ORDER BY fp.pubdate DESC
  13. LIMIT 1";
  14. $f_c = $inCore->loadComponentConfig('forum');
  15. }
  16.  
Вроде ничего не забыл))

И шаблон уведомлений заменит в папке /includes/letters/newforumpost.txt, настройте по своему вкусу, я прекрипил… можете скачать
Прикрепленный файл
newforumpost_ijmq3.txt 14 Кб
#2 21 февраля 2013 в 22:49
Надо бы написать какой код заменить, а не строки тем более приблизительно.Кусок кода старого пишем затем кусок нового и всем все понятно
#3 21 февраля 2013 в 22:52

Надо бы написать какой код заменить, а не строки тем более приблизительно.Кусок кода старого пишем затем кусок нового и всем все понятно

st.Puh
да и так понятно, я менял немного… и так много кода взял про запас))
если найти первую строку, видно что менять… заодно не мешает подумать, что изменилось) чтоб понять… а не тупо скопировать)
#4 21 февраля 2013 в 22:53
Ещо вы забыли указать что в том файле который вы предлагаете скачать надо внести изменения заменить путь к сайту, наверно тоже надо указать адрес какого сайта заменить на свой адрес и в какой строке
#5 21 февраля 2013 в 22:56

Ещо вы забыли указать что в том файле который вы предлагаете скачать надо внести изменения заменить путь к сайту, наверно тоже надо указать адрес какого сайта заменить на свой адрес и в какой строке

st.Puh
да хорошо, извините) надо было…
#6 21 февраля 2013 в 22:56
Вот мой user.class.php для сравнения со своим
Прикрепленный файл
userclass_ijmq3.rar 14 Кб
#7 21 февраля 2013 в 22:57
Скрин
#8 21 февраля 2013 в 22:59

Скрин

st.Puh
файл user.class.php похоже не срабатывает, если у вас стандартная сборка, на мой просто попробуйте заменить
#9 21 февраля 2013 в 23:02
в шаблоне уведомлений, надо заменить эти строки, мой домен на ваш

  1.  
  2. Line 120: <div class="header-content" style="margin-left:10px"><a href="http://strmama.ru/">На сайт</a><span class="hide">&nbsp;&nbsp;|&nbsp; <a href="http://strmama.ru/users/{user_login}" lang="ru-RU">Мой профиль</a>&nbsp;&nbsp;|&nbsp; <a href="http://strmama.ru/forum/{user_login}_activity.html" lang="ru-RU">Моя активность</a>&nbsp;&nbsp;|&nbsp; <a href="http://strmama.ru/forum/latest_posts" lang="ru-RU">Новые посты</a>&nbsp;&nbsp;|&nbsp; <a href="http://strmama.ru/forum/latest_thread" lang="ru-RU">Новые темы</a>
  3. Line 159: <a href="http://strmama.ru">
  4. Line 160: <img id="customHeaderImage" label="Мамы Стерлитамака" width="100" src="http://strmama.ru/logosmall.jpg" class="w640" border="0" align="top" style="display: inline">
  5. Line 212: <p align="left" class="footer-content-left" style="color:#8293ac"> С уважением, администрация сайта "{sitename}" | <a href="http://strmama.ru/forum/unsubscribe{p_id}.html" style="color:#8293ac">Отписаться</a></p>
  6.  
  7.  
#10 21 февраля 2013 в 23:27
Вот так вот выглядит письмо в Опере и точно так же в Гугле Хром
#11 21 февраля 2013 в 23:29

Вот такое вот письмо приходит через оперу

st.Puh
похоже на правду...
вот я сам не знаю как сделать чтоб сохранялось форматирование и обрабатывались bb теги...
или вообще чтоб без тегов приходило...

а так у вас в футере я бы {pagetitle} заменил на текст покороче

и отображение, да везде разное… гдет шапка есть, гдет нету...
поэтому и выложил, что хочу коллективно довести до ума)
#12 21 февраля 2013 в 23:33
Намного лучше чем то что было ранше
#13 21 февраля 2013 в 23:35

Намного лучше чем то что было ранше

st.Puh
спасибо, надеюсь доведу до ума и выложу потом в блоге))
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.