vb.org Archive

vb.org Archive (https://vborg.vbsupport.ru/index.php)
-   vB3 General Discussions (https://vborg.vbsupport.ru/forumdisplay.php?f=111)
-   -   How to change FROM name on contact form e-mails? (https://vborg.vbsupport.ru/showthread.php?t=205211)

kpmedia 02-13-2009 05:10 AM

How to change FROM name on contact form e-mails?
 
Right now I get lengthy
  • "Thomas Q. Snuffleluffagus @ Your Whole Forum Name Here"

as the e-mail from name. I want the incoming form mails to look more like "normal" e-mails. I want it to simply be
  • "Thomas Q. Snuffleluffagus"

I've looked in code and vB admin panel options so long that I'm going cross-eyed. How can this be changed?

Dismounted 02-13-2009 08:25 AM

Look at line 304 of sendmessage.php (vB 3.8.1):
PHP Code:

eval(fetch_email_phrases('contactus'$languageid)); 


kpmedia 02-13-2009 03:50 PM

Thanks for that code piece. I looked at it, however I'm still not quite understanding.

'contactus' and $languageid appear to be variables of some kind. If I could see how they are created, I'm sure I could edit the text. I searched for both "contactus" and "languageid" in the "Search for Phrases" in the admin panel, as well as manually went through the list of phrases. I didn't see anything. Maybe that's not where these can be edited? I see nothing in the sendmail.php itself.

Previously, I tried to search for the @ symbol, I thought surely that would be easy to find. However, I appear to be wrong, I couldn't even find an @ symbol.

What part of this needs to be changed?
Code:

eval(fetch_email_phrases('contactus', $languageid));

snakes1100 02-13-2009 04:30 PM

It doesn't, you should modify the phrase.

kpmedia 02-13-2009 05:44 PM

I don't understand the PHP code usage here, so I don't have any idea how to modify it. Where is the code that says "use an @ symbol" between the e-mail name and the forum name? I don't see see anything that makes any kind of sense to anybody outside of the vB writers. That's why I'm posting here. I'm not dumb, I'm just not an advanced PHP writer/editor.

What is happening is "Name @ ForumName" on incoming e-mails. I don't want the "@ ForumName" part to be used, just the "Name" part as the From name on e-mails. Does this make sense?

Dismounted 02-14-2009 11:31 AM

Look at the fetch_email_phrases() function in functions.php. It fetches two phrases, one for the subject, one for the body.

kpmedia 02-14-2009 05:58 PM

this is the fetch_email_phrases() function in functions.php

PHP Code:

function fetch_email_phrases($email_phrase$languageid = -1$emailsub_phrase ''$varprefix '')
{
    if (empty(
$emailsub_phrase))
    {
        
$emailsub_phrase $email_phrase;
    }

    if (!
function_exists('fetch_phrase'))
    {
        require_once(
DIR '/includes/functions_misc.php');
    }

    return
        
'$' $varprefix 'message = "' fetch_phrase($email_phrase'emailbody''email_'trueiif($languageid >= 0true''), $languageidfalse) . '";' .
        
'$' $varprefix 'subject = "' fetch_phrase($emailsub_phrase'emailsubject''emailsubject_'trueiif($languageid >= 0true''), $languageidfalse) . '";';


That appears to be the subject line and the message body.
Where is the FROM name coming from? That's not part of the subject or the message body.

--------------- Added [DATE]1234641914[/DATE] at [TIME]1234641914[/TIME] ---------------

Just as a clarification for what I want to do:

Code:

Received: my.domain ([0.0.0.0]) by my.server with MailSoftware ESMTP
Date: Fri, 13 Feb 2009 06:49:33 +0000
To: forummail@domain.com
From: "Person's Name @ Forum Name" <person@hotmail.com>
Return-Path: <forummail@domain.com>
Message-ID: <20090213xxxxxxx.xxxxx-domain.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 8bit
X-Priority: 3
X-Mailer: vBulletin Mail via PHP
Subject: Subject Name As Set in vB Admin Panel

That's the header (altered, of course) from an e-mail sent to myself from my forum.

I want to change this information:
From: "Person's Name @ Forum Name" <person@hotmail.com>

It should instead be
From: "Person's Name" <person@hotmail.com>

I can't find where this is being generated from within vB. There is nothing that says "$enteredname @-symbol $forumname" (variables made up, yes, just for purpose of my example of code)

I would have thought this as something simple to alter. Most of the PHP code I've seen so far is just jibber-jabber to me, there's nothing remotely related to the from-name that I can see.

snakes1100 02-14-2009 06:08 PM

change the PHRASE, i dont think we can express that in any other way, do NOT change the php coding.

admincp --> Languages & Phrases --> Phrase Manager --> click the button search in phrase

kpmedia 02-14-2009 08:05 PM

As an ASP code writer, that doesn't even make sense to me. How can the user-supplied variable name (John Smith), combined with the system-supplied variable data (My Cool Nifty Forum Name), be stored as a static piece of data in the phrase manager?

Are you telling me that the FROM name -- the name a person types into the Contact Us form (sendmail.php) -- which is then combined with an "@", followed by the name of the forum -- is somehow stored in the phrase manager? This is neither in the subject, nor in the body of the message. It's the "from" name used in the e-mail header (and displayed as the from name in e-mail software or webmail).

If so, fine, I won't worry about figuring it out -- but please let me know where that location is. I'm not seeing which phrase needs to be edited, nor what syntax to edit.

I didn't write vBulletin, so I don't know how some of this thing operates. It's foreign technology to me. It's why I'm asking for help on the forum. I've been using it for less than a year now.

In the world of ASP, I'd be editing the ASP file, to change how the data is being used between the HTML form and the sent-to-SMTP e-mail.

--------------- Added [DATE]1234650059[/DATE] at [TIME]1234650059[/TIME] ---------------

Come to think of it ....

If you know the phrase that I need to change -- which it appears you do -- why am I being treated like an idiot, being told to "go search", instead of being given some friendly help? Would it be the end of the world to know WHICH PHRASE is the one that needs to be edited, maybe even what that new syntax should be?

Am I expected to get on my knees and bow down to the awesome knowledge of long-time vB users, like a medieval peasant looking for a bread scrap as well-to-do citizens of the kingdom travel by my hovel? Do egos have to be stroked first?

Seriously.

Dismounted 02-15-2009 03:42 AM

Quote:

Originally Posted by kpmedia (Post 1744175)
As an ASP code writer, that doesn't even make sense to me. How can the user-supplied variable name (John Smith), combined with the system-supplied variable data (My Cool Nifty Forum Name), be stored as a static piece of data in the phrase manager?

It isn't. Think of the phrase as a piece of text with placeholders. As this phrase is fetched, the placeholders are replaced with the actual data. You need to edit the phrase and remove the appropriate placeholders.

Follow the breadcrumbs inside that function. You see that the subject is derived from a phrase with a prefix of "emailsubject_". The ending is $emailsub_phrase, which is $email_phrase in this specific case. Lastly, what is $email_phrase?
Quote:

Originally Posted by kpmedia (Post 1744175)
Am I expected to get on my knees and bow down to the awesome knowledge of long-time vB users, like a medieval peasant looking for a bread scrap as well-to-do citizens of the kingdom travel by my hovel? Do egos have to be stroked first?

Am I expected to get on my knees and hand everything on a silver platter to the un-knowledgeable first-time vBulletin administrators, like a servant serving their king?

Seriously.

Look, the point is that if we gave everything to you as you asked for it, you wouldn't be learning anything, would you? If we can guide someone to the goal, they would take away with them the knowledge that, yes, they can do it themselves. In fact, all of us come here on fully voluntary grounds. Yes, even the staff are volunteers (except Marco, he is a Jelsoft employee).

kpmedia 02-15-2009 05:16 AM

I learn visually, or by example. Having used vB for about a year now, I think I'm doing pretty good to only have asked three questions during that entire period. I've figured out almost everything I needed in that time. I appreciate that you're trying to help, but I'm not able to follow the logic that VB uses.

The phrase manager can also have variables. Okay, I guess I can go along with that. I did edit the sendmessage MESSAGE BODY that way.

The phrase "contactus" is now this:
Code:

$name ($email) is e-mailing you about
$subject

Message: $message

Contact Details:
IP: $ip
E-mail: $email
Forum Username: $bbuserinfo[username] (ID=$bbuserinfo[userid])
Referring Page: $url

and I changed it away from the default of:
Code:

The following message was sent to you via the $vboptions[bbtitle] Contact Us form by $name ( mailto:$email ).

--------------------------------

$message

--------------------------------

Referring Page: $url
IP Address: $ip
User Name: $bbuserinfo[username]
User ID: $bbuserinfo[userid]
Email: $email

I figured that out on my own just fine. I've edited many phrases in the past.

An unrelated default phrase is this:
Code:

$sendtoname,

This is a message from $bbuserinfo[username] ( mailto:$bbuserinfo[email] ) from the $vboptions[bbtitle] ( $vboptions[bburl]/ ).

The message is as follows:

$emailmessage

$vboptions[bbtitle] takes no responsibility for messages sent through its system.

I see that this code
Code:

$vboptions[bbtitle]
generates the forum name in that phrase, to be used in the send-to-friend e-mail feature.

I can search for that term, and it brings up a lot of e-mail body and e-mail subject phrases. None of those are pertinent. Neither the subject nor the body contain the from information that is found in the header of an e-mail, and displayed in e-mail software.

I'm not wanting to alter the subject or body anymore.

I changed this too:
Code:

$vboptions[bbtitle] Contact Us Form - $subject
to my own custom message. Again, did that on my own, long before posting here on the from-name problem.

I don't see that this is a phrase-referenced or phrase-held issue. If it is, I'm not seeing it, and I've looked dozens of times now. That's why I turned to the PHP code itself, and sought help here.

If this were held in the phrases, I would expect to see this somewhere:
Code:

$name @ $vboptions[bbtitle]
But I don't see that or anything close to it.

Dismounted 02-15-2009 05:43 AM

Actually, I apologise, first for taking it out on you, and myself just realising that you were looking at the actual header "from" field, I initially thought that you wanted to change the subject itself. The code you are looking for is line 216 of /includes/class_mail.php.
PHP Code:

$mailfromname "$username @ " $vbulletin->options['bbtitle']; 


kpmedia 02-15-2009 05:45 AM

Alright, after digging around some more on my own, I found it. It was, indeed, in the PHP code, not a phrase.

Open up class_mail.php and search for this line:
Code:

$mailfromname = "$username @ " . $vbulletin->options['bbtitle'];
change it to
Code:

$mailfromname = "$username";
That did it.

Thanks for trying to help, but ya'll were just way off base with this one. If nothing else, your insistence that I look in phrases at least gave me the idea to use phrase variable names as a way to search through the PHP code, using Super Text Search, and then look for the offending bits of code.

--------------- Added [DATE]1234684026[/DATE] at [TIME]1234684026[/TIME] ---------------

To DISMOUNTED: Yeah -- there you go -- that was it. In a round-about way you did help me. I found it about 5 minutes ago, just before you wrote up your post.


All times are GMT. The time now is 04:08 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.01197 seconds
  • Memory Usage 1,796KB
  • 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
  • (10)bbcode_code_printable
  • (3)bbcode_php_printable
  • (2)bbcode_quote_printable
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_navbar_search
  • (1)printthread
  • (13)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