Edit: I have stopped work on this functionality as I was able to integrate BlogEngine and GalleryServerPro

I am providing a "pre-release" version of my photo gallery control for BlogEngine. There were a few things I considered when making this control (and not going with other solutions that exist).

  • No third party assemblies (that means everything written from scratch).
  • Keep business logic and control logic inside one contained .DLL file.
  • The interface with BlogEngine will be through an extension.
  • Follow the BlogEngine method of abstracting data types and resource files.
  • Make the gallery control easy to setup and use.

With these goals in mind, I hope that my assembly + extension will be considered as part of the core of BlogEngine. If I do not accomplish this goal, well then I have a pretty kick arse photo gallery for my personal use.

 

Installation:

  • Place the Jwendl.PhotoGallery.dll file into ~/Bin
  • Place the PhotoGallery.cs file in ~/App_Code/Extensions
  • Add the handler code to web.config : <add verb="*" path="PhotoHandler.axd" type="Jwendl.PhotoGallery.PhotoHandler, Jwendl.PhotoGallery" validate="false"/>
  • Add the handler code to web.config : <add verb="*" path="/admin/ImportHandler.axd" type="Jwendl.PhotoGallery.ImportHandler, Jwendl.PhotoGallery" validate="false"/>
  • Place PhotoDataSet.xsd inside ~/App_Data/gallery.
  • Place photos inside ~/App_Data/gallery (and make sure gallery is writable)
  • Navigate to http://<yoursite>/admin/ImportHandler.axd
  • Wait until it redirects you to your main home page.
  • Create an empty page with a title and put [ gallery ] (no spaces) in the body.

Features:

  • Role based security (this is 85% complete)
  • Easy to install and setup.
  • Completely separate from BlogEngine (delete the .axd references and the .dll file and you are back to normal)
  • DataSet driven to allow for an abstraction and greater control of the data.

Items Missing (only for now):

  • Only finds files that end in .jpg (yes I know this needs to get fixed)
  • Uses XmlDataSource right now, and at some point needs to use a Provider model so SqlData, Xml, and other sources can be used.
  • Need to make a slide show of some sort, probably in Ajax, Silverlight or Flash.
  • It is missing an upload control, right now it requires photos to be in the ~/App_Data/gallery directory (even though it does not matter how convoluted of a directory structure you have, it will find your photos Laughing).
  • Reliance on source code for a QueryString class. Actually a reliance on query strings in general. I do not want post back either, so I doubt I will be able to fix this.
  • Photo MetaData and EXIF data.
  • Missing the comment system (although the dataset is ready to go with it, just got to build the code logic).
  • Assembly built for .NET 2.0 32 bit right now, I will release source later so people can make their own versions.
  • Make it so you don't have to modify the web.config file (this will probably not happen).

So if you are daring feel free to try it out, you can see mine at http://www.jwendl.net/page/Photo-Gallery.aspx. Please comment here on this post with your feedback and or issues. Also if you want the source code used to create the assembly just ask using my contact form.

Jwendl.PhotoGallery-Alpha-0.1.zip (23.48 kb)

Edit: I forgot to mention I had to hard code the next, previous, last and first images. Place them in your /images/ directory as the following (I got mine from FamFamFam):

this.firstImageURL = "/images/resultset_first.png";
this.prevImageURL = "/images/resultset_previous.png";
this.nextImageURL = "/images/resultset_next.png";
this.lastImageURL = "/images/resultset_last.png";

I totally apologize for that, it will definitly get fixed. I was planning on putting the image settings inside the web.config file. These settings would be similar to how Elmah does it.

Comments Comments (2) Permalink Permalink     Rss feed for comments Post Comment Feed

E-mail DotNetKicks Digg StumbleUpon Slashdot Twitter Facebook Del.icio.us

Comments (2) -

Hi, I am attempting to try out your gallery, and noticed that you reference the file PhotoGallery.cs which isn't included in the zip you provided.
Germany 4/30/2008 4:57:51 AM #
Yes you are right, I seemed to have forgotten that file. I have added it into the zip now.
United States 4/30/2008 3:25:27 PM #

Add comment




  Country flag
biuquote
  • Comment
  • Preview
Loading


About Author

Justin Wendlandt
Justin Wendlandt
I work for Wells Fargo, play a lot of video games, and program in many languages. [ more ] E-mail me Send mail

View Justin Wendlandt's profile on LinkedIn View Justin Wendlandt's Facebook Profile View Justin Wendlandt's Twitter Profile View Justin Wendlandt's Zune Profile View Justin Wendlandt's Xbox Live Profile

Calendar

<<  September 2010  >>
MoTuWeThFrSaSu
303112345
6789101112
13141516171819
20212223242526
27282930123
45678910

View posts in large calendar

Recent Posts

Recent Comments

Comment RSS

Most comments

ericchapman ericchapman
1 comments
gb United Kingdom
Clone High Streaming Clone High Streaming
1 comments
us United States
iphone mad iphone mad
1 comments
gb United Kingdom

Poll

This poll is closed.
What do you use to connect to the internet?
A DLink Exterme Gaming router
 
0.0%
A Linksys / Cisco home router
 
0.0%
None of the above
 
0.0%
A Netgear home router
 
0.0%
I built my own box to do routing
 
100.0%

Total Votes: 1

Stock Quotes

WFC 25.10 +0.44 (+1.78%)
GOOG 463.18 +2.845 (+0.62%)
BBY 33.46 +0.80 (+2.45%)
CML 17.80 +2.79 (+18.59%)
COST 58.59 +0.80 (+1.38%)
MSFT 23.94 +0.04 (+0.17%)

Digsby

Xbox Gamer Card

Jwendl Gamer Score: 11570
Jwendl
Rock Band 2 (310) TMNT 1989 Arcade (35) Assassin's Creed II (340) Marvel Ult. Alliance 2 (390) FINAL FANTASY XIII (245) Borderlands (1340) Kane and Lynch:DeadMen (40) Madden NFL 10 (0) Family Game Night (0) STREET FIGHTER IV (180) South Park (180) Gears of War 2 (400) TEKKEN 6 (0) Culdcept SAGA (95) CSI: Deadly Intent (0) CSI-Hard Evidence (0)
Offline
8/30/2010 1:31:44 AM
Last seen 08/30/10 playing Xbox.com

Xbox Avatar

xbox Avatar

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2010

Creative Commons License