Welcome to Geeklog, Anonymous Thursday, March 28 2024 @ 05:23 pm EDT

Geeklog Forums

phpBB + GeekLog = phpBBBridge!

Page navigation


Status: offline

Turias

Forum User
Full Member
Registered: 10/20/03
Posts: 807
Hey everyone! I've been hiding for a while. Work has been keeping me really busy, as has the wife who is out of graduate school for the summer.

Anyway, I come bearing exciting news. Many of you remember the CMS Bridge project that allowed people to bridge their web apps (like phpBCool into Geeklog way back when. Well, the project was sadly dropped and allowed to fall into the land of abandoned open source projects.

It was a very ambitious project. Mine is nowhere near as big. Instead, all I wanted to do was integrate phpBB into Geeklog. I wanted it to be a tighter integration than the one through CMS Bridge. I also wanted it to be faster than the CMS Bridge - phpBB - GeekLog integration, as it was a little slow.

Well, I think I am getting pretty close to releasing a preliminary version! Here is the way phpBBBridge currently works:

1) You are expected to have a current installation of GeekLog and a clean install of the latest version of phpBB.

2) The current integration requires the addition of 3 lines to the core GeekLog code. These 3 lines add 3 plugin hooks to the main Geeklog architecture. For now, they are absolutely necessary. If I can convince Dirk that they are useful, he may add them into the core, later.

3) The integration itself is merely a Geeklog plugin. You install it as you would any other plugin.

4) When installed, the plugin migrates all of your current GeekLog users over to the phpBB database. It carries over the usernames, passwords, homepages, registration dates, email addresses, and whether or not to show the user's online status.

5) When users are created and deleted, the phpBB database is automatically updated to keep it in sync with the Geeklog database.

6) When a user logs in, they are automatically logged into phpBB as in a single sign-on solution. I currently do this by calling phpBB authentication code from within GeekLog. When GeekLog 2.0 comes out with Tony's Auth_Enterprise, I may rewrite this part of the code to leverage it.

7) Conversely, when a user logs out, they are also logged out of phpBB.

8> When a user updates their password, e-mail address, or homepage through GeekLog, the corresponding phpBB information is also updated.

9) All root users are considered phpBB administrators.


To Do (probably not for the initial release):
1) Allow GeekLog's search function to search through phpBB posts.
2) Add phpBB stats to the GeekLog stats page.
3) Sync GeekLog groups with phpBB, allowing certain groups to have read/write/moderator access to certain parts of the forum. This will probably take a lot of work and may not be done for a long time.


I ran into one main problem during this integration: both phpBB and GeekLog have a class named "Template". What this means is that I had to hack one line in a phpBB file to make sure that this class is not declared when we are in a GeekLog page. It also means that you currently cannot wrap a phpBB page inside of a GeekLog page. So, no showing the GeekLog site header or left blocks on your phpBB pages. Does anyone have any ideas on how to go about fixing this short of renaming every instance of "Template" in either phpBB or GeekLog? Is there some aspect of PHP scoping of which I am unaware?


Other than that, what do people think? Is there general interest in this integration? The main reason I wrote this is because I run a site in which 90% of the active users are very skilled in vBulletin and Blaine's Forum plugin just wasn't powerful enough for them. I will still run Blaine's plugin on the other 3 GeekLog sites I run, as it more than meets the needs of those users.

Finally, please be sure to play with the integration from a user's perspective! I currently have it installed over at http://demo.dogcows.net. Thanks! And please feel free to leave me any input in this thread!
 Quote

Status: offline

Dirk

Site Admin
Admin
Registered: 01/12/02
Posts: 13073
Location:Stuttgart, Germany
Sounds good.

Can you post the Plugin API changes you're suggesting on either the geeklog-modules or geeklog-devtalk mailing lists? We may even be able to squeeze them into 1.3.10 ...

bye, Dirk

P.S. And make sure to collect the $40 from that guy over there.
 Quote

Status: offline

samstone

Forum User
Full Member
Registered: 09/29/02
Posts: 820
Is there general interest in this integration?


Sounds good to me!

Sam
 Quote

Paul

Anonymous
I'm interested in this integration...keep up all your good work! I'm sure many people will like it!

Thanks a lot!
 Quote

Status: offline

Euan

Forum User
Full Member
Registered: 04/22/02
Posts: 292
I like the idea of a plugin managing the relationship between GL and another program - that has legs. PHPlinks, etc etc... Keep it up!



Cheers,

Euan.
-- Heather Engineering
-- No job too small
 Quote

