
C425.Lightbox=function()
{var YUE=YAHOO.util.Event;var YUD=YAHOO.util.Dom;var colour='ffffff';var sections=['Twenty-five years on','Making The News','Provoking Debate','Our Multi Culture','The Laughter Class','The Drug Deal','Adventures in Art','The Food Fight','Earthly Powers','The Female Equation','Oh My God','Reality Check','Home Sweet Home','Youth in Its Wisdom','A Question of Difference','Shrinking Planet','New Family Values','The Creative Economy','All Change','Special Relationship','Uncensored','Learning From The Past','The Pink Triangle','Access All Areas','Filmspotting'];return{init:function()
{this.root=document.getElementsByTagName('body')[0];this.current_hero=null;this.setup();this.attachEvents();},setup:function()
{var region=YUD.getRegion(this.root);var width=YUD.getDocumentWidth();var height=parseInt(YUD.getDocumentHeight()*2,10);this.maskPanel=document.createElement('div');this.maskPanel.id='lightbox_mask_panel';this.maskPanel.style.margin='0 auto';this.maskPanelShadow=document.createElement('div');this.maskPanelShadow.id='lightbox_shadow';this.lightbox_controls_wrapper=document.createElement('div');this.lightbox_controls_wrapper.id='lightbox_controls_wrapper';this.controls=document.createElement('table');this.controls.id='lightbox_controls';var tbody=document.createElement('tbody');this.controls.appendChild(tbody);var pager_table=document.createElement('table');pager_table.style.width='210px';var pager_tbody=document.createElement('tbody');var pager_table_tr=document.createElement('tr');var pager_table_td1=document.createElement('td');pager_table_td1.setAttribute('valign','top');pager_table_td1.setAttribute('width','33%');var pager_table_td2=document.createElement('td');pager_table_td2.setAttribute('valign','top');pager_table_td2.setAttribute('width','33%');pager_table_td2.setAttribute('align','center');var pager_table_td3=document.createElement('td');pager_table_td3.setAttribute('valign','top');pager_table_td3.setAttribute('width','33%');pager_table_td3.setAttribute('align','right');this.ctl_prev=document.createElement('span');this.ctl_prev.id='ctl_prev';var ctl_prev_text=document.createTextNode('Previous');this.ctl_prev.appendChild(ctl_prev_text);var prev_td=document.createElement('td');prev_td.setAttribute('width','25%');prev_td.appendChild(this.ctl_prev);this.ctl_count=document.createElement('span');this.ctl_count.id='ctl_count';var count_td=document.createElement('td');count_td.setAttribute('width','50%');count_td.setAttribute('align','center');count_td.appendChild(this.ctl_count);this.ctl_next=document.createElement('span');this.ctl_next.id='ctl_next';var ctl_next_text=document.createTextNode('Next');this.ctl_next.appendChild(ctl_next_text);var next_td=document.createElement('td');next_td.setAttribute('width','25%');next_td.setAttribute('align','right');next_td.appendChild(this.ctl_next);pager_table_tr.appendChild(prev_td);pager_table_tr.appendChild(count_td);pager_table_tr.appendChild(next_td);pager_tbody.appendChild(pager_table_tr);pager_table.appendChild(pager_tbody);var tr1=document.createElement('tr');var title_td=document.createElement('td');title_td.setAttribute('valign','top');title_td.id='ctl_col1';this.ctl_title_no=document.createElement('span');this.ctl_title_no.id='ctl_title_no';this.ctl_title_text=document.createElement('span');this.ctl_title_text.id='ctl_title_text';title_td.appendChild(this.ctl_title_no);title_td.appendChild(this.ctl_title_text);tr1.appendChild(title_td);var close_td=document.createElement('td');close_td.setAttribute('valign','top');close_td.setAttribute('align','right');this.ctl_close=document.createElement('img');this.ctl_close.src='/images/icons/icon_gallery_close.gif';this.ctl_close.id='ctl_close';this.ctl_close.setAttribute('alt','Close');close_td.appendChild(this.ctl_close);tr1.appendChild(close_td);tbody.appendChild(tr1);var tr2=document.createElement('tr');var caption_td=document.createElement('td');caption_td.setAttribute('valign','top');this.ctl_caption=document.createElement('span');this.ctl_caption.id='ctl_caption';caption_td.appendChild(this.ctl_caption);tr2.appendChild(caption_td);var pager_td=document.createElement('td');pager_td.setAttribute('valign','top');pager_td.setAttribute('align','right');pager_td.setAttribute('nowrap','nowrap');pager_td.appendChild(pager_table);tr2.appendChild(pager_td);tbody.appendChild(tr2);this.photo=document.createElement('img');this.lightbox_controls_wrapper.appendChild(this.controls);this.maskPanelShadow.appendChild(this.lightbox_controls_wrapper);this.maskPanelShadow.appendChild(this.photo);this.maskPanel.appendChild(this.maskPanelShadow);this.root.appendChild(this.maskPanel);this.maskBG=document.createElement('div');this.maskBG.id='lightbox_mask_bg';this.maskBG.style.width=width+'px';this.maskBG.style.height=height+'px';YUD.insertBefore(this.maskBG,this.maskPanel);var test=document.getElementById('lightbox_controls');},attachEvents:function()
{YUE.on(this.ctl_close,'click',this.hide,this);YUE.on(this.ctl_prev,'click',this.prev,this);YUE.on(this.ctl_next,'click',this.next,this);YUE.on(this.maskBG,'click',this.hide,this);this.heroes={};this.hero_indexes=[];var els=YUD.getElementsByClassName('hero','img',this.root);for(var i=0;i<els.length;i++)
{var a=YUD.getAncestorByTagName(els[i],'a');var src=els[i].getAttribute('src');var pattern=/(\d{1,2})_(\d{1,2})\.jpg$/;var parts=src.match(pattern);var chapter=parts[1];var article=parts[2];YUE.on(a,'click',this.show,this);if(!this.heroes[chapter])
{this.heroes[chapter]={};}
this.heroes[chapter][article]=els[i];if(!this.hero_indexes[chapter])
{this.hero_indexes[chapter]=[];}
this.hero_indexes[chapter][this.hero_indexes[chapter].length]=article;}},next:function(e,that)
{var next_hero=that.heroes[that.current_chapter][that.getNextHero()];if(next_hero)
{that.show(next_hero,that);}},getNextHero:function()
{for(var i=0;i<this.hero_indexes[this.current_chapter].length;i++)
{if(this.current_article==this.hero_indexes[this.current_chapter][i])
{if(this.hero_indexes[this.current_chapter][i+1]!==undefined)
{return this.hero_indexes[this.current_chapter][i+1];}
else
{return false;}}}},prev:function(e,that)
{var prev_hero=that.heroes[that.current_chapter][that.getPrevHero()];if(prev_hero)
{that.show(prev_hero,that);}},getPrevHero:function()
{for(var i=0;i<this.hero_indexes[this.current_chapter].length;i++)
{if(this.current_article==this.hero_indexes[this.current_chapter][i])
{if(this.hero_indexes[this.current_chapter][i-1]!==undefined)
{return this.hero_indexes[this.current_chapter][i-1];}
else
{return false;}}}},positionPanel:function()
{var region=YUD.getRegion(this.maskPanel);var panel_width=(region.right-region.left)>100?(region.right-region.left):680;var left=Math.round((YUD.getViewportWidth()/2)-(panel_width/2))+'px';var top=YUD.getDocumentScrollTop()+50+'px';this.maskPanel.style.left=left;this.maskPanel.style.top=top;},show:function(e,that)
{var target=YUE.getTarget(e)?YUE.getTarget(e):e;var src=target.getAttribute('src');that.photo.src=src;that.photo.width='680';var pattern=/(\d{1,2})_(\d{1,2})\.jpg$/;var parts=src.match(pattern);var chapter=parts[1];var article=parts[2];that.current_hero=target;that.current_chapter=chapter;that.current_article=article;var count=that.hero_indexes[chapter].length;var page_num;for(var i=0;i<that.hero_indexes[chapter].length;i++)
{if(that.hero_indexes[chapter][i]==article)
{page_num=i+1;}}
that.ctl_count.innerHTML=page_num+' / '+count;that.ctl_next.style.display=page_num==count?'none':'block';that.ctl_prev.style.display=page_num==1?'none':'block';that.photo.src='/images/heroes/'+chapter+'_'+article+'.jpg';that.ctl_title_no.innerHTML=chapter<10?'0'+chapter:chapter;that.ctl_title_text.innerHTML=sections[chapter-1];that.ctl_caption.innerHTML=target.getAttribute('alt');that.maskBG.style.display='block';that.maskPanel.style.display='block';that.positionPanel();var anim1=new YAHOO.util.ColorAnim(that.maskBG,{opacity:{to:0.95}});var anim2=new YAHOO.util.ColorAnim(that.maskPanel,{opacity:{to:1}});anim1.animate();anim2.animate();YUE.preventDefault(e);},hide:function(e,that)
{var anim1=new YAHOO.util.ColorAnim(that.maskBG,{opacity:{to:0}});var anim2=new YAHOO.util.ColorAnim(that.maskPanel,{opacity:{to:0}});anim1.onComplete.subscribe(function(){that.maskBG.style.display='none';});anim1.onComplete.subscribe(function(){that.maskPanel.style.display='none';});anim1.animate();anim2.animate();}};}();YAHOO.util.Event.onAvailable('c4footerLinks',C425.Lightbox.init,null,C425.Lightbox);