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 & 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.

February 2020 work summary

This was a fairly ordinary month, but I have started two long-term projects, details of which are below. Both should keep the business comfortably afloat for much of the year.

Work on my book Mastering phpBB Administration continues. It is still with an editor but should complete editing within a few weeks. It still needs cover art, reformatting, and setting up a publish on demand mechanism. I’ll probably offer it as both an eBook and a printed book. Existing clients will be entitled to a discount. Figuring out the pricing will be challenging. At over 300 pages, it’s a lot of information. Publish on demand allows both color and black and white copies to be requested, but color copies are much more expensive to produce, so I may offer both at different price points. Price will probably not be less than $19.95 a copy. Stay tuned for more details.

  • Began an exploration on whether a Delphi forum could be converted to phpBB. The client provided a set of .yaml files with the board’s posts, which also includes some images that were in the posts. My basic approach is to see if I can get the data into a format that can be converted into the old phpBB 2 database format successfully. Is so, then it could be converted to phpBB 3.3, the ultimate goal. The first step was to try to find a good YAML parser. I tried a number of approaches but eventually I used Symfony’s yaml parser in my script and that seemed to work reliably. The .yaml files were not perfect YAML, so I had to do a bit of editing to get files to parse correctly. I parsed the first 500 posts and placed the result in a HTML table with a script, then did the same thing with a .yaml file with the user information. These were sent to the client. The client will discuss with his group whether he wants to fund further research, but it looks likely because it looks like there is enough data in these files to populate a phpBB 2 database. He will get back to me in a couple of weeks.
  • A client was running out of quota and asked me to figure out how to solve the issue. 4.9GB out of 5GB was in use. Problem was WordPress backups in a backup folder. Suggested removing old backups. Once identified, client took care of issue.
  • After large upgrade to phpBB by a client, the modules for my digests extension got lost. On Skype, I walked him through the process of creating both the ACP and UCP digest modules manually.
  • Upgraded and rehosted board from phpBB 3.0.5 to phpBB 3.3.0. The new hosting is on Siteground. The old hosting was on a Windows server. Fortunately, MySQL was used on the Windows hosting, so there was no database to be converted. There were some technical issues on both hosts with downloading databases and making archives. Siteground’s new site tools turned out to be confusing as cPanel was not an option. I could not grant permissions to the database user I created to database I created. It took two tech support calls but eventually it all worked. I created a custom style to show logo, otherwise default prosilver style was used. I disabled the contact page and created reCaptcha V2 Invisible spambot countermeasure.
  • I provide ongoing support for a client’s business board. I investigated an emailing issue where emails were getting flagged as likely spam when sent to wvu.edu. The client’s domain is not on an email blacklist. This was something on wvu.edu’s end and the easiest way to deal with the problem was to have change the board user’s email address. I provided instructions on how to change email address used by the board. At the end of the month I updated two packages in Plesk and updated Plesk to version 18.0.24. Also, changed one user’s email address. She was not getting email notifications because the address had changed and she didn’t know how to change it in phpBB.
  • I restored a lost board. Originally it looked like a backup of phpBB 3.0.11 was available, but it wouldn’t upgrade since some tables were in a phpBB 2 format and some not. The client found an older phpBB 2 database backup and I was able to convert that offline to phpBB 3.3. In the first conversion, the attachments were missing so I had to do it over again. I also changed the board to use to https. A few minor errors were encountered. I had to add an auto increment to the phpbb_logs table’s primary key. I set up reCAPTCHA and disabled contact page.
  • Updated forum from phpBB 3.2.2 to 3.3.0. I had to comment out Options -MultiViews in .htaccess file to avoid HTTP error. Also had to remove install_config.php file in the store folder to get the upgrade to start. Otherwise there were no issues. User had warnings that were due to PHP 7.3 being enabled on his host, which is not supported by phpBB 3.2.
  • Began work for a new long-term client who has a large job to upgrade his phpBB 3.0.11 board to phpBB 3.3. This will take many months as there are many customizations embedded in the source code itself that need to be turned into extensions. This month I mostly looked through their changes to phpBB 3.0.11 and advised on the best approach. The first step will be to try to change the style to work with phpBB 3.3. The style uses SCCS and needs to link in a lot of CSS and HTML used for the master website. I may develop some of the extensions myself of work with other extension authors to have some develop them. Some look very complex, such as a proprietary OAuth integration. But it’s commercial work and pays very well, so it should be both challenging and financially rewarding. More on this in coming months.

