﻿(function (a) { a.fn.extend({ dnews: function (b) { var c = a.extend({ controls: true, switchInterval: 6000, feedurl: "", showdetail: true, moretext: "[...]", controlsalwaysvisible: false, entries: 10 }, b); return this.each(function () { var B = "forward"; var k = a(this); var A; var n = 0; var p = 0; var r = "auto"; var u, t, z, j; var q; var h; var C; var g; var v; var f = 0; function w(D) { if (D) { z.css("display", "none"); j.css("display", "") } else { z.css("display", ""); j.css("display", "none") } } if (c.controls) { v = a("<div/>").addClass("control-bar").css("display", "none"); u = a("<div/>").addClass("next"); t = a("<div/>").addClass("prev"); z = a("<div/>").addClass("play"); j = a("<div/>").addClass("pause"); var h = a(".news", k).width() / 2 - v.width() / 2; v.append(a("<div/>").addClass("controls-wrapper").append(t).append(j).append(z).append(u)); w(true); u.click(function () { r = "manual"; w(false); m(); B = "forward"; if (n > p) { var D = p; p = n; n = D } e() }); t.click(function () { r = "manual"; w(false); m(); B = "backward"; if (n < p) { var D = p; p = n; n = D } e() }); z.click(function () { r = "manual"; w(true); i() }); j.click(function () { r = "manual"; w(false); m() }) } var s = 0; var l = new Array(); if (c.feedurl != "") { a(".news", k).html('<img src="loading.gif" alt="loading" style="margin-top:6px;margin-left:6px;"/>'); google.setOnLoadCallback(function d() { var D = new google.feeds.Feed(c.feedurl); D.setNumEntries(c.entries); D.setResultFormat(google.feeds.Feed.XML_FORMAT); D.load(o) }); function o(D) { if (!D.error) { a(".news", k).html(""); var G = a(D.xmlDocument).find("channel"); var H = a(">link", G).text(); var F = G.find("lastBuildDate").text(); var E = G.find("item"); E.each(function (I, K) { s++; var J = a("<div/>").addClass("headline").append(a("<a/>").attr("id", s).html(a(K).find("title").text()).attr("href", a(K).find("link").text())); l.push(a(K).find("description").text()); a(".news", k).append(J) }); y() } else { alert(D.error) } } } else { a(".news a", k).each(function (D, E) { s++; l.push(a(E).attr("title")); a(E).attr("id", s).removeAttr("title") }); y() } function m() { clearInterval(A) } function i() { A = setInterval(e, c.switchInterval) } function y() { v.css("display", ""); k.prepend(a("<div/>").addClass("news-title")); q = a(".news", k).width(); g = a(".headline", k); h = k.find(".news").css("left"); if (h == "auto") { h = a(".news-title").width() + "px" } g.css("left", "-" + q + "px"); C = g.length; a(g[p]).css("left", h); A = setInterval(e, c.switchInterval); if (!c.controlsalwaysvisible) { v.slideUp("fast") } k.mouseenter(function (D) { m(); f = x(D, k); if (!c.controlsalwaysvisible) { v.slideDown("fast") } }); k.mouseleave(function (F) { if (r == "auto") { i() } var D = x(F, k); var E = f[1] > D[1] ? "u" : "d"; if (E == "u") { if (!c.controlsalwaysvisible) { v.slideUp("fast") } } }); v.mouseleave(function () { if (!c.controlsalwaysvisible) { v.slideUp("fast") } }) } function e() { if (B == "forward") { p = (n + 1) % C; a(g[n]).stop().animate({ left: q + "px" }, "slow", function () { a(this).css("left", "-" + q + "px") }); a(g[p]).stop().animate({ left: h }, "slow") } else { p = (n > 0 ? n - 1 : C - 1) % C; a(g[n]).stop().animate({ left: -q + "px" }, "slow"); a(g[p]).css({ left: q + "px" }).stop().animate({ left: h }, "slow") } n = p } function x(F, E) { var D = 0; var G = 0; if (F.offsetX || F.offsetY) { D = F.offsetX; G = F.offsetY } else { if (F.pageX || F.pageY) { D = F.pageX - parseInt(a(E).css("left")); G = F.pageY - parseInt(a(E).css("top")) } else { if (F.clientX || F.clientY) { D = F.clientX + document.body.scrollLeft + document.documentElement.scrollLeft; G = F.clientY + document.body.scrollTop + document.documentElement.scrollTop } } } return [D, G] } }) } }) })(jQuery);
