// add a notice encoded as JSON into the current timeline // RealtimeUpdate = { _userid: 0, _replyurl: '', _favorurl: '', _deleteurl: '', init: function(userid, replyurl, favorurl, deleteurl) { RealtimeUpdate._userid = userid; RealtimeUpdate._replyurl = replyurl; RealtimeUpdate._favorurl = favorurl; RealtimeUpdate._deleteurl = deleteurl; }, receive: function(data) { id = data.id; // Don't add it if it already exists if ($("#notice-"+id).length > 0) { return; } var noticeItem = RealtimeUpdate.makeNoticeItem(data); $("#notices_primary .notices").prepend(noticeItem, true); $("#notices_primary .notice:first").css({display:"none"}); $("#notices_primary .notice:first").fadeIn(1000); NoticeReply(); }, makeNoticeItem: function(data) { user = data['user']; html = data['html'].replace(/&/g,'&').replace(/</g,'<').replace(/>/g,'>').replace(/"/g,'"'); source = data['source'].replace(/&/g,'&').replace(/</g,'<').replace(/>/g,'>').replace(/"/g,'"'); ni = "
  • "+ "
    "+ ""+ ""+ "\""+user['screen_name']+"\"/"+ ""+user['screen_name']+""+ ""+ ""+ "

    "+html+"

    "+ "
    "+ "
    "+ "
    "+ "
    Published
    "+ "
    "+ ""+ "a few seconds ago"+ " "+ "
    "+ "
    "+ "
    "+ "
    From
    "+ "
    "+source+"
    "+ // may have a link, I think "
    "; if (data['in_reply_to_status_id']) { ni = ni+"
    "+ "
    To
    "+ "
    "+ "in reply to"+ "
    "+ "
    "; } ni = ni+"
    "+ "
    "; if (RealtimeUpdate._userid != 0) { var input = $("form#form_notice fieldset input#token"); var session_key = input.val(); ni = ni+RealtimeUpdate.makeFavoriteForm(data['id'], session_key); ni = ni+RealtimeUpdate.makeReplyLink(data['id'], data['user']['screen_name']); if (RealtimeUpdate._userid == data['user']['id']) { ni = ni+RealtimeUpdate.makeDeleteLink(data['id']); } } ni = ni+"
    "+ "
  • "; return ni; }, makeFavoriteForm: function(id, session_key) { var ff; ff = "
    "+ "
    "+ "Favor this notice"+ // XXX: i18n ""+ ""+ ""+ "
    "+ "
    "; return ff; }, makeReplyLink: function(id, nickname) { var rl; rl = "
    "+ "
    Reply to this notice
    "+ "
    "+ "Reply "+id+""+ ""+ "
    "+ "
    "; return rl; }, makeDeleteLink: function(id) { var dl, delurl; delurl = RealtimeUpdate._deleteurl.replace("0000000000", id); dl = "
    "+ "
    Delete this notice
    "+ "
    "+ "Delete"+ "
    "+ "
    "; return dl; }, }