var addUpdateUrl = "status.php", getUpdateUrl = "status.php";
var userName, userUrl, photoUrl ;

function share() {
    RPXNOW.loadAndRun(['Social'], function () {
	var activity = new RPXNOW.Social.Activity(
	    "Share your comment",
	    "This is a test of comment sharing. Sorry for the spam. Please don't defriend me just yet.",
	    "http://hughw.net/#i1");
	RPXNOW.Social.publishActivity(activity);
    });
}
function makeUserLink(classname, name, url, photo){
    var strClass = classname ? ' class="' + classname + '"': "";
    var span = $('<span' + strClass + '></span>');
    var nameLink = $('<a href="#"></a>');
    nameLink.attr('href', url || '#').text(name);
    if (photo) {
	var img = $('<img class="statushead" src="#" alt="">');
	img.attr('src', photo || '#').attr('alt', name || 'Anonymous').attr('title', name || 'Anonymous');
	span.append(img);
    }
    span.append(nameLink);
    return span;
}

function onGotStatuses (statuses){
    var div = $('#statuses');
    $("#statuses div").remove();
    var list = statuses.statuses;
    for (var i=0; i< list.length; i++){
	var status = list[i];
	var innerDiv = $('<div class="onestatus"></div>');
	innerDiv.append(makeUserLink("statushead", status.userName, status.userUrl, status.photoUrl));
	var span = $('<span class="statustext"></span>');
	span.text(status.status);
	innerDiv.append(span);
	div.append(innerDiv);
    }
}

function refresh() {
    $.ajax ({
	type: 'GET',
	url: getUpdateUrl,
	dataType: 'json',
	success: onGotStatuses
    });
}
function addUpdate() {
    $.ajax({
	type: 'POST',
	url: addUpdateUrl,
	data: {
	    status: $('#newstatus').val(),
	    userUrl: userUrl,
	    userName: userName,
	    photoUrl: photoUrl,
	    date: new Date(),
	    tz: new Date().getTimezoneOffset()
	},
	success: function () {
	    $('#newstatus').val('');
	    refresh();
	}
    });
}
function clearTextArea() {
    $('#newstatus').text('').unbind('click', clearTextArea);
}
function decodePhpUri (uri){
    try {
	return uri.replace(/\+/g, " ")
	    .replace(/%3A/g, ":")
	    .replace(/%2F/g, "/")
	    .replace(/%3F/g, "?")
	    .replace(/%3D/g, "=");
    } catch(e) {
	return undefined;
    }
}
function readCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for(var i=0;i < ca.length;i++) {
	var c = ca[i];
	while (c.charAt(0)==' ') c = c.substring(1,c.length);
	if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    }
    return null;
}

