// Linkify: A jQuery plugin that takes a section and turns it into a link. Version 1.00, 2008 December, 21 by Dave Smith, www.dave-smith.info.
(function($){$.fn.linkify=function(options){var defaults={linkify:true,linkify_class:"linkify",focus:true,focus_class:"focus",focus_sub:true,focus_sub_class:"focus-sub",visited:true,visited_class:"visited",link_index:0};var settings=$.extend({},defaults,options);if(typeof options=="number"){settings.link_index=options}if(settings.focus&&settings.focus_class==""){settings.focus_class=defaults.focus_class}if(settings.focus_sub&&settings.focus_sub_class==""){settings.focus_sub_class=defaults.focus_sub_class}if(settings.visited&&settings.visited_class==""){settings.visited_class=defaults.visited_class}settings.check_visited="linkify-check-visited";settings.store_name="linkify_state";if($("head style#linkify-style-element").length==0){$("head").append('<style id="linkify-style-element" type="text/css">a.'+settings.check_visited+":visited {overflow:auto;color:#f00;}</style>")}return this.each(function(){var section=this,uri="",title="",section_classes=[];if(settings.linkify){if((section_classes=$(this).attr("class").replace(/^\s+|\s+$/g,"").replace(/\s+/g," "))){section_classes=section_classes.split(" ");for(var i=section_classes.length;--i>-1;){if(section_classes[i]!=settings.linkify_class){section_classes[i]=section_classes[i]+"-"+settings.linkify_class}}}else{section_classes=[]}}section_classes[section_classes.length]=settings.linkify_class;for(var i=section_classes.length;--i>-1;){$(this).addClass(section_classes[i])}$("a",this).eq(settings.link_index).each(function(){if((title=$.trim($(this).attr("title")))){$(section).attr("title",title)}if(settings.visited){$(this).addClass(settings.check_visited);if($(this).css("overflow")=="auto"){for(var i=section_classes.length;--i>-1;){$(section).addClass(section_classes[i]+"-"+settings.visited_class)}}$(this).removeClass(settings.check_visited)}uri=$(this).attr("href")});if(settings.focus){function mouseoverFocus(){$(section).data(settings.store_name,$(section).data(settings.store_name)+1);for(var i=section_classes.length;--i>-1;){$(section).addClass(section_classes[i]+"-"+settings.focus_class);if(settings.visited&&$(section).hasClass(section_classes[i]+"-"+settings.visited_class)){$(section).addClass(section_classes[i]+"-"+settings.visited_class+"-"+settings.focus_class)}}window.status=uri}function mouseoutBlur(){$(section).data(settings.store_name,$(section).data(settings.store_name)-1);if($(section).data(settings.store_name)==0){for(var i=section_classes.length;--i>-1;){$(section).removeClass(section_classes[i]+"-"+settings.focus_class);$(section).removeClass(section_classes[i]+"-"+settings.visited_class+"-"+settings.focus_class)}window.status=""}}$(this).data(settings.store_name,0).mouseover(mouseoverFocus).mouseout(mouseoutBlur);$("a",this).filter(function(){return $(this).attr("href")==uri}).focus(mouseoverFocus).blur(mouseoutBlur)}if(settings.focus_sub){function subMouseoverFocus(){$(this).data(settings.store_name,$(this).data(settings.store_name)+1);for(var i=section_classes.length;--i>-1;){$(section).addClass(section_classes[i]+"-"+settings.focus_sub_class)}if(title){$(section).attr("title","")}}function subMouseoutBlur(){$(this).data(settings.store_name,$(this).data(settings.store_name)-1);if($(this).data(settings.store_name)==0){for(var i=section_classes.length;--i>-1;){$(section).removeClass(section_classes[i]+"-"+settings.focus_sub_class)}if(title){$(section).attr("title",title)}}}$("a",this).filter(function(){return $(this).attr("href")!=uri}).data(settings.store_name,0).mouseover(subMouseoverFocus).focus(subMouseoverFocus).mouseout(subMouseoutBlur).blur(subMouseoutBlur)}$(this).click(function(){var check=false;if(window.getSelection){if(window.getSelection()!=""){check=true}}else{if(document.selection.createRange().text!=""){check=true}}if(!check){window.location=uri}})})}})(jQuery);

