
(function($){$.fn.columnNavigation=function(configuration)
{if($(this).get(0).tagName!="UL"&&$(this).get(0).tagName!="OL")
{alert("FATAL ERROR: columnNavigation requires an UL or OL element\nYou supplied a : "+$(this).get(0).tagName);return false;}
if($(this).get(0).tagName=="UL")
{var selectorName="ul";}
else if($(this).get(0).tagName=="OL")
{var selectorName="ol";}
$(this).wrap(document.createElement("div"));var wrapper=$(this).parent();configuration=$.extend({containerPosition:"relative",containerTop:"",containerLeft:"",containerPadding:"0",containerMargin:"0",containerWidth:"400px",containerHeight:"250px",containerBackgroundColor:"",containerBackgroundImage:"",containerBackgroundRepeat:"",containerBackgroundPosition:"",containerBorder:"1px solid rgb(178,178,178)",columnWidth:250,columnFontFamily:"'Helvetica Neue', ''HelveticaNeue', Helvetica, sans-serif",columnFontSize:"90%",columnSeperatorStyle:"1px solid rgb(220,220,220)",columnDeselectFontWeight:"normal",columnDeselectColor:"rgb(50,50,50)",columnDeselectBackgroundColor:"",columnDeselectBackgroundImage:"",columnDeselectBackgroundRepeat:"",columnDeselectBackgroundPosition:"",columnSelectFontWeight:"normal",columnSelectColor:"rgb(255,255,255)",columnSelectBackgroundColor:"rgb(27,115,213)",columnSelectBackgroundImage:"",columnSelectBackgroundRepeat:"",columnSelectBackgroundPosition:"",columnItemPadding:"3px 3px 5px 3px",columnScrollVelocity:200,callBackFunction:null},configuration);if(configuration.callBackFunction!=null&&jQuery.isFunction(configuration.callBackFunction)==false)
{alert('FATAL ERROR: columnNavigation.callBackFunction() is not a function!');return false;}
$(wrapper).css({position:configuration.containerPosition,top:configuration.containerTop,left:configuration.containerLeft,padding:configuration.containerPadding,margin:configuration.containerMargin,width:configuration.containerWidth,height:configuration.containerHeight,backgroundColor:configuration.containerBackgroundColor,backgroundImage:configuration.containerBackgroundImage,backgroundPosition:configuration.containerBackgroundPosition,backgroundRepeat:configuration.containerBackgroundRepeat,border:configuration.containerBorder,overflowX:"auto",overflowY:"hidden"});var liDeselect={backgroundColor:configuration.columnDeselectBackgroundColor,backgroundImage:configuration.columnDeselectBackgroundImage,backgroundRepeat:configuration.columnDeselectBackgroundRepeat,backgroundPosition:configuration.columnDeselectBackgroundPosition};var liSelect={backgroundColor:configuration.columnSelectBackgroundColor,backgroundImage:configuration.columnSelectBackgroundImage,backgroundRepeat:configuration.columnSelectBackgroundRepeat,backgroundPosition:configuration.columnSelectBackgroundPosition};var aDeselect={color:configuration.columnDeselectColor,fontFamily:configuration.columnFontFamily,fontSize:configuration.columnFontSize,textDecoration:"none",fontWeight:"normal",outline:"none",width:"100%",display:"block"};var aSelect={color:configuration.columnSelectColor,textDecoration:"none"};var containerPosition=$(wrapper).find("ul:first").offset();var containerSize=$(wrapper).width();var columnWidth=configuration.columnWidth+"px";var myself=$(wrapper);$(wrapper).find(selectorName+":first").find("ul").css({left:columnWidth,top:"0px",position:"absolute"}).hide();$(wrapper).find(selectorName).css({position:"absolute",width:columnWidth,height:"100%",borderRight:configuration.columnSeperatorStyle,padding:"0",margin:"0"});$(wrapper).find(selectorName).wrapInner(document.createElement("div"));$(wrapper).find(selectorName+" div").css({height:"100%",overflowX:"hidden",overflowY:"auto"});$(wrapper).find(selectorName+" li").css({listStyle:"none",padding:configuration.columnItemPadding,backgroundColor:configuration.columnDeselectBackgroundColor,backgroundImage:configuration.columnDeselectBackgroundImage,backgroundRepeat:configuration.columnDeselectBackgroundRepeat,backgroundPosition:configuration.columnDeselectBackgroundPosition});$(wrapper).find(selectorName+" a").css(aDeselect);$(wrapper).find(selectorName+" a").click(function(){var licoords=$(this).parent().offset();$(this).parent().siblings().find(selectorName).hide();$(this).parent().siblings().css(liDeselect);$(this).parent().siblings().find("li").css(liDeselect);$(this).parent().siblings().find("a").css(aDeselect);$(this).parent().find(selectorName+":first").show();$(this).parent().css(liSelect);$(this).css(aSelect);if((licoords.left-containerPosition.left+((configuration.columnWidth*2)-1)>containerSize))
{var difference='+='+(((licoords.left-containerPosition.left+((configuration.columnWidth*2)-1)))-containerSize);scrollToLocale(difference);}
return false;});$(wrapper).find(selectorName+" li a").dblclick(function(){if(configuration.callBackFunction==null)
{window.location=$(this).attr("href");}
else
{var linkObject=$(this);configuration.callBackFunction(linkObject);}});function scrollToLocale(difference)
{myself.scrollTo(difference,configuration.columnScrollVelocity,{axis:'x'});}}})
(jQuery);
