Got back from a quick vacation to Colorado to visit the inlaws for Thanksgiving. Took a ton of photos and videos. You can check em out here.
In the mean time, here are a few photos that I took of a ghost town called St. Elmo, Colorado.
Larry and I have been hard at work updating the whole DC Pages network both in appearance and functionality. Some long-broken features will soon be fixed, and new features added. For example, News Stories will be re-added along with the ability for registered users to comment.
The whole site is going to be a lot more "AJAXY" too. Hence, the reason why I am posting this message to my blog. I'm testing out the new activity feed that appears on the front of DC Pages and the DC Message Boards.
Just finished creating a series of classes that creates a facebook-like recent activity feed for the entire DC Pages network. You might have noticed it on the front page of this website, or on the front page of dcpages.com
This post is also a test. A notification of this new post should appear in the event feed.
On another note, for some reason hitting the ENTER or RETURN key on your keyboard does not make a new line in the blog text editor. You have to hold down SHIFT+RETURN to get a new line. Strange. Also, the "OTHER STYLES" drop-down is littered with weird custom styles. Some of which are not necessary anymore since the last update to the software. There is a new media button for inserting videos.
Will have to work on that stuff too.
First off, I visited dcmessageboards.com only to be greeted by a PHP error in a scrip that I wrote. The bug was located the script that displays that facebook-like event feed on dcmessageboards.com and dcpages.com. I didn't change the script, so something must have changed on the server. Anyhow, I figured out a work around and learned some more about how IP.Board works.
For the most part, any PHP code not located in a class or function gets parsed before the page is even displayed. That's why when things go wrong, we get those "headers already sent" messages at the top of the page. PHP already displayed error messages before the IP.Board could set cookies or set headers.
Want your code to run only when needed. Put it in a function, or better yet, a class and then make it a IP.Board hook.
Also note that the <php> </php> template tags to execute PHP code. But you can't use them to echo or print things in the template. They don't work that way. They seem to run before the rest of the page is even loaded. It goes back to what I said about any code not located in a class or function. Only in this case, the code will always print to the page before the template is even loaded... even if it is in a class or function. The only way to get code to display "in place" is to use a template hook.
I'm kinda bummed that IPS still hasn't released the documentation for this project. They have bits of it up here and there, but very little on the "behind the scenes" class methods and properties available to us--otherwise known as an API. The say it will happen soon. In the mean time, seemingly simple updates will continue to take hours instead of minutes. Most of that time is spent trying to deduce just what variables and objects are available for my use in the template. The other time is spent trying to find the template in the first place.
I was asked to make it more obvious when a blog requires comments to be approved. People were filling out comments and they were not instantaneously appearing under the blog. It gave people the impression that their comment went straight into the trash or fell victim to a bug of some sort. In reality, their comments were just waiting to be approved by the blog author.
So now, when a blog's comment approval level is set to 'all' (meaning all comments must be approved) or 'guests' (meaning that only guest comments need to be approved), the user sees a note right above the text editor.