$(function() {

	window.is_widget = false;
	
	$("#dialog-rate-photo").dialog({
		bgiframe: true,
		autoOpen: false,
		title: "Rate Photo",
		width: 200,
		height: 80,
		modal: true,
		buttons: {
			'Rate Photo': function() {
				value = $('input[type=radio][name=rate].star:checked').val();
				photo_id = $("#photo-id-rate").val();
				act_id = $("#trail-id-rate").val();
				//index = first_page => we come from the panel with 3 photos, else, we come from the widget 
				
				$.post(window.bUrl+"/ajax/rate-photo/value/"+value+"/id/"+photo_id, {}, function(data){
					data = evaluate(data);
					if(window.is_widget == 'widget')
						loadAllPhotos(act_id, photo_id);
					else
						detailActivityPhotos(act_id);
					
					if(data.substr(0,3) == "You")
						alert(data);
					else	
						alert('Your rating was successfully added.')
				});
				$(this).dialog('close');
			},
			Cancel: function() {
				$(this).dialog('close');
			}
		},
		close: function() {

		}
	});
	
	$('#upload-photos').click(function() {
		loadPhotoUploadModule(function(){uploadPhotoCallB()})
	})
	
	$('#cooliris-widget').click(function() {
		loadCoolirisModule(function(){openCoolirisCallB()})
	})
});

function loadCoolirisModule(func) {
	if($("#cooliris-module-loaded").val() == 0) {
		$.post(window.bUrl+"/ajax/load-cooliris-module/act/"+window.act, {}, function(data){
			data = evaluate(data);
			$("#cooliris-container").html(data.html);
			
			$.get(data.js_path, {}, function(dt){
				$("#cooliris-module-loaded").val(1);
				$("#cooliris-container").append('<script type="text/javascript">'+dt+'</script>');
				
				$.post(window.bUrl+"/rss/list-photos-for-activity/activity_id/"+window.act_id+"/format/json/", {}, function(d){
					
					d = eval(d);
					photos = d.photos;
					window.all_photos = new Array;
					for (var i = 0; i < photos.length; i++) {
						window.all_photos[photos[i].id] = photos[i]; 
					}
					func();
				}, 'json');
				//initSwfObject();


				
			});
			

		});
	} else {
		func();
	}
}

function loadPhotoUploadModule(func) {
	if($("#edit-photo-upload-loaded").val() == 0) {
		$.post(window.bUrl+"/ajax/load-photo-upload-module/act/"+window.act, {}, function(data){
			data = evaluate(data);
			$("#edit-photo-upload-container").html(data.html);

			$.get(data.js_path, {}, function(data){
				$("#edit-photo-upload-loaded").val(1);
				$("#edit-photo-upload-container").append('<script type="text/javascript">'+data+'</script>');
				initSwfObject();
				loadPhotoWidgetModule(func);	
			});

		});
	} else {
		func();
	}
}

function loadPhotoWidgetModule(func) {
	if($("#edit-photo-widget-loaded").val() == 0) {
		$.post(window.bUrl+"/ajax/load-photo-widget-module/act/"+window.act, {}, function(data){
			data = evaluate(data);
			$("#edit-photo-widget-container").html(data.html);
			$.get(data.js_path, {}, function(data){
				$("#edit-photo-widget-container").append('<script type="text/javascript">'+data+'</script>');
				$("#edit-photo-widget-loaded").val(1);
				func();	
			});
		});
	} else {
		func();
	}
}

function loadAllPhotos(act_id, photo_id) {
	loadPhotoWidgetModule(function(){loadAllPhotosCallB(act_id, photo_id)})
}

function loadImage(path) {
	loadPhotoWidgetModule(function(){loadImageCallB(path)})
}

function deletePhoto(photo_id, act_id) {
	loadPhotoWidgetModule(function(){deletePhotoCallB(photo_id, act_id)})
}

function ratePhoto(photo_id, act_id) {
	loadPhotoWidgetModule(function(){ratePhotoCallB(photo_id, act_id)})
}

function rateCoolirisPhoto(photo_id, act_id) {
	loadPhotoWidgetModule(function(){rateCoolirisPhotoCallB(photo_id, act_id)})
}


function editPhotoDescription(photo_id, act_id, description) {
	loadPhotoWidgetModule(function(){editPhotoDescriptionCallB(photo_id, act_id, description)})
}

function detailActivityPhotos(id) {
	$("#trail-photos-sub").html("");
	resetBoxBackground($("#trail-photos"));
	$("#upload-photos").html('upload photo');
	$("#more-photos").html('<a onclick="loadAllPhotos('+id+')"> more Photos </a>');
	detailActivityPhotosSeq(id, 0);
}

