var	id_flickr_page=-1;
var Flickr_markers=[];

function FlickrData(latitude,longitude,name,image,infowindowsrc)
{
	this.name = name;
	this.latitude=latitude;
	this.longitude=longitude;
	this.image=image;
	this.marker=new GMarker(new GLatLng(parseFloat(latitude),parseFloat(longitude)));
	this.infowindowhtml=infowindowsrc;
	return this;
}
function CreateFlickrMarker(TargetData)
{
	if(TargetData.name==''){
		return;
	}
	var point = new GLatLng(TargetData.latitude,TargetData.longitude);
	var Flickr_baseIcon = new GIcon();
	Flickr_baseIcon.image = TargetData.image;//'http://www.suitemap.com/uploads/img47bd341a4b4cd.gif';
	Flickr_baseIcon.iconSize = new GSize(18, 18);
	Flickr_baseIcon.iconAnchor = new GPoint(9, 9);
	Flickr_baseIcon.infoWindowAnchor = new GPoint(15, 5);

	TargetData.marker = new GMarker(point,Flickr_baseIcon);

	GEvent.addListener(	TargetData.marker, 'click', 
						function(){
							TargetData.marker.openInfoWindowHtml(TargetData.infowindowhtml);
						}
	);
	return (TargetData.marker);
}
////////////////////////////////////////////////////////////////////////////////////
var proxy  = 'http://www.modulesuite.com/webservice/XML2JSON/TEST.php?';
var target_id_flickr = {};
target_id_flickr.onload = function(data){
	var	ItemNum = 0;
	var	ItemListStr="";

	if( data["@attributes"]["stat"]!='ok' ){
		outputLAYER( 'id_flickr_Result', 'not found' );
		return;
	}

	var TextLink='';
	var Image_Small='';
	var Image_Medium='';

	var TotalItemNum =data["photos"]["@attributes"]["total"];
	if(TotalItemNum==0){
		outputLAYER( 'id_flickr_Result', 'not found' );
		return;
	}

	ItemNum =data["photos"]["photo"].length;
	if(ItemNum==0){
		outputLAYER( 'id_flickr_Result', 'no more data' );
		return;
	}

	for(i=0;i<Flickr_markers.length;i++){
		map.removeOverlay(Flickr_markers[i].marker);
	}
	Flickr_markers.splice(0,i);

	var PerPage = parseInt(document.getElementById('id_flickr_perpage').value);

	var MarkerNum=0;
	if(ItemNum>1){
		ItemListStr = '<UL>';
		for(i=0;i<ItemNum;i++){

			TextLink='';
			Image_Small='';
			Image_Medium='';
			if(data["photos"]["photo"][i]){
				if(data["photos"]["photo"][i]["@"]["title"]){
					TextLink = 	'<a target=\"_blank\" href=\"'
							+ 'http://www.flickr.com/photos/'+data["photos"]["photo"][i]["@"]["owner"]+'/'+data["photos"]["photo"][i]["@"]["id"]
							+'\">'
							+data["photos"]["photo"][i]["@"]["title"]
							+'</a>';

							//http://static.flickr.com/3250/2804730594_eb4dba7c7a_s.jpg;
					Image_Small = 	'<img align=\"left\" border=\"0\" src=\"'
							+'http://static.flickr.com/'+data["photos"]["photo"][i]["@"]["server"]+'/'+data["photos"]["photo"][i]["@"]["id"]+'_'+data["photos"]["photo"][i]["@"]["secret"]+'_s.jpg'
							+'\">';
					Image_Medium = 	'<img border=\"0\" src=\"'
							+'http://static.flickr.com/'+data["photos"]["photo"][i]["@"]["server"]+'/'+data["photos"]["photo"][i]["@"]["id"]+'_'+data["photos"]["photo"][i]["@"]["secret"]+'_m.jpg'
							+'\">';
					
					var LargePhoto = 'http://static.flickr.com/'+data["photos"]["photo"][i]["@"]["server"]+'/'+data["photos"]["photo"][i]["@"]["id"]+'_'+data["photos"]["photo"][i]["@"]["secret"]+'.jpg';

					Image_Small = 	'<a href="'+LargePhoto+'" rel="lightbox">'+Image_Small+'</a>';

					var IconImage = 'http://static.flickr.com/'+data["photos"]["photo"][i]["@"]["server"]+'/'+data["photos"]["photo"][i]["@"]["id"]+'_'+data["photos"]["photo"][i]["@"]["secret"]+'_s.jpg';
					if( (data["photos"]["photo"][i]["@"]["latitude"]!=null)&&(data["photos"]["photo"][i]["@"]["latitude"]!='')&&(data["photos"]["photo"][i]["@"]["latitude"]!='undefined')&&(data["photos"]["photo"][i]["@"]["latitude"]!='unknown') ){
						var LATITUDE =parseFloat(data["photos"]["photo"][i]["@"]["latitude"]);
						var LONGITUDE =parseFloat(data["photos"]["photo"][i]["@"]["longitude"]);
						Flickr_markers[MarkerNum] = new Object();
						Flickr_markers[MarkerNum] = new FlickrData(LATITUDE,LONGITUDE,
											data["photos"]["photo"][i]["@"]["title"],
											IconImage,
											TextLink+'<br>'+Image_Medium);
						Flickr_markers[MarkerNum].marker = CreateFlickrMarker(Flickr_markers[MarkerNum]);
						map.addOverlay(Flickr_markers[MarkerNum].marker);
						MarkerNum++;
					}
				}
			}
			ItemListStr += '<LI>'+TextLink+'<br>'+Image_Small+'<br clear=\"all\"></LI>';
			ItemListStr += '<br>';
		}
		ItemListStr += '</UL>';
	}
	if((ItemNum==null)||(ItemNum==1)){
		ItemListStr = '<UL>';
		TextLink='';
		Image_Small='';
		Image_Medium='';
		if(data["photos"]["photo"]){
			if(data["photos"]["photo"]["@"]["title"]){
				TextLink = 	'<a target=\"_blank\" href=\"'
						+ 'http://www.flickr.com/photos/'+data["photos"]["photo"]["@"]["owner"]+'/'+data["photos"]["photo"]["@"]["id"]
						+'\">'
						+data["photos"]["photo"]["@"]["title"]
						+'</a>';

						//http://static.flickr.com/3250/2804730594_eb4dba7c7a_s.jpg;
				Image_Small = 	'<img border=\"0\" src=\"'
						+'http://static.flickr.com/'+data["photos"]["photo"]["@"]["server"]+'/'+data["photos"]["photo"]["@"]["id"]+'_'+data["photos"]["photo"]["@"]["secret"]+'_s.jpg'
						+'\">';
				Image_Medium = 	'<img border=\"0\" src=\"'
						+'http://static.flickr.com/'+data["photos"]["photo"]["@"]["server"]+'/'+data["photos"]["photo"]["@"]["id"]+'_'+data["photos"]["photo"]["@"]["secret"]+'_m.jpg'
						+'\">';
				
				var LargePhoto = 'http://static.flickr.com/'+data["photos"]["photo"]["@"]["server"]+'/'+data["photos"]["photo"]["@"]["id"]+'_'+data["photos"]["photo"]["@"]["secret"]+'_b.jpg';

				Image_Small = 	'<a href="+LargePhoto+" rel="lightbox">'+Image_Small+'</a>';

				var IconImage = 'http://static.flickr.com/'+data["photos"]["photo"]["@"]["server"]+'/'+data["photos"]["photo"]["@"]["id"]+'_'+data["photos"]["photo"]["@"]["secret"]+'_s.jpg';
				if( (data["photos"]["photo"]["@"]["latitude"]!=null)&&(data["photos"]["photo"]["@"]["latitude"]!='')&&(data["photos"]["photo"]["@"]["latitude"]!='undefined')&&(data["photos"]["photo"]["@"]["latitude"]!='unknown') ){
					var LATITUDE =parseFloat(data["photos"]["photo"]["@"]["latitude"]);
					var LONGITUDE =parseFloat(data["photos"]["photo"]["@"]["longitude"]);
					Flickr_markers[MarkerNum] = new Object();
					Flickr_markers[MarkerNum] = new FlickrData(LATITUDE,LONGITUDE,
										data["photos"]["photo"]["@"]["title"],
										IconImage,
										TextLink+'<br>'+Image_Medium);
					Flickr_markers[MarkerNum].marker = CreateFlickrMarker(Flickr_markers[MarkerNum]);
					map.addOverlay(Flickr_markers[MarkerNum].marker);
					MarkerNum++;
				}
			}
		}

		ItemListStr += '<LI>'+TextLink+'<br>'+Image_Small+'<br clear=\"all\"></LI>';
		ItemListStr += '<br>';
		ItemListStr += '</UL>';
	}


	var PagerStr='';
	if(id_flickr_page>1){
		PagerStr += "<a href=\"#\" onClick=\"suitemap_flickr_item_view_page("+(id_flickr_page-2)+");return false;\">prev</a> ";
	}
//	if( ItemNum>=10 ){

	if(((((id_flickr_page-1)*PerPage))<TotalItemNum)&&( ItemNum>=PerPage )){
		PagerStr += "<a href=\"#\" onClick=\"suitemap_flickr_item_view_page("+(id_flickr_page)+");return false;\">next</a>";
	}
	outputLAYER( 'id_flickr_Result', PagerStr+'<br><br>'+ItemListStr+'<br>'+PagerStr );
	return;
}

