- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-12-2016 07:21 AM
Hello,
Need some help with an Inbound action. I have a catalog item that asks for an email address. A notification is sent to that email, and there's an "I Agree" link on that notification, and when they click that, it emails the instance that the user has agreed to the terms of use, etc, then a field gets updated on the RITM record. However, I noticed that if someone enters an email address (which is not the one on their user profile) that has upper-case letters, the inbound action gets skipped. Below is my inbound action. I've tried to add .toLowerCase() after the variable, but that didn't help.
function validUser() {
if (current.request.requested_for == email.from_sys_id || current.variables.u_sra_email.toLowerCase() == email.from || current.variables.u_webmail_email.toLowerCase() == email.from)
return true;
}
if (validUser()){
if (email.subject.indexOf('I Agree') >= 0)
current.u_sra_agreement = 'I Agree';
if (email.subject.indexOf('I Disagree') >= 0)
current.u_sra_agreement = 'I Disagree';
}
current.update();
Please help. Thanks!
Maria
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-21-2016 07:41 AM
Hi Maria
Assuming your code is returning false from validUser() function...
Can you please put this in your 2nd IF loop in validUser() function (assuming that is the one expected to return TRUE, otherwise update it where ever is necessary)
var r = new RegExp(current.variables.u_sra_email, "i");
return r.test(email.from);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-12-2016 08:46 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-12-2016 08:52 AM
OK, I'm a little confused on what the issue is here. You said that if they used upper case, it gets skipped. In the case you are showing, the debug statements are getting logged, and since they come after the current.update(), the action is not being skipped. Since the variable is not defined, it is using another method to determine if the user is valid.
Can you clarify where this specific script is having issues? In this case, it appears that variable does not appear on that request tied with the notification.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-12-2016 09:00 AM
The inbound email shows the "SRA Standard" inbound action was skipped....
For this particular example I'm using, the value for u_sra_email is PER1W1NKLE@HOTmail.com
When the inbound email is received, the value of email from is per1w1nkle@hotmail.com, and the inbound action is not getting processed.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-12-2016 09:04 AM
What do you see if you add another gs.log() statement right after the current.update()?
gs.log('RITM=' + current.number);
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-12-2016 09:08 AM