(function($){$.gaTracker=function(code,opts){opts=jQuery.extend({external:'/link/external/',mailto:'/link/mailtos/',download:'/link/downloads/',extensions:['pdf','doc','xls','csv','jpg','gif','mp3','swf','txt','ppt','zip','gz','dmg','xml','js']},opts);function decorateLink(u){var trackingURL='';if(u.indexOf('://')==-1&&u.indexOf('mailto:')!=0){var ext=u.split('.')[u.split('.').length-1];var exts=opts.extensions;for(i=0;i<exts.length;i++){if(ext==exts[i]){trackingURL=opts.download+u;break;}}}else{if(u.indexOf('mailto:')==0){trackingURL=opts.mailto+u.substring(7);}else{var regex=/([^:\/]+)*(?::\/\/)*([^:\/]+)(:[0-9]+)*\/?/i;var linkparts=regex.exec(u);var urlparts=regex.exec(location.href);if(linkparts[2]!=urlparts[2])trackingURL=opts.external+u;}}
return trackingURL;}
function addTracking(){$.pageTracker=_gat._getTracker(code);$.pageTracker._initData();$.pageTracker._trackPageview();$('a').each(function(){var u=$(this).attr('href');if(typeof(u)!='undefined'){var newLink=decorateLink(u);if(newLink.length){$(this).click(function(){$.pageTracker._trackPageview(newLink);});}}});}
function initGA(){try{var gaURL=(location.href.indexOf('https')==0?'https://ssl':'http://www');gaURL+='.google-analytics.com/ga.js';$.ajax({cache:true,url:gaURL,dataType:"script",success:function(){addTracking();},error:function(){console.log('Failed to load Google Analytics:'+err);}});}catch(err){console.log('Failed to load Google Analytics:'+err);}}
initGA();};})(jQuery);
(function($){$.fn.mailinglistify=function(email_field,opts){opts=jQuery.extend({demo:false,default_value:'E-mail Address',processing_class:'_processing',submit_field:'input.submit',ajax_loader_img:'images/tpl/ajax_loader.gif',successMsg:'<div class="status">Thanks!</div>',failureMsg:'<div class="status">Error! Please try again later.</div>',},opts);_form=$(this);_email=_form.find(email_field);_submit=_form.find(opts.submit_field);_email.val(opts.default_value).focus(function(){if(_email.val()==opts.default_value)
_email.val('');}).blur(function(){if(_email.val()=='')
_email.val(opts.default_value);});_form.submit(function(){if(_form.hasClass(opts.processing_class))
return false;_form.addClass(opts.processing_class);var old_src=_submit.attr('src');_submit.attr('src',opts.ajax_loader_img);if(!opts.demo){$.ajax({type:"POST",url:_form.attr('action'),data:_form.serialize(),success:function(){$(opts.successMsg).appendTo(_form).animate({opacity:'+=0'},2000).fadeOut(function(){$(this).remove();});},error:function(XMLHttpRequest){if(XMLHttpRequest.status==400){failureMsg='<div class="status">'+XMLHttpRequest.responseText+'</div>';}
else{failureMsg=opts.failureMsg;}
$(failureMsg).appendTo(_form).animate({opacity:'+=0'},4000).fadeOut(function(){$(this).remove();});},complete:function(){_form.removeClass(opts.processing_class);_submit.attr('src',old_src);}});}
else{$(opts.successMsg).appendTo(_form).animate({opacity:'+=0'},2000).fadeOut(function(){$(this).remove();});_form.removeClass(opts.processing_class);_submit.attr('src',old_src);}
_email.val('').blur();return false;});};})(jQuery);
(function($){$.qTracker=function(acct,opts){opts=jQuery.extend({},opts);window._qoptions={qacct:acct,};function initQuantcast(){try{$.ajax({cache:true,dataType:"script",url:"http://edge.quantserve.com/quant.js",});}catch(err){console.log('Failed to load Quantcast:'+err);}}
initQuantcast();};})(jQuery);
