photo-browser-source-js.mustache revision c3573884ddb87405d819f8c70cb7fed1ff8f471e
2058N/AYUI().use('yql', 'node', 'anim', 'dd', 'dd-plugin', 'dd-drop-plugin', 'slider', 'stylesheet', 'event-delegate', function(Y) {
2058N/A Y.on('windowresize', function() { wrapper.setStyle('height', (wrapper.get('winHeight') - 50 )+ 'px'); });
2058N/A Y.YQL('SELECT * FROM flickr.photos.search(100) WHERE (text="yuiconf") AND (safe_search = 1) AND (media = "photos")', function(e) {
2058N/A var photos = e.query.results.photo;
2058N/A var url = 'http:/'+'/static.flickr.com/' + v.server + '/' + v.id + '_' + v.secret + '_m.jpg',
2058N/A li = Y.Node.create('<li class="loading"><img src="' + url + '" title="' + v.title + '"></li>'),
2058N/A this.addClass(c);
3661N/A wrapper.all('li').each(function(node) {
2058N/A var sheet = new Y.StyleSheet('image_slider');
sheet.set('#yui-main .yui-g ul li', {
width: (e.newVal / 2) + '%'
wrapper.removeClass('loading');
Y.one('#ft').removeClass('loading');
//Listen for all mouseup's on the document (selecting/deselecting images)
Y.delegate('mouseup', function(e) {
if (!e.shiftKey) {
if (e.target.test('#yui-main .yui-g ul li img')) {
e.target.addClass('selected');
Y.delegate('click', function(e) {
e.halt();
e.currentTarget.addClass('selected');
if (e.currentTarget.hasClass('all')) {
wrapper.all('li').removeClass('hidden');
var c = e.currentTarget.get('id');
wrapper.all('li').addClass('hidden');
wrapper.all('li.' + c).removeClass('hidden');
Y.one(document).on('keyup', function(e) {
if (Y.DD.DDM.activeDrag) {
Y.DD.DDM.on('drag:mouseDown', function(e) {
var img = e.target.get('node').one('img');
if (Y.DD.Drag.START_EVENT.indexOf('gesture') === 0) {
if (img.hasClass('selected')) {
img.removeClass('selected');
img.addClass('selected');
img.removeClass('selected');
Y.DD.DDM.on('drag:start', function(e) {
var img = e.target.get('node').one('img').addClass('selected');
e.target.get('dragNode').setStyles({
e.target.deltaXY = [25, 5];
Y.DD.DDM.on('drag:drophit', function(e) {
toXY = e.drop.get('node').getXY();
imgs.each(function(node) {
var n = node.cloneNode().set('id', '').setStyle('position', 'absolute');
Y.one('body').appendChild(n);
new Y.Anim({
width: node.get('offsetWidth'),
height: node.get('offsetHeight')
e.drop.get('node').one('span').set('innerHTML', '(' + count + ')');
Y.all('#photoList li').each(function(node) {
if (!node.hasClass('all')) {