var InlineSlideShow = {

    _shows : new Array(),
    
    create : function(objId, thumbs, links, captions) {
        if (!document.getElementsByTagName || !document.createElement) return;
		if (captions) { captions = (captions.length == 0) ? null : captions; }
        var obj = document.getElementById(objId);
        if (!obj) return;
        
        var linkContainer = null;
        var divs = obj.getElementsByTagName('div');
        for (var i = 0; i < divs.length; i++) {
            if (divs[i].className.indexOf('navlinks') != -1) {
                linkContainer = divs[i];
                break;
            }
        }
        if (!linkContainer) return;
        linkContainer.innerHTML  = '<a href="#' + objId + '" class="prevLink" onclick="InlineSlideShow.prev(this); return false;">&laquo; prev</a>&nbsp; &bull; &nbsp;';
        linkContainer.innerHTML += '<a href="#' + objId + '" class="nextLink" onclick="InlineSlideShow.next(this); return false;">next &raquo;</a>';
        
        var ps = obj.getElementsByTagName('p');
        for (var i = 0; i < ps.length; i++) {
            if (ps[i].className.indexOf('photo') != -1) {
                var img = ps[i].getElementsByTagName('img')[0];
            }
        }
        
        var ss = InlineSlideShow._shows[objId] = new Object();
        ss.obj = obj;
        ss.thumbs = thumbs;
        ss.links = links;
		if(captions) {
			ss.captions = captions;
		}
        ss.current = 0;
        ss.img = img;
    },
    
    prev : function(e) {
        var ss = InlineSlideShow.lookupFromChild(e);
        ss.current--;
        if (ss.current < 0) {
            ss.current = ss.thumbs.length - 1;
        }
        InlineSlideShow.refresh(ss);
    },
    
    next : function(e) {
        var ss = InlineSlideShow.lookupFromChild(e);
        ss.current++;
        if (ss.current >= ss.thumbs.length) {
            ss.current = 0;
        }
        InlineSlideShow.refresh(ss);
    },
    
    lookupFromChild : function(e) {
        while (e.className.indexOf('inline') == -1) {
            e = e.parentNode;
        }
        return InlineSlideShow._shows[e.id];
    },
    
    refresh : function(ss) {
        ss.img.src = ss.thumbs[ss.current];
		if(ss.captions) {
			var ps = ss.obj.getElementsByTagName('p');
			for(var i=0; i<ps.length; i++) {
				if(ps[i].className.indexOf('caption') != -1) {
					ps[i].innerHTML = ss.captions[ss.current];
				}
			}
		}
        var aas = ss.obj.getElementsByTagName('a');
        for (var i = 0; i < aas.length; i++) {
            if (aas[i].className.indexOf('seymore') != -1) {
                aas[i].href = ss.links[ss.current];
            }
        }
    }
}
