BOB 2.0

LOL, I forgot about permissions.

The “Moderator Corner” and “Administrator Corner” and “Blogger Posts” are all hidden forums and would not be part of a public-facing site.

Dave Rathbun :us: (BOB member since 2002-06-06)

Got it, visible only to Staff on the test site. I add a task in order to do that after each import (or get something automatic to get the visibility level directly from phpBB tables).

Some work this end of week:

  • fix all the bbcode issue between phpbb2 and discourse (at least for the small export I have !)
  • adding the attachments (image and files) (will need for sure to get a big zip file with all the content)
  • setting some basic security settings (categories not visible on phpbb are not visible on discourse)

Still work in progress:

  • import custom emoji like :mrgreen:
  • recompute all calculated fields like last post date per category, count of post per categories, last author…
  • probably a lot more but I am focusing on essential :smiley:

All the work is mainly here feel free to give a look and comment / provide a PR / ask to be member of the github repo if you want to help on this !

Julien, the original post said that BOB would be read-only by the end of March, and retiring this month. Clearly that didn’t happen. :slight_smile: The current plan will be to lock the forums other than this one for further posting over the coming weekend.

Once that is done I can run the update to assign post usernames. Once that is done, I would like to give you an export of the forum structure and post data and let you run some tests on how it looks importing. I would anticipate giving you the _FORUMS and _TOPICS and _POSTS and _POSTS_TEXT tables.

I don’t know if you have realized, but there are a lot of tables that are NOT standard phpBB tables. I don’t know if you want to try to preserve that information or not. Some examples include POST_NOTES which is where things like a post edit history are kept, PAGES which is an additional permissions module that I created, REPORT_QUEUE and REPORT_REASONS that are used for the “report a post” feature, and many others. There is an entire series of tables used to track sponsors, and another series used for the BOB Store that we use to have that featured various books and was tied into the Amazon Affiliate program.

Finally, search. phpBB offers an intriguing search mechanism, but it’s very database-heavy. The largest tables in our export are the _SEARCH_WORDLIST and SEARCH_WORDMATCH tables. If your new platform offers a search feature, you do not want to bother with converting / storing those tables.

Dave Rathbun :us: (BOB member since 2002-06-06)

… last question, there was some discussion about preserving the flag (location) as part of the archive, just to show the global reach of BOB. As I am including the username into the post table for archiving, would you like me to include the flag the user selected as well? It would be easy enough to do.

Dave Rathbun :us: (BOB member since 2002-06-06)

I think a number of years of membership might be valuable too. It shows the depth and continuing value of accessing the group.

But that may just be my addiction to meta-data showing.

User_9 (17 years) (USA)

kbrazell :us: (BOB member since 2003-08-19)

Hello all, hello Dave,

I have just managed to update the test forum by adding custom emojis like :mrgreen:
and I have found a good query to compute stats at topic level (user involved, first and last post date…).

Now I think the biggest work will be to handle the BUSOBJ_POSTS.POST_USERNAME field instead of the BUSOBJ_USERS table in order to generate correctly the data.

Actually I am using the following tables from phpBB2 in my import script:

  • busobj_users (I need to stop using this one for PII removal)
  • busobj_categories
  • busobj_forums
  • busobj_topics
  • busobj_posts
  • busobj_posts_text
  • busobj_smilies (get info on custom emojis)
  • busobj_attachments (contains attachments info)
  • busobj_attachments_desc (contains attachments info)

I will also need the files as a big zip (if we want to keep the attachments)

  • uploaded files
  • smilies gif

I see that there is a lot of non-standard phpBB tables, I am asking if it’s something to keep or not. I am pretty sure that the main content to save is all the posts, but we can discuss of each item:

  • busobj_post_notes I don’t know if it’s valuable to keep that. Discourse keep this kind of information in post_revisions table but with a diff, and no notes… I am suggesting to not include this info in the migration.
  • busobj_pages seems too linked to phpbb organisation, what is the purpose of listing all different php pages ? I am suggesting to not include this info in the migration.
  • busobj_report_queue and busobj_report_reasons there is already a ‘flag’ feature directly in Discourse. I think it is enough :wink:
  • sponsors, store, etc… I think we will need to think what we want to have as feature of the application. I think it is not a priority, we probably want first to save the posts :smiley:
  • search there is a search system already built-in, i don;t think it’s a good idea to reuse phpbb search table

how do you want to include the flag ? as user (CA) or 2 different fields ? or maybe user|CA ?

year of membership
It may be better to save the joined date instead ! To be included like the flag ?
Medals/Badges can be used for that also?

Thanks !

All good steps.

The USERS table will still be present, it’s just that there will only be a couple of users. The posts still need to be assigned a user but it will be the “guest” user (which has a negative user ID, you should see that even in the beta dump I gave you).

All of those are fine, and will still be used. The only difference is that the username comes from a field on the POSTS table and not the USERS table for the guest user.

Smilies are easy. Attachments will be…interesting.

None of the extra tables you listed are needed in my opinion. I listed them only because they were present in the data dump I gave you, and wanted to let you know where they came from as they are not on the standard phpBB table list.

