// 配列をシャッフルする
Array.prototype.shuffle = function() {
	var i = this.length;
	while(i){
		var j = Math.floor(Math.random()*i);
		var t = this[--i];
		this[i] = this[j];
		this[j] = t;
	}
	
	return this;
}


function init() {
	tb_init('a.thickbox, area.thickbox, input.thickbox');//pass where to apply thickbox
	imgLoader = new Image();// preload image
	imgLoader.src = tb_pathToImage;
	//debug.p( imgLoader.src );
}





// 逕ｻ蜒乗､懃ｴ｢繧定｡後≧髢｢謨ｰ
function photo_search ( param ) {
	
	$("#photos_here").hide();
	
    // API繝ｪ繧ｯ繧ｨ繧ｹ繝医ヱ繝ｩ繝｡繧ｿ縺ｮ險ｭ螳
    param.api_key  = 'ace86cb27d62408677a00df66aaa863b';
    param.method   = 'flickr.photos.search';
    param.per_page = 200;
    param.sort     = 'date-posted-desc';
    param.format   = 'json';
    param.jsoncallback = 'jsonFlickrApi';

    // API繝ｪ繧ｯ繧ｨ繧ｹ繝�RL縺ｮ逕滓�(GET繝｡繧ｽ繝�ラ)
    var url = 'http://www.flickr.com/services/rest/?'+obj2query( param );

    // script 隕∫ｴ縺ｮ逋ｺ陦
    var script = document.createElement( 'script' );
    script.type = 'text/javascript';
    script.src  = url;
    document.body.appendChild( script );
};

// 迴ｾ蝨ｨ縺ｮ陦ｨ遉ｺ蜀�ｮｹ繧偵け繝ｪ繧｢縺吶ｋ
function remove_children ( id ) {
    var div = document.getElementById( id );
    while ( div.firstChild ) { 
        div.removeChild( div.lastChild );
    }
};

// 繧ｪ繝悶ず繧ｧ繧ｯ繝医°繧峨け繧ｨ繝ｪ繝ｼ譁�ｭ怜�繧堤函謌舌☆繧矩未謨ｰ
function obj2query ( obj ) {
    var list = [];
    for( var key in obj ) {
        var k = encodeURIComponent(key);
        var v = encodeURIComponent(obj[key]);
        list[list.length] = k+'='+v;
    }
    var query = list.join( '&' );
    return query;
}

// Flickr讀懃ｴ｢邨ゆｺ�ｾ後�繧ｳ繝ｼ繝ｫ繝舌ャ繧ｯ髢｢謨ｰ
function jsonFlickrApi ( data ) {

    // 繝��繧ｿ縺悟叙蠕励〒縺阪※縺�ｋ縺九メ繧ｧ繝�け
    if ( ! data ) return;
    if ( ! data.photos ) return;
    var list = data.photos.photo;

	list.shuffle();
	list = list.slice(0, 12);

    if ( ! list ) return;
    if ( ! list.length ) return;

    // 迴ｾ蝨ｨ縺ｮ陦ｨ遉ｺ蜀�ｮｹ��oading...�峨ｒ繧ｯ繝ｪ繧｢縺吶ｋ
    remove_children( 'photos_here' );

    // 蜷�判蜒上ｒ陦ｨ遉ｺ縺吶ｋ
    var div = document.getElementById( 'photos_here' );
    for( var i=0; i<list.length; i++ )
	{
        var photo = list[i];

        // a 隕∫ｴ縺ｮ逕滓�
        var atag = document.createElement( 'a' );
		atag.href = 'http://farm'+photo.farm+'.static.flickr.com/'+photo.server+'/'+photo.id+'_'+photo.secret+'.jpg'
		atag.className = 'thickbox';

        // img 隕∫ｴ縺ｮ逕滓�
        var img = document.createElement( 'img' );
        img.src = 'http://static.flickr.com/'+photo.server+'/'+photo.id+'_'+photo.secret+'_s.jpg';
        img.style.border = '0';
		img.width = '40';
		img.height = '40';
        atag.appendChild( img );
        div.appendChild( atag );
		
		//var hoge = div.childNodes[i].class;
		//debug.p( hoge );
    }
	$("#photos_here").fadeIn("slow",init)
}

photo_search({ user_id: '49963310@N03' });


// EOF