﻿(function(a){a.fn.ticker=function(e){var b=a.extend({},a.fn.ticker.defaults,e),d="#"+a(this).attr("id"),c=a(this).attr("tagName");return this.each(function(){var e={position:0,time:0,distance:0,newsArr:{},play:true,paused:false,contentLoaded:false};if(c!="UL"&&b.htmlFeed===true){f("Cannot use <"+c.toLowerCase()+"> type of element for this plugin - must of type <ul>");return false}m();function g(c){var a=0,b;for(b in c)if(c.hasOwnProperty(b))a++;return a}function f(a){if(b.debugMode)if(window.console&&window.console.log)window.console.log(a);else alert(a)}function m(){a(b.dom.wrapperID).append('<div id="'+b.dom.tickerID.replace("#","")+'"><div id="'+b.dom.titleID.replace("#","")+'"><span style="display: none;"><!-- --></span></div><p id="'+b.dom.contentID.replace("#","")+'"></p><div id="'+b.dom.revealID.replace("#","")+'"><span style="display: none;"><!-- --></span></div></div>');a(b.dom.wrapperID).removeClass("no-js").addClass("has-js");a(b.dom.tickerElem+","+b.dom.titleElem+","+b.dom.contentID).hide();if(b.controls){a(b.dom.controlsID).live("click mouseover mousedown mouseout mouseup",function(d){var c=d.target.id;if(d.type=="click")switch(c){case b.dom.prevID.replace("#",""):e.paused=true;a(b.dom.playPauseID).addClass("paused");i(c);break;case b.dom.nextID.replace("#",""):e.paused=true;a(b.dom.playPauseID).addClass("paused");i(c);break;case b.dom.playPauseID.replace("#",""):if(e.play==true){e.paused=true;a(b.dom.playPauseID).addClass("paused");h()}else{e.paused=false;a(b.dom.playPauseID).removeClass("paused");j()}}else if(d.type=="mouseover"&&a("#"+c).hasClass("controls"))a("#"+c).addClass("over");else if(d.type=="mousedown"&&a("#"+c).hasClass("controls"))a("#"+c).addClass("down");else if(d.type=="mouseup"&&a("#"+c).hasClass("controls"))a("#"+c).removeClass("down");else if(d.type=="mouseout"&&a("#"+c).hasClass("controls"))a("#"+c).removeClass("over")});a(b.dom.wrapperID).append('<ul id="'+b.dom.controlsID.replace("#","")+'"><li id="'+b.dom.playPauseID.replace("#","")+'" class="controls"></li><li id="'+b.dom.prevID.replace("#","")+'" class="controls"></li><li id="'+b.dom.nextID.replace("#","")+'" class="controls"></li></ul>')}a(b.dom.contentID).mouseover(function(){if(e.paused==false)h()}).mouseout(function(){if(e.paused==false)j()});k()}function k(){if(e.contentLoaded==false){if(b.ajaxFeed)f("Code Me!");else if(b.htmlFeed)if(a(d+" LI").length>0)a(d+" LI").each(function(c){e.newsArr["item-"+c]={type:b.dom.titleText,content:a(this).html()}});else{f("Couldn't find any content for the ticker to use!");return false}else{f("Couldn't find any content for the ticker to use!");return false}e.contentLoaded=true}a(b.dom.titleElem).html(e.newsArr["item-"+e.position].type);a(b.dom.contentID).html(e.newsArr["item-"+e.position].content);if(e.position==g(e.newsArr)-1)e.position=0;else e.position++;distance=a(b.dom.contentID).width();time=distance/b.speed;a(b.dom.wrapperID).find(b.dom.titleID).fadeIn().end().find(b.dom.titleElem).fadeIn("slow",n)}function n(){if(e.play){var c=a(b.dom.titleElem).width()+20;a(b.dom.revealID).css("left",c+"px");a(b.dom.revealElem).show(0,function(){a(b.dom.contentID).css("left",c+"px").show();a(b.dom.revealID).css("margin-left","0px").delay(20).animate({marginLeft:distance+"px"},time,"linear",l)})}else return false}function l(){if(e.play){a(b.dom.contentID).delay(b.pauseOnItems).fadeOut("slow");a(b.dom.revealID).hide(0,function(){a(b.dom.tickerID).delay(b.pauseOnItems).fadeOut(b.fadeOutSpeed,function(){a(b.dom.wrapperID).find(b.dom.titleElem+","+b.dom.revealElem+","+b.dom.contentID).hide().end().find(b.dom.tickerID+","+b.dom.revealID+","+b.dom.titleID).show().end().find(b.dom.tickerID+","+b.dom.revealID+","+b.dom.titleID).removeAttr("style");k()})})}else a(b.dom.revealElem).hide()}function h(){e.play=false;a(b.dom.tickerID+","+b.dom.revealID+","+b.dom.titleID+","+b.dom.titleElem+","+b.dom.revealElem+","+b.dom.contentID).stop(true,true);a(b.dom.revealID+","+b.dom.revealElem).hide();a(b.dom.wrapperID).find(b.dom.titleID+","+b.dom.titleElem).show().end().find(b.dom.contentID).show()}function j(){e.play=true;e.paused=false;l()}function i(c){h();switch(c){case "prev":if(e.position==0)e.position=g(e.newsArr)-2;else if(e.position==1)e.position=g(e.newsArr)-1;else e.position=e.position-2;a(b.dom.titleElem).html(e.newsArr["item-"+e.position].type);a(b.dom.contentID).html(e.newsArr["item-"+e.position].content);break;case "next":a(b.dom.titleElem).html(e.newsArr["item-"+e.position].type);a(b.dom.contentID).html(e.newsArr["item-"+e.position].content)}if(e.position==g(e.newsArr)-1)e.position=0;else e.position++}})};a.fn.ticker.defaults={speed:.15,ajaxFeed:false,htmlFeed:true,debugMode:false,controls:false,dom:{contentID:"#ticker-content",titleID:"#ticker-title",titleElem:"#ticker-title SPAN",titleText:"Top News:",tickerID:"#ticker",wrapperID:"#ticker-wrapper",revealID:"#ticker-swipe",revealElem:"#ticker-swipe SPAN",controlsID:"#ticker-controls",prevID:"#prev",nextID:"#next",playPauseID:"#play-pause"},pauseOnItems:2500,fadeInSpeed:500,fadeOutSpeed:500}})(jQuery)
