var mtCookieName="mt_blog_user",mtCookieDomain=".codemonkeyramblings.com",mtCookiePath="/",mtCookieTimeout=14400;function mtHide(a){if(a=typeof a=="string"?document.getElementById(a):a)a.style.display="none"}function mtShow(a){if(a=typeof a=="string"?document.getElementById(a):a)a.style.display="block"}function mtAttachEvent(a,b){a="on"+a;var c=window[a];window[a]=typeof c!="function"?b:function(d){c(d);return b(d)}}function mtFireEvent(a,b){a=window["on"+a];if(typeof a=="function")return a(b)}
function mtRelativeDate(a,b){a=Math.floor(((new Date).getTime()-a.getTime())/1E3);var c;if(a<60)c="moments ago";else if(a<=86400){c=Math.floor(a/3600);a=Math.floor(a%3600/60);c=c==1?"1 hour ago":c>1?"2 hours ago".replace(/2/,c):a==1?"1 minute ago":"2 minutes ago".replace(/2/,a)}else if(a<=604800){var d=Math.floor(a/86400);c=Math.floor(a%86400/3600);c=d==1?"1 day ago":d>1?"2 days ago".replace(/2/,d):c==1?"1 hour ago":"2 hours ago".replace(/2/,c)}return c?c:b}
function mtEditLink(a,b){var c=mtGetUser();c&&a&&b&&c.id==b&&document.write('<a href="mt.cgi?__mode=view&amp;_type=entry&amp;id='+a+'">Edit</a>')}function mtCommentFormOnFocus(){mtShowCaptcha()}var mtCaptchaVisible=false;function mtShowCaptcha(){var a=mtGetUser();if(!(a&&a.is_authenticated))if(!mtCaptchaVisible)if(a=document.getElementById("comments-open-captcha")){a.innerHTML="";mtCaptchaVisible=true}}var is_preview,user;
function mtSetUser(a){if(a){user=a;mtSaveUser();mtFireEvent("usersignin")}}function mtEscapeJS(a){return a=a.replace(/'/g,"&apos;")}function mtUnescapeJS(a){return a=a.replace(/&apos;/g,"'")}
function mtBakeUserCookie(a){var b="";if(a.name)b+="name:'"+mtEscapeJS(a.name)+"';";if(a.url)b+="url:'"+mtEscapeJS(a.url)+"';";if(a.email)b+="email:'"+mtEscapeJS(a.email)+"';";if(a.is_authenticated)b+="is_authenticated:'1';";if(a.profile)b+="profile:'"+mtEscapeJS(a.profile)+"';";if(a.userpic)b+="userpic:'"+mtEscapeJS(a.userpic)+"';";if(a.sid)b+="sid:'"+mtEscapeJS(a.sid)+"';";b+="is_trusted:'"+(a.is_trusted?"1":"0")+"';";b+="is_author:'"+(a.is_author?"1":"0")+"';";b+="is_banned:'"+(a.is_banned?"1":
"0")+"';";b+="can_post:'"+(a.can_post?"1":"0")+"';";b+="can_comment:'"+(a.can_comment?"1":"0")+"';";return b=b.replace(/;$/,"")}
function mtUnbakeUserCookie(a){if(a){for(var b={},c;c=a.match(/^((name|url|email|is_authenticated|profile|userpic|sid|is_trusted|is_author|is_banned|can_post|can_comment):'([^']+?)';?)/);){a=a.substring(c[1].length);b[c[2]]=c[2].match(/^(is|can)_/)?c[3]=="1"?true:false:mtUnescapeJS(c[3])}if(b.is_authenticated)b.is_anonymous=false;else{b.is_anonymous=true;b.can_post=false;b.is_author=false;b.is_banned=false;b.is_trusted=false}return b}}
function mtGetUser(){if(!user){var a=mtGetCookie(mtCookieName);if(!a)return;user=mtUnbakeUserCookie(a);if(!user){user={};user.is_anonymous=true;user.can_post=false;user.is_author=false;user.is_banned=false;user.is_trusted=false}}return user}var mtFetchedUser=false;
function mtFetchUser(a){a||(a="mtSetUser");if(a=="mtSetUser"&&mtGetUser()){a=document.URL;a=a.replace(/#.+$/,"");a+="#comments-open";location.href=a}else{mtFetchedUser=true;var b=document.createElement("script"),c=(new Date).getTime();b.src="http://www.codemonkeyramblings.com/mt/mt-comments.cgi?__mode=session_js&blog_id=69&jsonp="+a+"&ts="+c;document.getElementsByTagName("head")[0].appendChild(b)}}function mtRememberMeOnClick(a){a.checked||mtClearUser(a.form);return true}var mtRequestSubmitted=false;
function mtCommentOnSubmit(a){if(!mtRequestSubmitted){mtRequestSubmitted=true;if(a.armor)a.armor.value="0a04b36e7ed594762d382bdfde4f78f05b304f29";a.bakecookie&&a.bakecookie.checked&&mtSaveUser(a);if(a.preview_button)a.preview_button.disabled=true;if(a.post)a.post.disabled=true;a=mtGetUser();if(!is_preview&&a&&a.is_authenticated){mtFetchedUser=false;mtFetchUser("mtCommentSessionVerify");return false}return true}return false}
function mtCommentSessionVerify(a){var b=mtGetUser(),c=document.comments_form;if(b&&a&&a.sid&&b.sid==a.sid)c.submit();else{alert("Your session has expired. Please sign in again to comment.");mtClearUser();mtFireEvent("usersignin")}}
function mtUserOnLoad(){var a=mtGetUser();if(document.getElementById("comments-form")){if(a&&a.is_authenticated){mtShow("comments-form");mtHide("comments-open-data");mtCaptchaVisible&&mtHide("comments-open-captcha")}a&&a.is_banned&&mtHide("comments-form");is_preview?mtShowCaptcha():mtShowGreeting();var b=document.comments_form;if(b){if(a&&a.is_anonymous){if(a.email)b.email.value=a.email;if(a.name)b.author.value=a.name;if(a.url)b.url.value=a.url;if(b.bakecookie)b.bakecookie.checked=a.name||a.email}else if(a&&
a.sid&&b.sid)b.sid.value=a.sid;if(b.post.disabled)b.post.disabled=false;if(b.preview_button.disabled)b.preview_button.disabled=false;mtRequestSubmitted=false}}}function mtEntryOnLoad(){mtHide("trackbacks-info");mtFireEvent("usersignin")}function mtEntryOnUnload(){if(mtRequestSubmitted){var a=document.comments_form;if(a){if(a.post&&a.post.disabled)a.post.disabled=false;if(a.preview_button&&a.preview_button.disabled)a.preview_button.disabled=false}mtRequestSubmitted=false}return true}
mtAttachEvent("usersignin",mtUserOnLoad);function mtSignIn(){var a=document.URL;a=a.replace(/#.+/,"");var b="http://www.codemonkeyramblings.com/mt/mt-cp.cgi?__mode=login&blog_id=69";b+=is_preview?document.comments_form?"&entry_id="+document.comments_form.entry_id.value:"&return_url=http%3A%2F%2Fwww.codemonkeyramblings.com%2Ftest_blogs%2Fcarrington_professional_test_blog%2F":"&return_url="+encodeURIComponent(a);mtClearUser();location.href=b}
function mtSignInOnClick(a){var b;if(a)(b=document.getElementById(a))||(b=document.getElementById("comment-form-external-auth"));if(b)b.innerHTML='Signing in... <span class="status-indicator">&nbsp;</span>';mtClearUser();mtFetchUser("mtSetUserOrLogin");return false}function mtSetUserOrLogin(a){a&&a.is_authenticated?mtSetUser(a):mtSignIn()}
function mtSignOut(a){mtClearUser();a=document.URL;a=a.replace(/#.+/,"");var b="http://www.codemonkeyramblings.com/mt/mt-cp.cgi?__mode=logout&static=0";if(is_preview)if(document.comments_form){a=document.comments_form.entry_id.value;b+="&entry_id="+a}else b+="&return_url=http%3A%2F%2Fwww.codemonkeyramblings.com%2Ftest_blogs%2Fcarrington_professional_test_blog%2F";else b+="&return_url="+encodeURIComponent(a);location.href=b}function mtSignOutOnClick(){mtSignOut();return false}
function mtShowGreeting(){if(document.comments_form){var a=document.getElementById("comment-greeting");a||(a=document.getElementById("comment-form-external-auth"));if(a){var b;if((b=mtGetUser())&&b.is_authenticated)if(b.is_banned)b='You do not have permission to comment on this blog. (<a href="javascript:void(0);" onclick="return mtSignOutOnClick();">sign out</a>)';else{var c;if(b.is_author){c='<a href="http://www.codemonkeyramblings.com/mt/mt-comments.cgi?__mode=edit_profile&return_url='+encodeURIComponent(location.href);
c+='">'+b.name+"</a>"}else c=b.url?'<a href="'+b.url+'">'+b.name+"</a>":b.name;b='Thanks for signing in, __NAME__. (<a href="javascript:void(0)" onclick="return mtSignOutOnClick();">sign out</a>)';b=b.replace(/__NAME__/,c)}else b='<a href="javascript:void(0)" onclick="return mtSignInOnClick(\'comment-greeting\')">Sign in</a> to comment, or comment anonymously.';a.innerHTML=b}}}
function mtReplyCommentOnClick(a,b){mtShow("comment-form-reply");var c=document.getElementById("comment-reply"),d=document.getElementById("comment-reply-label"),e=document.getElementById("comment-text"),f='Replying to <a href="#comment-__PARENT__" onclick="location.href=this.href; return false">comment from __AUTHOR__</a>';f=f.replace(/__PARENT__/,a);f=f.replace(/__AUTHOR__/,b);d.innerHTML=f;c.value=a;c.checked=true;try{e.focus()}catch(g){}mtSetCommentParentID()}
function mtSetCommentParentID(){var a=document.getElementById("comment-reply"),b=document.getElementById("comment-parent-id");if(a&&b){var c=0;if(a.checked==true)c=a.value;b.value=c}}
function mtSaveUser(a){if(!is_preview){var b=mtGetUser();if(a&&(!b||b.is_anonymous)){if(!b){b={};b.is_authenticated=false;b.can_comment=true;b.is_author=false;b.is_banned=false;b.is_anonymous=true;b.is_trusted=false}if(a.author!=undefined)b.name=a.author.value;if(a.email!=undefined)b.email=a.email.value;if(a.url!=undefined)b.url=a.url.value}if(b){var c=mtCookieTimeout*1E3;if(b.is_anonymous&&a&&a.bakecookie&&a.bakecookie.checked)c=31536E6;a=new Date;mtFixDate(a);a.setTime(a.getTime()+c);b=mtBakeUserCookie(b);
mtSetCookie(mtCookieName,b,a,mtCookiePath,mtCookieDomain,location.protocol=="https:")}}}function mtClearUser(){user=null;mtDeleteCookie(mtCookieName,mtCookiePath,mtCookieDomain,location.protocol=="https:")}function mtSetCookie(a,b,c,d,e,f){if(e&&e.match(/^\.?localhost$/))e=null;a=a+"="+escape(b)+(c?"; expires="+c.toGMTString():"")+(d?"; path="+d:"")+(e?"; domain="+e:"")+(f?"; secure":"");document.cookie=a}
function mtGetCookie(a){a=a+"=";var b=document.cookie,c=b.indexOf(a);if(c==-1)return"";var d=b.indexOf(";",c+a.length);if(d==-1)d=b.length;return unescape(b.substring(c+a.length,d))}function mtDeleteCookie(a,b,c,d){if(mtGetCookie(a)){if(c&&c.match(/^\.?localhost$/))c=null;document.cookie=a+"="+(b?"; path="+b:"")+(c?"; domain="+c:"")+(d?"; secure":"")+"; expires=Thu, 01-Jan-70 00:00:01 GMT"}}function mtFixDate(a){var b=(new Date(0)).getTime();b>0&&a.setTime(a.getTime()-b)}
function mtGetXmlHttp(){if(!window.XMLHttpRequest)window.XMLHttpRequest=function(){for(var a=["Microsoft.XMLHTTP","MSXML2.XMLHTTP.5.0","MSXML2.XMLHTTP.4.0","MSXML2.XMLHTTP.3.0","MSXML2.XMLHTTP"],b=0;b<a.length;b++)try{return new ActiveXObject(a[b])}catch(c){}};if(window.XMLHttpRequest)return new XMLHttpRequest}
function mtInit(){if(!arguments.callee.done){arguments.callee.done=true;window._timer&&clearInterval(window._timer);if(window.onload&&window.onload!==window.mtInit){window.onload();window.onload=function(){}}}}document.addEventListener&&document.addEventListener("DOMContentLoaded",mtInit,false);if(/WebKit/i.test(navigator.userAgent))_timer=setInterval(function(){/loaded|complete/.test(document.readyState)&&mtInit()},10);window.onload=mtInit;
var clearCookie=window.location.hash&&window.location.hash.match(/^#_log(in|out)/)?true:false;if(clearCookie){mtClearUser();RegExp.$1=="in"&&mtFetchUser()}else is_preview&&!user&&mtFetchUser();
