const CIRIP_STATUS_MAXLEN = 140;
CmdUtils.CreateCommand({
  name: "cirip-post",
  icon: "http://www.cirip.ro/favicon.ico",
  takes: {status: noun_arb_text},
  description: "cirip your message in 140 chars",
  help: "Post your message on <a href=\"http://cirip.ro\">cirip.ro</a>. You need to create an account before.",
  based: "on Twitter internal Ubiquity command",
  preview: function(previewBlock, directObj) {
    var statusText = directObj.text;
    var previewTemplate = "<b>${status}</b><br /><br />characters remaining: <b>${chars}</b>";
    var truncateTemplate = "<br />The last <b>${truncate}</b> characters will be truncated!";
    var previewData = {
      status: statusText,
      chars: CIRIP_STATUS_MAXLEN - statusText.length
    };

    var previewHTML = CmdUtils.renderTemplate(previewTemplate, previewData);

    if(previewData.chars < 0) {
      var truncateData = {
        truncate: 0 - previewData.chars
      };

      previewHTML += CmdUtils.renderTemplate(truncateTemplate, truncateData);
    }

    previewBlock.innerHTML = previewHTML;
  },
  execute: function(directObj) {
    var statusText = directObj.text;
    if(statusText.length < 1) {
      displayMessage("cirip requires a status to be entered");
      return;
    }

    var updateUrl = "http://www.cirip.ro/statuses/update.json";
    var updateParams = {
      status: statusText
    };

    jQuery.ajax({
      type: "POST",
      url: updateUrl,
      data: updateParams,
      dataType: "text",
      error: function(XMLHttpRequest, textStatus, errorThrown) {
        displayMessage("cirip.ro error - status not updated | " + textStatus);
      },
      success: function(data,textStatus) {
        displayMessage("cirip.ro status updated");
      }
    });
  }
}); 

CmdUtils.CreateCommand({
  name: "cirip",
  icon: "http://www.cirip.ro/favicon.ico",
  description: "display last 5 messages from cirip.ro",
  help: "display last 5 messages from cirip.ro",
  preview: function(pblock, directObject) { 
    var noDisplay = 5
    var url = "http://www.cirip.ro/statuses/public_timeline.json";
    var template = "{for item in results}${item.text} (${item.user.username}|${item.source})<hr/>{/for}";

    jQuery.get(url, function(data){
      eval(data);
      cirip = cirip.splice(0,noDisplay);
      pblock.innerHTML = CmdUtils.renderTemplate(template, {results: cirip});
    });   
  },
  execute: function(directObj) {
    Utils.openUrlInBrowser("http://www.cirip.ro/cirip/recente");
  }  
})