ByteEnable

Anonymous
I ran into one main problem during this integration: both phpBB and GeekLog have a class named "Template". What this means is that I had to hack one line in a phpBB file to make sure that this class is not declared when we are in a GeekLog page.


Yeah, as soon as you include('lib-common'); and call a function you get that error. You will not see the error until u call a function.


It also means that you currently cannot wrap a phpBB page inside of a GeekLog page.


You can hack it like I did, phpBB2 Forum.


So, no showing the GeekLog site header or left blocks on your phpBB pages. Does anyone have any ideas on how to go about fixing this short of renaming every instance of "Template" in either phpBB or GeekLog? Is there some aspect of PHP scoping of which I am unaware?


You can show the blocks:

whatsnew.php
include('llib-common.php');
$whatsnew = COM_whatsNewBlock($help,$title="Whats New");
echo $whatsnew;
?>

place inside of index.php of phpBB2

exec('php -q whatsnew.php',$GL_result);
$count = count($GL_result);
for ($i=0;$i $GL_WhatsNewOutput .= $GL_result[$i];
}

then somewhere inside overall_header.tpl (templates)

{GL_WhatsNewOutput}

This is just a hack but its a workaround.

 Quote

Status: offline

Turias

Forum User
Full Member
Registered: 10/20/03
Posts: 807
Quote by ByteEnable: You can hack it like I did, phpBB2 Forum.

You can show the blocks:

whatsnew.php

include('llib-common.php');
$whatsnew = COM_whatsNewBlock($help,$title="Whats New");
echo $whatsnew;
?>

place inside of index.php of phpBB2

exec('php -q whatsnew.php',$GL_result);
$count = count($GL_result);
for ($i=0;$i
$GL_WhatsNewOutput .= $GL_result[$i];
}

then somewhere inside overall_header.tpl (templates)

{GL_WhatsNewOutput}

This is just a hack but its a workaround.



Definitely a hack, but better than nothing. Users with restricted 'exec' access might have trouble using this, too. Do you mind if I include a variation of this with the plugin and its documentation? Full credit will be given, of course.
 Quote

ByteEnable

Anonymous
Definitely a hack, but better than nothing. Users with restricted 'exec' access might have trouble using this, too. Do you mind if I include a variation of this with the plugin and its documentation? Full credit will be given, of course.


No problem. I also will owe $40.00

Byte
 Quote

ByteEnable

Anonymous
I was sitting here anticipating your plugin release, by the way, you done yet , and was thinking about the variable name 'template' and the conflict. One could always use awk to replace every single of occurance of 'template' in phpBB2 rather quickly.

Byte
 Quote

ByteEnable

Anonymous
Here is the command to change the template variable in phpBB2:

cd to your phpBB2 directory

find . -type f -exec
sh -c 'gawk "$0" "$1" > "$1.tmp"; mv "$1.tmp" "$1"'
'{gsub("template","phpBB_template"); print $0}' '{}' ;

Takes about ten seconds.

Byte
 Quote

Status: offline

Turias

Forum User
Full Member
Registered: 10/20/03
Posts: 807
Quote by ByteEnable: I was sitting here anticipating your plugin release, by the way, you done yet


Here is a reply I wrote to you over at the demo site:
I need about a week to clean up the code and get it ready for public
distribution. I was planning on this week being an alpha test/preview, with a
larger public beta release around next Monday.
 Quote

Status: offline

Superchicken

Forum User
Junior
Registered: 05/29/04
Posts: 21
Turias I LOVE YOU!



This is awesome! You have no idea how much my users have gotten irritated over moving from phpBB to the forum plugin for geeklog. This is awesome, granted phpBB's templates have never been kind to me, but I shall bite the bullet, this is great news!
 Quote

Status: offline

Superchicken

Forum User
Junior
Registered: 05/29/04
Posts: 21
Anyone wanna write a script for moving all forum plugin posts to a phpBB?
 Quote

Status: offline

ScurvyDawg

Forum User
Full Member
Registered: 11/06/02
Posts: 523
So I gotta ask. I am a big fan of Blaines work and I am wondering why all this work is needed.

What does phpBB offer to you that the forum plugin does not??

I am not all that familiar with phpBB other than having seen it I do not know what it offers that is so important that the portalparts plugin does not?

 Quote

Status: offline

ByteEnable

Forum User
Full Member
Registered: 10/20/03
Posts: 138
Mostly bug free. Easy admin, even for moderators, tons of mod's. Has a huge install base, with strong developer support.

See this link for the feature list.