January 2020 work summary

I did plenty of work in January, just not so much for clients. That business was slow, but picked up toward the end of the month, so much so that at the moment it looks like my plate in February should be full.

Why was I busy? I was writing and editing a book on phpBB administration. The introduction of phpBB 3.3 Proteus on January 6th added work, as I needed to update the book to talk about phpBB 3.3. As I noted, its feature set makes it more of a micro release than a minor release, so that part was good. But by changing the phpBB logo and a few other things, I had to recapture fifty or more screenshots, which was tedious and time consuming. Then of course the text had to be revised in places which also meant reading it through twice more. Right now it stands at 305 pages on 8.5 x 11 inch paper.

I reached a milestone of sorts when I turned it over for editing on Thursday. I should mention that I am using Maria Williams, so if you need an editor, hit her up! It will take her a couple of weeks for her to do her magic, then I have to figure out how to publish and market the book. I need cover art. Publishing will likely be on demand, and I expect most people will want electronic copies. I also need to figure out how to price it. It’s a sizable capital investment of time and money, so it needs to be profitable. I expect to offer some sort of discount for the first ninety days and for my existing clients. The last book published on the topic was written in 2006, so it described phpBB 2, so the market is out there. Also, that was a user guide, not an administrator’s guide.

Otherwise:

  • Added two users and forced a reactivation of two other users for a commercial client, who outsources this work to me.
  • Updated a board from phpBB 3.2.7 to 3.2.9. Also, I created a new forum with a forum logo on the board. I resized and placed a forum image logo with the forum, and put it in the requested place on the index. I gave the forum permissions similar to another forum. I investigated issues in the error log. Most of these errors seems to be due to debug being turned on.
  • More analysis for a client I did work for in December. I generated a list of users and email addresses on his archived forum that had contributed at least 1 post but whose usernames were not on the current forum. He will use the list to invite them to come to the new board. I installed a release candidate extension to creating lots of user accounts in bulk, but it didn’t work as advertised. I did some styling changes. I upped base font 1 pixel to 12pixels. Client wanted to know if my digests extension can show text only. Yes, and I sent him a sample. He wants digests generated by my extension to look similar to someone else’s digest. I deleted a user defined moderator group. I provided guidance on using the ACP Add User extension so lots of old users could be added. He would like to delegate the work to someone else, so discussed how this could be done with ACP permissions so their access was tightly limited in the ACP.
  • Client’s board wouldn’t come up on Bluehost hosting. After some analysis, I determined he had a phpBB 2.0.19 board and that only PHP 7 was available. He did have attachments. I converted the board to phpBB 3.3.0. Issues logging on were solved by removing the domain’s cookies, clearing browser cache and resetting the password, which was set back. I moved the old board into forum_old folder. I created the search index, disabled contact page, added Invisible reCAPTCHA. The resulting board is very basic. It may need some customization, styles and extensions installed. Later there was additional work. The client needed some gallery software. The phpBB Gallery extension is not being maintained and is not reliable, so looked for a solution outside of phpBB. I tried one solution, then tried another. Piwigo seemed to work after I installed a Community plugin/extension. This allowed users to upload their own pictures.
  • I updated a board from phpBB 3.2.0 to 3.2.9 on generic prosilver style. I updated my digests extension to version 3.2.17 and the Cleantalk extension to version 5.7.2.
  • I upgrade board from phpBB 3.2.7 to 3.3.0. I updated the prosilver SE style to 3.2.9 and put the old logo back. I changed the spambot countermeasure to reCaptcha V2 invisible, since spam registrations were a complaint.
  • Client wanted active topics in red on the navigation bar. First tried installing the Advanced Active Topics extension (release candidate) but couldn’t get it to show. I then installed the Recent Topics extension as a trial, but client didn’t like it, so I created a special link on the navigation bar, highlighted in red, moving it from the Quick Links menu.
  • I upgraded a board from phpBB 3.2.8 to 3.3.0. I replaced the logo.I checked all the extensions and they seemed to work on phpBB 3.3 with no issues, but there was no test case for change post time extension to verify it worked properly.
  • More work for a client on spam. Used Prune Users feature to remove users and their posts who registered after Feb 10, 2018 when spam seemed to start in earnest. Reenabled board and suggested ways to mitigate the problem in the future with moderation, digests, etc. This is discussed in more detail in this blog post.
  • This work is still ongoing. On Hostgator hosting, I created space for five domains and set up DNS for these domains. I set up five boards on five subdomains of these domains. All have a basic configuration, registration disabled, reCaptcha enabled, prosilver_se style applied, contact form disabled, and forwarder set up to redirect to client’s email address. Set up https redirection by installed WordPress SSL plugin on the main blog. Next, I cloned four WordPress instances based on work on one domain, whose theme and plugins client wanted to replicate. I did this by copying the files and database, changing the wp-config.php file to point to the new database, and tweaking the site information in the wp_options table. This saved a lot of time and work for the client.

 

