plugin.id = "talkbacklink";

plugin.init =
function init(glob)
{
    plugin.major = 0;
    plugin.minor = 1;
    plugin.version = plugin.major + "." + plugin.minor;
    plugin.description = "Creates links from Mozilla talkback IDs.";
}

plugin.disable =
function disable()
{
    client.munger.delRule("talkbacklink");

    display(plugin.id+' - plugin disabled');

    return true;
}

plugin.enable =
function enable()
{
    client.munger.addRule("talkbacklink",
                          /(?:\s|\W|^)(TB\d+[A-Z]?)(?:\s|\W|$)/,
                          insertTalkbackLink);

    display(plugin.id+' - plugin enabled');

    return true;
}

function insertTalkbackLink (matchText, containerTag, eventData)
{
    var anchor = document.createElementNS ("http://www.w3.org/1999/xhtml",
                                           "html:a");

    anchor.setAttribute ("href",
        "http://talkback-public.mozilla.org/" +
        "talkback/fastfind.jsp?search=2&type=iid&id=" + matchText);
    anchor.setAttribute ("class", "chatzilla-link");
    anchor.setAttribute ("target", "_content");
    insertHyphenatedWord (matchText, anchor);
    containerTag.appendChild (anchor);
}
