Blog

Should my board use Tapatalk?

Tapatalk is a service that lets users interact with bulletin boards using mobile devices. Rather than going to a bulletin board with a mobile device’s browser, users can use a Tapatalk app instead.

Tapatalk’s app supports phpBB as well vBulletin, IPBoard, kunena, myBB, WoltLab, SimpleMachines and xenForo. Used with phpBB, you must install a Tapatalk extension downloaded from its website and configure it. If you have an older phpBB 3.0 board, a Tapatalk modification can be installed as well.

Tapatalk provides a common interface for accessing all these forum solutions. This makes things simpler for users if they frequent lots of forums, not all of which are phpBB, providing these forum solutions also integrate with Tapatalk.

In addition to providing a common app, more recently Tapatalk has started hosting their own forums which you can use, called Tapatalk Groups. This has some advantages: they maintain your bulletin board, and host it as well, so it’s effectively free hosting. Users use their app to interact with it. You may be able to import your phpBB bulletin board and create your own Tapatalk Group.

Tapatalk Groups have certain advantages. It’s mobile first. You can integrate donations to fund your board because it’s built into their architecture. But it will serve ads, which is how they normally monetize their service through donations. You can use its built in donations feature to help monetize your board. Spam protection is built in and some customization of the group’s look and feel is available. It’s also cloud hosted, making access very fast with extremely high uptime.

When used with phpBB, not only do you install their extension, but you must also upload a mobiquo folder to your board’s root directory. Most of the work between phpBB and Tapatalk is done by libraries in the mobiquo folder. Your users don’t have to use Tapatalk, but could access your board using a browser as well.

Tapatalk allows you to create a branded app, but they charge for this service. This allows people download your app, not a Tapatalk app per se. They would find the app in the store for their mobile operating system under your brand name. This obviously can simplify things. To access your board, people simply open your branded app.

About twenty percent of my clients have Tapatalk installed. These days, Tapatalk seems less useful. This is because phpBB is now responsive, i.e. you can use a browser on your mobile device to access phpBB and it will size down intelligently for the device’s screen size. Most styles for the old phpBB 3.0 software were not responsive, meaning boards were often be hard to read because they were scrunched down so much to fit the narrow screen width. You had to pinch to zoom in and read content in many cases.

Still, some would prefer to use an app optimized for bulletin boards rather than a mobile browser. For these people, using Tapatalk might be a preferred solution.

You won’t find Tapatalk as one of phpBB’s approved extensions. Why is this? It’s because their mobiquo library is proprietary software and works independently of phpBB’s software, so it violates its GPL-2 license. This makes it ineligible for inclusion in their list of approved extensions.

Also, the Tapatalk app provides a standard user interface, but it won’t reflect your board’s style. You can make posts, create topics and make attachments to posts, but any additional features made available through phpBB’s extensions cannot be used. So you won’t get the same experience with a Tapatalk app that you will get interacting with a web browser.

If you install the Tapatalk extension, be aware that it works outside of phpBB and may introduce problems.

Paper edition of my book is now available

My book, Mastering phpBB Administration is now available in paper. The paper version is 337 pages and costs $19.99.

As I am new to publishing, this is a learning experience. I haven’t found a way to download the Kindle version of my book without paying for it. There is a preview app I downloaded, but it just took the .docx source and transformed it. The result shows an eBook where figures are often misaligned. It may be the preview app is faulty and the Kindle version is fine. If there is an issue with the formatting of the Kindle version, I’ll do my best to correct it as soon as possible.

The paper version though looks great, and you may prefer that. The layout is exactly how I formatted it. As there are many figures and screenshots, it was important to present them so they can be read. I settled on using a Dummies book size as a good size for the book, which is 7.5 inches by 9.25 inches. However, except for the cover, it is in black and white. I could create a color version but it is cost prohibitive for most people. I’d have to price it at over $40. If you’d prefer to purchase a color version let me know and I may go through the hassle of offering one.

