function Rotation(fileName){
    document.write("<span id=\"rotatoin\"></span>");
    var place = document.getElementById("rotatoin");
    
    var rotation = new Array();
    var index = 0;
    var step = 0;
    var doing = 0;
    var pause = 0;

    load();

    function load(){
        var loader;
        if(window.ActiveXObject) loader = new ActiveXObject("Microsoft.XMLHTTP");
        else loader = new XMLHttpRequest();
        loader.onreadystatechange = function(){
            if(loader.readyState == 4 && loader.status == 200) build(loader.responseText);
        }
        loader.open("get", fileName, true);
        loader.send(null);
    }
    function build(xml){
        var xmlDom;
        try{
            var parser;
            if(window.ActiveXObject){
                parser = new ActiveXObject("Microsoft.XMLDOM");
                parser.async = false;
                parser.loadXML(xml);
                xmlDom = parser.documentElement;
            }else if(window.DOMParser){
                parser = new DOMParser();
                parser.strictErrorChecking=true;
                xmlDom = parser.parseFromString(xml, 'text/xml').documentElement;
            }
        }catch (e){}

        if(xmlDom.childNodes.length > 0 && xmlDom.nodeName == "rotation" && xmlDom.nodeType == 1){
            var rotatioTag = xmlDom.childNodes;
            var counter = 0;
            for(var rotationIndex = 0; rotationIndex < rotatioTag.length; rotationIndex++){
                var rotationItem = rotatioTag.item(rotationIndex);
                if(rotationItem.nodeName == "string" && rotationItem.nodeType == 1){
                    rotation[counter] = new Array();
                    rotation[counter]["time"] = rotationItem.getAttribute("time");
                    rotation[counter]["link"] = rotationItem.getAttribute("link");
                    rotation[counter]["text"] = rotationItem.childNodes.item(0).nodeValue;
                    counter++;
                }
            }
            cycle();
        }
    }
    function cycle(){
        if(step == 0){
            place.innerHTML = ("<a href=\"" + rotation[index]["link"] + "\">" + rotation[index]["text"] + "</a>");
            pause = rotation[index]["time"];
            index++;
            if(index >= rotation.length) index = 0;
            step = 1;
        }else if(step == 1){
            if(doing < 10) doing++;
            else step = 2;
        }else if(step == 2){
            if(pause > 0) pause--;
            else step = 3;
        }else if(step == 3){
            if(doing > 0) doing--;
            else step = 0;
        }
        if(window.ActiveXObject) place.style.filter = "alpha(opacity=" + (doing * 10) + ")";
        else place.style.opacity = (doing * 0.1);
        window.setTimeout(cycle, 100);
    }
}
