Work in June kept me pretty busy.
As with most months since the start of the pandemic, one primary client occupied a lot of my time: 42.5 hours for this commercial client. Working with a key developer, we continued work on a custom OAuth extension. The extension ties into the client’s authentication system. I’ve learned much more about OAuth as a result than I ever expected (or wanted) to learn.
At the start of the month we concentrated on feature that when you sign out of phpBB you are also signed out of the site’s authentication system using OAuth methods. In addition a handshake was needed so that if a user was removed in the authentication system, the user was also automatically removed in phpBB. A method was also needed to ban the user on a signal from the authentication system, either permanently or for a fixed period. In the process there was some code clean up and centralizing of common logic into a common extension, called as needed by other extensions.
Toward the end of the month we worked on the issue of logging in indirectly, such as by logging into the accounting system first then going to the link to the forum and logging in automatically. It was all pretty confusing and hair tearing at times but we eventually got it to work. So most of the custom OAuth work is now done with some tweaks remaining, mainly to intelligently handle logging into the ACP by checking OAuth for proper authorization. Hopefully that will be figured out in July.
In work for other clients in June:
- Upgraded a board from phpBB 3.2.7 to 3.3.4. I made changes to the Black custom style to bring its theme and templates compliant with similar prosilver style changes since phpBB 3.2.1. Upgraded these extensions: Advanced BBCode Box, Cleantalk, Media Embed, Tapatalk and Thanks for the Posts. The last one required entering two configuration variables to enable it, and to change the extension’s name to all lowercase. Changed the reCaptcha spambot countermeasure to V3. Tested all extensions and they seem to work okay. Two other styles installed were not upgraded because I was unsure if that was still used. As a result the Quick Style extension interface to pick a style did not appear. Later, I updated the prosilver_se and narruto styles to work wth phpBB 3.3.4 as well, applying small customizations that were there previously. This also let the Quick Style extension work.
- Completed project started in April. The project was basically to change a calendar extension that will work for version 3.3 of phpBB. Previously a phpBB 3.0 mod was used. In April I deployed it to a test environment for feedback and refinement. In June I was finally given permission to replicate the changes to the production board. I first upgraded the test forum from phpBB 3.3.3 to 3.3.4, fixing the logo again. I then upgraded the production forum from phpBB 3.0.12 to phpBB 3.3.4 copying files on the test forum to save time and effort. There were no issues during database upgrade. I set up reCaptcha V3 as the spambot countermeasure. I then installed various calendar extensions and configured them to work as they did on the test board, created a test forum with the privilege and verified calendar showed up on navigation bar. I disabled the contact page and removed two errant old calendar modules.
- Upgraded a board from phpBB 3.2.7 to phpBB 3.3.4. I reapplied the logo to the prosilver style. I upgraded the following extensions: Board rules, Stop forum spam, Pages, Notify admin on registration and Who visited this topic. I changed the Captcha to reCaptcha V2 invisible — reCaptcha V3 would not work. There was an HTTP 500 error after enabling Who visited this topic extension, but seemed transient and works fine. I changed PHP changed from version 7.2 to 7.3.
- A client’s old board got hacked and backup was not available, so I created a new board replicating as best I could the look of the old board. Created the board in subdomain as the domain contained a WordPress site. Installed the Latte style, then created a custom style based on it. Incorporated old logo into it, with minor styling changes. Changed the username for the admin account. Set up forums requested. Set up default email address. Gave the client both administrator and founder privileges so he could take over the remaining configuration. Later, I did more styling to the navigation bar that the user later rejected. Even later, I worked on a WordPress issue for the client. He was getting emails for bogus WordPress user registrations. I installed the Google Captcha plug in and configured the plug in’s reCaptcha V3 keys using keys I set up for the board.
- Wrote a small extension for a commercial client that enabled a user email notification for private message notifications by default when a user registers on the board, in this case via the ACP Add User extension, so it occurs automatically via that process. In addition, wrote a SQL query to create this notification for users who did not already have it set. I blogged about this here.
- I helped troubleshoot some strange issues after a board was moved from a folder to the web root. Client could login but not into the ACP. Nonstandard German characters were part of the URL, which added some mystery, but also had only FTP and later phpMyAdmin to work with. Redirection was part of the issue. That gave client a clue on what the real issue was. He talked to his web host and they eventually solved the redirection issue. Charged an hour of my time.
- Upgraded a board from phpBB 3.0.10 to phpBB 3.3.4. This was instigated by the web host (Hostgator) dropping PHP 5, which forced the issue when PHP errors subsequently occurred. I moved the board with 89,000 posts from one domain to another on same hosting. I installed the IDLaunch_Fresh style first, then created custom style inheriting from it to closely model the IDLaunch_Black style previously used but which was not available for phpBB 3.3. I disabled the contact page, set up a reCaptcha V3 spambot countermeasure, and created a home link. Added and integrated the old logo into the header.
- A client wanted guests not to see attachments but to see the post text, but that’s not possible. I installed additional smilies. Initially changed the footer to include links to social media sites, but it turned out he wanted to share posts and topics, so I installed the ShareOn extension. I also changed the styling on the background image logo. It no longer sizes down proportionately, but the unused space below the logo no longer appears as screen width decreases.
- A board with dozens of extensions was having issues running slowly. The immediate problem was an error when a user registered. Inspecting the database, I realized the issue was that the user_id in the phpbb_users table was not set for auto increment, so I changed that. A number of other tables had a similar issue, likely a result of moving the database around where the import did not totally finish. I compared his phpBB 3.2.2 database with a reference phpBB 3.2 database. By comparing the columns and their attributes, as well as the indexes with a reference, I was able to fix what was missing, which included some missing columns and lots of tables missing the necessary indexes. No surprise then that the board was running slowly since without an index a database management system will read files sequentially. I did more work today for this client that will go into the July report looking at other slowness issues. One unusual thing about this job was that he wanted to pay with cryptocurrency. I’ve been leery of accepting it but it would have been days or weeks to get paid in U.S. dollars otherwise. So I made an exception and went through the hassle of setting up a digital wallet, and got paid in bitcoin! (If I have to accept crypto, it’s likely to be ethereum next time, because unlike bitcoin is doesn’t use a lot of power to mine new coins.)
More in the July report.