Please leave reviews (hopefully positive ones) on Amazon if you read it, as it should help me sell more copies. I began working on it in October 2019, and it turned into a major project. I’ve invested quite a bit of money on the book and am hoping for a return on investment. It was professionally edited, which is a costly endeavor. It should fill a niche very well. Aside from documentation on phpbb.com, there is no book like this. To the extent there are phpBB books out there, they tend to be very old. And they don’t go into the detail I do in this book. If you are a phpBB board administrator and my typical sort of client, you really need this book. It’s a wise investment and a lot less expensive than hiring me or others like me.

I hope to update the book at least annually.

My book is out

Mastering phpBB Administration, by Mark D. Hamill

My book, Mastering phpBB Administration, is available for Kindle downloading. The cost is $9.99. I hope to offer a paperback version soon. I’m new to publishing, so this is a learning experience. Bear with me.

It’s truly chock full of information and basically a brain dump of everything I’ve been doing for 14 years in the phpBB field. It’s meant for phpBB administrators, i.e. my clients. You may not need to hire me if you read it instead. That was certainly its goal. Of course, I’m always available for hire if you prefer me to do the grunt work.

Chapter Titles

  1. What is phpBB?
  2. Why phpBB?
  3. Using phpBB: the basics
  4. Installing phpBB
  5. Basic phpBB configuration
  6. Advanced phpBB configuration
  7. Growing your board
  8. Administrative chores
  9. Handling versioning
  10. Troubleshooting
  11. The future of phpBB

Appendices

  • A. phpBB and web hosting
  • B. Setting up and using File Transfer Protocol (FTP)
  • C. Creating a custom style
  • D. Converting to phpBB from other forum solutions
  • E. Rehosting

The book is 335 pages, formatted for print (7.5 x 9.25 inches). I hope to offer a paper version soon, so stay tuned.

New guidance on phpBB and system crons

A recent release of my digests extension revealed underlying problems not only in the extension, but also on guidance I’ve been giving for setting up phpBB and system crons. I can’t seem to edit the Wiki page, but I left notes on my digests extension discussion forum. I need to place them here for wider visibility. I will update the Wiki page when that technical issue is resolved.

With my digests extension, it’s generally important for digests to be mailed on time. Otherwise it depends on board traffic to send digests, which on sites with low traffic could result in significant delays in receiving digests.

There are two ways to do this in an automated way:

  • Create a system cron
  • Use a phpBB cron, but use a tool to call the board at least hourly, which kicks off phpBB’s cron process, which includes handling any scheduled outgoing digests

With a system cron, it turns out that you can’t use a semicolon to separate commands on one line in most cases. So this guidance is wrong in most cases. It all depends on the Linux shell used by the root user, which is usually bash. So when programming a cron job, to get two commands to work on one line, you need this instead:

cd /path/to/board && ./bin/phpbbcli.php cron:run

The && acts as a conditional, essentially saying that if the command to the left of the && succeeds, then issue the command to its right.

On my test board I also discovered I had to change the permissions on the /bin/phpbbcli.php program to 755, as the cron needs the execute permission, and it’s lacking with 644 permissions. This is not ideal as this introduces a potential security issue. Considering it’s just one file, I consider the security implications minor at best. With a system cron, you need to program a real cron job and tell phpBB to not use its built in cron based on board traffic: ACP > General > Server settings > Server settings > Run periodic tasks from system cron > Yes

If you want to use phpBB’s built in cron, you need to call it at least hourly and create a cron using curl, wget or lynx to hit your phpBB board as if it were a browser. If you follow the Wiki approach it causes a HTTP redirect, which basically causes it to fail. So the cron should look more like this (all on one line):

* * * * * curl -k -A='Mozilla/5.0' https://www.yourforum.com/board/app.php/cron/cron.task.cron_task

The key here is to use app.php in the cron, to avoid the redirect.

