if (document.addEventListener) {
    document.addEventListener("DOMContentLoaded", function(){
        urbanWerbung.init();
    }, false);
}
document.write("<script id=__ie_onload defer src=javascript:void(0)><\/script>");
var ieOnload = document.getElementById("__ie_onload");
ieOnload.onreadystatechange = function(){
    if (this.readyState == "complete") {
        urbanWerbung.init();
    }
}
var urbanWerbung = {
    className: "urban-werbung",
    elements: [],
    init: function(){
        this.getElements();
        this.run();
        this.check();
    },
    run: function(){
        renderAds();
    },
    getFrame: function(el){
        var divs = el.getElementsByTagName("div");
        for (var i = 0; i < divs.length; ++i) {
            if (res = divs[i].id.match(/adition_tag_(.*)/)) {
                return divs[i];
            }
        }
    },
    check: function(){
        for (var i = 0; i < this.elements.length; i++) {
            this.waitForCode(this.elements[i]);
        }
    },
    getElements: function(){
        this.divs = getElementsByClassName(this.className);
        for (i = 0; i < this.divs.length; i++) {
            this.elements.push({
                frame: this.divs[i],
                target: this.getFrame(this.divs[i])
            });
        }
    },
    removeClass: function(el, className){
        var classNames = el.className;
        if (classNames.indexOf(className) > -1) {
            var names = classNames.split(" ");
            for (var i = 0; i < names.length; i++) {
                if (names[i] == "hidden") {
                    names[i] = "";
                }
            }
            el.className = names.join(" ");
        }
    },
    waitForCode: function(obj){
        var self = this;
        var times = 0;
        var func = function(){
        	if ((obj.target.getElementsByTagName('a').length > 0) || (obj.target.getElementsByTagName('script').length > 1) )  {
        		self.removeClass(obj.frame, "hidden");
                window.clearInterval(inter);
            }
        	
            if (times && times > 30 && inter){ 
                window.clearInterval(inter);
            }
            times++;
        };
        var inter = window.setInterval(func, 1000);
        obj.frame.className = obj.frame.className + " checked";
    }
};

/*
 Developed by Robert Nyman, http://www.robertnyman.com
 Code/licensing: http://code.google.com/p/getelementsbyclassname/
 */
var getElementsByClassName = function(className, tag, elm){
    if (document.getElementsByClassName) {
        getElementsByClassName = function(className, tag, elm){
            elm = elm || document;
            var elements = elm.getElementsByClassName(className), nodeName = (tag) ? new RegExp("\\b" + tag + "\\b", "i") : null, returnElements = [], current;
            for (var i = 0, il = elements.length; i < il; i += 1) {
                current = elements[i];
                if (!nodeName || nodeName.test(current.nodeName)) {
                    returnElements.push(current);
                }
            }
            return returnElements;
        };
    }
    else 
        if (document.evaluate) {
            getElementsByClassName = function(className, tag, elm){
                tag = tag || "*";
                elm = elm || document;
                var classes = className.split(" "), classesToCheck = "", xhtmlNamespace = "http://www.w3.org/1999/xhtml", namespaceResolver = (document.documentElement.namespaceURI === xhtmlNamespace) ? xhtmlNamespace : null, returnElements = [], elements, node;
                for (var j = 0, jl = classes.length; j < jl; j += 1) {
                    classesToCheck += "[contains(concat(' ', @class, ' '), ' " + classes[j] + " ')]";
                }
                try {
                    elements = document.evaluate(".//" + tag + classesToCheck, elm, namespaceResolver, 0, null);
                } 
                catch (e) {
                    elements = document.evaluate(".//" + tag + classesToCheck, elm, null, 0, null);
                }
                while ((node = elements.iterateNext())) {
                    returnElements.push(node);
                }
                return returnElements;
            };
        }
        else {
            getElementsByClassName = function(className, tag, elm){
                tag = tag || "*";
                elm = elm || document;
                var classes = className.split(" "), classesToCheck = [], elements = (tag === "*" && elm.all) ? elm.all : elm.getElementsByTagName(tag), current, returnElements = [], match;
                for (var k = 0, kl = classes.length; k < kl; k += 1) {
                    classesToCheck.push(new RegExp("(^|\\s)" + classes[k] + "(\\s|$)"));
                }
                for (var l = 0, ll = elements.length; l < ll; l += 1) {
                    current = elements[l];
                    match = false;
                    for (var m = 0, ml = classesToCheck.length; m < ml; m += 1) {
                        match = classesToCheck[m].test(current.className);
                        if (!match) {
                            break;
                        }
                    }
                    if (match) {
                        returnElements.push(current);
                    }
                }
                return returnElements;
            };
        }
    return getElementsByClassName(className, tag, elm);
};