Installation ------------------------------------------------------------------------------ Your phpBB forum should be installed in subdirectory of Drupal installation directory in order to run inside Drupal page. For example, it is /phpBB3. But you may use your own name, but not /phpbbforum. I. Download the phpBBforum module from http://drupal.org/project/phpbbforum Unpack the archive. The unpacked archive contains a contrib folder which contains some directories and files that need to be moved in your phpBB folder. You do not need to keep the contrib folder inside the module folder. II. Copy phpbbforum and phpBB directories and files 1) Copy phpbbforum directory to your modules directory. sites/all/modules/phpbbforum As said before, you do not need to copy .../phpbbforum/contrib subdirectory. 2) Copy content of phpbbforum/contrib/phpbbdrupal/root subdirectory to your /phpBB3 directory For instance, if you have Drupal base path at /home/vb/www/example.com/public_html and your forum in /home/vb/www/example.com/public_html/phpBB3, you should have the following final structure: /contrib /phpbbdrupal /images -----------------------------------> {Drupal base path}/images (see next paragraph if you don't want it) /root phpBB-embed-3.0.4.patch -----------------> {Drupal base path}/phpBB3/phpBB-embed-3.0.4.patch /styles /prosilver-embed ----------------------> {Drupal base path}/phpBB3/styles/prosilver-embed /subsilver2-embed ---------------------> {Drupal base path}/phpBB3/styles/subsilver2-embed 3) Copy phpbbforum/contrib/phpbbdrupal/images directory to Drupal directory. If you do not want it, you will have to edit phpBB file editor.js for your phpBB theme (/phpBB3/styles/prosilver-embed/template/editor.js) and enter the url, where the file spacer.gif resides. (function colorPalette(dir, width, height) line 335) The relative path img src="/images/spacer.gif" provides access to spacer.gif both in standalone an inside Drupal mode only if you copy /images directory to Drupal directory. Do not forget to add a line Disallow: /images/ to your robots.txt file. III. Apply patch to phpBB The patch is made from clean phpBB3-3.04. If you are upgrading from previous version of the module, restore original functions_user.php. The new patch contains these changes. All changes made by the patch do not affect the standalone behavior of phpBB3. Go to phpBB directory. cd ./phpBB3 Patch phpBB. Choose appropriate filename for your version of phpBB. patch -p0 < phpBB-embed-3.0.4.patch See http://drupal.org/patch/apply for details or if something is wrong. IV. Install and setup phpbbforum module 1) To test how you will be authenticated, login to your phpBB forum as admin. 2) Install phpbbforum module as usual. Open new window in browser with your Drupal site, login as admin, navigate to Administer » modules and enable the phpBBforum and profile module. 3) Run update.php if you are upgrading from previous version of the module. See http://drupal.org/upgrade/running-update-php for details. 4) Go to Administer › Site configuration › phpBBforum settings. Navigate to phpBBforum settings and enter the path to phpBB root (path to forum's config.php file). (phpBB root path: /home/vb/www/example.com/public_html/phpBB3/) Save settings and ensure that phpBBforum successfully connected to the phpBB database and you are authenticated. Your path settings should look like this phpBB forum root path: /home/vb/www/example.com/public_html/phpBB3/ Path to forum directory. Enter the full directory path where phpBB is installed. Path to phpBB api file: /home/vb/www/example.com/public_html/phpBB3/ Enter the full directory path where phpBB api file is located. phpBB api file name: phpbb_api.php Enter phpBB api file name. 5) In order to run phpBB inside of drupal page select appropriate mode: phpBB display way: In the window In frame inside Drupal page X In the Drupal page Set other settings and Save configuration. 6) Ensure that corresponding profile.module fields exist. If necessary create profile.module fields that match with phpBB profile fields. 7) Navigate to Blocks. Enable phpBBforum: Hidden authentication block. Do not disable it in the future if you want advanced synchronization. Enable the phpBBforum blocks you want to use (optional). 8) Setup link to phpbbforum page. 1. Try link http://example.com/phpbbforum 2. If page phpbbforum is not found, Go to Administer › Site configuration > Performance Clear cached data 3. Go to Administer › Site building > Menus > Navigation See Menu item with blank title in state (Disabled) You may enable it if you do not want phpbbforum in Primary links If you enable it your forum page will be with title. Reset will help to remove the page title if you disable it back. 4. Go to Administer › Site building › Menus › Primary links Enter Menu item phpbbforum. Main page and link to phpBB in page is phpbbforum To change this name you may add URL aliases (core module Path must be enabled). Add next URL aliases (System path -> URL Alias) For the path 'forums' phpbbforum -> forums phpbbforum/viewtopic.php -> forums/viewtopic.php phpbbforum/viewforum.php -> forums/viewforum.php phpbbforum/viewonline.php -> forums/viewonline.php phpbbforum/memberlist.php -> forums/memberlist.php phpbbforum/posting.php -> forums/posting.php phpbbforum/search.php -> forums/search.php phpbbforum/ucp.php -> forums/ucp.php phpbbforum/mcp.php -> forums/mcp.php phpbbforum/faq.php -> forums/faq.php phpbbforum/report.php -> forums/report.php phpbbforum/adm/index.php -> forums/adm/index.php Administer › Site building › URL aliases › Add alias Existing system path: http://example.com/phpbbforum Specify the existing path you wish to alias. For example: node/28, forum/1, taxonomy/term/1+2. http://example.com/forums Specify an alternative path by which this data can be accessed. For example, type "about" when writing an about page. Use a relative path and don't add a trailing slash or the URL alias won't work. All links from blocks will have that path 'forums' instead of system phpbbforum. It works with or without Clean URLs enabled. V. Setup phpBB forum Pay attention to phpBB Settings: 1) Cookie settings. Cookie domain: Cookie path: 2) User registration settings. Account activation: () Disable (*) None () By User () By Admin This determines whether users have immediate access to the board or if confirmation is required. You can also completely disable new registrations. If you set By User, user must to login first to phpBB and after that you will see that he is registered. Set to None for test purposes. Username length: Minimum and maximum number of characters in usernames. [1] [30] Password length: Minimum and maximum number of characters in passwords. [5] [30] 3) Security settings. Check IP against DNS Blackhole List: () Yes (*) No You may switch off Check e-mail domain for valid MX record: () Yes (*) No If enabled, the e-mail domain provided on registration and profile changes is checked for a valid MX record. You should revise all settings that may affect the behavior of the module. VI. Theming You should realize that on phpbbforum page there will be css conflicts between Drupal and phpBB css files. The module is not responsible for that. You will have to resolve them yourself. For the theming of the phpbbforum page the module provides: 1) two starter phpBB styles: prosilver-embed subsilver2-embed 2) file phpbbforum.css 3) default starter css files for your drupal theme for phpBB styles: garland-phpbbforum-prosilver.css garland-phpbbforum-subsilver2.css phpbbforum-prosilver.css phpbbforum-subsilver2.css You can copy this files in each used drupal theme directory and customize them individually for this theme. In this case these default css files is not used. 4) two function in file phpbbforum.theme.inc if you use your own phpBB style: phpbbforum_set_style_example_embed phpbbforum_style_example_embed If you do not provide these function the module analyzes style name. If your phpBB style is created from prosilver and its name contains string "prosilver" or starts with "pro" the module treats this style as prosilver. In other cases the module treats this style as subsilver2. In these cases you do not need to create and edit these functions. The module is trying first to load stylesheet-embed.css of the phpBB theme. If it is missing the standard stylesheet.css file is loading. Do not think that the embedded inside Drupal phpBB will work for your themes just out of the box. Install first locally and ensure that with your settings it works as you expect.