function detailActivityPhotosSeq(id, seq_nr) {
	sufix = window.myConquests == true ? 'my-' : '';
	$.post(window.bUrl+"/ajax/load-"+sufix+"photos/id/"+id+'/seq/'+seq_nr, {}, function(data){
		data = evaluate(data);

		if(data.length) {
			str = "";
			for (var i = 0; i < data.length; i++) {
				str += getPhotoContent(data[i], id);
			}
			$("#trail-photos-sub").append(str);
			$('input[type=radio].star').rating();
			$('.scroll').jScrollPane();
		} else {
			if(seq_nr == 0) {
				str = '<div class="no-item-msg">Upload your photos.';
		 		$("#trail-photos-sub").html(str);
			}
	 		return;
		}

		seq_nr = seq_nr + 1;
		detailActivityPhotosSeq(id, seq_nr);
	});
}

function getPhotoContent(data, id, is_widget) {
	row_str = "";
	check1 = (Math.round(data.rating) == 1) ? "checked='checked'" : "" ;
	check2 = (Math.round(data.rating) == 2) ? "checked='checked'" : "" ;
	check3 = (Math.round(data.rating) == 3) ? "checked='checked'" : "" ;
	check4 = (Math.round(data.rating) == 4) ? "checked='checked'" : "" ;
	check5 = (Math.round(data.rating) == 5) ? "checked='checked'" : "" ;
	
	//alert(window.is_widget);
	
	delete_link = ($('#allow').val() == 1) ? "<img class='link_delete' style='margin:0px' src='"+window.bUrl+"/img/delete.png' onclick='deletePhoto("+data.id+", "+id+")' />" : "";
	edit_link = "<img title='Edit photo description' style='margin:0px; cursor: pointer' src='"+window.bUrl+"/img/pencil.png' onclick='editPhotoDescription("+data.id+", "+id+", \""+data.description+"\")' />";
	//rate_link = '<a style="text-decoration:none" onclick="ratePhoto('+data.id+', '+id+', \''+is_widget+'\')"><span style="font-size:11px; color:blue; cursor:pointer">rate photo</span></a>';
	total_votes = '<span style="font-size:11px">('+data.votes+' votes)</span>';	
	
	edit_description = window.myConquests == true ? '<div class="votes"><div style="float:left; width:80px; overflow: hidden; height: 15px">'+data.description+'</div><div style="float:left"> '+edit_link+'</div></div>' : ""; 
	
	onclick_str = (window.is_widget == true) ? 'onclick="loadImage(\''+data.path+'\')"' : 'onclick="loadAllPhotos('+id+', '+data.id+')"'; 
	
	if (window.is_widget == true) { 
		row_str +=  '<div class="photo-wrapper">'+
				'<div class="image-wrapper" '+onclick_str+'>'+
				'	<img style="margin-top:1px;cursor:pointer" src="'+window.bUrl+'/img/trails/thumbs/'+data.path+'" title="'+data.description+'"/>'+
				'</div>';
		row_str += "<div id='photo-rating' onclick='ratePhoto("+data.id+", "+id+")'>"+ 
			"<div style='margin-left:18px'><div id='rate-photo-load' ></div>"+
			"<input type='radio' "+check1+" class='star' name='w_rating"+data.id+"' value='1'  />"+
			"<input type='radio' "+check2+" class='star' name='w_rating"+data.id+"' value='2'  />"+
			"<input type='radio' "+check3+" class='star' name='w_rating"+data.id+"' value='3' />"+
			"<input type='radio' "+check4+" class='star' name='w_rating"+data.id+"' value='4' />"+
			"<input type='radio' "+check5+" class='star' name='w_rating"+data.id+"' value='5' />"+
			'</div></div><br /><div style="float:left; margin-left:30px; font-size:11px">('+data.votes+' votes) </div><div style="float:left"> '+delete_link+'</div></div>';
	} else { 
		row_str += ''+
		'<div class="image_frame">'+
			'<img style="cursor:pointer" src="'+window.bUrl+'/img/trails/thumbs/'+data.path+'" '+onclick_str+' title="'+data.description+'" />'+
			"<div style='margin-left:18px'><div id='photo-rating' onclick='ratePhoto("+data.id+", "+id+")'>"+
				"<div id='rate-photo-load' ></div>"+
				"<input type='radio' "+check1+" class='star' name='rating"+data.id+"' value='1'  />"+
				"<input type='radio' "+check2+" class='star' name='rating"+data.id+"' value='2'  />"+
				"<input type='radio' "+check3+" class='star' name='rating"+data.id+"' value='3' />"+
				"<input type='radio' "+check4+" class='star' name='rating"+data.id+"' value='4' />"+
				"<input type='radio' "+check5+" class='star' name='rating"+data.id+"' value='5' />"+
			'</div>'+
			'<div class="votes"><div style="float:left; margin-left:20px;">('+data.votes+' votes) </div><div style="float:left"> '+delete_link+'</div></div>'+
			edit_description+
		'</div></div>';
	}
	
	return row_str;
}



