Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Branch: master
Commits on Dec 16, 2014
  1. Prevent wp-cron / XMLRPC from starting the RBE process.

    An extra measure to prevent duplicate connections.  Need to audit the
    boot process some more.
Commits on Dec 5, 2014
  1. Bump version to 1.0-RC3.

    Making our way slowly-but-surely to 1.0 :)
  2. Update

  3. bbPress: Comment out 'publish_replies' cap check.

    This caused issues if the auto-role option is disabled from the bbPress
    admin page.  I don't think we need to explicitly check for this cap anyway.
    See #24.
  4. bbPress: Ensure RBE author stays subscribed to topic.

    When a user replies to a non-BuddyPress topic, we need to explicitly
    tell bbPress to keep the topic subscription for the user.  Otherwise, the
    user will be unsubscribed after posting by email.
    This commit sets the $_POST['bbp_topic_subscription'] flag so bbPress
    see this.  This is due to how bbp_update_reply() works.
    See #24.
  5. bbPress: Add back support to reply to non-BuddyPress topics by email.

    The latest release of bbPress (tested with v2.5.4) fixes some issues
    relating to the post link, which was holding up enabling this feature.
    See #24.
  6. Improved email signature removal.

    Forgot to trim whitespace when checking for the last line created by
    email clients. (See commit f492856.)
    See #6.
Commits on Dec 4, 2014
  1. Set default mode to 'imap'.

    This fixes some notices.  Might switch default mode to 'inbound' in the future
    for shared hosts.
  2. Fix notice in admin area.

Commits on Sep 12, 2014
  1. Fix fatal error in BP_Reply_By_Email_Parser::get_header() when using …

    …Mandrill and sending a failure feedback message to the sender.
    Mandrill uses an object for its email headers, while RBE's internal IMAP
    class uses an array for its headers.  Since the get_header() method only
    looked for an array, this caused a "Cannot use object of type stdClass as
    array" fatal error.
    This commit type casts the $headers parameter so it is always an array,
    which fixes this problem.
Commits on Aug 1, 2014
  1. Fix "From" name override for plugins already passing the "From" heade…

    …r in wp_mail().
    See commit ccc644e.
    Fixes #7.
Commits on Jul 23, 2014
  1. Introduce 'bp_rbe_extend_listener' hook.

    This hook runs before any email headers are manipulated.  This is a good
    spot for plugins to hook in and add their custom listener.
Commits on Jul 22, 2014
  1. Whitespace.

  2. Add user ID to legacy group forum listener.

    This will allow us to potentially alter the "From" email header.
  3. Fix notice.

  4. Brackets!

  5. Switch email headers to an array.

    The passed WP email headers can either be a string *or* an array.  For
    consistency, convert email headers to an array to avoid any problems with
    email plugins.
Commits on Jul 9, 2014
  1. In admin area, when switching to GMail, ensure that the email address…

    … is the same as the username.
    Fixes issues when switching from a non-Gmail IMAP account back to GMail.
    See #57.
  2. Fix notices in BP_Reply_By_Email_Inbound_Provider class.

    PHP doesn't support abstract static methods.  No worry, let's just remove
    the static keyword.
Commits on Jul 8, 2014
  1. Hardcode component ids.

    Prevents notices from appearing.
Commits on Jun 27, 2014
Commits on Jun 25, 2014
  1. If blocking activity item from being RBE'd, show non-RBE notice.

    Makes life easier for plugin developers.
Commits on Jun 23, 2014
  1. Refactor IMAP locking system to use filesystem instead of database.

    Querying the database to check for a lock is too slow and led to race
    conditions where duplicate IMAP connections could occur.  Accessing the
    filesystem is better, but not 100% foolproof.  WP-cron suffers from the
    same problem.
    In my testing, the filesystem can handle up to 12 concurrent page loads on
    the same second without launching a duplicate connection.  This rarely
    happens unless your site experiences a ton of traffic.
    The filesystem method can be overriden by redeclaring these functions in a
    - bp_rbe_is_connecting()
    - bp_rbe_add_imap_lock()
    - bp_rbe_remove_imap_lock()
    - bp_rbe_stop_imap()
    - bp_rbe_should_stop()
    Handy if you wanted to use something faster like memcached or shared memory.
    See #16.
Commits on Jun 21, 2014
  1. Further tweaks to IMAP locking.

    See #16.
Commits on Jun 17, 2014
  1. Forgot to remove some lines in commit 5eeb88c.

    Not fully awake yet!
  2. Tweaks to lock checking.

    See commit 5eeb88c, #16.
Commits on Jun 12, 2014
  1. Set mode to 'imap' if it was previously being used prior to dual mode.

    RBE now supports two modes, however for those that were using RBE prior to
    this, we need to set the mode to 'imap' to ensure the admin doesn't have
    to visit the RBE settings page and resave the settings.
    This occurs during plugin activation.  So RBE needs to be deactivated and
    reactivated for this to take effect.
  2. Add "Message-ID" email header to outgoing reply-by-emails.

    This will allow proper email threading to occur in email clients that
    support it.
    To prepare the "Message-ID" header, a new listener property - "reply_to_id"
    - is added to determine the uniqueness of the outgoing email.  The
    "reply_to_id" is generally the post ID of whatever is creating the email.
    See #49.
Commits on Jun 4, 2014
  1. Properly remove RBE marker when sending failure message to sender.

    Using the $bp_rbe global is not reliable.  Instead, wipe out the
    RBE email querystring.  When the email querystring is empty, RBE's
    email filter does not take effect.
  2. Format activity comment action if posted via email for BP 2.0+.

    BuddyPress 2.0 introduced a new feature to dynamically format the activity
    action in the loop at runtime.
    This meant that the "via email" string for activity comments needed to be
    reapplied at runtime.  This commit addresses this.
Something went wrong with that request. Please try again.