December 2019 work summary

New year, but this also gives me an opportunity to review work I did for client in January and look at how I did overall in 2019.

Revenue-wise, it looks like 2019 was about as profitable as 2018. With a few quiet months, it didn’t look like it would be that way. How well I did depends on how you count the income. If you count it based on the date when people paid me, revenue was up 12% over 2018. If it’s based on when I did the work and how much of it was collected, then it’s down 1%. There are several hundred dollars owed me at the moment and one client that won’t seem to pay me the $45 owed. I guess I’ll have to write that off. Thankfully, it’s the first time in years that I’ve been stiffed. Sometimes I have to nudge clients gently, but they usually pay me. Most pay within hours of completing the work.

In any event, since I count taxable income based on the date of receipt, I guess it was a better year than 2018. In 2020, I expect to publish a book for forum administrators. Hopefully there will be an additional revenue stream from that, but it will come with expenses, principally paying an editor to clean up my grammar and typos. That’s going well and I’m about ready to turn it over for editing. I’m using LibreOffice and noticed a big quirk saving it as a .docx then moving it back, which messed up page styles. So I have to redo all that in a clean version of the book, which is a lot of reformatting.

Work-wise, December felt pretty average:

  • For an existing client with a huge forum, I installed an extension that opens external links in new tabs. Later in the month, I did additional work. I fixed more incorrect links embedded in the post text and removing Javascript code to open links on the domain in new windows, all inside the database. I changed the Buy, Swap and Sell forum to require all new topics be moderated. I then updated board from phpBB 3.2.7 to 3.2.8, later adding back in http to https redirection code to .htaccess file that was accidentally overwritten. I found some WordPress blog links placed on the navigation bar directed to instances of WordPress that didn’t work when the hosting type was changed from Windows to Linux. So I created some database users that were missing and reattached them to their WordPress blogs. I fixed a number of outgoing emailing issues working with the client’s web host’s technical support.
  • I updated a board from phpBB 3.2.5 to phpBB 3.2.8. I also updated the IDFresh Launch style from version 2.0.1 to 2.0.7 and updated the Google Analytics extension from version 1.0.3 to 1.0.4. But the extension would not install and directed me to login. So I installed it manually via the database and uploading files, although migration is missing. I tweaked stylesheet.css to make the logo 77 pixels wide. Client asked about some special reports, doesn’t look like phpBB contains the data needed to give it to him. Eventually I convinced him that he could use Google Analytics to get the report he wanted.
  • Conversion and rehosting. Converted phpBB 2.0.21 forum to phpBB 3.2.8 by downloading files, converting on my machine, and uploading to new host. Client moved board to a new domain name too. 136,000 posts. I changed the internal links in posts to point to the new domain using the database. I added the External Links in New Windows extension so they would have nofollow attributes. Made the AllanStyle SUBSILVER style the parent style and created a custom style, overriding logo change and moved the poster profile to the left side of the view topic page. Removed 1111 inactive users, likely all spammers, with no posts. Added AWS S3 extensions to allow attachments to be stored on AWS. Installed Google Analytics extension. Recreated search index using the MySQL fullindex, since it was faster. I created a reCaptcha V2 checkbox spambot countermeasure. I changed time for being online to 4 hours. I enabled quick reply in all forums. Need certificate to do https. www prefix not available. Set up redirect rule for old domain to redirect traffic to new domain.
  • Later did more work for the last client. Forced www to use non-www URL. Forced http traffic to use https. There was more work fixing links in the posts for some edge case URLs. Made user registrations go through an email verification process. Removed image links in signature lines for 12 users. Created a robust robots.txt file. Disabled contact form to reduce spam. Enabled active topics feature for all forums. Removed the website custom profile field. Set email settings to use SMTP which required a lot of testing. Changed some administrator permissions to remove founder status and reduce the administrator’s roles for these users. Increased moderator permissions to give moderators full moderator role privileges. Then there were more styling changes. Removed who’s online from the index. Moved Quicklinks and FAQ to a different place on the navigation bar. Removed the style’s credit line. Changed default font size from 10px to 11px so style does not lay out with such a dense look. Changed the forumlist_body.html template to remove moderators for forums on index. Fixed breadcrumb issue with the style. Replaced the logo with one a bit larger. Later, there was more work. I installed the sitemap.xml extension. I changed digests so users would get weekly digests instead of monthly. Changed forum permissions for a whole lot of groups making a number of assumptions.
  • Helped a client think through the issue of bringing in the content in a closing Yahoo group into phpBB. After much discussion, client decided not to import them into a forum/post/topic structure, but to make them available outside of phpBB and link to them with a sticky topic. So my role was to figure out what the client really wanted and provide advice.
  • GoDaddy brought down a forum’s connection for database, which we eventually learned was due to exceeding 1GB of database quota. To solve that problem, I used phpMyAdmin to truncate the search tables, which brought it under 1GB, then turned off the board’s search interface. I then had to attach the database user to the database. GoDaddy had disconnected it. I deleted spam chat tweets in mChat. I removed a few hundred inactive users with no posts. There is a problem with spam posts, probably because his Cleantalk subscription failed silently and it did not get renewed. Those need to be removed, so I waited on him to pay Cleantalk to renew subscription. Updated the board from phpBB 3.2.2 to 3.2.8 and created a custom style based on prosilver that I enabled. Four extensions could be upgraded. Later, there was one more hour troubleshooting. I renewed the Cleantalk subscription for the client and added it to his bill. I backed up his posts table then used Cleantalk to remove spam. But there was still plenty of old spam left over. The issue seems to be that this Cleantalk feature does not check the post content itself for spam, but the IP of the poster when the post was made against its database and flags those. So if the IP address is no longer flagged as a spam IP address in their database, it gives it a pass. I did an analysis of posts per day and sent to client to help determine when spam started in earnest. Board looks largely infested with spam. If it could be rolled back to a time before spam, the content may be relevant again. I changed reCaptcha keys. Board is currently disabled. No automated way to clean up spam appears to exist. However, I did some investigation and it looks like an Akismet API could be used if I wrote a program to send the API the post text, IP of poster and post type. Waiting to see if the client will pay for this.
  • Assisted in rehosting a board and a site. Provided advice on new hosts. The files on old host were a mess, a lot of it (like the Joomla front end) weren’t to be used on the new hosting. The client had already transferred the domain so things weren’t hooked up. Moved forum files and database to new host. Also moved files only in public_html folder because a lot were references to these files in the forum. I reconfigured an ad on front page to fix its links. I made everything use https.I redirected the domain to forum folder. I set up reCaptcha V2 spambot countermeasure, and disabled contact form. I updated the American English language pack but there are missing strings. Then there was a lot of hassle getting the email settings working right. I had to set up an account for SMTP and puzzle through the settings. My digests extension was returning errors, so I upgraded it from version 3.2.3 to 3.2.16.
  • There were error messages on forum index. The issue was that PHP 7.3 was being used. In cPanel, changed PHP to 7.2 for the domain. They came back, so I reset PHP version back to 7.2. Later error occurred while PHP 7.2 was installed. Commented out an echo statement in /includes/functions.php made the error go away. The overlying issue may be he needs to upgrade phpBB. Moving PHP back to 5.6 seemed to make all these issues go away.
  • Updated nine packages in Plesk.

