CmdUtils.CreateCommand({
  name: "agentarius-info",
  icon: "http://www.agentarius.net/favicon.ico",
  description: "Get information about an user-agent-string from agentarius.net",
  help: "Mark an User-Agent-String an run Ubiquity with the command 'agentarius'",
  author: { name: "Kristof Zerbe", email: "kristof@agentarius.net"},
  license: "GPL",
  homepage: "http://www.agentarius.net",  
  arguments: [{role: 'object', nountype: noun_arb_text, label: 'user-agent-string'}],

  preview: function preview(pblock, args) {
    
    jQuery.getJSON("http://www.agentarius.net/service/ubUseragentInfo.ashx", {
        ua: encodeURIComponent(args.object.html),
        cn: false 
    },
    // get the preview template
    function(responseData) {
        jQuery.get("http://www.agentarius.net/service/ubPreviewTemplate.htm",
            function(previewTemplate) {
                // setup preview data
                var previewData = {
                    icon: responseData.useragentinfo.useragent[0].group.icon,
                    group: responseData.useragentinfo.useragent[0].group.name,
                    category: responseData.useragentinfo.useragent[0].group.category.name
                };
                // show preview
                pblock.innerHTML = CmdUtils.renderTemplate(previewTemplate, previewData);
              });
          });

  },

  execute: function execute(args) {

    // get the information about the selected user-agent
    jQuery.getJSON("http://www.agentarius.net/service/ubUseragentInfo.ashx", {
        ua: encodeURIComponent(args.object.text),
        cn: true 
    },
    function(responseData) {
        // open the agentarius group page
        Utils.openUrlInBrowser(responseData.useragentinfo.useragent[0].group.url);
    });
  
  }
});
