X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=jquery.openx.js;h=3f3669f0a35ec125d6fa41bf42a9d39b99c8d4cb;hb=000ac4f4f9152d9ce789246097279cbd4d5c18b4;hp=3da06071da8ce89cc5474e80114cf634128abcb3;hpb=6023a2e4fce5ba44907e86077e952b2eec9f48f4;p=openx diff --git a/jquery.openx.js b/jquery.openx.js index 3da0607..3f3669f 100644 --- a/jquery.openx.js +++ b/jquery.openx.js @@ -30,7 +30,6 @@ count = 0, slots = {}, queue = [], - ads = [], output = []; @@ -59,6 +58,13 @@ * (only needed, when it is not the default-value 443). * * + * Seldom needed special Server-Settings (these parameters are only needed, + * if the default delivery-configration of the OpenX-Server was changed): + * + * path: string Path to delivery-scripts. DEFAULT: "/www/delivery". + * fl: string Flash-Include-Script. DEFAULT: "fl.js". + * + * * Delivery-Options (for details and explanations see the see: * http://www.openx.com/docs/2.8/userguide/single%20page%20call): * @@ -79,6 +85,13 @@ * charset: string Charset used, when delivering the banner-codes. * If empty, the charset is guessed by OpenX. Examples * for sensible values: "UTF-8", "ISO-8859-1". + * + * + * Other settings: + * + * selector: string A selector for selecting the DOM-elements, that + * should display ad-banners. DEFAULT: ".oa". + * See: http://api.jquery.com/category/selectors/ */ $.openx = function( options ) { @@ -112,6 +125,9 @@ settings = $.extend( { 'protocol': document.location.protocol, + 'delivery': '/www/delivery', + 'fl': 'fl.js', + 'selector': '.oa', 'cache': true }, options @@ -133,7 +149,7 @@ $.ajaxSetup({ 'cache': true }); - src = domain + '/www/delivery/spc.php'; + src = domain + settings.delivery + '/spc.php'; /** * jQuery.openx only works with "named zones", because it does not know, @@ -149,7 +165,7 @@ */ src += '?zones='; for(name in OA_zones) { - $('.oa').each(function() { + $(settings.selector).each(function() { var node = $(this), id; @@ -194,18 +210,19 @@ function load_flash() { - $.getScript(domain + '/www/delivery/fl.js', init_ads); + $.getScript(domain + settings.delivery + '/' + settings.fl, init_ads); } function init_ads() { - var i, id; + var i, id, ads = []; for (i=0; i 0) { + while (queue.length > 0) { var result, src, inline; - id = ads.shift(); + id = queue.shift(); node = slots[id]; node.slideDown(); @@ -264,7 +281,7 @@ /** script-tag with src-URL! */ if (OA_output[id].length > 0) /** The banner-code was not rendered completely yet! */ - ads.unshift(id); + queue.unshift(id); /** Load the script and halt all work until the script is loaded and executed... */ $.getScript(result[1], render_ads); // << jQuery.getScript() generates onload-Handler for _all_ browsers ;) return; @@ -291,7 +308,7 @@ for (var i=0; i