Improve the usability of the Get Involved contact form

RESOLVED FIXED in 3.11

Status

defect
P2
normal
RESOLVED FIXED
10 years ago
7 years ago

People

(Reporter: davidwboswell, Assigned: sgarrity)

Tracking

unspecified
3.11
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

(Whiteboard: r94653,94654,94737,94752,94802,94844 b=staging, )

Gerv helped me hook up the contact form on the new Get Involved page, but what we have now is just a temporary fix (partly because the script is on Gerv's server and also because we may want a general solution to this problem).

Here are the open issues with the current form:

* The script on Gerv's server is in Perl and I'm not sure if we can just copy that over or if it needs to be converted to PHP.  Based on earlier discussions, I think the server might not allow Perl scripts?

* There is an existing PHP email form on the site that was coded for the OneWebDay poster campaign.  Perhaps that can be made more general and allow us to hook in any contact form across the site?  Even if that PHP isn't reused, it's probably a good idea for us to review it since a contractor did this and was just checked in.

* For the Get Involved script, I'd like to tweak it so that there area of interest shows up in the subject line.  This will make it easier for the group of people monitoring the contribute list to identify what they need to respond to.
(In reply to comment #0)
> * The script on Gerv's server is in Perl and I'm not sure if we can just copy
> that over or if it needs to be converted to PHP.  Based on earlier discussions,
> I think the server might not allow Perl scripts?

Correct, it'll need to be in PHP.

> * There is an existing PHP email form on the site that was coded for the
> OneWebDay poster campaign.  Perhaps that can be made more general and allow us
> to hook in any contact form across the site?  Even if that PHP isn't reused,
> it's probably a good idea for us to review it since a contractor did this and
> was just checked in.

I modified / rewrote it to work with Get Involved. Somebody seems to have deleted it? Any reason why? :(

> * For the Get Involved script, I'd like to tweak it so that there area of
> interest shows up in the subject line.  This will make it easier for the group
> of people monitoring the contribute list to identify what they need to respond
> to.

Sure, that's easy.
(In reply to comment #1)
> I modified / rewrote it to work with Get Involved. Somebody seems to have
> deleted it? Any reason why? :(

You removed it in r53743. Why?
I can certainly undelete it, but I had removed it since I didn't think it was smart to have unused scripts sitting around on the server.  If we made a more general fix for having contact forms I also wasn't sure if that's where it would live.
I was testing the form on the Get Involved page today and noticed it failed because of an error on Gerv's site.  We're also going to have a snippet in Nov pointing to this page so it would be good to get a permanent and more robust fix in place by then.  Reed, any chance you could look at this soon?
Error now fixed; my website sync operation deleted the script, because when I created it, I did it directly on the server :-((

Having this admined by professionals would indeed be good :-)

Gerv
From experience so far it seems like several people are submitting the form without modifying any of the fields.  It would be helpful to have an email sent only if at least one of the fields is modified.  Having some error checking also show up on the page would be nice, but not crucial.
That sounds like something that's easiest to fix using JS on the page :-)

Gerv
Bumping to p1 in advance of community group meeting.
Priority: -- → P1
Duplicate of this bug: 521290
Assignee: nobody → reed
Making a note about desired functionality -- doesn't need to be there initially but is a nice to have.  It would be good to be able to CC people based on the Area of Interest selected on the form.  There are some people interested in getting these inquiries but don't want to sign up for another mailing list so this could be one way to deal with that instead of having someone manually forwarding things on for certain inquiries.

This list of features in the bug is getting a bit long.  I should probably write all this down on the wiki somewhere...
List of all form features at

https://wiki.mozilla.org/Mozilla.org/Contribute#Form
FYI, the Get Involved snippet went live yesterday and we've seen a large increase in responses from the form.  Bumping importance.

I updated the list of features on the wiki to reflect a couple of small changes:

* Change of subject line to 'Inquiry about [area of interest]' (I realize the previous subject line was going to cause conflicts with how we've been handling things so far).

* A note about stats tracking (like the ability to CC people mentioned in comment #10 this is a nice to have and not needed right away).
Severity: normal → major
One small change to the above information:

* I think the subject line should be 'Inquiry about Mozilla [area of interest]' instead of 'Inquiry about [area of interest]'.  When we respond to people it seems more likely that people will recognize this as a response from Mozilla if it says Mozilla in the subject.
fixing this would also allow faster responses since now david need to forward most of the mails :)
Severity: major → blocker
OS: Mac OS X → All
Hardware: x86 → All
From the wiki, "Nice to have: For certain areas of interest, we should be able to CC other email addresses for people who want to see the inquiries but don't want to subscribe to the list."

Can I get a list of what e-mail addresses map to what areas? (send OOB, please)
List of emails to CC just sent in an email.
ok, working fix added in r56984. still want to do a few things like filtering and anti-robot stuff, but this works for now.
Status: NEW → ASSIGNED
Severity: blocker → normal
Priority: P1 → P2
Depends on: 567823
Instead of tracking all desired form enhancements in this bug, we should open bugs for each specific feature and link them to this tracking bug.  See bug 567823 for an example.
Depends on: 568627
Depends on: 569624
Depends on: 649379, 649382
Target Milestone: --- → 3.4
Target Milestone: 3.4 → 3.7
Assigning over to silver orange. 

David, are the requirements up to date and is this where they live?:

https://wiki.mozilla.org/Mozilla.org/Contribute/Get_Involved_Evolved
Assignee: reed → steven
(In reply to Mike Alexis [:malexis] from comment #19)
> David, are the requirements up to date and is this where they live?:
> 
> https://wiki.mozilla.org/Mozilla.org/Contribute/Get_Involved_Evolved

That wiki page has some high level plans for things to try with the pages.  The better place to find requirements are the bugs set as blockers to this bug.  Some of those are straight-forward, but some need some additional detail.

Steven, it may be easier to talk through this and then I can follow up with additional notes to clarify things.  If that sounds like it would work for you, let me know when works well for you this week.  Thanks.
Assignee: steven → nobody
Component: www.mozilla.org → www.mozilla.com
QA Contact: www-mozilla-org → www-mozilla-com
Target Milestone: 3.7 → 3.8
Assignee: nobody → steven
FYI, Steven, one thing to keep in mind is that the staging version of this form is not in sync with the production version (see bug 681792 for an example of some confusion this causes).

This probably isn't a surprise to you since you've dealt with the www.mozilla.org staging weirdness before, but wanted to make a note to make sure to grab the latest version of these files from production if you're going to try anything out on stage.
Target Milestone: 3.8 → 3.9
If we're sending an auto-responder email for the address submitted with this form, we should require some type of robot prevention (sadly, probably a captcha). The narrowest recaptcha image is 300 pixels wide, though - quite a bit wider than this form.

Is it critical that the form be in the sidebar of these pages, or could it have it's own page (with links from the sidebar)? If it does stay in the narrow sidebar, we'll have to slide the bar open wider or open a lightbox to present the captcha.
Also, is the text for such a default auto-responder (for all Interests without their own custom autoresponder text) written? If not, who should be working on that?
I just talked with Steven on IRC, but wanted to track things here for reference.

There is text for auto-responses on the wiki at

https://wiki.mozilla.org/Mozilla.org/Contribute/Canned_responses

These are blocks of content for different functional areas that people are currently copying and pasting.  These will need some tweaking at some point, but is a good place to start.

For the captcha, from the conversation with Steven it sounds like it may not be necessary.  I'm happy to discuss more as needed.
David, can you help us correlate the sections inhttps://wiki.mozilla.org/Mozilla.org/Contribute/Canned_responses with the Interests in the flydown - there are duplicates, etc.
For the coding interest, the response should be

Hi,
I'm Josh, one of the C++ developers on the Mobile team. Glad to hear from you!

To get started with the codebase, have a look at http://developer.mozilla.org/En/Introduction.

If you need any help, you can obtain it on IRC. I recommend visiting #introduction, which is specifically for newcomers. See http://irc.mozilla.org for how to access it.

Feel free to contact me any time if you're having any problems! I'm jdm on IRC, or just josh@joshmatthews.net.

Happy hacking,
Josh

Is it possible to set the reply-to field to go to my email address, as well?
Steven, sure, happy to correlate.  For the following, the drop down item is on the left and the corresponding canned response is on the right.

* Helping Users / Support
* Localization / Localization (the first response)
* Testing and QA / Testing
* Coding / see comment #26
* Add-ons / Add-ons
* Marketing / Marketing Test
* Student Reps / Student Reps
* Developer Documentation / Documentation
* User Research / User Research
* Thunderbird / Thunderbird
* Accessibility / Accessibility
* Firefox Suggestions / Firefox Suggestions
* Other / General Test

I don't remember if we talked through this before, but if an area preferred to not have an auto-response, can we have the system not send something if there is no autoresponse text?  Although each area has text now, this is something that people will want to try different things with to see what works best.
One other thing that we'll need to provide is the relevant reply-to email address for each auto-response since the person who should get a response will change depending on the area of interest.  I'll write that up and post to sgarrity out of this bug so the email addresses don't attract spam.
Actually, if there's a choice of autoresponding, I would still prefer to manually respond to Coding inquiries instead.
Form updated committed to staging branch in r94654
Whiteboard: r94653,94654 b=staging
Josh, I left the autoresponder off for 'Coding'.
Whiteboard: r94653,94654 b=staging → r94653,94654,94737 b=staging
As of Mike's recent commits in /branches/staging/:

* form code is cleaned up
* has proper required-field behaviour (HTML5 tags and fallback in-line errors for other browsers)
* email auto-responder has been added with custom emails for particular Interests. See this file for the implemented details: http://viewvc.svn.mozilla.org/vc/projects/mozilla.org/branches/staging/includes/forms/ContributeForm.php?view=markup


This is ready for testing/review on the staging branch: http://www-stage.mozilla.org/contribute/
> * email auto-responder has been added with custom emails for particular Interests.

I just tried this out for the 'Other' option since that goes to me and it worked fine.  I got the email and the reply-to was set correctly.  I'll reach out to the other people fielding these emails for them to test too.

To clarify here, if an area, like Coding, doesn't want an auto-response it looks like we just don't include that in the function getAutoResponseMessage section?

> * has proper required-field behaviour (HTML5 tags and fallback in-line errors for 
> other browsers)

I'm not seeing in-line errors on staging.  For instance, if I don't add anything in the 'area of interest' field I'm taken to a blank page with this text: 'Not enough info; all fields must be filled out'.

For the newsletter sign-up, is there any additional information you need from me for that?  Perhaps text for the opt-in option?
(In reply to David Boswell from comment #33)
> > * email auto-responder has been added with custom emails for particular Interests.
> 
> I just tried this out for the 'Other' option since that goes to me and it
> worked fine.  I got the email and the reply-to was set correctly.  I'll
> reach out to the other people fielding these emails for them to test too.
> 
> To clarify here, if an area, like Coding, doesn't want an auto-response it
> looks like we just don't include that in the function getAutoResponseMessage
> section?
>
Yep. The same goes for the getAutoResponseReplyTo method.

> > * has proper required-field behaviour (HTML5 tags and fallback in-line errors for 
> > other browsers)
> 
> I'm not seeing in-line errors on staging.  For instance, if I don't add
> anything in the 'area of interest' field I'm taken to a blank page with this
> text: 'Not enough info; all fields must be filled out'.
> 
What URL are you testing at? It sounds like it was not completely updated with the changes in r94654. We're using http://mozilla-org-stage.silverorange.com/contribute/.
> What URL are you testing at?

Ah.  I was using:

http://www-stage.mozilla.org/contribute/

What's the login information for this staging site?

http://mozilla-org-stage.silverorange.com/contribute/
(In reply to David Boswell from comment #35)
> > What URL are you testing at?
> 
> Ah.  I was using:
> 
> http://www-stage.mozilla.org/contribute/
> 
> What's the login information for this staging site?
> 
> http://mozilla-org-stage.silverorange.com/contribute/
> 
Same as for the other silverorange dev servers, though it looks like now the http://www-stage.mozilla.org/contribute/ version is up-to-date. I don't get a blank page when submitting the form.
Whiteboard: r94653,94654,94737 b=staging → r94653,94654,94737,94752 b=staging
In r94752, changed the form submit anchor to the top of the #community-sub div, removed HTML5 required attributes due to issues in FF and Chrome. They can be added back later when said issues are addressed.
I'm seeing the inline errors now at

http://www-stage.mozilla.org/contribute/

Could we tweak the error text some to make things a little clear?

* Error for not selecting an area of interest: 'Please select an area of interest.'

* Error for not adding anything in the I'm interested in box: 'Please tell us more about your interests.'

I didn't see any response to my earlier question about the newsletter sign-up opt-in.  Do you need anything from me for that?
(In reply to David Boswell from comment #38)
> I didn't see any response to my earlier question about the newsletter
> sign-up opt-in.  Do you need anything from me for that?

David, James is almost ready with his new web-service for handling newsletter subscriptions across the various mozilla websites. I thought it best to wait for that and move ahead with everything else on this bug in the meantime rather than block on it. We can address that separately in Bug 649379 (immediately) after these changes, if that's ok with you.
Steven, thanks for the update on the newsletter subscription status.  It's certainly fine with me to sequence the different parts in the way that makes the most sense.
(In reply to David Boswell from comment #38)
> Could we tweak the error text some to make things a little clear?

These messages have been updated with your text in the staging branch.
Whiteboard: r94653,94654,94737,94752 b=staging → r94653,94654,94737,94752,94802 b=staging
> These messages have been updated with your text in the staging branch.

Great.  Things look good to go here with bug 568627, bug 569624 and bug 649382.

To get ready for deployment, I took out all of the placeholder response text except for Add-ons and Other.  I'll work with the various point people once this is live to get the final text in.  Let me know if I broke anything in r94844.

If my changes didn't break anything, please feel free to roll this out whenever you have a chance.
> Let me know if I broke anything in r94844.
> 
Change looks good to me.
Whiteboard: r94653,94654,94737,94752,94802 b=staging → r94653,94654,94737,94752,94802,94844 b=staging
Target Milestone: 3.9 → 3.10
Merged these changes into trunk in r94886. This should be in production shortly.
Status: ASSIGNED → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
I'm seeing this on production now.  The error messages are coming up fine.  The customized emails were sent, although they ended up in my spam folder.  Probably worth looking into this before rolling out auto-responses to all areas in the form.
Blocks: 685675
FYI, I opened bug 685675 to be a new tracking bug for enhancements to the Want to help? form now that this bug is closed.
No longer depends on: 649379
Summary: Make a more permanent fix for the Get Involved contact form → Improve the usability of the Get Involved contact form
This needs QA before I can push it out.
Keywords: qawanted
Target Milestone: 3.10 → 3.11
Also, Steven, are the merges you made to stage after we recreated it?
(In reply to James Long (:jlongster) from comment #48)
> Also, Steven, are the merges you made to stage after we recreated it?

James, this is all in the mozilla.org repository, not mozilla.com - I think it's all set.
(In reply to Steven Garrity from comment #49)
> (In reply to James Long (:jlongster) from comment #48)
> > Also, Steven, are the merges you made to stage after we recreated it?
> 
> James, this is all in the mozilla.org repository, not mozilla.com - I think
> it's all set.

Steven, are u using www-dev.allizom.org for staging changes to the .org repo
Keywords: qawanted
(In reply to raymond [:retornam] from comment #50)
> Steven, are u using www-dev.allizom.org for staging changes to the .org repo

I have not been - how does that work?
(In reply to Steven Garrity from comment #51)
> (In reply to raymond [:retornam] from comment #50)
> > Steven, are u using www-dev.allizom.org for staging changes to the .org repo
> 
> I have not been - how does that work?

We have new dev servers, which were only recently setup. These reflect the new merged prod environment. I'll send an email about it.

http://www-dev.allizom.org/ -> trunk
http://www.allizom.org/ -> staging

These have both codebases running like normal, so try to use these from now on.
Of course, if you push to mozilla.org's trunk it still goes live immediately. :)
Component: www.mozilla.org/firefox → www.mozilla.org
Component: www.mozilla.org → General
Product: Websites → www.mozilla.org
You need to log in before you can comment on or make changes to this bug.