Please upgrade here. These earlier versions are no longer being updated and have security issues.

Building a vBulletin 3.x to Vanilla 2 importer



  • MarkMark Vanilla Staff
    NICE :)
  • I like the idea of there being a single importer plugin that gets more and more capable as time goes on. And why can't this be a "core plugin"? ie a plugin that always ships with Vanilla.
  • LincLinc Senior Bard Detroit Admin
    Thrown online in all its grubby bug-ridden glory:
  • So is this a complete importer now for VB? Meaning can I import posts, users, PMs and replace the vb board to vanilla?
  • LincLinc Senior Bard Detroit Admin
    edited December 2009
    Ehhh, kinda... this is the "here's the code to play with yourself" version. I highly do NOT recommend using it to import a production forum yet. If you have a dev server and want to play with it, go for it.

    It will MOSTLY import users, roles, categories, discussions, comments, and private messages. However, there are several notable bugs, like that private messages don't get correct message counts yet because the queries to do so crash the importer for large boards. I've only successfully used it a couple times so far and haven't completely validated the results.

    I think it needs a lot of work before I'd use it to import my own boards.
  • LincLinc Senior Bard Detroit Admin
    edited December 2009
    My goal was to share my code thus far, not publish a product :)
  • Not a problem, my intention of asking was bit diff ;) I have a board with less than 50 posts and 10 users and I suspect there will be any PMs yet. It is actually an IPB, so may be I can import ipb into VB and get it in V2 through using your code

    Which version of VBulletin you are using?
  • LincLinc Senior Bard Detroit Admin
    edited December 2009
    The importer is coded for 3.8. If you removed the wall posts (step 5) and reference to the "skype" field (step 8 + column checker at beginning), it would probably work for the entire 3.x branch.

    //edit: I just added comments to the file about compatibility tweaks that need to be made.
  • BTW as vb 4 will be coming out will you make one for that as well?
  • LincLinc Senior Bard Detroit Admin
    edited December 2009
    I don't have a copy nor any intention to buy one at the moment. I'd put it as a lower priority than phpBB and IPB because if someone just bought vb4 they're probably not looking to migrate to Vanilla 2 right now. :)
  • LincLinc Senior Bard Detroit Admin
    edited December 2009
    Strike that, I'm making the necessary adjustments to accommodate versions 3.6 thru 4.0. There are fewer database differences than I expected. The only thing that's different between them (in the relevant areas) is that visitor messages were added and private message addressing was changed at 3.8. I've added seamless workarounds for both.

    Decided to nix importing emoticons, but am going to import "subscribed threads" as bookmarked discussions. Still refining the private message import; it's very messy and incomplete. Saving attachments for last. Everything else is working fine now as far as I can tell.
  • How long is your ETA
  • LincLinc Senior Bard Detroit Admin
    I don't have an ETA for a finished plugin. I expect to have a fairly stable version on GitHub (possibly minus attachments) by the end of the month.
  • OOOO nice work keep it up :D
  • LincLinc Senior Bard Detroit Admin
    edited December 2009
    I'm going to put attachment importing somewhere else; I'd like to keep the importer as basic to core Vanilla 2 as possible for now. (Take THAT, feature creep!)

    The latest version on GitHub closes all my known bugs. You could call it a "Beta" at this point. It should fully import:
    - users - usergroups (primary and secondary as roles - MAX 25!) - forums (as categories - skips those with zero threads) - threads - posts - subscriptions (as bookmarks) - avatars (as pictures) - wall posts (where applicable) - basic and custom profile fields (creates a WP-style UserMeta table) - private messages (as conversations)

    I'm not delighted with its PM -> conversation import, but I believe it works as conversations are intended and should be satisfactory to someone looking to import immediately.

    Additionally, it will convert HTML entities in category names and discussion titles as part of the clean up. With the Vbulletin Password Converter it will allow your users to sign in seamlessly after the import. As with the updated Vanilla importer, it will merge your new admin account into an imported account with the same name (if one exists).

    It's ready for others to test and critique. (Especially the private messages in step 11. It is particularly unwieldy, but it works.)
  • Great work Lincoln!

    Max 25 usergroups? I take it this is the Vanilla 2 limitation of storing user roles in a 32bit integer?
  • LincLinc Senior Bard Detroit Admin
    Yeah, if you try to have more than 32 it'll die with a nasty error, and there are 4 to start, so I rounded down so you're not screwed with your max # of groups right away. It'd be easier for them to condense their usergroups on the vBulletin side than to realize they messed up and have to fix in Vanilla.
  • More and more I think that group limit is going to come back to bite V2 with trying to convince people to switch forum software...
  • LincLinc Senior Bard Detroit Admin
    Yeah, I don't think it's sustainable. It creates code elegance (which most users don't care about) by sacrificing flexibility (which most do care about).
  • edited December 2009
    @Lincoln, first up, this is amazing, and thanks for doing it.

    Do you know if there is any way to clean up the BBcode that was done in vbulletin when you import?

    Anyway, I did test this out and it worked pretty seamlessly on first run, and this is the first time I've tried Vanilla 2 and an importer of any type. Really outstanding. Thanks again.
Sign In or Register to comment.