http://www.phpbb.com/features.php

Speaking of bugs, my "" got stripped from my command I posted previously.

There should be a backslash inbetween those quotes. But this forum strips it out, why?
 Quote

Status: offline

Turias

Forum User
Full Member
Registered: 10/20/03
Posts: 807
Quote by ScurvyDawg: So I gotta ask. I am a big fan of Blaines work and I am wondering why all this work is needed.

What does phpBB offer to you that the forum plugin does not??

I am not all that familiar with phpBB other than having seen it I do not know what it offers that is so important that the portalparts plugin does not?



Don't get me wrong. I also really appreciate all the work that Blaine has done in creating the Forum plugin. The way I see it, each has its advantages and disadvantages.

What it basically comes down to is features versus integration.

phpBB has more features. I'm not going to just start listing them off, but if you are interested in knowing what they are, you should go play around with it. There is also a huge community that uses it, so there are a large number of themes, mods, and hacks that people have created over the years. Plus, since it has such a huge user base, bugs tend to be found and squashed quicker. I'm sure Blaine can tell you how frusterating it is for bugs to not show up during months of beta testing his plugins, simply because not enough people are willing to test them.

But, since this is a Geeklog forum, we are invariably talking about integrating a forum with this software. Blaine's Forum plugin is fully integrated. Search, stats, preferences, groups, users, etc are all shared and edited seamlessly between the two. With phpBB, there is a lot more work necessary in constantly syncing the two databases. This means that you can't just go into the database and change whatever values you want. In doing this you might be introducing inconsistencies between the two sets of tables.

Also, Blaine's plugin is built directly into Geeklog by a very active developer, so chances are that if you upgrade either Geeklog or the plugin, nothing is going to break. On the other hand, no one knows what is going to happen if you upgrade either Geeklog or phpBB if they are integrated. If one of them changes their database schema or session management code, chances are something might break. So, unless a developer continues to update the integration, you may be unable to update your Geeklog and phpBB software. (Yes, I plan on continuing to support this integration ).

So, my advice is that if you don't need the extra features that phpBB gives you, stick with Blaine's Forum Plugin. It was, after all, built around Geeklog. But, if you really want the extra features of phpBB, and if you are willing to forgo some of the integration benefits as well as put some extra work into your site, then you may want to try out this integration.

As I said earlier, I am still going to be using Blaine's plugin on 3 of my 4 Geeklog sites. It just depends on your site and the audience to which it caters.
 Quote

Status: offline

Blaine

Forum User
Moderator
Registered: 07/16/02
Posts: 1232
Location:Canada
I agree with you Turias and your assessment and applaud your efforts. It can only be a good thing for the community to have choice.

The Forum plugin was developed to be functional and provide the core set of features required for a community. A community that is 90% forum based is better of to use a a full featured forum no doubt. I am a user of many of these sites myself.

I have too many projects to commit 100% of my time on just the forum. It has already required easily 750+ hours of my time. There are a few esthetic related bugs with the current release but there are also posted fixes. Please start a new post if you have a list of bugs that have not been identified.


Geeklog components by PortalParts -- www.portalparts.com
 Quote

Status: offline

ScurvyDawg

Forum User
Full Member
Registered: 11/06/02
Posts: 523
Thank you,

I meant no offence by my comment but was truly curious. I commend your efforts Turias. I have often looked at your posts and wanted to see your sites

I appreciate your feedback it was well thought out and very sensible.

Again, thank you.
 Quote

Status: offline

Superchicken

Forum User
Junior
Registered: 05/29/04
Posts: 21
I enjoy the forum plug in, but phpBB is arguably the best forum script out there. And for those of us who have run them before after you get used to it even if you suck at coding you can do some amazing stuff.

Geeklog is an awesome script, as is the forum part but it has a few quirks that I'd sooner like to be able to use phpBB over.

So Turias any idea when we might see this thing hit a 1.0?
 Quote

Status: offline

Elegantly

Forum User
Junior
Registered: 08/13/04
Posts: 15
Turias and Blaine, I really appreciate your efforts!

I have to admit though, that I'ld prefer the phpBBBridge over the Geeklog Forum, since I am more experienced with the original phpBB.
 Quote

Page navigation

All times are EDT. The time is now 05:23 pm.

  • Normal Topic
  • Sticky Topic
  • Locked Topic
  • New Post
  • Sticky Topic W/ New Post
  • Locked Topic W/ New Post
  •  View Anonymous Posts
  •  Able to post
  •  Filtered HTML Allowed
  •  Censored Content