Ok, so I just finished up some work and decided to give you guys another update.
Here are 7 images that show the front page, part of the admin section, the project page and part of the process of adding a release. As promised, I will also explain how you add a release to a project.
To make it easy, we'll start with the first image, which is the front page:
It's just a shot of the front page with the current releases. I currently have it set to display 'at least' 20 releases. It will display every single update from that day, but if it hasn't hit at least 20 it will keep displaying until it reaches 20 or it runs out of records. I decided against showing screenshots on the front page for obvious reasons.
As well, I'm logged in under the admin account there, so you can see a little 'Admin CP' link next to my name. Here is a screenshot from the admin section:
Everything under the 'Manage Sections' part is complete. As promised, everything is dynamic. Everything can easily be added, edited, and eventually deleted. 'Flagged Project' is for when projects want to be deleted. If the user has not submitted any files, they are free to delete their project. As soon as a file has been released though, they must flag it to be deleted. That way the mods and admins can decide whether or not they want to just get rid of a project.
Everything else is pretty self-explanatory. 'Site Shut-down' will let us disable the site incase the need arises. 'Site Locks' will let us lock certain sections, and 'System Alert' will span a red messagebox at the top of the site incase something is happening and we absolutely need the users to know.
The next thing on the list is the project page:
You can see that everything that needs to be displayed is displayed. As well, here is a shot when the project owner views their project page:
Now you can see the differences between the two. One thing I've yet to add is disabling/editing branches, as well as disabling/editing releases. Neither of these causes the file to be erased. That is always left up to the admin.
Finally, I'll show and explain how to add a release. After clicking on 'Add Release', first thing you have to do is select a branch:
If there were more branches there, they'd be listed. After clicking on the branch name, you are sent to the following page:
At this step, you must upload your file. After thinking about how I wanted users to submit files, I decided that I don't like browser uploads. Most browsers don't show any kind of progress bar when uploading a file, so you have no idea if the connection has timed out or how far into the process you are. That's why org and I decided it'd probably be best if we set up an anonymous ftp. You log into the ftp and click on the 'uploads' directory. You cannot view any files in the directory; only upload. If anyone is getting a sense of deja vu, it's because Sourceforge uses this I think it works great, so I decided to implement this. You have to follow a very simple naming convention and adding more filetype support is as easy as updating a variable. Once you have uploaded your file and you have named it correctly, you are shown this screen:
If your project has more than one Rom or Processor in its support list, they'd be displayed here and you'd have the option of selecting those. You are limited to only 1 selection here. After you hit 'next', you are at this screen:
This is where you can tell people what libraries are in your project. If you guys remember, we had spoken about making it so when you download a file, you select which rom you have and it cross-references the list of libraries included in that rom to the list of libraries required by the project. If any libraries are missing from your rom, you are told so you can download those as well. Also, you can see the other fields required for the release as well as the option of not displaying on frontpage/informing subscribers.
That's about all the images I have for you so far. Sorry they are so large. There is much more done, but I felt those are the most important to show right now. Ignore any names of libraries or processors or roms or whatnot. All that was made up and can easily be changed in the admin section.
Anyways, I'm gonna get back to work
Please let me know any comments/complains..