/ Published in: JavaScript
The following snippets create different styles of galleries for Picasa albums. They require a json feed as an input, and work together with lytebox to show the photos.
Expand |
Embed | Plain Text
function galWithAllThumbs(data) { var titulo = ''; var thumbCount = 100; var picsCount = data.feed.entry.length - 1; var j = 0; var albumTitle = data.feed.title.$t; document.write('<h3>' + albumTitle + '</h3>'); for (var i = picsCount; i > picsCount - thumbCount; i--) { var pic = data.feed.entry[j]; document.write('<a href="' + pic.media$group.media$content[0].url + '" rel="lyteshow[' + albumTitle + ']" title="' + pic.title.$t + '" ><img src="' + pic.media$group.media$thumbnail[0].url + '" alt="' + pic.title.$t + '" ></a>'); j++; } } function galWithOneThumb(data) { var titulo = ''; var thumbCount = 100; var picsCount = data.feed.entry.length - 1; var albumTitle = data.feed.title.$t; var j = 0; var pic = data.feed.entry[j]; document.write('<a href="' + pic.media$group.media$content[0].url + '" rel="lyteshow[' + albumTitle + ']" title="' + pic.title.$t + '" ><img src="' + pic.media$group.media$thumbnail[0].url + '" alt="' + albumTitle + '" ></a>'); for (var i = picsCount; i > picsCount - thumbCount; i--) { j++; pic = data.feed.entry[j]; document.write('<a href="' + pic.media$group.media$content[0].url + '" rel="lyteshow[' + albumTitle + ']" title="' + pic.title.$t + '" alt="' + albumTitle + '" ></a>'); } } function galWithOneImg(data) { var titulo = ''; var thumbCount = 100; var picsCount = data.feed.entry.length - 1; var albumTitle = data.feed.title.$t; var j = 0; var pic = data.feed.entry[j]; document.write('<a href="' + pic.media$group.media$content[0].url + '" rel="lyteshow[' + albumTitle + ']" title="' + pic.title.$t + '" ><img src="' + pic.media$group.media$content[0].url + '" width="300px" alt="' + albumTitle + '" ></a>'); for (var i = picsCount; i > picsCount - thumbCount; i--) { j++; pic = data.feed.entry[j]; document.write('<a href="' + pic.media$group.media$content[0].url + '" rel="lytebox[' + albumTitle + ']" title="' + pic.title.$t + '" ></a>'); } } function galOfAlbums(data) { var titulo = ''; var thumbCount = 100; var picsCount = data.feed.entry.length - 1; var j = 0; document.write('<h3>Ultimos albums</h3>'); for (var i = picsCount; i > picsCount - thumbCount; i--) { var pic = data.feed.entry[j]; document.write('<script src="' + pic.link[0].href + '&kind=photo&thumbsize=' + pic.media$group.media$thumbnail[0].width + 'c&imgmax=1000&access=public&callback=galWithOneThumb"><\/script>'); j++; } } function mostrarGaleria(userId, albumId, linkType, miniSize, fotoCount, fotoSize){ if (linkType == 0){ //mostrar una sola miniatura document.write('<script src="http://picasaweb.google.com/data/feed/base/user/' + userId + '/albumid/' + albumId + '?kind=photo&max-results='+ fotoCount + '&thumbsize=' + miniSize + '&imgmax=' + fotoSize + '&access=public&alt=json-in-script&callback=galWithOneThumb"><\/script>'); } if (linkType == 1){ //mostrar todas las miniaturas document.write('<script src="http://picasaweb.google.com/data/feed/base/user/' + userId + '/albumid/' + albumId + '?kind=photo&max-results='+ fotoCount + '&thumbsize=' + miniSize + '&imgmax=' + fotoSize + '&access=public&alt=json-in-script&callback=galWithAllThumbs"><\/script>'); } if (linkType == 2){ //mostrar una imagen como enlace document.write('<script src="http://picasaweb.google.com/data/feed/base/user/' + userId + '/albumid/' + albumId + '?kind=photo&max-results='+ fotoCount + '&imgmax=' + fotoSize + '&access=public&alt=json-in-script&callback=galWithOneImg"><\/script>'); } } function mostrarAlbums(userId, miniSize, itemCount, itemSize){ document.write('<script src="http://picasaweb.google.com/data/feed/base/user/' + userId + '/?kind=album&max-results='+ itemCount + '&thumbsize=' + miniSize + '&imgmax=' + itemSize + '&alt=json-in-script&callback=galOfAlbums"><\/script>'); }
You need to login to post a comment.
