OwlManAtt.com is now running on AJ-Fork release 168, which was shoved out the door on January 30 (I don’t check for updates much) by the dev.

Oh boy, if that wasn’t one hell of a trip, than I don’t know what is.

It all began like any other update. I downloaded the source, unpacked it, backed up the old AJ-Fork install, deleted it, put the new source up, ran the installer, and fixed the layout. Easy, right?

Then I started running into problems. There have been various updates in this release, including a new format for the flatfiles, the removal of all BBCode, and that sexy new archive look (check it out!).

The new format wasn’t much to deal with. It was just some crap that didn’t have any impact on my files whatsoever. No big deal at all.

The removal of all BBCode did pose a problem, though. I’ve been using BBCode for a very long time, and now that it was gone, a lot of links/images broke. I couldn’t have this, so I decided that I would just use the BBCode stuff I wrote for Evanion. A quick, three second hack to insert a few lines into the file that displays the news, and everything’s good, right?

Wrong. Very wrong. Dead wrong.

AJ-Fork is perhaps the most bloated piece of shit blogging software I have ever had the displeasure of laying my eyes on. I have only done any hacking to it on one occasion, and that was EXTREMELY minor. (Just fixing the weird password storage method.)

I begin searching through the files to see what does what. I began at index, which included some other script to display the news. This includes some other massive script to open and parse the flatfiles. I decided here would be a good place to put the BBCode stuff. I’ll be done in a second, eh?

I began searching through, looking at the comments. Aside from the ‘plugin X hack’ ones, they were few and far between.

After about three minutes, I struck gold. The code that parsed the flatfile! Oh, joy! I tried inserting my bbcode code to what looked like the variable holding the news post. No luck. Again, another variable. No luck. Once more, another variable. No luck.

Wondering what the hell those things were storing, I removed the BBCode code and began reading again. I noticed something - run_filters on a bunch of variables. Perhaps if I added my BBCode code to THAT, I could get it working again. So, I began an epic quest to find ‘function run_filters’ in a file.

After a good twenty minutes of grepping, I was turning up nothing. Not a damned thing. I screamed, and remembered a file I uploaded earlier. It was something to list hooks. I ran the script, and it coughed up everywhere that had a run_filters.

Realizing that the whole filter thing was there for plugins, I added my own run_filter. No luck again, a parse error. Ah! But a good it! It said I was redeclaring a function *IN PLUGINS.PHP*!

I ran for the file, opened it, and found the function. I bashed in my code, and refreshed the homepage. It was now converting things to HTML, but it still defanged them and made them into normal text. How annoying. It also broke the stupid rollover-transparency-omglook menu in the admin panel.

To fix the admin panel thing, I made it news-specific (the hook is nice, when run_filters is called, the first arguement that it is given describes what’s being fed in). For some reason, this fixed everything. The admin panel, and the defanging.

Not knowing why or how the hell I fixed it, I closed everything down, rather pleased with my hack.

So, here’s to AJ-Fork 168 and many more years of blogging. Here’s also to a slow release cycle. I’m in no mood for doing that again.

In other news, Zotnix’s blog has been added to the external links list. This was mainly so I wouldn’t forget to check it. You should give it a read, he’s pretty cool.

Oh, and finally, Wyatt wanted me to go and see the HHG2G movie on Sunday. But I can’t, I just remembered it’s like…Easter and stuff then. Ah well.