var truncate = function (str, limit) {
    var bits, i;
    bits = str.split('');
    if (bits.length > limit) {
        for (i = bits.length - 1; i > -1; --i) {
            if (i > limit) {
                bits.length = i;
            }
            else if (' ' === bits[i]) {
                bits.length = i;
                break;
            }
        }
        bits.push('...');
    }
    return bits.join('');
};


function recent(resp) {
	var posts = resp.posts;
	$('#recent .loading').replaceWith('<ul/>');
	$ul = $('#recent ul');
	for (var i=0; i<posts.length; i++) {
		var p = posts[i];
                var mytitle = p['regular-title'] || p['link-text'] || p['quote-text'] || p['photo-caption'] || p['video-caption'] || p['question'] || null;
		if (mytitle){
					if (mytitle.length > 65) {
						var title = truncate(mytitle, 65);
					}else{
						var title = mytitle;
					}
			$ul.append('<li><a href="'+p['url']+'">'+title+'</a></li>');
		}
	}
}


function featured(resp) {
	var posts = resp.posts;
	$('#featured .loading').replaceWith('<ul/>');
	$ul = $('#featured ul');
	for (var i=0; i<posts.length; i++) {
		var p = posts[i];
                var mytitle = p['regular-title'] || p['link-text'] || p['quote-text'] || p['photo-caption'] || p['video-caption'] || p['question'] || null;
		if (mytitle){
					if (mytitle.length > 65) {
						var title = truncate(mytitle, 65);
					}else{
						var title = mytitle;
					}
			$ul.append('<li><a href="'+p['url']+'">'+title+'</a></li>');
		}
	}
}

function musicbiz(resp) {
	var posts = resp.posts;
	$('#musicbiz .loading').replaceWith('<ul/>');
	$ul = $('#musicbiz ul');
	for (var i=0; i<posts.length; i++) {
		var p = posts[i];
                var mytitle = p['regular-title'] || p['link-text'] || p['quote-text'] || p['photo-caption'] || p['video-caption'] || p['question'] || null;
		if (mytitle){
					if (mytitle.length > 65) {
						var title = truncate(mytitle, 65);
					}else{
						var title = mytitle;
					}
			$ul.append('<li><a href="'+p['url']+'">'+title+'</a></li>');
		}
	}
}