November 2019 work summary

This was a pretty busy month overall. I did not have time to work on my extensions, although two extensions went through a formal review (Digests and Selective mass emails) but were, alas, rejected for more code changes. I am working on the book on phpBB administration and nearly done with a first draft. I hope to get it professionally edited but it needs a lot of work.

  • Updated board from phpBB 3.2.5 to phpBB 3.2.8. I also updated the Cleantalk extension from version 4.6.9 to 4.7.1. I reapplied the logo. The forum uses the default prosilver style.
  • A client getting hammered by bots in China and probably Hong Kong too. He was experiencing lots of HTTP 508 (loop detected) errors. I installed by Filter by Country extension (beta) 1.0.8 to see if that helps, blocking IPs from both China and Hong Kong. Analyzed Awstats statistics for October that indicated a lot of Hong Kong access. Client also blocked the Hong Kong range of IPs in cPanel. I changed the spambot countermeasure to reCaptcha. I disabled the contact form. More work may be needed later depending on how well this works.
  • Troubleshooting. A client had an issue with “Secure connection failed” error messages. I advised to change server settings, change protocol to https and port to 443. Later, I gave advice to use the domain name instead of an IP in the server settings. This was peculiar in part because the client wouldn’t give me access to his forum, so I couldn’t directly see the problem. Also, for payment he mailed me cash!
  • Client was having an open_basedir error with his Joomla content management system. Although not my area of expertise, I worked on it. The /logs and /tmp paths in Joomla’s configuration.php were incorrect and had to be pointed inside the Joomla folder. I figured out the absolute path and made these changes. The issue, or at least the reported error, seems to have gone away.
  • I updated a board from phpBB 3.2.7 to phpBB 3.2.8. I updated the board’s prosilver_se style to latest version, as well as Danish and German casual honorifics language packs.
  • The previous board owner has been non-responsive. He may be dead, and board issues were piling up. Traded some emails with an alternate administrator with no founder privileges on what I could do for her. I moved some users between groups. I also made her a founder. I answered questions on how to change group color, and ranks vs. groups.
  • Client failed trying to upgrade a board from phpBB 3.0.8 to phpBB 3.2.7. All files in the board’s root folder were missing including config.php, but the folders were there except for files, images and store folders, which I uploaded. I uploaded missing files too and created a config.php file, after finding the database and creating a database user. I then could update the board. Attached images in posts may be missing, along with avatars, ranks, etc. I changed folder permissions as necessary. Later, ran the update to phpBB 3.2.8. There were no issues after I corrected the username to use. I disabled the contact form. I did not change their spambot countermeasure.
  • I updated a board from phpBB 3.0.14 to phpBB 3.2.8. There were no mods on the old board, but AutoMOD was installed that I cleaned up manually. About 180,000 posts. No issues during upgrade but entering the ACP caused a VigLink error that I fixed by removing a row from the phpbb_config table. I installed the proprietary Milk style, which also meant installing its extension first. I gave the style a default color so I could see it, otherwise it was washed out. I disabled the contact form and added reCaptcha V2 checkbox spambot countermeasure. I changed the board’s config.php file to use mysqli. I recommended upgrading PHP to 7.2.
  • I converted a forum from phpBB 2.0.22 to 3.2.8. About 120,000 posts. I kept the default prosilver style for now. I installed the German Casual Honorifics language pack. I installed the GDPR Extension (Release candidate) and Advertisement Management extension. I disabled contact form and recreated the search index. I set up reCaptcha V2 spambot countermeasure. Client watched the whole process online with Skype. I suspect he will do the fine tuning.

