// redraw for IE
                function flushThis(id){
                    var msie = 'Microsoft Internet Explorer';
                    var tmp = 0;
                    var elementOnShow = document.getElementById(id);
                    if (navigator.appName == msie){
                        tmp = elementOnShow.parentNode.offsetTop  +  'px';
                    }else{
                        tmp = elementOnShow.offsetTop;
                    }
                }

		// managing the attach event properly
		function addEvent(obj, evType, fn){ 
		    if (obj.addEventListener){ 
		      obj.addEventListener(evType, fn, false); 
		      return true; 
		    } else if (obj.attachEvent){ 
		      var r = obj.attachEvent("on"+evType, fn); 
		      return r; 
		    } else { 
		      return false; 
		    } 
		}
		// Attach anything CSSJS to head
		function loadjscssfile(filename, filetype){
		 if (filetype=="js"){ //if filename is a external JavaScript file
		  var fileref=document.createElement('script');
		  fileref.setAttribute("type","text/javascript");
		  fileref.src = filename;
		 }
		 else if (filetype=="css"){ //if filename is an external CSS file
		  var fileref=document.createElement("link");
		  fileref.setAttribute("rel", "stylesheet");
		  fileref.setAttribute("type", "text/css");
		  fileref.href = filename;
		 }
		 document.getElementsByTagName("head")[0].appendChild(fileref);
		}
		
		// get buttons in the entry-footer...
		function getFooterButtons(el){
		    var postFooters=[], L, a, tem;
		    if(document.getElementsByClassName){
			a= el.getElementsByClassName('entry-footer-share');
			L= a.length;
			while(L) postFooters.push(a[--L]);
		    }
		    else{
			a= el.getElementsByTagName("div");
			L= a.length;
			while(L){
			    tem= a[--L];
			    if(tem.className.indexOf("entry-footer-share")!=-1) postFooters.push(tem);
			}
		    }
		    while(postFooters.length){
			tem= postFooters.pop();
			return tem;
		    }
		}

		// get the entry-footer area...
		function getFooter(el){
		    var postFooters=[], L, a, tem;
		    if(document.getElementsByClassName){
			a= el.getElementsByClassName('entry-footer');
			L= a.length;
			while(L) postFooters.push(a[--L]);
		    }
		    else{
			a= el.getElementsByTagName("div");
			L= a.length;
			while(L){
			    tem= a[--L];
			    if(tem.className.indexOf("entry-footer")!=-1) postFooters.push(tem);
			}
		    }
		    while(postFooters.length){
			tem= postFooters.pop();
			return tem;
		    }
		}		
		
		// Loop within the classic TypePad design
		function typepadLoop(archivetype){
			var EntriesContent = document.getElementsByTagName('div');
			for (var i = 0, o; p = EntriesContent[i]; i++){
				if(p.className.match(/entry$/i)) {
					var myTitle = p.getElementsByTagName('h3')[0];
					var myEntryId = p.id;
					var MyShareButtons = document.createElement('div');
					MyShareButtons.setAttribute('class', 'entry-footer-share-buttons entry-footer-gplus');
					MyShareButtons.setAttribute('id', 'gplus-' + myEntryId);
					if (archivetype == 1){
						var myLink = window.location.href;
					} else {
						var myLink = myTitle.getElementsByTagName('a')[0].href;						
					}
					MyShareButtons.innerHTML = linkGplus(myLink, MyGplusSize);					
					var myFirstParent = document.getElementById(myEntryId);
					if (myLocation == 0){
						var mySubParent = getFooter(myFirstParent);
						var myParent = getFooterButtons(mySubParent);
						if (!myParent){ myParent = mySubParent;}
						} else {
						var myParent = myTitle;
					}
					myParent.appendChild(MyShareButtons);
					flushThis('gplus-' + myEntryId);
				}
			}
		
		}

		// Generate final link		
		function linkGplus(url,gsize){
		    var buttonGplus = '<div class="g-plusone" data-size="'+ gsize +'" data-count="true" data-href="'+ url +'"></div>';
		return buttonGplus;
		}
