var GM={
    nlSubmit:function(form){
        if ( !(form=$(form)) || !$F('moxiefan') ){return false;}
        form.action = form.action.replace(/web-subscribe/, 'ajax-subscribe');
        $('nlStatus').innerHTML = '<img src="' + GM.progImg.src + '" alt="progress" />'
          + ' Hang on...';
        new Effect.SlideUp('nlForm',{duration:0.5});
        form.request({onComplete:GM.nlCatch});
        return false;
    },
    ajaxResponse:function(ajax){
        var json = typeof ajax == 'object' ? ajax.responseText : ajax;
        var ajaxJSON = '';
        try { eval(json); }
        catch (e) { ajaxJSON = json; }
        return ajaxJSON;
    },
    nlCatch:function(ajax){
        var json = GM.ajaxResponse(ajax);
        if (!json.error && !json.html) {
            json.error = "Sorry, we're having trouble connecting to the "
              + "mailing list. Please try again later or send a note to "
              + '<a href="mailto:support@globalmoxie.com">support@globalmoxie.com'
              + '</a>.';
        }
        if(json.error){
            $('nlStatus').innerHTML= '<strong style="color:#f99">'
              + json.error + '</strong>';
            new Effect.SlideDown('nlForm',{duration:0.5});
        }
        else {
            $('nlStatus').innerHTML=json.html;
        }
    },
    logDoc:function(evt){ //track document clicks
        var e = Event.element(evt);
        if(e.nodeType == 3) { e = e.parentNode; } //Safari bug
        if (e.tagName=='A') {
          var match = e.href.match(/(\/bm~doc\/.*)/);
          if (match) { GM.pageTracker._trackPageview(match[1]); }
        }
        e=null;
    }
};
(GM.progImg = new Image).src='/gmpix/progress.gif';

// google analytics
if(_gat){
    BM.onDOM.addEvent(function(){
      GM.pageTracker = _gat._getTracker("UA-2857353-2");
      GM.pageTracker._initData();
      GM.pageTracker._trackPageview();
      Event.observe(document.body,'click',GM.logDoc);
    });
}
