		// 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; 
		    } 
		}

		// 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-joliprint');
					if (archivetype == 1){
						var myLink = window.location.href;
					} else {
						var myLink = myTitle.getElementsByTagName('a')[0].href;						
					}
					MyShareButtons.innerHTML = linkJoliprint(myLink, myButtonText, myButtonImg);					
					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);
				}
			}
		
		}

		// Generate final link		
		function linkJoliprint(url, text, img){
		var joliResponse = $joliprint().set("url", url).set("buttonUrl", img).set("label",text).getHtml();
		var joliPrint;		
		if (joliResponse.outerHTML){
		    joliPrint = joliResponse.outerHTML;
		}
		else {
		    if (XMLSerializer){
		    joliPrint = new XMLSerializer().serializeToString(joliResponse);
		    }
		}
		return joliPrint;
		}
