Posts in Category: Development

Major Skinning changes landing in svn today

Update: I've commited the changes to svn and still testing and tweaking but as you can see I've updated this site with one of Jasmin's new skins.

I'll be committing major changes to svn today that affect the skinning system of mojoportal.  This will require a little re-work for those of you who already have your own custom skins. I have already done this re-work for all the included skins so if you are using one of those you don't have to do anything.

Jasmin Savard contributed a complete re-organization of the stylesheet classes that is much better than what we had before and allows for much more intricate styling, he also contributed 2 very nice skins that show what is possible with this new style organization.

I have changed the way skins are stored in the file system to make it easier to work with skins and create new ones. Now all skins will have their own folder and the name of the folder will be the skin name you see in the SiteSettings dropdown for skins. Inside this folder will be the skin file which must be named layout.ascx and the stylesheet which must be named style.css. Any supporting images can also be put in this folder.

To convert your existing custom skin just create a folder as mentioned above and put your files in it with the appropriate names. You will also need to re-visit the stylesheet and compare the classes in the new built in skins with the ones in your stylesheet and update your stylesheet with the new classes.

I will hopefully deploy the new model to this site later today after some additional testing and after I commit these changes to svn.

On another note, those of you using the latest release of mojoPortal on Windows should be aware of a bug in NeatUpload that was found to corrupt some file uploads. This does not affect users who are running on mono, only on Windows. The bug has been fixed in NeatUpload and will be included in the next release coming soon. In the meantime you can either comment out the upload module in your Web.config file or go get the updated NeatUpload code, compile and replace the Brettle.Web.NeatUpload.dll file in your bin folder beneath the web site root.

FCKeditor 2.0 Final Release

I just upgraded the source code in svn to use the new final release of FCKeditor. Those of you using the mojoPortal source code from svn can get it now. After I've had a chance to do some more testing I'll make a new release. I've upgraded this site to use it as well so I can test. So far so good.

I'm having a few issues with the new FCKeditor and trying to work through them. Its not allowing me to browse the server or upload files on mono. It works in IIS, I think there is a case sensitivty issue somewhere but haven't found it yet.

Also the css for the editor is displaying funky but appears ok when it renders outside the editor.

Using the VS.NET Web Page Designer with mojoPortal

For a long time my use of MasterPages has prevented the use of the VS.NET designer in setting up page layout.  Its never really bothered me because I'm an old school html guy and really never use the designer anyway so I didn't look into it too hard.  Since then several people have asked and expressed their wish for it to work in the VS.NET designer.  Well big thanks go out to Jan Hussaarts for figuring out why it didn't work and how to easily fix it.

It wasn't a problem with MasterPages itself, it was code I added to make it get the skin setting from the SiteSettings object stored in the HttpContext. The problem was that at design time there is no HttpContext so all it needed was a check to see if HttpContext is null before using it and now it works in the designer!

Its commited to svn for those of you working with the VS.NET Solution.

Release 20050620

I just made a new release that includes the cool new SmartDropdown I mentioned in my previous posts. I don't normally make a new release only 2 days after the previous release but this feature did not require any changes to the structure of the database so its an easy upgrade from 20050618. As always be sure and back up both your web site and your db if you are using the site. Update all the web files. If upgrading from previous versions run the appropriate upgrade scripts first and if using MS SQL or PostgreSQL run the stored procedure script again to update all the procedures.  Of course if you are fairly new to mojoPortal a clean install of the latest version is the easy way to go.

I also wanted to go ahead and roll out this feature because the next things I'm going to work on are fairly significant features and I didn't want to delay the current feature too long.

Next on my list are Site Search which I'm going to try and implement with Lucene.NET and logging which I plan to implement with Log4Net

Woa! I just went to the Lucene.NET site to get the link for this post and it says they have stopped open source development. Looks like they've gone commercial. Wonder if I can use the version of Lucene.NET I already have in mojoPortal without getting into any trouble? I hadn't been to the site in a while, looks like they made the decision last September.

Any license gurus out there? If they previously released it under Apache License, Version 2.0 can I continue to use that version in mojoPortal or can they retroactively change the license? I could use some advice before I invest my time trying to get it working.

Update: Thanks Michel, I was confused, it is DotLucene that I planned to use all along and it is still open source. I went to the the Lucene.NET page by accident and got confused.

New Feature implemented using an Ajax technique

I just commited the new feature to svn that allows you to give a single user edit permission on any module without creating a special role. If you need to give more than 1 user permission on a module, you should use a role. The new feature utilizes a SmartDropDown control that I implemented using Sarissa for the Ajax magic.  You can start typing a user name or email into the dropdown and the dropdown will suggest matching users from the database. You can either click or arrow down to select the user.

The feature is particularly useful if you want to give a user a blog in your site without creating a new role just for that user. It does work with any module though, not just blogs.

I will probably make another release with this feature in a day or so.

If you are using MS SQL or PostgreSQL, you will need to run the stored procedure script.