The Triumphant Return of SQLite!

Several versions ago the SQLite data layer stopped working so I stopped making releases with this data layer. When I first implemented WebParts in the MyPage feature I never could get the SQLite version to work correctly because I was having trouble getting the blob data in and out of the db due to some issue in the Mono.Data.SqlitClient library which we were using for data access with SQLite.

Not long ago the Mono team revamped a new library, Mono.Data.SQLite, to support 2.0 .NET data access with SQLite and the old library is no longer recommended for use. Yesterday I was able to repair the mojoPortal SQLite data layer by switching to the newer library and doing just a little re-working of code in a few places. The best part is that blobs work well using the new library so I was even able to get WebParts working with SQLite.

The fix is in svn trunk now for anyone interested and next release we will include a package for SQLite. The interesting thing about SQLite is that it only requires a tiny dll and file acess to work. So for instance it should be possible for me to distribute a db already populated with default data with no need for any database setup. Pretty cool! Of course for a real web site I would still recommend to use one of the more robust platforms to get best performance.

Getting to Know Google Gears

Just made a post in my personal blog that is probably of interest to mojoPortal fans.

It has a screen shot of the SiteOffice UI showing a little google gears client database admin tool I threw together.

UPDATE 2007-06-24:

I've updated this site with the latest code, so anyone logged in can try the google gears query tool. After you login, click the Site Office link at the top then go to My Stuff > SQL

You can create tables, insert, update delete, select etc. Pretty cool huh?

Site Office UI

As I mentioned in a previous post, I'm back to focusing my efforts on a set of features that will fall under an umbrella concept called Site Office.

Those of you who are registered on this site can have a look at the UI protype by clicking the SiteOffice link at the top of the page (after logging in). I think the UI is looking pretty cool. Using dojo and Rico, I've got an Outlook like accordian navigation section as well as window resizing by dragging the divider. Have a look and let me know what you think.

Some of the features I plan under this umbrella are:

External email access

you will be able to check any pop3 mail accounts including Yahoo and Google. It could also work with your company email system if it exposes a pop3 entry point.

One of the things I'm thinking about with this external email feature is that I don't wan't to store any messages on the web server database since they are already stored in the mail server and since this would be huge amounts of data. But I do want to be able to keep messages available to the user without having to go get them again for every request. So this seems like an excellent opportunity to use google gears. The messages can be retained in a client side SQLite database. It should also even be possible for users to read messages that have already been retrieved even when offline.

Contacts

which I would like to store on the server and also using google gears to make them available offline to support travelling workers.

Site Mail

which will look and feel like email but just be for communication with users in the site.

More...

Personal File Storage
Email Newsletters and Campaigns
Project Management/Issue Tracking/Time Tracking

Most of these features are Intranet type features that I envision only making available to certain roles.

SiteOffice UI work in svn

Just  a quick post that will only be of interest to those building and running mojoPortal from svn.

I've been working on the UI for the Site Office feature. I started on this feature almost a year ago and got side tracked but am picking up where I left off.

I had done a UI prototype before using jsObjects, but wasn't entirely satisfied with it. It would not work right if the doctype was xhtml.

I've now started reworking a protoype that uses dojo for the resizable panels and Rico for the accordian panels. So the result is kind of like outlook.

If you're working with the VS Solution from svn/trunk, after you update and rebuild, set these to true in either Web.config or user.config:

<add key="UseSiteMailFeature" value="true" />
<add key="UseOfficeFeature" value="true" />
<add key="UseExternalMailFeature" value="true" />

Now when you login you'll see the Site Office link in the top nav. Click that to see the new UI protoype. To see the old one using jsObjects change the url from Office.aspx to Default.aspx

Let me know what you think.

Joe

ps: Sorry this is not in the MonoDevelop Solution yet, once it solidifies a little more I will add it in there.