April 2020 work summary

The number of clients I served in April dropped compared to earlier month. Last year April and May were slow too. However, I had one well paying commercial job that more than paid the bills, and should continue to do so for many months to come. It’s nice to have steady work in tough economic times. It will take a few more months to see if the economic crisis is affecting the overall customer requests I get.

This month I also discovered some new information on doing crons properly in phpBB not covered in the Wiki, but I can’t seem to change the information in the Wiki because logging in no longer works. This can affect my digests extension which can use a cron to send out digests. I’ve also started work on a spam remover extension, that will remove spam posts and private messages using the Akismet web service. Hopefully I’ll have something to show this month.

Work on my book continues at a slower pace. I’ve done two more read throughs of it, finding errors and corrections and am now on what I hope is the final read through. I’ve changed the book size to 7.5 inch by 9.25 inches, the standard size used for Dummies books. As there are lots of screenshots, it was important that they be legible. We’ll see how it goes. Hopefully I can release it this month. I still need a cover illustration.

  • I upgraded a board from phpBB 3.0.14 to 3.3.0. As part of this, I also upgraded PHP to 7.2.29. The board has 408,000 posts. Added extensions: Google Analytics, Precise Similar Topics and Topic Preview. There were issues installing extensions. For two extensions, I had to create a module category suggested by the error message first. These were installed as mods on phpBB 3.0, so that was likely the cause. The Google Analytics extension wouldn’t install using my Vivaldi browser, but would using Firefox. Go figure. I disabled the contact page, set up reCAPTCHA V2 Invisible spambot countermeasure, and created a home link. I had to make myself a founder using the database. Installed the Anime style and its extension. I investigated upgrading MariaDB to a newer version, but it requires command line instructions. A few days later I fixed an issue that brought down board by removing trailing comma from allowed_schemes_links configuration variable using MySQL and manually purging the cache. I turned this is a phpBB problem report, documented here, which looks like it will get fixed in phpBB 3.3.1.
  • Earlier, I attempted an upgrade to phpBB 3.3.0 that I had to roll back because the host (Network Solutions) didn’t have a PHP version you could select greater than 7.0! Unbelievable! Upgraded and reenabled the ShareOn extension and installed Thanks for the Posts extension.
  • I added new audio control to a board that features a streaming music player, since the old service seemed to go defunct. Some testing with the provided audio players, which were too big on the board’s header, resulted in a simple link to the music service instead, that opened in a new window.
  • Placed a new ad at top of page using Advertisement management extension. This included uploading a new ad image. I disabled the old ad.
  • I attempted to add Facebook tracking code to a custom style. I copied overall_header.html template from the AllanStyle-SUBSILVER template folder and made changes in the custom style. I tried purging the cache multiple times but the code never appeared. I even rebooted the web server. Eventually, I figured out the underlying reason was that the block of code I added was placed inside a S_ALLOW_CDN statement, before the <!– ENDIF –> statement, and since the template switch wasn’t getting executed the Facebook tracking code wasn’t getting added.
  • For my commercial client so generous to pay me my commercial rate, I spent much of the month working on this project. In March, I made an unsuccessful attempt to upgrade a test version of the database. The client made a new version of the old phpBB 3.0.11 database that was better sanitized, tried again and eventually succeeded. To convert the database, I need a PHP 5 environment, so it was hard to do on their server so I had to do it on my machine in a virtual machine, and that added time and hassle. I then began to try to retrofit the styling to make it look as close as possible to the existing styling. This meant hiding certain features and disabling others. The old styles used the Bootstrap framework and SCSS. The idea is get away from Bootstrap since styles are now responsive in phpBB, but it’s easier said than done, but otherwise keep the SCSS. Went through two iterations for client feedback, and there will likely be a couple more. In some cases I am using extensions to replace functionality, like the Board Announcements extension to see general text on the index. This is pretty challenging work and should keep me well employed probably through the end of the year. Likely in May I will be doing mostly styling work. I am using a custom style, inheriting from prosilver, to minimize the impact of future updates to phpBB. When the styling is done, there will be extensions to write to incorporate lots of additional functionality.

