Download

Feel free to browse the distribution directory for tar.gz files for "released" versions -- or take a look at the source trees themselves for different versions.

v1 - dd/mmm/2007

Version v1 is just enough to get things going, but undoubtedly has a few bugs and things that need to be cleaned up.

v2 - dd/mmm/2007

Well, v2 seems to work, but then I realized that anyone could edit a page, if they knew the URL to the edit page. I went off on a side track to make a web account system based on cookies. The Cookies requires protecting the cookie value (ie: no ";") so I chose base64. Although it wasn't needed, I also worked a little with encryption. That all lead me to version 3.

v3 - dd/mmm/2007

v3 works, for the most part -- except I didn't finish the registration components (as the webaccount object wasn't able to be used here so I had to redo some of the login code, etc). I also found that the bottom-up design of the objects didn't seem to work out as well as I had hoped. It's just my poor design, since I combined things that shouldn't have been combined (ie: such as command line processing in things such as the webaccount object. The webaccount object also tried to make the entire output which would be the html page, in this case -- and that was bad design). One of the biggest issues was the fact that trying to allow access between databases completely broke the design of tying the database to the htmlpage. This version moves some things around like replaceTags moved up from DataBaseDoc to HtmlPage and finally to Cs3WebApp. The split between Cs3webApp and Cs3web is also not complete. Basically, don't use this version. Lesson: More objects and smaller objects. By smaller, I mean that they do fewer things. With less tying of things into an object, the less that object is restricted.

v4 - 30/DEC/2007

Ok, v4 is a general clean up and reduction of some of the complexity surrounding the html page and database access. Additionally, the web account part now works and there is a separate key for registering accounts, settable either in the code or via a database key. Each site can have its own registration key, although at this time, all the accounts are in a single database that does not allow the same account name for two different sites (for two different people). Also, if you're registered for one site, you can edit any site. There are also a lot of little checks here and there to make sure errors don't creep in like no blank passwords, etc.

v5 - 30/DEC/2007

Current work in progress...

...