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.

SMF Exporter (for migrating from SMF to Vanilla 2)

edited September 2010 in Vanilla 2.0 - 2.8
We had to put together our own exporter for SMF, and figured we'd share with the community. There are some important caveats to be aware of though. If you ignore these warnings, you may damage your Vanilla installation.:
  1. The exporter uses the reset password method. This means your forum members will LOSE their passwords. When the members return, Vanilla will inform them that they need to reset their password. The process is simple and relatively painless.
  2. The importer doesn't support the reset method yet. You will need to make the modifications mentioned at http://vanillaforums.org/discussion/12993/importer-tweak-allow-reset-password-type. Failure to make this change will cause the importer to corrupt your Vanilla Admin account. If you ignored this warning already, you can probably recover using a password reset.
  3. The 'reset' password type has an implementation bug that has to be patched, or your users will be unable to complete the reset. The modifications required can be found at http://vanillaforums.org/discussion/13019/bug-with-reset-password-type
  4. This code is provided AS IS. We cannot and will not continue to develop or support it, however, we hope that it may become a solid starting point for an SMF exporter to be officially included as part of Vanilla.
  5. This code worked on our forum, but there is no guarantee that it will work on yours. It does a good job of exporting most of the supported data, and should be pretty stable, but it's probably not perfect. If you have problems, please use your own development assets to troubleshoot them.
  6. If you make enhancements or fix bugs, it would be nice if you shared them here for future users.
If you understand and agree to the above, you can download the exporter with SMF support here:
http://www.priacta.com/code/vanilla/vanilla2export-with-smf.zip

Comments

  • TimTim Vanilla Staff
    Thanks for this! I'm sure @Todd and @Lincoln would be interested in checking this out.

    Vanilla Forums COO [GitHub, Twitter, About.me]

  • I was about to start writing my own SMF importer, when I finally saw this post. LifeSaver! I performed the recommended modifications and it worked without a hitch. Currently finding a way to convert SMF boards to Vanilla Tags to eliminate the 20 or more categories that are created during the import.
  • Whoa, I was way out to lunch on this one, my bad. I've grabbed a copy of the code and will see if I can get it into the next version of the exporter and smooth out that password reset issue. I recall talking to @Todd about the password hash method in SMF but don't know if that led anywhere yet.

    Will report back when I get somewhere. Patience though, sometimes it takes me a while. :)
  • @kevtrout and @Lincoln,

    Did either of you have any issues with roles/permissions for existing users? We saw something funky in our installation (existing users didn't get a group!) but I wasn't sure if it was because of the importer or something else that I did.
  • @bugslayer
    All user groups were imported from SMF into Vanilla, and my users retained their user groups. That being said, I lost a number of users in the transition.
  • BogusBogus New
    edited October 2010
    The link to file
    -----

    is broken
    Edit: Link is fix Thanks ;D
  • give a chance, that give a exporter from SMF 2 to Vanilla 2 ?
  • @Bogus After SMF1 support is sketched out, I'll install SMF2 and see how different it is. Can you give any insight about any changes to the database structure between 1 and 2?
  • LincLinc Admin
    edited October 2010
    @bugslayer Have you agreed to the contributors' agreement? http://vanillaforums.org/contributors

    Pretty sure I need you to do that before I can pull in your code.
  • @Lincolin: I am not a programmer, but I can search a changelog for differents.
  • @Lincoln, @Bogus, The best way to get an idea of the structure difference between SMF1 and SMF2 would be to install both, dump just the structure using phpMyAdmin, then compare the dump files.

    @Lincoln, I've agreed to the contributers' agreement now. I believe the original importer code contained an explicit GPL license too, which of course applies to the new SMF code, since it is dependent on the GPLed code.
  • @bugslayer Yeah I actually don't understand the legalities around it I just figured I better check. :) Thanks!

    I know how to compare database structures, just thought I'd ask before I went thru the trouble of pouring over it in case someone already knew or had a link to a changelog or something.
  • Does this work for vanilla 2 ?
  • shozen1shozen1 New
    edited August 2011
    Does this work for vanilla 2 ?
    That's the big question isnt it...does it work for vanilla 2? and more importantly to me, does it work with SMF 2 final? would apreciate if anyone has successfully used this method with smf2 final to vanilla 2.

    Here is what I have come up with so far.

    Followed the instructions here:
    http://vanillaforums.org/discussion/12993/importer-tweak-allow-reset-password-type

    Following the instructions from the above URL that tells you to overwrite the following lines in pplications/dashboard/models/class.importmodel.php

    // Set the admin user flag.
    $AdminEmail = GetValue('OverwriteEmail', $this->Data);
    $this->Query('update :_User set Admin = 1 where Email = :Email', array(':Email' => $AdminEmail));

    In Vanilla 2 these lines do not exist together. They have been changed and moved around. Therefore the instructions here:
    http://vanillaforums.org/discussion/12993/importer-tweak-allow-reset-password-type
    need to be updated as they no longer apply to those of us who use Vanilla 2.



    There was an error rendering this rich post.

  • It looks like the hacks given in the OP have since been merged into Vanilla; is that right? Looks like e7fa453a and 7622980, respectively??

Sign In or Register to comment.