#6694 Form to send message to a user - NEEDS CONFIGTREE

v1.1.0
closed
nobody
42cc (432)
User
2015-08-20
2013-09-20
No

User profile pages should have a link to send a message to a user. This would send an email to their primary email address on record (if an email address is set). Similar to SourceForge's old https://sourceforge.net/sendmessage.php?touser=2904855

The sender address should be the actual email address of the sender, so that the recipient may reply.

We should include rate limiting so that a user cannot send too many messages. The old SF one has rate limiting implemented as: a mongo collection that stores {_id: user id, times: [array of times when messages sent]} and 2 config values for max # of messages and time interval. When accessing the form or posting the form, check to see if the times array and delete any older than the config interval, if the size of the array is larger than the config max # messages, show an error to the user. When posting the form successfully, append a new timestamp to the 'times' array.

Include an option to CC the sender.

Related

Tickets: #4725
Tickets: #6694

Discussion

  • Dave Brondsema

    Dave Brondsema - 2013-09-20
    • Milestone: forge-oct-04 --> forge-oct-18
     
  • Dave Brondsema

    Dave Brondsema - 2013-10-04
    • Milestone: forge-oct-18 --> forge-nov-01
     
  • Dave Brondsema

    Dave Brondsema - 2013-10-21
    • Milestone: forge-nov-01 --> forge-nov-15
     
  • Dave Brondsema

    Dave Brondsema - 2013-10-22
    • labels: --> 42cc
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -1,7 +1,7 @@
    -User profile pages should have a link to send a message to a user.  This would send an email to their primary email address on record (if an email address is set).
    +User profile pages should have a link to send a message to a user.  This would send an email to their primary email address on record (if an email address is set).  Similar to SourceForge's old https://sourceforge.net/sendmessage.php?touser=2904855
    
     The sender address should be the actual email address of the sender, so that the recipient may reply.
    
    -We should include rate limiting so that a user cannot send too many messages.
    +We should include rate limiting so that a user cannot send too many messages.  The old SF one has rate limiting implemented as: a mongo collection that stores {_id: user id, times: [array of times when messages sent]} and 2 config values for max # of messages and time interval.  When accessing the form or posting the form, check to see if the times array and delete any older than the config interval, if the size of the array is larger than the config max # messages, show an error to the user.  When posting the form successfully, append a new timestamp to the 'times' array.
    
     Include an option to CC the sender.
    
     
  • Igor Bondarenko - 2013-10-23

    Created #461: [#6694] Form to send message to a user (2cp)

     

    Related

    Tickets: #6694

  • Igor Bondarenko - 2013-10-23
    • status: open --> in-progress
     
  • Dave Brondsema

    Dave Brondsema - 2013-11-01
    • Size: 4 --> 0
     
  • Dave Brondsema

    Dave Brondsema - 2013-11-01
    • Milestone: forge-nov-15 --> forge-nov-29
     
  • Igor Bondarenko - 2013-11-04
    • status: in-progress --> code-review
     
  • Igor Bondarenko - 2013-11-04

    Closed #461. je/42cc_6694

    Two new options user_message.time_interval and user_message.max_messages (see development.ini)

    Also, please take a closer look to commit [e9bb84]. It's quick fix for email 'To:' header in case you send message to only one destination address (without this you'd get 'To:' and 'From:' equal to each other, which is misleading for the end user). I wonder maybe we should refactor sendmail accordingly to what comment suggests?

     
    • QA: Tim Van Steenburgh
    • Milestone: forge-nov-29 --> forge-nov-15
     
    • summary: Form to send message to a user --> Form to send message to a user - NEEDS CONFIGTREE
    • status: code-review --> closed
     

Log in to post a comment.