MediaWiki:Skin/Projekt:Adventure2/lib.js: Unterschied zwischen den Versionen

aus Kamelopedia, der wüsten Enzyklopädie
Zur Navigation springen Zur Suche springen
KKeine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 66: Zeile 66:
     }
     }
};
};
a2.items = {};
a2.loadItem = function loadItem(n){
    a2.log("load", n);
    a2.clearScope(n);
    response = $.ajax({
        url: "/index.php/Kamel:J*/Test2/item/"+n+"?action=render",
        async: false
    });
    a2.items[n] = response.responseText;
    a2.log(a2.items);
    a2.renderItems();
};
a2.renderItems = function renderItems(){
    $("#a2items").empty()
    for (item in a2.items){
        $fl=$('<div style="float:left;" />');
        $fl.append(a2.items[item]);
        $("#a2items").append($fl);
        a2.log($("#a2items"))
    }
}
a2.util.add = function (n) { a2.loadItem(n); };

Version vom 6. Juli 2012, 22:11 Uhr

// A2lib

a2 = {};
a2.events = {};

a2.clearScope = function clearScope(sc) {
    delete a2.events[sc];
};

a2.registerEventHandler = function registerEventHandler(e) {
    var sc = (e.scope[0] == "page") ? ":page:" : e.scope[1];

    if (!a2.events[sc])
        a2.events[sc]={};

    if (!a2.events[sc][e.trigger])
        a2.events[sc][e.trigger] = [];

    a2.events[sc][e.trigger].push(function(){
        a2.log("run", e.name);
        if (e.condition())
            e.action();
    });
};

if (window.console && window.console.log)
    a2.log = window.console.log;
else
    a2.log = function () {return;};

a2.fireEvent = function fireEvent (event) {
    a2.log("Fire", event);
    var e = a2.events;
    for(i in e)
        if (!!e[i])
            if (!!e[i][event])
                for(j=0; j<e[i][event].length; j++){
                    a2.log("Event", i, event, j, e[i][event][j]);
                    e[i][event][j]();
                }
};

a2.loadPage = function loadPage(n){
    a2.clearScope(":page:");
    a2.fireEvent("leave."+a2.cpage);
    response = $.ajax({
        url: "/index.php/Kamel:J*/Test2/"+parseInt(n)+"?action=render",
        async: false
    });
    $("#a2image").html(response.responseText);
    console.log($("#a2image a"));
    $("#a2image area").click(function (ev) {
        a2.fireEvent("click."+ev.target.hash.substr(1));
        return false;
    });
    a2.cpage = n;
    window.setTimeout(function () {a2.fireEvent("enter."+n);}, 500);
};

a2.util = {
    print: function (s) { 
        $("#a2text").text(s);
    },
    goto: function (p) {
        a2.loadPage(p);
    }
};


a2.items = {};
a2.loadItem = function loadItem(n){
    a2.log("load", n);
    a2.clearScope(n);
    response = $.ajax({
        url: "/index.php/Kamel:J*/Test2/item/"+n+"?action=render",
        async: false
    });
    a2.items[n] = response.responseText;
    a2.log(a2.items);
    a2.renderItems();
};

a2.renderItems = function renderItems(){
    $("#a2items").empty()
    for (item in a2.items){
        $fl=$('<div style="float:left;" />');
        $fl.append(a2.items[item]);
        $("#a2items").append($fl);
        a2.log($("#a2items"))
    }
}

a2.util.add = function (n) { a2.loadItem(n); };