For the past few weeks we’ve been following the progress of the new and vastly improved bbPress plugin, the official, native forum suite for WordPress/BuddyPress sites (both of which we are using). We’ve been running several tests and by and large the transition appears to go smoothly, except of course for a few kinks.
High priority problems
1 - Rating system upgrade or data transfer - Thanks @destroflyer!
2 - bbPress 2 compatibility for syntax highlighter - Thanks @destroflyer!
For more details read this document:
jMonkey forum migration - TO-DOs - Google Docs
If you are a capable WordPress / PHP developer, you might be able to help us speed things along. These are all problems that the bbPress or even jME developers can and will get around to eventually, but with some help we could move the jME project as a whole forward much faster.
Update:
The biggest blocker currently in the way of our bbPress 1 → bbPress 2 upgrade, is the import script’s poor way of dealing with formatting. All of our imported posts with code tags get muddled by br tags. It’s been reported, but it’s not considered a priority.
http://bbpress.trac.wordpress.org/ticket/1967
One way of going about it might be to write a script of our own, to be run post-conversion, that strips all HTML code within code/java tags.
Another option is to convert all these custom code/java tags to pre tags, which still makes them look a bit weird but at least they look a bit cleaner and they can still be copied and pasted.
If you have any other suggestions, we’re all ears.
No takers? bbPress 2 is really sweet guys ^^
Interested, but plate full already.
get eating then!
@normen said:
U better shit gold then xD
I hope to go gold in about six month. I expect to put on some weight during that time. Hopefully the results won't be shitty. ;)
I don’t know if the help is still needed, but I read in the doc that there’s still an “Unread Posts” plugin for BBPress 2 missing.
Therefore I read through BBPs sourcecode (There’s no documentation ) and wrote this little thing here:
(I tested only it with the newest versions of Wordpress (3.4.2) and BBPress (2.1.2))
The handling is comparable to the old one from normen (It was good for me to take a look at existing plugins first, but unfortunately BBPress’ complete API has changed ) - The last visit timestamps are saved via unique, user-specific metakeys. The “Mark all posts as read” button is still missing, but the hard part (Finding hooks and function names in BBPress) is over. I’ll finish the whole thing the next days and upload it / send it to you, if this would help you.
That’s awesome! Yes, we’re definitely still looking for assistance in the web dev department. Would have been nice to know that you were working on this though, as I could have pointed you to some existing work. There is a very well done plugin called “bbPress - Mark as read” that deals with this same problem. However, there might not be much duplication of work between the two of you yet, because he has not yet dealt with the visual “read/unread icon” part that you seem to have tackled already. It would probably be best if you wrote your plugin as an extension, or possibly a patch, to the aforementioned plugin. It’s on GitHub. Let me know if that’s not reasonable.
If you also want to have a look at converting the rating plugin, that’d be a huge help. We can probably deal with the data transfer. All we need is a working rating plugin with the same features as the one we’re currently using. @skye and @normen might be able to tell you more about what they’d expect technically from such a plugin in order to do the data transfer easily.
The biggest blocker currently in the way of our bbPress 1 → bbPress 2 upgrade, is the import script’s poor way of dealing with formatting. All of our imported posts with code tags get muddled by br tags. It’s been reported, but it’s not considered a priority.
http://bbpress.trac.wordpress.org/ticket/1967
One way of going about it might be to write a script of our own, to be run post-conversion, that strips all HTML code within code/java tags.
Another option is to convert all these custom code/java tags to pre tags, which still makes them look a bit weird but at least they look a bit cleaner and they can still be copied and pasted.
If you have any other suggestions, we’re all ears.
It would probably be best if you wrote your plugin as an extension, or possibly a patch, to the aforementioned plugin. It’s on GitHub. Let me know if that’s not reasonable.
Hm, I think it would be better if the new plugin would be a "stand-alone-extension" to bbPress - Actually, I took a look at it yesterday before writing my own plugin and to be honest, I don't like the style it's coded. :( Normen's way to handle this problem was a better idea I think.
Is there any reason you prefer to adapt/patch the existing plugin? I didn't took any code from it and wrote a completely new plugin, so you just would have to insert it to the plugins directory and activate it like any other wordpress extension.
If you also want to have a look at converting the rating plugin, that’d be a huge help. We can probably deal with the data transfer. All we need is a working rating plugin with the same features as the one we’re currently using. skye and normen might be able to tell you more about what they’d expect technically from such a plugin in order to do the data transfer easily.
I looked at the code of the rating plugin and I think, the problem is very similar to any user-action-based plugin - This should be done very quickly. The code would even be similar to the read/unread posts plugin: Ratings would be saved in the database (UserID in the MetaKey). The only difference is that the action would be triggered by a button-click instead of just a visit of a thread (and, of course, the whole GUI thing with the images and buttons, but that's no big deal, too).
So, yeah, I'll look into it - But again, I'd prefer writing my own plugin. A wordpress plugin isn't that much work and I hate adapting existing code that doesn't fit my "program style" - It would just end in an even more complicated code. :D
The biggest blocker currently in the way of our bbPress 1 -> bbPress 2 upgrade, is the import script’s poor way of dealing with formatting. All of our imported posts with code tags get muddled by br tags. It’s been reported, but it’s not considered a priority.
Hm, at this point I'd have to do some research how posts are actually saved, cached and accessed/displayed in bbPress 2. I don't want to promise anything, but maybe I can take a look at this problems the next days after the two plugins are finished.
@destroflyer said:
So, yeah, I'll look into it - But again, I'd prefer writing my own plugin. A wordpress plugin isn't that much work and I hate adapting existing code that doesn't fit my "program style" - It would just end in an even more complicated code. :D
We'd love to have some plugins with tasty code done by you on our site :)
Alright, sounds like it’d be best if you did it your own way. My line of thinking was that the plugin author I was referring to is a highly trusted WP developer, so I know his plugin would be following all the best practices already and there’s a good chance that it might be merged into core later, so piggybacking his plugin just seemed like the most future-proof way of going about it. It sounds like you’re almost done with your own plugin already though, so we can worry about what might be merged into the bbp2 core later
That sounds very promising about the rating plugin. And any extra insight you can bring to the import matter would be a great help.
Alright guys, I’ve just finished the two plugins. The new one is: bbPress Post Ratings
In this screen, you see two posts - I’m logged in as “admin”, so I can’t rate my own upper post (“testuser” has rated it negatve), but I rated his post positive. This is why the ratings are -1 and +1. (I’ve rated another post of “testuser” positive, too - Therefore, his total user rating is +2).
As you see, I took the layout and images from the current one, but programmed it for bbPress 2. The handling is the same, but with a few improvements.
With the old plugin, you could click to rate your own posts with a message coming back “You can’t rate your own posts” - In my plugin, the buttons are only added, if the viewer has the permission to rate the current post (He has to be logged in and be not the author of the post).
Otherwise, there’s just the rating displayed. This is a point, I’ve missed in the old plugin, too - Guests couldn’t see the post ratings, they were only available if you were logged in. In this plugin, as I mentioned before, guests and authors of the posts only see the rating (e.g. “+1” or “-42”).
Another improvement is the reaction to the click - In the old plugin, there was just the rating updated, but not the new user rating/karma, this is now updated too (All instances of these “karma boxes” are updated, not only the one next to the rated post).
The design and layout of the karma box is just a provisionally one - I think, me or you should adapt it to the selected wordpress and bbPress theme, when the change was done (Since it’s impossivle to add it in one location with one layout, that fit’s in every theme).
The only thing that’s left is the conversion from “total user rating” (sum of all his posts’ ratings) to this “karma” value - I think, I’ll just take the formula of the plugin, so there should be no problems in the import and the values should be still right.
The import itself shouldn’t be too hard, I took a look at how the old plugin saves the ratings and did it the same way (But I chose other metakeys, since it would be very unclean to use prefixes of plugins, that no longer exist - So you would have to do a MySQL command, that makes the old ratings compatible to my plugin. When the plugin is final, I can tell you the specific MySQL command and you can try it with a save copy of the database).
Ok… this is the current state. Please tell me, if you have any desires for the plugin or if there are problems with the way I wrote the plugin.
I’ll add a testforum link with the two plugins activated soon, I’m copying the WordPress database from my localhost to my webspace this evening.
Man, nice one! You’re a force to be reckoned with Idk if we need all the karma-conversions as we basically only use the total sum (though we thought about changing that as the “run for thumbs” is a bit silly sometimes)… Would you like to get involved more into the test site/site creation/management? We desperately need somebody to take care of this, all people who can code some lines of PHP in the team have a lot of other things to do as well…
Maybe you can contact @erlend_sh to get access to the test site?
Of course I’d like to help, it would be a great honor.
I like this engine and the way the developers and its community take care of it, never experienced something like that at any other software/framework/game - Maybe, this is how I can “give something back” to you guys.
EDIT: Because of the karma thing, I’d prefer taking just the total sum, too.
Holy monkeyballs, this is awesome! I’ll get back to you with more feedback when I’m on a computer that can render text at 60 fps.
One feature I’m just guessing you might have missed that I think is very handy: When it comes to a user’s negative Karma, we have it set so that only that user as well as admins can see that user’s karma value. We just want it to act as a little “heads up, you might be rubbing people the wrong way”, not “hey everyone, look at the misbehaving one!”.
And a Normen said, this is far from a perfect system, but we’re better off doing a simple data transfer, maintaining feature parity, before we try anything new and whacky.
Are you planning to submit these plugins to the wordpress.org plugin repo? I would in fact encourage it (and a little “Originally made for hub.jmonkeyengine.org” plug certainly wouldn’t hurt )
This is great stuff man. I’ll be in touch about the access to our test site and whatnots.
Woah great stuff @destroflyer… I totally agree with Erlend about submitting to WP.org, it’s great exposure for you and more eyes on possible bugs means more solutions
@erlend_sh said:
One feature I'm just guessing you might have missed that I think is very handy: When it comes to a user's negative Karma, we have it set so that only that user as well as admins can see that user's karma value. We just want it to act as a little "heads up, you might be rubbing people the wrong way", not "hey everyone, look at the misbehaving one!".
Did I get a secret admin promotion? Because I see negative karma...both negative post scores and negative total scores.
@zarch said:
Did I get a secret admin promotion? Because I see negative karma...both negative post scores and negative total scores.
Everybody does.
Yeah, you can still see the post with the negative score, but not a user’s negative score, if they have one. It’ll just appear as if they haven’t accumulated any points yet.