The task at hand for me is to create a website that will allow photographers to easily upload photos to a website to sell pictures.
Obviously I chose DotNetNuke as the framework for this site, not only because it makes a great base for any site, but because we also wanted to allow photographers to have their own “site” with their own url and site design. Using DotNetNuke we would have one set of modules in one instillation that will be displayed in many different ways.
The first problem that I had was that the method of uploading a picture one at a time or carefully zipping pictures up and uploading a .zip file was deemed too complicated for many users.
I decided to create a simple windows forms client that would upload the photos using a web service. The web service part was easy and I even created a module that should help anyone who needs to make a web service work with DotNetNuke (the site is at: IWeb).
Another Core member informed me that there was already a free DotNetNuke module that allowed you to upload pictures to a DotNetNuke site. FotoVision was a module that was originally developed by Ralph Aveson of Vertigo Software for the MSDN Smart Client Developer Center. Later it was converted to a DotNetNuke Module by Todd Davis of Seabury Design. It was further developed by Peter Donker of Bring2Mind and Darren Neese of DotNetNuke Rocks. Lastly it was converted to DotNetNuke 4 by Bill Severance.
To obtain the module and all the source code I simply visited Bill’s site and downloaded it. I exchanged a few emails with Bill to see where he was on the project and learned that he was not able to work on it in the immediate future. He and I both agreed that the main issue is that the module used .xml files to store all the data. This is fine for displaying the pictures, but you could not easily interface the module with other modules in your site.
I spent the next 3 weeks converting the module to use a database rather than .xml files. This turned out to be a huge task. The module is still rough around the edges but the changes I need to make to it now are specific to my situation and I am releasing my version now because it is in a “general” state that should be usable to the most people.
I received the module in true open-source fashion and I am returning it to the world wit my additions. Hopefully you will find use for this code and will also contribute your additions so that we all may benefit. This is what Open Source is about.
Another note, this module was developed using the free Visual Web developer Express to allow anyone to easily install and alter the code.
You can download the free module and source code at this link.