There is a _FLAGS table, and I will add the FLAG_ID to the _POSTS table. Each post will then have a link to the flag image. I will copy this from the _USERS table at the same time I copy the USERNAME. You will want the _FLAGS table to decode the ID into the flag file name and country. Alternatively I can put the flag filename directly on the post and save you the join / lookup. Let me know which you prefer. The flag images are all located in a specific directory for me; I can provide a zip and you can put them wherever you like.

If you think the joined date makes sense, I can also push that into the _POSTS table along with user name and flag ID. Your call.

Dave Rathbun :us: (BOB member since 2002-06-06)

Thanks for all this information.

I want also to discuss about domain name. I think it can be a good idea to switch to a dedicated domain name for bob2.0 instead of the ? It’s a cheap thing but it is nice to have something linked to the content (like businessobjects-board.something). But do we have the right to use businessobjects inside a domain name ? Or bobj-board ?

Let’s us the pool feature available on Discourse :wink:

This question about domain name make me think about referencing. It can be valuable to have some 301 redirect from existing topics to new url during a couple of months. But hard work :frowning:

Ok let me focus first on post_username, and additional info like the flag

  • i think it is easier for me to have a FLAG_ID at _POSTS level, I will make the join
  • joined date can be added at _POSTS level too that ok for me.

Have a nice evening all !

For the user, it seems that Discourse doesn’t have the equivalent of posting as anonymous user. Then there must be a post_id column with a valid is from the users table in the Discourse data model.

SO I am thinking of re-generating a users table with this kind of query:

select distinct poster_id, post_username from "database".busobj_posts
order by poster_id

But the poster_id that you will send to me will be the same for all post_username right ?

The BOB 2.0 project need some migration and hosting stuff, but we need also some moderators… I am listing here volunteers :

  • Marek Chladny
  • MichaelWelter
  • Nick Daniels
  • Chris Pohl
  • Debbie

Let me know if I have forgotten somebody !

How do you want to work together ?

  • discussion on the new forum bob2.0 ? (but I am planning to import first old BOB, if some content is already created it will be deleted by the script :frowning: )
  • discussion of this forum ? (but will be read only soon !)
  • other tool ? email slack ?
    Thanks for the info,

When we converted from the listserv platform we did not make any attempt to reconstruct who owned what original post in any sort of continuity. I think that’s where you are trying to go with the comments about the user in your previous post.

If you look at posts from “Listserv Archives” you can find any number of posts with my name on them. :slight_smile: They are preserved simply as an archive, and the fact that my name is in the signature indicates my participation, but doesn’t assign it to any particular user.

I understand your new platform doesn’t support anonymous posting, and that’s fine. It’s not a requirement. What I am trying to say is that when the posts table is delivered to you, every post will be assigned to the same user in the _USERS table, but the posts will be differentiated by having the original poster username populated into the POST_USERNAME field, and we will add the FLAG_ID and the JOIN_DATE into the posts table as well.

Dave Rathbun :us: (BOB member since 2002-06-06)

Hello Dave,

Just checking the “Listserv Archives” and I understand !

So I will find a way to put the original author in the post content, like signature or so. And yes I will import all the users, but probably there will be only one or two different users, that I will be able to name “ForumTopics BOB Archive” or so !

Get a look here, at the bottom of each post:

I am just waiting the flag/join date content but you get the idea.

I have finished today some work to be able to import the BOB content without erasing everything so we can imagine start a new project right now. I will just wait for some news around domain name and moderators to start it, I can’t do it alone :wink:

Thanks !

I like the idea of a dedicated domain name, but that’s your call. When BOB started I wanted the flexibility to “spin off” BOB at some point but retain control of the base domain name, which is why we ended up with the situation we have now. But domain names are now cheap enough that it doesn’t matter so much.

Dave Rathbun :us: (BOB member since 2002-06-06)

For the moment the result of poll is : keep the original url :smiley: but I will wait a few more days (only 2 votes)

Let me know when you want me to test the full export.

Thanks !

Pool for domain name is here :

Why do I need to create a new account somewhere if I want to cast my vote in the poll? Can it be done without the need to registrate?

Marek Chladny :slovakia: (BOB member since 2003-11-27)


I thought we had polls on here?

Nice sunset logo too.

kbrazell :us: (BOB member since 2003-08-19)

I think I cannot post a poll here but the FAQ have a poll section !

(link removed)

We can host the poll outside of discourse and phpbb too. Like here (too many polls now :smiley: )

Maybe a right issue ?

+1 for the logo too,

Thanks. You have my vote there now :slight_smile:

Marek Chladny :slovakia: (BOB member since 2003-11-27)

I was the 3rd vote.

kbrazell :us: (BOB member since 2003-08-19)

We are now at 6 votes ! :smiley:

Do not hesitate to vote here to help the decision !

Thanks :mrgreen:

I had not intended to transfer the domain name along with the content, which seems to be the implication of the first option in the poll. I think I mentioned that earlier, either in this topic or the retirement topic.

I think a new dedicated domain name would be the most likely choice. What I planned to do was forward all traffic from* to the new base-level domain name or web site address for the new community. I was not going to try to get creative enough to generate a rewrite rule that moves to a deeper link (topic or post for example).

I am starting to work on converting the post data to guest posts and tagging with the flag as discussed.

Dave Rathbun :us: (BOB member since 2002-06-06)