October 2019 work summary

I kept busy in October, more so in the first half of the month than the last half. But that’s the paid work.

I’m still working on a book, the working title is “Mastering phpBB Administration”. Even if you cut the topics down, it’s a lot of material.

I updated all my extensions in October, with the last being an update to the digests extension. Two are in development: Filter by country and Selective Mass Emails. The latter got a review by the phpBB extension review team and is now back in the queue, along with Smartfeed. Filter by country is having issues and is back to Beta status. I haven’t yet submitted the latest version of Digests for review. It may wait until the next version.

As for paid work, here’s a summary of it. It was a reasonably profitable month.

  • I upgraded a forum from phpBB 3.0.12 to 3.2.8. I applied the prosilver_se style and added the advertisement management extension, which was used as a mod on their phpBB 3.0 board. The old ads were retained from the mod. I tried to replicate the old header. Ads were placed in a HTML table inside it. That won’t work with the extension, as it has defined places where ads are injected in various templates. So all ads currently show at the top. I placed the old logo on the new style. I was asked to make the phpBB search use a Google Custom Search instead. I couldn’t get that to work and got recurring HTTP 401 errors trying to install a Google Custom Search extension instead. I removed the standard Quick Links and FAQ links from the navigation bar as requested.I added a home link. Also added the Mandarin Traditional language pack. Later, user noted a lot of HTML was embedded as text in various posts. I used the SQL replace function to remove post text that had onclick Javascript code. I suggested asking web host to troubleshoot 401 issues in Administration Control Panel and suggested embedding static ads in various forums.
  • I updated phpBB from version 3.2.5 to 3.2.8. Also updated the board’s ne_greenblack style to version 3.2.8. Created a custom style and moved all changes there. Updated PHP from 7.1 to 7.2. Changed site’s .htaccess file to force https and the www prefix. Added two new extensions: Cleantalk and Hide Newest User & Stats Permissions. Set phpBB to use https including using a secure cookie. Later, I added template logic to viewforum_body.html and viewtopic_body.html to show custom ads on particular forums. A HTTP 401 error occurred when trying to install the Google Search extension on this forum too. I tried lots of things, but there was no clue in the error log. I suggested that his web host should resolve it. He didn’t want me to spend any more time on it. Later, there was some additional labor figuring out why Cleantalk wasn’t working: service wasn’t paid for was the most likely cause. Also, made main web links use SSL and set up .htaccess for forum to redirect http to https. Changed board settings and cookie too.
  • I updated a forum from phpBB 3.2.0 to 3.2.8. Updated the Board Announcements, Lightbox and Cleantalk extensions. I created a custom style to insulate his style changes.
  • A client of about ten years standing has decided to let me handle their new user requests, outsourcing it you might say. It’s pretty simple ad-hoc work when I get it, but they are happy to pay my commercial rate for the service. I also updated their forum from phpBB 3.2.7 to 3.2.8, updated two extensions and one style. Added or troubleshooted issues for about ten users over the course of the month.
  • I updated a board from phpBB 3.2.7 to 3.2.8. There were no issues. It was a very vanilla installation of phpBB. Client noted a new high for the number of users online. These were likely spammers, but it didn’t seem to be impacting performance.
  • Extended the logical volume containing forum, adding 400 gigabytes to the volume.
  • Client was running out of quota. I removed excess backups from the forum’s store folder. I suggested getting the web host to add space to the logical volume containing the forum for a more permanent fix.
  • I updated a board from phpBB 3.2.7 to 3.2.8. As part of it, I updated the following extensions to the latest versions: ABBC Box, mChat, Media Embed, Precise Similar Topics and Recent Topics.
  • I updated a board from phpBB 3.2.5 to 3.2.8. I also updated the Cleantalk extension to latest version and disabled the Advertisement management extension. All this work had to be done with file manager because FTP credentials would not work.
  • I created a custom style for a client, which meant taking their changes to an existing style and moving them into a custom style that selectively overrides the primary style, so that updates can be done easier. Changes were applied to phpBB 3.2.1 to a testbed forum. These changes would need to be replicated to a production forum, which the client will handle.
  • Client paid me for some additional work and advice regarding hosting issues. I providing a better understanding of Cleantalk integration issues he was experiencing. The Tapatalk required a refresh of current version to work. I helped with making site use https and redirection to folder containing the forum. Client’s server IP was blacklisted in the Cleantalk dashboard. I made it a whitelisted IP and was able to register.
  • I updated a board from phpBB 3.2.4 to 3.2.8. I added the following extensions: Simple spoilers, simple mentions, media embed, advanced BBcode box, best answer and Cleantalk. Extensions were slow to install and sometimes required many retries to install them. The media embed installation failed and I had to add two rows to the phpbb_acl_roles table manually to get it to install. I added the Cleantalk key and updated the American English language pack. I got occasional errors getting into Administration Control Panel.
  • I updated two forums from phpBB 3.2.5 to 3.2.8. I created a custom style on each forum to encapsulate the style changes from the primary style. I updated three extensions on the first forum and 4 on the second one. There was an issue with ads being served may because the width of the ad exceeds the 980 pixel margin for the forum. I had to change config.php files to use mysqli instead of mysql to update the forum, as it was using PHP 7. I also updated AllanStyle-SUBSILVER to the 3.2.7 version for both forums.
  • I updated my digests extension from version 3.2.4 to 3.2.15 for a client, to address a bug that was encountered. I noticed in file manager that files and store folders were missing. I created them manually but the 777 folder permissions would not stick. I suggested a ticket with the web host. Likely some security software is doing this.
  • I updated a forum from phpBB 3.2.5 to 3.2.8. No one had an admin username and password, so I had to create my own access. However, I could not get into the database in cPanel. No credentials worked. So I installed phpMyAdmin in a folder of the same name off the domain, and got in that way, made myself a founder and then was able to do the upgrade. I noticed some dead AutoMOD modules that I removed, otherwise it was completely generic forum. This work was a referral from another customer, which is always nice!

