Please upgrade here. These earlier versions are no longer being updated and have security issues.
HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.

Is there a plugin that would allow a moderator to migrate posts & comments between member accounts?

I'm importing the archives from a phpBB forum into Vanilla (open source) including, of course, the usernames associated with the imported posts and comments. I'd like to be able to migrate the most active members' contributions to their new profiles. I believe this is supported in phpBB and other BB type software. Is there a plugin for this in Vanilla?

Comments

  • LincLinc Detroit Admin
    edited December 2016

    I think you want this: https://open.vanillaforums.com/addon/forummerge-plugin

    It will merge user accounts by email address.

    To mass-merge posts manually via the database, you'd want to change the InsertUserID in the GDN_Comment and GDN_Discussion tables for the effected user(s).

  • ginahoyginahoy SE Arizona New

    Thanks, Linc, I looked at the docs page. I don't think that one will work.

    First, Forum Merge appears to be for combining two Vanilla instances. We don't have two instances. What we have is content that was imported from another forum, and the members associated with that content. Once we go live, members will have to re-register in the new forum. So that members can use the same username, we plan to append an asterisk or other character to the archive members' username fields so they won't get the "name already exists" error.

    Second, the archive member records don't have a valid email address. The original content didn't come from a live phpBB forum (long story), but phpBB provided a convenient intermediate step to get to Vanilla. To keep phpBB happy, we populated the email field with a dummy addy.

    I can have the site developer create a script to do the migration on the server side, you noted. I was hoping there's a plugin for this so I could do it myself from the Dashboard, since I don't have access to the server.

  • LincLinc Detroit Admin
    edited December 2016

    I'm not following why you wouldn't just let them log back into their existing accounts then. We support phpBB password scheme so it should be a seamless transition.

    If you can't verify the users by password OR email... then I wouldn't migrate the content because how can you be sure it's really them? It just seems ripe for abuse.

  • ginahoyginahoy SE Arizona New

    The phpBB database doesn't include member passwords or email addresses. I was never a live forum. As I said, it's a long story, but here it is in a nutshell...

    I've been managing a professional-technical LinkedIn group with ~10k members since 2009. I've never been crazy about LinkedIn's Groups platform but over the last couple of years, they stripped away many of the most useful features. The last straw was the major UI redesign (fall of 2015). Among other things, notification emails were all but eliminated (you can still get notices when new Discussions are posted but not for follow-on comments). Not surprisingly, group activity fell off a cliff since then.

    That's when I decided to move my group to a stand-alone BB type forum. In preparation, I've been collecting selected archived discussions in a phpBB database. And I had to line up an organization to host the new forum. I initially planned to use phpBB but the host organization's website developer, who is responsible for standing up the new forum, recommended Vanilla. Fortunately, importing from phpBB into Vanilla hasn't been a problem.

    In the meantime, my phpBB database has grown to ~1,500 topics with over 21,000 comments, representing nearly half my group's activity going back more than seven years. (Another long story, but that part was a LOT of work!) The database only includes topics, comments, timestamps, and contributor name. No passwords or email addresses. At one point, as group owner, I could download a csv with member email addys. That feature was removed long ago, so we have no way to auto-register imported members or to automatically link or migrate their contributions to their new accounts.

    My objective is to migrate content for the most active 20 or 30 members to their new accounts so their profiles and comments will reflect their historical contributions to the group. I know these folks personally so there's no possibility of abuse.

    If there were a plugin for this, I could do the migration myself as each member from the heavy hitter cadre joins the new forum. But if this must be done on the backend, then the host's developer will have to take care of this since I don't have access to the database. They would need to charge the host organization accordingly, so it would need to be done in a single batch, which means I would have to be proactive to round up the stragglers -- think herding cats ;)

  • R_JR_J Ex-Fanboy Munich Admin

    What if you let those 20-30 users contact you and you simply assign a mail address they tell you to the existing account?

  • LincLinc Detroit Admin

    I don't think manually merging 30 users is more than 30 minutes of work - 20 to figure out the SQL queries and 10 to run them in turn for each of those users. :)

  • LincLinc Detroit Admin
    update GDN_Discussion set InsertUserID = {newUserID} where InsertUserID = {oldUserID};
    update GDN_Comment set InsertUserID = {newUserID} where InsertUserID = {oldUserID};
    

    Those queries run once for every user should do it.

  • ginahoyginahoy SE Arizona New

    @R_J said:
    What if you let those 20-30 users contact you and you simply assign a mail address they tell you to the existing account?

    I was thinking the same thing last night, except I can't wait for them to contact me because they don't necessarily know who they are and I don't want to put out a general announcement about this, lest I be overwhelmed with responses.

    But I already have most if not all of the email addresses for the most active users since they are 1st level connections on LinkedIn. So I can just replace the dummy email with the correct one. I can do that from Dashboard.

    I see there's a 'force password reset' checkbox under password options on the User / Edit screen. I tested this and it sends a pw reset request as soon as I click the Save button. So what I can do is send a bulk email to these members before I post the general announcement about the new forum, letting them know they are pre-registered, and to expect a p/w reset email shortly. Then if anyone from this group registers separately under a different email, I can delete that profile and update the archive profile with new email and force another p/w reset.

Sign In or Register to comment.