/*http://www.kryogenix.org/work/clients/LawSociety/toc/generated_toc.orig.js*/
generated_toc={generate:function(){generate_from='0';generate_for='unset';tocparent=document.getElementById('generated-toc');if(tocparent){classes=tocparent.className.split(/\s+/);

var util = document.createElement('div');util.className="utility-bar";tocparent.appendChild(util);
var kev=document.createElement('div');kev.className="h2icons";kev.innerHTML="<a class=\"printpage\" title=\"Click to print this page\" href=\"#\" onclick=\"window.print();return false;\">Print page</a><a id=\"ctl00_uxPrintPDF_uxPdfExportButton\" class=\"pdfpage\" title=\"Click to save this page as a PDF\" onclick=\"_gaq.push(['_trackEvent','Utility bar','Print page']);\" href=\"javascript:__doPostBack('ctl00$uxPrintPDF$uxPdfExportButton','')\" onclick=\"_gaq.push(['_trackEvent','Utility bar','Export to PDF']);\">Export to PDF</a>";util.appendChild(kev);

for(var i=0;i<classes.length;i++){if(classes[i].match(/^generate_from_h[1-6]$/)){generate_from=classes[i].substr(classes[i].length-1,1)}else if(classes[i].match(/^generate_for_[a-z]+$/)){generate_for=classes[i].match(/^generate_for_([a-z])+$/)[1]}}}else{return}if(generate_for=='page'){top_node=document.getElementsByTagName('body')}else{top_node=tocparent.parentNode}if(generate_from==0){first_header_found=generated_toc.findFirstHeader(top_node);if(!first_header_found){return}else{generate_from=first_header_found.toLowerCase().substr(1)}}headings_to_treat={"h6":''};for(var i=5;i>=parseInt(generate_from);i--){headings_to_treat["h"+i]=''}nodes=top_node.all?top_node.all:top_node.getElementsByTagName('*');headings=[];for(var i=0;i<nodes.length;i++){if(nodes[i].nodeName.toLowerCase()in headings_to_treat){headings.push(nodes[i])}}status=generated_toc.readCookie("generated_toc_display");if(status&&status=="open"){var google_text=' closed';display_initially="block";toggle_initially="Hide quick links to content";}else{var google_text=' open';display_initially="none";toggle_initially="Quick links to content";}cur_head_lvl="h"+generate_from;cur_list_el=document.createElement('ul');cur_list_el.style.display=display_initially;p=document.createElement('p');span=document.createElement('span');p.className='hidden';a=document.createElement('a');a.href='#aftertoc';/*p.className='hidden';*/a.appendChild(document.createTextNode('skip quick links to content'));span.appendChild(a);p.appendChild(span);tocparent.appendChild(p);p=document.createElement('p');p.id='toggle-container';a=document.createElement('a');a.id='generated_toc_d_toggle';a.appendChild(document.createTextNode(toggle_initially));p.appendChild(a);a.onclick=generated_toc.wrapOpenClose(a,cur_list_el);/*a.href='javascript:pageTracker._trackEvent("Utility bar","TOC'+google_text+'")'*/a.href="#";util.appendChild(p);tocparent.appendChild(cur_list_el);for(var i=0;i<headings.length;i++){this_head_el=headings[i];this_head_lvl=headings[i].nodeName.toLowerCase();if(!this_head_el.id){this_head_el.id='heading_toc_j_'+i;this_head_el.setAttribute('tabindex','-1')}while(this_head_lvl>cur_head_lvl){var last_listitem_el;for(var j=0;j<cur_list_el.childNodes.length;j++){if(cur_list_el.childNodes[j].nodeName.toLowerCase()=='li'){last_listitem_el=cur_list_el.childNodes[j]}}if(!last_listitem_el){last_listitem_el=document.createElement('li')}new_list_el=document.createElement('ul');last_listitem_el.appendChild(new_list_el);cur_list_el.appendChild(last_listitem_el);cur_list_el=new_list_el;cur_head_lvl='h'+(parseInt(cur_head_lvl.substr(1,1))+1)}while(this_head_lvl<cur_head_lvl){cur_list_el=cur_list_el.parentNode.parentNode;cur_head_lvl='h'+(parseInt(cur_head_lvl.substr(1,1))-1)}li=document.createElement('li');a=document.createElement('a');a.href='#'+this_head_el.id;a.appendChild(document.createTextNode(generated_toc.innerText(this_head_el)));li.appendChild(a);cur_list_el.appendChild(li)}p=document.createElement('p');p.id='aftertoc';tocparent.appendChild(p)},wrapOpenClose:function(a,cur_list_el){return function(e){var d=cur_list_el.style.display;a.firstChild.nodeValue=(d=='block'?'Quick':'Hide quick')+' links to  content';a.className=(d=='block'?'toggle-closed':'toggle-open');cur_list_el.style.display=d=='block'?'none':'block';if(cur_list_el.style.display=="block"){_gaq.push(["_trackEvent","Utility bar","TOC closed"]);generated_toc.createCookie("generated_toc_display","open",21);document.getElementById('generated-toc').style.overflow='visible';}else{_gaq.push(["_trackEvent","Utility bar","TOC open"]);generated_toc.createCookie("generated_toc_display","closed",21);document.getElementById('generated-toc').style.overflow='hidden';}if(window.event){window.event.returnValue=false;window.event.cancelBubble=true}else{e.preventDefault();e.stopPropagation()}}},createCookie:function(name,value,days){if(days){var date=new Date();date.setTime(date.getTime()+(days*24*60*60*1000));var expires="; expires="+date.toGMTString()}else var expires="";document.cookie=name+"="+value+expires+"; path=/"},readCookie:function(name){var nameEQ=name+"=";var ca=document.cookie.split(';');for(var i=0;i<ca.length;i++){var c=ca[i];while(c.charAt(0)==' ')c=c.substring(1,c.length);if(c.indexOf(nameEQ)==0)return c.substring(nameEQ.length,c.length)}return null},eraseCookie:function(name){createCookie(name,"",-1)},innerText:function(el){return(typeof(el.innerText)!='undefined')?el.innerText:(typeof(el.textContent)!='undefined')?el.textContent:el.innerHTML.replace(/<[^>]+>/g,'')},findFirstHeader:function(node){var nn=node.nodeName.toLowerCase();if(nn.match(/^h[1-6]$/)){return nn}else{for(var i=0;i<node.childNodes.length;i++){var subvalue=generated_toc.findFirstHeader(node.childNodes[i]);if(subvalue)return subvalue}return null}},init:function(){if(arguments.callee.done)return;arguments.callee.done=true;generated_toc.generate()}};(function(i){var u=navigator.userAgent;var e=/*@cc_on!@*/false;var st=setTimeout;if(/webkit/i.test(u)){st(function(){var dr=document.readyState;if(dr=="loaded"||dr=="complete"){i()}else{st(arguments.callee,10)}},10)}else if((/mozilla/i.test(u)&&!/(compati)/.test(u))||(/opera/i.test(u))){document.addEventListener("DOMContentLoaded",i,false)}else if(e){(function(){var t=document.createElement('doc:rdy');try{t.doScroll('left');i();t=null}catch(e){st(arguments.callee,0)}})()}else{window.onload=i}})(generated_toc.init);

/**
* Append help text
*/
function findInstructions() {
	var findText ="Use your browser's find function (generally CTRL-F on Windows, command-F on Mac) to search within this page.";
	var targetDiv = document.getElementById('toggle-list');
	var addMe = document.createElement('li');
	addMe.className = "find";
	addMe.innerHTML = findText;
	targetDiv.appendChild(addMe);
}