Enhancing your security: I now use U2F authentication

At last count, I have had 391 different clients since I started this business in 2006. So that’s at least 391 times that customers have had to send me confidential information on how to access their forums so I could work on them.

For many years, I have been using two-factor authentication. Since the data clients share with me is largely sent via email, it usually ends up in GMail. I don’t normally delete emails you send me because there are often issues, and the conversations over email help me remember what I did for you. With two-factor authentication, it’s not enough to know my Google username and password to get into my account. You would also have had to enter a code sent by text message to my cell phone. This helps explain why to the best of my knowledge the information you sent me has never been compromised.

However, it was still possible that someone malicious that knows my cell phone number could hijack it, and do a two-factor authentication that way. Now that’s no longer possible because I am using U2F (Universal 2nd Factor) authentication.

U2F authentication is what Google employees use to work remotely. It’s a physical key they have that they use for two-factor authentication. Depending on the key and your device, you either plug it into a USB port, use your device’s Near-field Communication, or a Bluetooth signal as part of logging into sites that support U2F. The key issues a public key while hiding a private key. It will issue the public key to the authentication service, but only when I authorize it by pressing a button. The key will work only with that service, like Google.

What this all amounts to is that the safety of the information you send me is even safer, exponentially so. Now a malicious person would need not only the username and password to my Google Account, but would have to get one of these physical keys from me. That’s not impossible, but so unlikely as to be effectively impossible.

