Overview |
---|
Name: | Manga Reader | Authors: | Ben Vanik (noxa) | Started: | 2003-10-29 | Finished: | 2003-11-07 | Status: | Completed | Technologies: | .NET / ASP.NET / C# / User Interface | Requirements: | .NET Framework 1.1, Visual Studio.NET 2003 | Release policy: | Public - Source available | Additional help: | N/A | Category: | Information management | Synopsis: | Manga viewer that pulls some info from an XML file and then renders a pretty page. The user can then view any volumes/chapters made available in a slideshow-like interface with dynamic resizing/compression and security features. |
Screenshots |
---|
| Listing | 2003-11-07 | Basic listing of manga titles - starred ones are my favorite :)
| | Title view | 2003-11-07 | This shows the title viewer - it has the information about the title followed by the volumes and chapters. Clicking '[view]' takes the user to the reader (see next shot).
XSLT is used to transform a source title XML file, and ASP.NET does it's magic by converting it to HTML to send to the client - this way the page will always look the same, and work on browsers that don't support XSLT (plus the server can keep the XML to itself).
Manga fansubbers websites would be a lot better if they did something like this! It's hard as hell to find good information!
| | Reader | 2003-11-07 | This is the actual reader view - you can browse through the chapters by using the top listing, then navigate them with the buttons at the bottom (or clicking the image). Scaling can be done on the client size (images sent in full quality/size), or by the server (compression before sending out).
All images are also protected (no direct linking, etc), and images are compressed based on user account privileges.
|
Revision history |
---|
Date | Version | Type | Comments | 2003-11-07 | 0.001.0000 | Initial release | First public release. See details below. |
Details |
---|
Date: | 2003-11-07 | Author: | Ben Vanik (noxa) | Written in C# and making use of XML/XSLT on the server side and JavaScript on the client side, this thing runs pretty fast and is designed to be secure. I moved from client side XSLT transformations to server side (it spits it to the client as HTML) for compatibilities sake, as well as having it allow me to do security a bit better (verify session/etc before handing out data).
"Security in a picture viewer?" you ask? Well, the goal I had was to lock it to friends/trusted people, just because of the large amount of bandwidth manga can consume, not to mention the number of whores out there who like to spider sites like this. Although I never wrote the new user/user storage stuff, I did have a nice security model in place with things like selective permissions, operation-level verification, and even maturity verification (e.g., my little brother wouldn't be allowed to read the more questionable titles). As it stands all users are authenticated as the 'anonymous' template with guest access (never any write operations, mature titles, administrative tools like access to the XML/system functions, etc), but anyone from the local machine will get the 'administrator' template with full privileges. If I ever get some ASP.NET-friendly web space, I will finish it up (about 2 hours of work at most). Note that the end user has no direct access to anything, pictures included. This may add some overhead, but is worth it I think (no direct linking to images that way, etc).
The system is pretty strict about how things are named right now. Instead of allowing filenames to be variable and defined in the title XML, I opted for a naming convention that would be assumed. I'm all about the renaming, so it's good for me because I do it anyway. It wouldn't be hard however to check the title XML for where it specifies volume page info and pull an attribute or two. | Date: | 2003-11-07 | Author: | Ben Vanik (noxa) | A sample of what the volume information view looks like is available here. It's a little different than the one that is in the final release, but the XML data remains almost unchanged. If someone wanted they could just use the XSLT provided to render their own data locally. Note that this only seems to look right in IE 6.0, Mozilla renders the tables funny and doesn't like my CSS. | Date: | 2004-02-29 | Author: | Ben Vanik (noxa) | I'm putting up the source with great hesitation, as I am unsure if it will work. I just tried to get it going again and it seems to have some trouble, although it may just be because I don't have IIS configured right. I haven't had time (and don't feel like finding it) to clean up the source, so it's in its raw form. Enjoy! |
|