Database Paging continued

I've updated my previous post with the actual implementation after testing and tweaking. The stored procedure for paging through threads in a forum from newest to oldest is quite different than my original post. The paging through posts in a thread is more like my original idea because it pages from oldest to newest. The forums are coming along nicely now. Once I finish with the MS SQL implementation it will be only a little extra work to get the MySQL version working so I can show it off on this site. This site is using MySQL but on my development machine I switch back and forth between the the 2 data layers as needed.

Started work on the forums module

I started work on the forums module today. Didn't get too much done but stubbed out the basic pieces of the puzzle as I envision them. I'm basing it on the functionality of the forums at http://www.gotmono.com. Its using yabb, (Yet Another Bulletin Board), a very nice implementation in perl.

New Skin

This skin only took about 20 minutes to create. When I have time I'll do something more elaborate. For the moment I'm much more focused on functionality than making it pretty. I envision being able to create tools within the site that will allow creation of skins using the web browser. Other features need to be done first. I'd like to have the photo gallery and forums modules ready before I make a release, particularly the forums because then if people find bugs they can post to the forum instead of sending me an e-mail and I can avoid having to answer the same questions to multiple users.

The IBuySpy Skin

Well the site skinning is essentially complete. From the Admin page you can select from available skins. This is the IBuySpy skin. I plan to make some new skins soon but it tickles me that I was able to make all the changes I made without losing the original look. I really can't think of any limits on the design possibilities with the new skinning. The skmMenu fits right in nicely and has its own skinning that integrates easily. I also created a MetaContent control and setup the abilility to specify default meta content at the site level and over-ride it at the page level if desired. Now its easy to move the menu around and change it from horizontal to vertical within the skin template. I still need to implement the page hierarchy for sub menu items. I also got about 80% of the culture localization support completed. The goal is for no hard coded labels in the site. All labels get their content from a Culture.config file. I'm providing a CultureUSA.config file and hoping that as others convert to their own cultures they will contribute additional Culture.config files that I can provide with the downloads.

Scott Mitchell's skmMenu

I'm making more progress on the site skinning. Today I integrated Scott Mitchell's skmMenu, an open source cross-browser Dynamic HTML menu for ASP.NET. It took me quite a bit of experimentation before I could get it to display the same as IE using Mozilla and Firefox when it was served from Mono. It looked pretty much the same right away in all browsers if served from IIS. I think it is a behavioural difference in mono's implementation of ASP.NET. The same code was rendering a rules="" attribute on the menu table on Mono but not under IIS on Windows. This was eliminating the border between menus when viewed in Mozilla or Firefox but not IE, when served from Mono. This was kind of mysterious because I could not find anywhere in the skmMenu code where it adds a "rules" attribute. I also experimented and Mono doesn't automatically add a "rules" attribute when you add an HtmlTable to the control tree. I never did figure out the cause, but I finally discovered that I could control it by explicitly setting the GridLines property of the menu.