vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB4 Programming Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=252)
-   -   Set "reply-to" properly in mail from members (https://vborg.vbsupport.ru/showthread.php?t=281391)

AndrewRich 04-10-2012 08:45 PM

Set "reply-to" properly in mail from members
 
This involves modifying the sendmessage.php file directly. If that scares you then don't do it.

I've fixed sendmessage.php such that emails sent by members from my forum now set the "reply-to" field properly, that is, to the email address of the member sending the message. This solves the long-standing problem of people replying to those messages and the replies ending up in my inbox (since the admin email address forwards to me).

It seems to me that the email system should have been set this way to begin with, but since it wasn't...

This covers the "Contact Us" form, the "Send thread to friend" menu option and the "Email Member" option.

This required three code edits in sendmessage.php:
(was)
PHP Code:

vbmail($destemail$subject$messagefalse$vbulletin->GPC['email'], ''$name); 

(now)
PHP Code:

vbmail($destemail$subject$messagefalse$vbulletin->GPC['email'], "reply-to:{$vbulletin->userinfo['email']}\n"$name); 

(was)
PHP Code:

vbmail($vbulletin->GPC['sendtoemail'], $vbulletin->GPC['emailsubject'], $message); 

(now)
PHP Code:

vbmail($vbulletin->GPC['sendtoemail'], $vbulletin->GPC['emailsubject'], $message,'','',"reply-to:{$vbulletin->userinfo['email']}\n"); 

(was)
PHP Code:

vbmail($userinfo['email'], fetch_censored_text($vbulletin->GPC['emailsubject']), $message false$vbulletin->userinfo['email'], ''$vbulletin->userinfo['username']); 

(now)
PHP Code:

vbmail($userinfo['email'], fetch_censored_text($vbulletin->GPC['emailsubject']), $message false$vbulletin->userinfo['email'], "reply-to:{$vbulletin->userinfo['email']}\n"$vbulletin->userinfo['username']); 

Because this is a PHP code edit (not a template edit) it may and probably will be overwritten at some future time during a system upgrade. To re-do the edit, search sendmessage.php for calls to the "vbmail" function and add the "reply-to" header as the sixth argument, padding previous arguments with nulls if necessary as in the second edit above.

This won't affect notifications (e.g. DMs, thread subscriptions) because those really are sent from the system, not an individual user. DM notifications are not the actual DM, though they include the message; they are a notification from the system that a DM is available. I do get erroneous replies to those all the time and I'm open to suggestions for how they should be handled.


All times are GMT. The time now is 10:25 AM.

Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2025, vBulletin Solutions Inc.

X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01254 seconds
  • Memory Usage 1,726KB
  • Queries Executed 10 (?)
More Information
Template Usage:
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (6)bbcode_php_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (1)printthreadbit
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • showthread
Included Files:
  • ./printthread.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/class_bbcode_alt.php
  • ./includes/class_bbcode.php
  • ./includes/functions_bigthree.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • printthread_start
  • bbcode_fetch_tags
  • bbcode_create
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • printthread_post
  • printthread_complete