/* FOR FEEDS */
function mp_get_feed(container, url, limit){
	if(!url){ url = 'http://labs.laulima.com/activity/feed/'; }
	var nonce = $(container).attr('data-nonce');
	jQuery.ajax({
		url:mp_root_url+'mp-includes/ajax/get-feed.php',
		data:({ nonce: nonce, url: url, limit: limit }),
		type: "POST",
		dataType: 'html',
		success: function(result){
			$(container).html(result);
			mongopress_ajax_enqueue_functions();
			return false;
		}
	});
}
function mp_fetch_feeds(){
	$('.fetch-feed').each(function(i){
		var container = $(this);
		var url = $(this).attr('data-url');
		var limit = $(this).attr('data-limit');
		mp_get_feed(container, url, limit);
	});
}

function mp_get_avatar(object){
	var this_avatar = $(object);
	var this_src = $(this_avatar).attr('src');
	var nonce = $(this_avatar).attr('data-avatar-nonce');
	var user_id = $(this_avatar).attr('data-user-id');
	var default_avatar = mp_root_url+'mp-includes/images/add_image.png';
	$(this_avatar).addClass('loading');
	$(this_avatar).attr('src','');
	$.ajax({
		url: mp_root_url+'mp-includes/ajax/get-avatar.php',
		data:({ user_id: user_id, nonce: nonce }),
		type: "POST",
		dataType: 'json',
		success: function(result){
			if(result===null){ return false; }
			if(result.success){
				if(result.message.entry){
					$(this_avatar).attr('src',result.message.entry[0]['thumbnailUrl']);
				}else{
					$(this_avatar).attr('src',result.message);
				}
			}else{
				if(result.message){
					alert(result.message);
				}else{
					$(this_avatar).removeClass('loading').attr('src',default_avatar);
				}
			}
			$(this_avatar).removeClass('loading');
			mongopress_ajax_enqueue_functions();
			return false;
		},
		failure: function(){
			return false;
		}
	});
}
function mp_fetch_avatars(){
	$('img.fetch-avatar').each(function(){
		var avatar = $(this);
		mp_get_avatar(avatar);
	});
}

function mp_get_content(container){
	var this_container = $(container);
	var mongo_id = $(this_container).attr('data-mongo-id');
	var nonce = $(this_container).attr('data-nonce');
	var shortcodes = $(this_container).attr('data-shortcodes');
	$(this_container).addClass('loading');
	$.ajax({
		url:mp_root_url+'mp-includes/ajax/get-object.php',
		data:({ nonce: nonce, mongo_id: mongo_id, shortcodes: shortcodes }),
		type: "POST",
		dataType: 'json',
		success: function(result){
			if(result.success==true){
				$(container).html(result.content);
				$(this_container).removeClass('loading');
			}
			mongopress_ajax_enqueue_functions();
		}
	});
}
function mp_fetch_contents(){
	$('.fetch-content').each(function(){
		var container = $(this);
		mp_get_content(container);
	});
}
function mp_return_content(id, adhoc_nonce, use_shortcodes, callback){
	if(!use_shortcodes){ use_shortcodes = false; }
	if(!adhoc_nonce){ adhoc_nonce = false; }
	if((id)&&(adhoc_nonce)){
		var mongo_id = id;
		var nonce = adhoc_nonce;
		var shortcodes = use_shortcodes;
		$.ajax({
			url:mp_root_url+'mp-includes/ajax/get-object.php',
			data:({ nonce: nonce, mongo_id: mongo_id, shortcodes: shortcodes }),
			type: "POST",
			dataType: 'json',
			success: function(result){
				if(result.success==true){
					callback(result);
				}else{
					callback(false);
				}
			}
		});
	}else{
		callback(false);
	}
}

/* UNTIL WE CAN ENQUE WITH AJAX WE HAVE THIS FUNCTION TO RUN WHEN AJAX-IFYING THINGS */
function mongopress_ajax_enqueue_functions(){
	if(typeof fitVids == 'function') {
		$(".mp-fitvid").fitVids();
	}else{
		$.getScript(mp_root_url+"mp-includes/js/fitvid.js", function() {
			//$(".mp-fitvid").fitVids();
			// Already ran from within the FitVid file so no need to call again
		});
	}
}

/* FIRE OFF THE FUNCTIONS */
$(window).load(function(){
	mp_fetch_feeds();
	mp_fetch_avatars();
	mp_fetch_contents();
});
