CmdUtils.CreateCommand({ name: "stock-quote", homepage: "http://hoffstein.net/ubiquity/stock-quote.html", author: { name: "Ben Hoffstein", email: "ben@hoffstein.net"}, license: "MPL", description: "Displays a stock quote for the given ticker.", takes: { ticker: noun_arb_text }, _getQuoteUrl: function(searchText) { var url = ''; var template = url.replace("{ticker}", searchText); var data = { ticker: searchText }; return CmdUtils.renderTemplate(template, data); }, preview: function(pblock, ticker) { var searchText = jQuery.trim(ticker.text); if(searchText.length < 1) { pblock.innerHTML = "Retrieves stock quote for ticker"; return; } var previewTemplate = "Retrieves stock quote for ${query}"; var previewData = "Stock quote for " + searchText + "

" + this._getQuoteUrl(searchText); pblock.innerHTML = previewData; }, execute: function(ticker) { var url = "http://finance.yahoo.com/q?s={QUERY}"; var query = ticker.text; var urlString = url.replace("{QUERY}", query); Utils.openUrlInBrowser(urlString); } });