var noun_type_lifespan = new CmdUtils.NounType("Lifespan", ["hour", "day", "week", "month"]); CmdUtils.CreateCommand( { name: "jetable", description: "Creates a temporary email address from Jetable.org.", icon: "http://www.jetable.org/favicon.ico", homepage: "http://www.makadia.com", author: { name: "Svapan Makadia", email: "codewzrd@hotmail.com"}, help: "Enter email address and a span {hour, day, week, month}.", takes: {"email": noun_arb_text}, modifiers: {span: noun_type_lifespan}, preview: function(pBlock) { var html = "Inserts a temporary Jetable email address in the current editable text area."; html += "
Warning, it takes a few seconds to retrieve the email."; pBlock.innerHTML = html; }, execute: function(directObj, lifespan) { switch(lifespan.span.text) { case "hour": span = 3600; break; case "day": span = 86400; break; case "week": span = 604800; break; case "month": span = 2592000; break; default: span = 3600; } var params = {email:directObj.text, time:span}; jQuery.ajax( { type: "POST", url: "http://www.jetable.org/en/confirm", data: params, error: function() { displayMessage("Could not get temporary email address."); }, success: function(msg) { var tempElement = CmdUtils.getHiddenWindow().document.createElementNS("http://www.w3.org/1999/xhtml", "div"); tempElement.innerHTML = msg; //CmdUtils.log(jQuery(tempElement).find("#aliasgenerated").text()); var tempEmail = jQuery(tempElement).find("#aliasgenerated").text(); CmdUtils.setSelection(tempEmail); displayMessage("Temporary Jetable email address is: " + tempEmail); } }) } });