///////////////////////////////////////////////////////////////////////////////////
function suitemap_flickr_item_view_page( Page )
{
	var Keyword='';
	var Sort='';
	var Geo='';
	var PerPage=20;
	var PerPageStr='';
	var start=0;

	if(document.getElementById('id_flickr_keyword')){
		Keyword = '&text='+encodeURIComponent(document.getElementById('id_flickr_keyword').value);
	}
	if(document.getElementById('id_flickr_sort')){
		Sort = '&sort='+document.getElementById('id_flickr_sort').value;
	}
	if(document.getElementById('id_flickr_perpage')){
		PerPage = parseInt(document.getElementById('id_flickr_perpage').value);
		if( (PerPage<=0)||(PerPage>=250) ){
			PerPage=20;
		}
		else{
			PerPageStr = '&per_page='+PerPage;
		}
	}
	else{
		PerPageStr = '&per_page='+PerPage;
	}
	if(document.getElementById('id_flickr_geo_km')){
		var Km = parseInt(document.getElementById('id_flickr_geo_km').value);
		if(Km>0){
			var TmpCenter = map.getCenter();
			Geo = '&lat='+TmpCenter.lat()+'&lon='+TmpCenter.lng()+'&radius='+Km+'&radius_units=km&tag_mode=geo&extras=geo';
		}
	}

	if((Keyword=='')&&(Geo =='')){
		return;
	}

	start=(Page*PerPage);
	TargetURL = 'http://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=b7003a39cd0fbfc0ba021781f02ca9c6&page='+parseInt(parseInt(Page)+parseInt(1));
	TargetURL += Keyword+Sort+PerPageStr+Geo;

	var script = document.createElement('script');
	script.charset = 'UTF-8';
	script.src = proxy + 'varname=target_id_flickr' + '&url=' + TargetURL;
	document.body.appendChild(script);
	id_flickr_page=Page+1;

	outputLAYER( 'id_flickr_Result', 'Searching...' );
	//outputLAYER('LOG',script.src);

	return;
}
///////////////////////////////////////////////////////////////////////////////////

