var lb = null;
function json2dom(json)
{
    var i = 0;
    var tag = json[i++];
    var dom = document.createElement(tag);
    if (json[i] && json[i].constructor == Object){
        var attr = json[i++];
        for (var name in attr){
            if (name == "class" && Prototype.Browser.IE){
                dom.setAttribute("className", attr[name]);
            }
            else {
                dom.setAttribute(name, attr[name]);
            }
        }
    }
    for (var l = json.length; i < l; i++){
        if (dom.appendChild){
            if (json[i]){
                dom.appendChild(
                    json[i].constructor == Array
                    ? arguments.callee(json[i])
                    : document.createTextNode(json[i])
                    );
            }
        }
    }
    return dom;
}

function dom2json(dom)
{
    var type = dom.nodeType;
    if (type == 3){
        return dom.nodeValue;
    } else if (type == 1){
        var json = [];
        json.push(dom.nodeName);
        var attrs = dom.attributes;
        if (attrs.length){
            var attr = {};
            for (var i = 0, l = attrs.length; i < l; i++){
                attr[attrs[i].name] = attrs[i].value;
            }
            json.push(attr);
        }
        if (! dom.hasChildNodes()) return json;
        var kids = dom.childNodes;
        for (var i = 0, l = kids.length; i < l; i++){
            var kjson = arguments.callee(kids[i]);
            if (kjson) json.push(kjson);
        }
        return json;
    }
}


Event.observe(window, 'load', function(e){
    
    var list = $('photolist');
    if (!list) return ;
    
    var photos = list.getElementsByTagName('A');
    var html = '';
    for (var i=0, j=photos.length; i<j; i++)
    {
        html += '<div class="photo"><a rel="lightbox[photo]" title="'+photos[i].firstChild.alt+'" href="'+photos[i].href+'">'+photos[i].innerHTML+'</a></div>';
    }
/*
    var json = [];
    var dummy = document.createElement('DIV');
    for (var i=0, j=photos.length; i<j; i++){
        dummy.innerHTML = '';
        var div = ['div', {'class': 'photo'}, 
                   ['a', {
                       'href': photos[i].href,
                       'rel': 'lightbox[photo]',
                       'title': photos[i].firstChild.alt
                     },
                    ['img', {'src': photos[i].firstChild.src}]
                      ]
                     ];
        var ddiv = json2dom(div);
        dummy.appendChild(ddiv);
        html += dummy.innerHTML;
    }
*/
    list.innerHTML = html;
    lb = new Lightbox(); /* Fire! */
});