I do depend on Google’s security system, however. But if Google’s accounts are successfully hacked, millions of us are going to be in a heap of trouble. Hopefully such a breach would affect only those not using two-factor authentication.

Google always lets me know if a new device has attached to my Google account, via various means including text messages and emails to my primary and alternate email accounts. So in the event something like this happens, hopefully I could take action to mitigate any danger before any vulnerabilities are exploited.

So rest assured your information is as safe as I can practically make it. I would never betray the trust you place in me.

New service: making a custom style from your style changes

In this post I detailed how you can create a custom style that encapsulates the changes you made to your style to give your bulletin board a unique look and feel.

I now offer this as a service. See my pricing summary for my current rates, which at this time are $30 noncommercial and $60 commercial.

What I will do is analyze all the changes you made to your style by comparing your changes with a referenced version of the style that you modified. Once I have done that I will create the custom style with all these changes, inheriting from the original style. And I will replace the style that you marked up with the original style. Your custom style will inherit from it.

This has some advantages:

  • When updating phpBB, your custom changes are insulated. You no longer have to reapply these changes, or be scared to update phpBB or your primary style, at least if you follow phpBB’s update procedures.
  • You can make tweaks to your custom style in one place. Stylesheet commands are all placed in the stylesheet.css file of the custom style.

If you have made changes to templates, you may want to update these in your custom style from time to time. New template events are added to templates occasionally with new releases of phpBB or your primary style. I can do this for you as a service too at my general hourly labor rate.