joe_postscript wrote:I went to the test interface, made a feed, hit the URL and there comes email addresses of the poster included in the feed. This really needs an ability to kill that info because you are feeding spammers the addresses of the members through rss.
(3) Kill/Limit Posters info - having the email of the poster go into a newsfeed is spammer food. This has to be parsed out and in general the name/ID of poster is of no use making newsfeeds full of non-topical noise.
Code: Select all
$item->authorEmail = (($row['user_allow_viewemail'] == '1') && (SMARTFEED_PRIVACY_MODE == false) || $registered_user) ? $row['user_email'] : '';
It seems to show emails if the user is registered, so i made the following changes in smartfeed.phpPuggs wrote:joe_postscript wrote:I went to the test interface, made a feed, hit the URL and there comes email addresses of the poster included in the feed. This really needs an ability to kill that info because you are feeding spammers the addresses of the members through rss.
(3) Kill/Limit Posters info - having the email of the poster go into a newsfeed is spammer food. This has to be parsed out and in general the name/ID of poster is of no use making newsfeeds full of non-topical noise.
I would say this is number 1 priority, i may even fix it now my self...
Puggs
Code: Select all
$item->authorEmail = (($row['user_allow_viewemail'] == '1') && (SMARTFEED_PRIVACY_MODE == false) || $registered_user) ? $row['user_email'] : '';
Code: Select all
$item->authorEmail = ($registered_user) ? $row['username'] : '';
The problem seems to be that when you upgrade the user setting for allow email seems to be set to true.MarkDHamill wrote:joe_postscript,
There is a constant called SMARTFEED_PRIVACY_MODE that is set by default to true. However, this line regulates whether the email address shows:
As you can see if a user in his profile elects to allow other people to view his email address AND either the SMARTFEED_PRIVACY_MODE is true OR the user requesting the feed is registered (and authenticated), the email goes in the feed. Real email addresses will NOT appear in the feed if the user is a guest unless you specifically set SMARTFEED_PRIVACY_MODE to false. My thinking is that if a user specifically allows other users to see his email address on the forum, then the privilege should extend to the feed also. However, with enough convincing I could add another constant like SMARTFEED_NEVER_SHOW_REAL_EMAIL_ADDRESS_IN_FEED.Code: Select all
$item->authorEmail = (($row['user_allow_viewemail'] == '1') && (SMARTFEED_PRIVACY_MODE == false) || $registered_user) ? $row['user_email'] : '';
Actualy that code says, if the rss feed getter is a registered user, then show email address regardless || is or maybe it should beMarkDHamill wrote:joe_postscript,
There is a constant called SMARTFEED_PRIVACY_MODE that is set by default to true. However, this line regulates whether the email address shows:
Code: Select all
$item->authorEmail = (($row['user_allow_viewemail'] == '1') && (SMARTFEED_PRIVACY_MODE == false) || $registered_user) ? $row['user_email'] : '';
Code: Select all
$item->authorEmail = (!$registered_user) ? $row['username'] : (($row['user_allow_viewemail'] == '1') && (SMARTFEED_PRIVACY_MODE == false)) ? $row['user_email'] : $row['username'];
Excellent! Good catch! This is definitely a bug!!Puggs wrote:Actualy that code says, if the rss feed getter is a registered user, then show email address regardless || is or maybe it should beMarkDHamill wrote:joe_postscript,
There is a constant called SMARTFEED_PRIVACY_MODE that is set by default to true. However, this line regulates whether the email address shows:
Code: Select all
$item->authorEmail = (($row['user_allow_viewemail'] == '1') && (SMARTFEED_PRIVACY_MODE == false) || $registered_user) ? $row['user_email'] : '';
This new code is if the view is not a registered user then just show the board username, else if the viewer is registered and the poster allows emails and (&&) the policy says show then show the email, else just show the board user nameCode: Select all
$item->authorEmail = (!$registered_user) ? $row['username'] : (($row['user_allow_viewemail'] == '1') && (SMARTFEED_PRIVACY_MODE == false)) ? $row['user_email'] : $row['username'];
Code: Select all
$item->authorEmail = (!$registered_user) ? '' : (($row['user_allow_viewemail'] == '1') && (SMARTFEED_PRIVACY_MODE == false)) ? $row['user_email'] : '';
Can we modify this a bit more toMarkDHamill wrote:Excellent! Good catch! This is definitely a bug!!
Amendment. Actually this should be an email address. If left blank the feedcreator class will substitute [email protected]. In some cases an email address is needed to validate a feed. So the line of code should read:
Code: Select all
$item->authorEmail = (!$registered_user) ? '' : (($row['user_allow_viewemail'] == '1') && (SMARTFEED_PRIVACY_MODE == false)) ? $row['user_email'] : '';
Code: Select all
$item->authorEmail = (!$registered_user) ? '' : (($row['user_allow_viewemail'] == '1') && (SMARTFEED_PRIVACY_MODE == false)) ? $row['user_email'] : (defined(SMARTFEED_EMAIL_SITE))? ($row['username'] . '@' . SMARTFEED_EMAIL_SITE) : '';
Hi,MarkDHamill wrote:Excellent! Good catch! This is definitely a bug!!Puggs wrote:Actualy that code says, if the rss feed getter is a registered user, then show email address regardless || is or maybe it should beMarkDHamill wrote:joe_postscript,
There is a constant called SMARTFEED_PRIVACY_MODE that is set by default to true. However, this line regulates whether the email address shows:
Code: Select all
$item->authorEmail = (($row['user_allow_viewemail'] == '1') && (SMARTFEED_PRIVACY_MODE == false) || $registered_user) ? $row['user_email'] : '';
This new code is if the view is not a registered user then just show the board username, else if the viewer is registered and the poster allows emails and (&&) the policy says show then show the email, else just show the board user nameCode: Select all
$item->authorEmail = (!$registered_user) ? $row['username'] : (($row['user_allow_viewemail'] == '1') && (SMARTFEED_PRIVACY_MODE == false)) ? $row['user_email'] : $row['username'];
Amendment. Actually this should be an email address. If left blank the feedcreator class will substitute [email protected]. In some cases an email address is needed to validate a feed. So the line of code should read:
Code: Select all
$item->authorEmail = (!$registered_user) ? '' : (($row['user_allow_viewemail'] == '1') && (SMARTFEED_PRIVACY_MODE == false)) ? $row['user_email'] : '';