March 2020 work summary

This month was pretty busy with work, but also distractions. One primary distraction was trying to figure out why some people were not getting digests from my digests extension. A user was kind enough to give me access to a test board where I could troubleshoot the process. Over many days I discovered the issue was due to changing PHP “continue” statements to “continue 2” statements in the last release. I removed this code because it doesn’t seem to be necessary. Its purpose was to prevent duplicate digest from going out, which users had reported. But with a phpBB or system cron, it shouldn’t matter. The cron logic itself should not allow this to occur for these types of crons. Removing it seemed to fix the problem. I hope to get out a new release of digests in the next few days.

I’ve also been working on a book with the title Mastering phpBB Administration. It finished the editing process late this month. Now it needs cover art, possibly some reformatting for the printed page, then publication and marketing. I expect it will be mostly downloaded as an eBook. I’m hoping I can do this in April. I’ve invested several thousand dollars so far and I’d like to start seeing a return on investment. It’s my first attempt to write a book, and I can appreciate all the work it takes to do it right now.

  • Upgraded board from phpBB 3.2.6 to 3.3.0. There was a Javascript issue with an integrated streaming radio player, accessed through a control I placed near the header of the board. The client needs to bring a support issue with streaming vendor. It’s likely that the Javascript has to change. I had to copy the Javascript for the player back into the templates overall_header.html and overall_footer.html. I replaced the reCAPTCHA Checkmark keys with a set of reCAPTCHA Invisible keys, since phpBB 3.3 only supports the Invisible keys. I had to upgrade Tapatalk extension to latest Beta version because of an error after the phpBB upgrade that disabled all extensions unless I upgraded the extension. The web host control panel information provided did not work but I was able to login and upgrade using FTP. I was asked to recreate search index but 700mb of database space was in use and Siteground’s quota is 1GB. I suggested seeing if he could buy more space. Later in the month, I moved his domain and board from Siteground to GoDaddy where there is no 1GB database size limitation to the database. The board has close to 800,000 posts. The archive of files was 2.8GB. I then recreated the search index for the board. All went smoothly, which was a bit of a surprise given its size. I didn’t have permissions to move domain, so left that for the client to do. The audio player is still an issue. It appears the streaming service went out of business.
  • I upgraded a board from phpBB 3.1.9 to 3.3.0. Since I last worked on it in 2016, it was moved to a subdomain. I had to upgrade the version of PHP since at least version 7.1.3 was needed and version 5.6 was present. I updated the German traditional and German casual language packs. To address an umlaut issue, I changed the collation for phpbb_posts.post_text column to utf8_bin and created sample topic to verify it fixed the issue in new posts. I then fixed issues with umlauts in many tables using the MySQL replace function.
  • I placed an ad to appear at the top of pages using the already installed advertisement management extension. It took some trial and error to get the CSS right so that it centered properly. Later, I fixed an issue with various WordPress blogs on the site. The /wp-content/uploads folder permissions were 755, changed to 777. There is still an issue related to updating these blogs that I am still working on. Certain permissions are missing.
  • I upgraded two boards for the same client to phpBB 3.3.0 from 3.2.1. On first board, I updated the prosilver_se style and two German language packs, then made a custom style to ease future maintenance by encapsulating the unique changes in the custom style. I also disabled the contact form and installed a set of Invisible reCAPTCHA keys. On the second board, I updated the Latte style, reapplied minor changes to .sccs files in one template then recompiled the style. I also updated my digests extension from 3.2.6-RC13 to 3.3.0.
  • I upgraded a board from phpBB 3.0.14 to 3.3.0. To do it, I had to remove a number of dead extensions and modules from the database. I moved over digests subscribers from the digests mod. I tested a new cron job used to kick off digests, but the manual mailer did not seem to work properly. I installed the ACP Add User extension. I disabled the contact page. I created a reCaptcha V2 Invisible spambot countermeasure. There were AJAX issues installing extensions related to a CORS error. After doing it enough time, the extensions seemed to install correctly. Later, the client had a script that used data in the user_interests column which was not copied over. I populated it from my backup, but the script should reference the phpbb_profile_fields_data table instead, where the data now resides. Client was concerned about &amp; that appeared as text in digests. I removed a line of code from my digests extension that added this entity as it no longer triggers a validation error.
  • I upgraded a board from phpBB 3.2.8 to 3.3.0. I had to disable modSecurity in the .htaccess file to get into board after upgrade. Updated the advertisement management, Cleantalk, Board 3 portal and Tapatalk extensions. Tapatalk would not work on 3.3 without upgrading to Beta version 2.1.7. Changed the board’s .htaccess to redirect to portal by default. I reapplied the logo. i changed the spambot countermeasure to reCaptcha V2 Invisible.
  • Client had issues with a custom style created by another developer when his board was upgraded to phpBB 3.3.0. The simple solution is to copy prosilver’s templates to the custom style and purge the cache. Instead, I made a proper custom style that inherited from prosilver. Only the CSS changes needed to be applied to prosilver are now in the custom style, making it easier to upgrade the board in the future.
  • I upgraded a board from phpBB 3.2.7 to 3.3.0. Client had issues doing it himself using the automatic upgrade method, which should not be used for phpBB upgrades, but only updates.I had to change PHP to version 7.1. A redirection issue on main .htaccess file for site meant I had to rename it temporarily to do the install. Changed reCAPTCHA spambot countermeasure to use the invisible CAPTCHA. Had to update Cleantalk extension to 5.7.2 to get it to install.
  • I do ad hoc work for an existing client as user issues come up. In March:
    • I changed an email for a user to her gmail address. Later, I heard there was another problem with her access, but when contacted she said she was getting email notifications.
    • I informed another user of her username and provided lost password instructions.
    • I forced reactivation for another user who could not login. It didn’t seem to work, so worked over the phone to get him online.
    • Changed email address for another user.
    • Provided instructions for a user to get a new password.
    • Advised the board’s administrators on a DNS issue sent by their hosting provider.
    • Provided lost password assistance to another user.
    • Changed the email address for a user and provided resetting login procedures.
    • A user wasn’t getting email notifications. Asked her to look in her spam folder and see if they are there. Eventually figured out her email address was incorrect for receiving notifications and changed it.
    • I created a new password for a user so he could login.
  • This month in a long term project I am doing for a client, I was trying to do a test upgrade of their phpBB 3.0.5 database to phpBB 3.3. My first job is to update the style to match their current style. Both attempts failed:
    • In the first attempt, I realized that I needed PHP 5.6 to install the support toolkit to remove bad data from the database. I tried to install it myself on their machine but not being a system administrator, it didn’t seem to work.
    • I next downloaded their database and tried to convert it on my laptop on which I had installed PHP 5.6. The database eventually imported (four hours later) but the laptop is underpowered. phpBB’s support toolkit flaked out when I attempted to use it. An attempt to run the upgrade program didn’t work very well. The client made lots of changes to the database that had to be cleaned up, but it would still not upgrade properly. PHP 5.6 was not the best choice. I really needed PHP 5.2, since trying to upgrade I had to work around issues making phpBB 3.0 work with PHP 5.6. It’s getting harder to set up test environments that use older versions of PHP.
    • I then imported the database into a virtual machine on my Mac, and a reference version of phpBB 3.0.5 as well so I could use its database to compare with the client’s. I realized I needed to understand all the changes made to the database, because I may need to leave data in the database because it might be needed when moved to phpBB 3.3. I have a call with the client today to look over these changes and factor them into my next test upgrade attempt.