
var v_log=new Log(false||(debugging&&(""+window.location).indexOf('/vlog/')!=-1));var run_log=new Log(false||(debugging&&(""+window.location).indexOf('/runlog/')!=-1));var t_log=new Log(false||(debugging&&(""+window.location).indexOf('/tlog/')!=-1));var s_log=new Log(false||(debugging&&(""+window.location).indexOf('/slog/')!=-1));var pl_log=new Log(false||(debugging&&(""+window.location).indexOf('/pllog/')!=-1));var isLoaded=false;addFunctionToCallOnPageResize(function()
{if(typeof cumulativeOffset!='undefined')
{var dim=getWindowSize();if((dim[0]!=windowSize[0])||(dim[1]!=windowSize[1]))
{var diff=4;if(isIE)
{diff=40;}
if(Math.abs(dim[0]-windowSize[0])>diff||Math.abs(dim[1]-windowSize[1])>diff)
{reloadWindow();}
else
{doResizeCanvas();}}}});addFunctionToCallOnPageLoad(function(){if(isIE){iz_pageInnerHTML=iz_page.innerHTML;}doLoadCanvas();});var iz_start_page=null;function doLoadCanvas()
{if(typeof cumulativeOffset=='undefined')
{setTimeout(function(){doLoadCanvas();},50);return;}
if(prefetched)
{log.enable(false);$('top-bar-id').style.borderTop=0;}
iz_start_page={id:page_id,page_number:iz_original_page_number,iz_canvas:iz_canvas,iz_paper:iz_paper,iz_page:iz_page,aspect_ratio_width:iz_page_width,aspect_ratio_height:iz_page_height,aspect_ratio:iz_aspect_ratio,saved_page_width:html_widths[0],saved_page_height:html_heights[0],section:iz_page_section,article_id:iz_article_id,article_title:iz_article_title,title:iz_page_title,subtitle:iz_page_subtitle,border_title:iz_border_title,article_page_id:iz_article_page_id,iz_parts:iz_parts,iz_content:iz_content,iz_editing_preferences:iz_editing_preferences,overflowing_page_id:iz_overflowing_page_id,link:""+window.location,page_topic_id:iz_page_topic_id};var ie_sucks=$("page-header-id").offsetHeight;var hider=$("initial_page_hider");ie_sucks=$("page-header-id").offsetHeight;displayCorrectPageNumber();if(editing)
{disableLinks(iz_canvas.parentNode);iz_layout=new IZ.Layout();izEditor=new IZ.Editor();izDevice=new IZ.Device();viewport=new IZ.Viewport(iz_start_page);viewport.doPageLayout();viewport.dToSInitialize(iz_page);izHomeToolbar=new IZ.HomeToolbar();izCustomizeToolbar=new IZ.CustomizeToolbar();izToolbar=new IZ.DesignToolbar();izGraphicsToolbar=new IZ.GraphicsToolbar();izAddToolbar=new IZ.AddToolbar();}
else if(unformatted)
{iz_layout=new IZ.Layout();izDevice=new IZ.Device();viewport=new IZ.Viewport(iz_start_page);viewport.doPageLayout();viewport.dToSInitialize(iz_page);watchLinks(iz_canvas);}
else
{if(!viewport)
{izDevice=new IZ.Device();viewport=new IZ.Viewport(iz_start_page);}
if(iz_greeking)
{viewport.greek();}
viewport.dToSInitialize(iz_page);watchLinks(iz_canvas);}
doResizeCanvas();viewport.newhome();updateVariables(iz_start_page);izPicTools.setupZoomables(iz_canvas);izAdMarks.setupAdMarks(iz_canvas);izVideoMaster.setupVideos(iz_canvas);izPDFMaster.setupPDFs(iz_canvas);if(hider)
{removeSelf(hider);}
isLoaded=true;if(prefetched)
{window.loaded(iz_original_page_number);}
else
{updatePageTurningTrainers(iz_start_page);}
hideObscuredPageFooter(iz_start_page);if(getCookie('iz_toc')=="poppedup")
{popupTOC();}
iz_prefetcher.start();}
function updatePageTurningTrainers(page)
{if((!editing)&&(!previewing))
{if(getCookie('iz_page_turning_trainers')=='yes')
{var btns=$("page_turning_trainers");if(page.page_number==1)
{if(btns)
{btns.style.display='none';}}
else
{if(btns)
{btns.style.display='block';}
else
{btns=$C('div');btns.id="page_turning_trainers";btns.style.position='absolute';var btn_width=page.iz_page.offsetWidth/20;btns.innerHTML="<table cellpadding='0' cellspacing='0'><tr><td><a id='hint_previous_page_button'><img src='http://cdn2.magazines.me/images/header/previous_page.png' title='Previous page (click this or use mouse wheel)' style='width:"+btn_width+"px'/></a></td><td><a id='close_page_turning_trainers' title='Remove these page turners (use page turners in toolbar)'><img width='10' src='http://cdn2.magazines.me/images/toolbar/delete.gif'/></a><td><a id='hint_next_page_button'><img src='http://cdn2.magazines.me/images/header/next_page.png' title='Next page (click this or use mouse wheel)' style='width:"+btn_width+"px' /></a></td></tr></table>";var offsets=cumulativeOffset(page.iz_page);btns.style.left=(offsets[0]+page.iz_page.offsetWidth-2*btn_width-10)+"px";btns.style.top=(offsets[1]+page.iz_page.offsetHeight-btn_width+2)+"px";document.body.appendChild(btns);var b=$('hint_previous_page_button');Event.observe(b,'click',function(event){iz_prefetcher.goto('previous',false,true);Event.stop(event);return false;});b=$('hint_next_page_button');Event.observe(b,'click',function(event){iz_prefetcher.goto('next',false,true);Event.stop(event);return false;});b=$('close_page_turning_trainers');Event.observe(b,'click',function(event){setCookie('iz_page_turning_trainers','no',14);$("page_turning_trainers").style.display='none';Event.stop(event);return false;});}}}}}
function getCookie(name)
{if(document.cookie.length>0)
{var start=document.cookie.indexOf(name+"=");if(start!=-1)
{start+=name.length+1;var end=document.cookie.indexOf(";",start);if(end==-1)
{end=document.cookie.length;}
return(unescape(document.cookie.substring(start,end)));}}
return(null);}
function setCookie(name,value,expiredays)
{var exdate=new Date();exdate.setDate(exdate.getDate()+expiredays);document.cookie=name+"="+escape(value)+";expires="+exdate.toGMTString()+";path=/";}
function clearLayoutThemeStylesAndAccents()
{elementLayouts={};elementStyles={};IZ.Layout.prototype.doRowLayout=function(options){};IZ.Layout.prototype.doColumnLayout=function(options){};iz_paper.style.width=iz_page_width+"px";iz_paper.style.height=iz_page_height+"px";iz_page.style.height="100%";iz_page.style.width="100%";}
function displayCorrectPageNumber()
{var url=""+window.location;var index=url.indexOf('/page');if(index!=-1)
{var pagenum=parseInt(url.substring(index+'/page'.length));if(!pagenum)
{pagenum='1';}
var ps=document.getElementsByClassName('Footer_Page_Number',iz_page);if(ps.length>0)
{if((ps.length==2)&&(pagenum&1==0))
{--pagenum;}
var texts=getElementsByTagName(ps[0],"#text");if(texts.length>0)
{texts[0].nodeValue=pagenum;}
if(ps.length>1)
{++pagenum;texts=getElementsByTagName(ps[1],"#text");if(texts.length>0)
{texts[0].nodeValue=pagenum;}}}}}
function hideObscuredPageFooter(page)
{if(editing)
{return;}
var page=$("_singlepage_"+page.id);if(!page)
{page=$('_singlepage_1');}
if(!page)
{return;}
var footer=null;var obstacles=[];for(var i=0;i<page.childNodes.length;++i)
{var kid=page.childNodes[i];if(kid.id&&kid.id.startsWith("slot_footer"))
{footer=kid;}
else if(footer)
{obstacles.push(kid);}}
if(footer)
{var spans=getElementsByTagName(footer,"span");if(spans.length==0)
{spans=getElementsByTagName(footer,"td");}
for(var i=0;i<obstacles.length;++i)
{for(var j=0;j<spans.length;++j)
{if(intersects(spans[j],obstacles[i]))
{footer.style.display='none';return;}}}}}
function urlify(str)
{return(str?str.toLowerCase().strip().replace(/' - '/,'-').replace(/\s+/,'-').replace(/[^a-zA-Z0-9_-]+/,''):str);}
function updateToolbar(page)
{$('header_goto_page_number_field').value=page.page_number-(editing?iz_first_page_number_of_article-1:0);updatePageNumberWidth();$('popup_categories2_label').innerHTML=page.section;$('popup_categories2_label').style.display=page.section?'inline':'none';if($('popup_articles_current_title'))
{$('popup_articles_current_title').innerHTML=page.article_title.truncate(15);$('popup_articles_current_title_crumb').style.display=page.article_title.length>0?'inline':'none';}
var cells=document.getElementsByClassName("Issue_Map_Popup_Cell",$('pages_popup'));for(var i=0,length=cells.length;i<length;++i)
{cells[i].style.border="";}
var cell=$("popup_page_"+page.page_number);if(cell)
{cell.style.border="3px solid #0000ff";$('pages_popup_scollable').scrollLeft=cell.offsetLeft;$('pages_popup_scollable').scrollTop=cell.offsetTop;}
if(iz_whoiam)
{$('page_comments_section').style.display=(page.page_topic_id?"block":"none");if(page.page_topic_id)
{var num_comments=iz_whoiam.comments_counts[page.id];if(!num_comments)
{num_comments=iz_whoiam.comments_counts[page.article_page_id];if(!num_comments)
{num_comments=0}}
if($('header_current_comments'))
{$('header_current_comments').innerHTML=num_comments+' comment'+(num_comments!=1?'s':'');}
$('header_current_comments_link').href="/forums/"+iz_issue_id+"/"+page.page_topic_id+"/comments/"+page.id+"/"+urlify(page.title);}}
iz_quickCommentTopicId=page.page_topic_id;iz_quickCommentPageId=page.id;if(!editing)
{popdownComments();}
if($('edit_page_link'))
{$('edit_page_link').href=(iz_production?'http://magazines.me':'http://localhost:5000')+"/iz/public/"+page.id+"/page/edit";}}
IZ.Variables=Class.create();IZ.Variables.prototype={initialize:function()
{},replace:function(template,page)
{if(!page)
{page=izPageManager.getPage();}
var str=template.replace(/%magname/g,iz_mag_name);str=str.replace(/%pagenum/g,page.page_number);str=str.replace(/%issuemonth/g,iz_issue_month);str=str.replace(/%issueyear/g,iz_issue_year);str=str.replace(/%issuevolume/g,iz_issue_volume);str=str.replace(/%issuenum/g,iz_issue_number);str=str.replace(/%section/g,page.section);return(str);}};var izVariables=new IZ.Variables();function updateVariables(page)
{for(id in iz_vtemplates)
{}
var divs=page.iz_canvas.getElementsByTagName('div');for(var i=0,length=divs.length;i<length;i++)
{var e=divs[i];if(e.id&&e.className&&e.className.indexOf('TEMPLATE')!=-1&&iz_vtemplates[e.id])
{e.innerHTML=izVariables.replace(iz_vtemplates[e.id],page)
page.viewport.scaleTextToContainer(e,{});if(e.id.startsWith('slot_section_header'))
{if(page.section)
{var bg=iz_section_header_bgs[page.section.replace(/ /g,'_')];if(bg)
{e.style.background=bg;}}
else if(!editing)
{e.style.display='none';}
else
{e.innerHTML='No Section';page.viewport.scaleTextToContainer(e,{});}}}}}
function showCommentAvatars(page)
{var av=$("page_comments_avatar_swatch_"+page.id);if((!av)&&page.comments)
{var div=$C('div');div.innerHTML=page.comments;document.body.appendChild(div);av=$("page_comments_avatar_swatch_"+page.id);}
if(av)
{var iz_canvas=page.iz_canvas;var offsets=cumulativeOffset(iz_canvas);var poffsets=Position.cumulativeOffset(page.iz_page);av.style.position='absolute';av.style.display='block';av.style.left=(poffsets[0]+iz_canvas.offsetWidth-av.offsetWidth)+"px";av.style.top=page.iz_paper.offsetTop+"px";av.style.left=(iz_canvas.offsetWidth-av.offsetWidth)+"px";iz_canvas.appendChild(av);enableForCurrentUser(av);av=$("page_comments_bubbles_"+page.id);av.style.position='absolute';av.style.left=(offsets[0]+iz_canvas.offsetWidth-av.offsetWidth)+"px";av.style.top=page.iz_paper.offsetTop+"px";av.style.left=(iz_canvas.offsetWidth-av.offsetWidth)+"px";enableForCurrentUser(av);}}
var finalResized=false;var windowSize=[];var effectiveCanvasPaddingHeight=canvasPaddingHeight;var effectiveCanvasPaddingWidth=canvasPaddingWidth;var iz_embedded_toc=false;var izFooterManager=null;var izCrawlerManager=null;var izPartyLineManager=null;var iz_canvas_dimensions=[1,1];function doResizeCanvas()
{if(iz_start_page)
{_doResizeCanvas(iz_start_page);}}
function _doResizeCanvas(page)
{effectiveCanvasPaddingHeight=canvasPaddingHeight;effectiveCanvasPaddingWidth=canvasPaddingWidth;if(typeof izEditor=='undefined')
{return;}
var is_start_page=(page==iz_start_page);if(izEditor)
{izEditor.closeFetchWebsitePhotos();izEditor.resizeProgressBar();}
if(previewing)
{var b=$('iz_front_page_link');if(b)
{b.href=window.location.href.endsWith('dashboard')?iz_latest_issue_path:iz_url;}}
var dim=getWindowSize();var zoom=getPageZoom();var toc=$('embedded_toc');if(is_start_page)
{if(toc&&(!editing)&&(!previewing))
{if(!getCookie('iz_toc'))
{setCookie('iz_toc',"embedded",10000);}
if(getCookie('iz_toc')=="embedded")
{toc.style.display="block";toc.appendChild($('table_of_contents'));$('embedded_toc_search').style.display='block';fixupTocAsEmbedded();iz_embedded_toc=true;}}
if(!iz_embedded_toc)
{$('embedded_toc_search').style.display='none';}}
if(dim[1]<800||dim[0]<(iz_embedded_toc?800+toc.offsetWidth:800))
{effectiveCanvasPaddingHeight=10;effectiveCanvasPaddingWidth=10;page.iz_canvas.style.padding="5px";}
if(is_start_page)
{scaleHeaderToWindow();}
if(is_start_page)
{if((dim[0]==windowSize[0])&&(dim[1]==windowSize[1]))
{if(viewport&&((!finalResized)||(!isIE)))
{finalResized=true;page.viewport.doResize();showCommentAvatars(page.viewport.getPage());}
return;}
finalResized=false;windowSize=dim;}
if(iz_embedded_toc)
{dim=[dim[0]-toc.offsetWidth,dim[1]];}
if((!editing)&&(!previewing))
{if(!izFooterManager)
{new IZ.FooterManager();}
dim[1]-=izFooterManager.getHeight();}
if(!previewing)
{if(!izHintManager)
{new IZ.HintManager();}}
if(isIE)
{dim[0]=dim[0]/zoom;dim[0]-=1*zoom;if(isIE7||isIE6)
{dim[1]-=30*zoom;}
dim[1]=dim[1]/zoom;effectiveCanvasPaddingHeight=effectiveCanvasPaddingHeight/zoom;var paddingTop=getStyle(page.iz_canvas,'paddingTop');page.iz_canvas.style.paddingTop=effectiveCanvasPaddingHeight/2+"px";page.iz_canvas.style.height=(getStyle(page.iz_canvas,'height')-(effectiveCanvasPaddingHeight/2-paddingTop))+"px";page.iz_canvas.style.height=(getStyle(page.iz_canvas,'height')+paddingTop+effectiveCanvasPaddingHeight/2)+"px";page.iz_canvas.style.paddingBottom=effectiveCanvasPaddingHeight/2+"px";effectiveCanvasPaddingHeight=effectiveCanvasPaddingHeight/2;}
var headerHeight=$("page-header-id").offsetHeight+getMarginsH($("page-header-id"));var toolBarHeight=editing?getOutsideHeight($("iz_toolbar"))+getOutsideHeight($("iz_toolbar_tabs_runner")):0
var headerHeight=getOutsideHeight($("page-header-id"));var h=(dim[1]-effectiveCanvasPaddingHeight-headerHeight-toolBarHeight-getBordersH(iz_canvas));page.iz_canvas.style.width=(dim[0]-effectiveCanvasPaddingWidth-getBordersW(iz_canvas))+"px";page.iz_canvas.style.height=Math.max(10,h)+"px";iz_canvas_dimensions=[dim[0],dim[1]-headerHeight-toolBarHeight-getBordersH(iz_canvas)];if(is_start_page)
{if(isIE)
{dim=getWindowSize();if((!editing)&&(!previewing))
{dim[1]-=izFooterManager.getHeight();}
dim[0]=dim[0]/zoom;dim[0]-=1*zoom;if(isIE7||isIE6)
{dim[1]-=30*zoom;}
dim[1]=dim[1]/zoom;document.body.style.width=dim[0]+"px";document.body.style.height=dim[1]+"px";$("page-header-id").style.width=dim[0]+"px";$("mags-page-container").style.width=dim[0]+"px";$("mags-page-container").style.height=(dim[1]-headerHeight-toolBarHeight-getBordersH(iz_canvas))+"px";}
if($('embedded_toc')&&(!editing)&&(!previewing))
{$('embedded_toc').style.height=(dim[1]+izFooterManager.getHeight()-headerHeight-toolBarHeight-getBordersH(iz_canvas)-20)+"px";}
var canvas_padding_width=getPaddingsW(iz_canvas)==0?effectiveCanvasPaddingWidth:getPaddingsW(iz_canvas);var max_canvas_padding_width=Math.max((iz_embedded_toc?2*$('embedded_toc').offsetWidth:0),getPaddingsW(iz_canvas));var left=(iz_original_page_number-1)*(getStyle(page.iz_canvas,"width")+max_canvas_padding_width);page.iz_canvas.style.left=left+"px";if((!editing)&&(!previewing)&&(!isIE))
{var tmp=$C("div");tmp.style.position="relative";$('prefetched_pages_array').appendChild(tmp);var tmp=$C("div");tmp.style.position="relative";tmp.style.left=left+"px";$('prefetched_pages_array').appendChild(tmp);$('prefetched_pages_array').scrollLeft=left;}
else if(isOpera)
{}
else
{$('prefetched_pages_array').style.overflow="visible";$('prefetched_pages_array').style.left=-left+"px";}}
if(page.viewport)
{page.viewport.doResize();}
showCommentAvatars(page);if(previewing&&isIE)
{page.iz_canvas.style.left="1px";}
if(isOpera)
{page.iz_canvas.style.left="0px";$('prefetched_pages_array').scrollLeft=0;$('prefetched_pages_array').style.left=0;}}
function disableLinks(e)
{var kids=e.getElementsByTagName('A');for(var i=0,len=kids.length;i<len;++i)
{var kid=kids[i];kid.onclick=new Function("return false;")}}
function _applyStyle(element,style)
{element.style.position="absolute";if(style)
{for(var name in style)
{var val=style[name];if((name=='top')||(name=="height")||(name=='left')||(name=="width")||(name=="fontSize")||(name=="lineHeight")||(name=="padding")||(name=="borderWidth")||(name=="margin"))
{val=parseFloat(val);element["s_"+name]=val;if(name=="fontSize")
{element.s_height=val;}}
else
{element.style[name]=val;}
if(name=="opacity")
{Element.setOpacity(element,val);element.style["sopacity"]=val;}}}
else
{element.style.left=(iz_canvas.offsetWidth/3)+"px";element.style.top=(iz_canvas.offsetHeight/3)+"px";}}
var izHintManager=null;IZ.HintManager=Class.create();IZ.HintManager.prototype={initialize:function()
{izHintManager=this;this.hints=[];if(getCookie('iz_hint_about_wheel')!="no")
{this.hints.push({user_name:'Magazines.me',msg:'Hint: For <b>best speed</b> use your <b>Mouse Wheel</b> to flip through pages'});}
var dim=getWindowSize();if((dim[0]<2/3*screen.width&&dim[0]<800)||(dim[1]<2/3*screen.height&&dim[1]<600))
{this.hints.push({user_name:'Magazines.me',msg:'Hint: For best Wow! increase your screen size'});}
if(isIE)
{this.hints.push({user_name:'Magazines.me',msg:'Hint: For best response use a fast browser like Firefox, Safari, Opera or Chrome'});}
if(isIE6||isIE7)
{this.hints.push({user_name:'Magazines.me',msg:'Hint: You may experience unexpected anomalies. Please upgrade your browser'});}},getRandomHint:function()
{if(Math.random()<0.25)
{return(this.hints[parseInt(Math.random()*this.hints.length)]);}},usingScrollWheel:function()
{setCookie('iz_hint_about_wheel','no',14);this.hints.splice(0,1);}};IZ.FooterManager=Class.create();IZ.FooterManager.prototype={initialize:function()
{izFooterManager=this;new IZ.PartyLineManager().init();new IZ.CrawlerManager().init();},getHeight:function()
{var h=izPartyLineManager.getHeight();h+=izCrawlerManager.getHeight();return(h);},getLeft:function()
{return(iz_embedded_toc?$('embedded_toc').offsetWidth:0);}};IZ.PartyLineManager=Class.create();IZ.PartyLineManager.prototype={initialize:function()
{},init:function()
{izPartyLineManager=this;Event.observe($('party_line_button'),'click',function(event){izPartyLineManager.toggleEnable();Event.stop(event);return false;});Event.observe($('partyline_chat_btn'),'click',function(event){izPartyLineManager.toggleChatBarEnable();Event.stop(event);return false;});if(this.isEnabled())
{$('partyline_chat_btn').src=this.isChatBarEnabled()?'/images/following_avatar_balloon.gif':'/images/avatar_balloon.png';this.testing=false;this.delayBetweenActivityChecks=10000;this.lastActivitySec=10000;this.AVATAR_HEIGHT=45;this.AVATAR_WIDTH=30;this.BALLOON_OFFSET_HEIGHT=10;this.BALLOON_OFFSET_WIDTH=30;this.MARGIN_ABOVE=10;this.DURATION_OF_ANIMATED_CHANGE=1000;this.DURATION_OF_ANIMATED_CHANGE_FRAME=20;this.enabled=false;this.timeoutProcess=null;this.popupChatsPaused=false;this.CRAWLER_MSG_HEIGHT=45;this.animated_chat_history=[];this.enabled=true;Event.observe(window,'unload',izPartyLineManager.unload,false);this.show();}
else
{$('partyline_chat_btn').style.display='none';}},unload:function(event)
{this.enabled=false;iz_prefetcher.saveUserBehavior(true);},getHeight:function()
{return(0);},isEnabled:function()
{if(getCookie('iz_partyline')!="no")
{setCookie('iz_partyline','yes',100000);}
return(getCookie('iz_partyline')=="yes");},isChatBarEnabled:function()
{return(getCookie('iz_partyline_chat_bar')=="yes");},toggleChatBarEnable:function()
{if(this.isChatBarEnabled())
{setCookie('iz_partyline_chat_bar','no',14);this.balloon.style.visibility='hidden';}
else
{setCookie('iz_partyline_chat_bar','yes',100000);setCookie('iz_partyline','yes',100000);this.balloon.style.visibility='visible';}
$('partyline_chat_btn').src=this.isChatBarEnabled()?'/images/following_avatar_balloon.gif':'/images/avatar_balloon.png';},toggleEnable:function()
{if(this.isEnabled())
{setCookie('iz_partyline','no',14);setCookie('iz_partyline_chat_bar','no',14);}
else
{setCookie('iz_partyline','yes',100000);}
reloadWindow();},show:function()
{if(this.enabled)
{new Ajax.Request("/activity/"+iz_mag_id+"/"+iz_issue_id,{method:'GET',asynchronous:true,onComplete:function(transport,json){izPartyLineManager._show(transport.responseText);},contentType:'text/plain'});this.timeoutProcess=setTimeout(function(){izPartyLineManager.show();},this.delayBetweenActivityChecks);}},fauxPayloads:[{time_now:1258174490,users_online:5,users:[{user_id:1,page_number:32,page_title:'This is a title long one at that you know',chat:'This is waay cool'},{user_id:2,page_number:32,page_title:'This is a title',at_sec:1258174435,chat:'This is a super duper blooper amp with 0.1 watts and 120 horsepower',avatar_url:'/images/error.jpg'},{user_id:3,page_number:32,page_title:'This is also a title',at_sec:1258174435,chat:"Hi there. Haven't seen you for ages. Hope you  stop  by more often"},{user_id:4,page_number:122,page_title:'This is also a title',at_sec:1258174435,chat:'Love your avatar'},{user_id:5,page_number:122,page_title:'This is also a title',at_sec:0,chat:'Check out page 1235. It has some cuss words'},{user_id:6,page_number:122,page_title:'This is also a title',at_sec:1258174435,chat:'This is just waay cool'}],chats:[{id:1,user_id:1,user_name:'Joe',page_number:116,body:'This is waay cool',page_title:'The Best Title in the World',at_sec:1258174435},{id:2,user_id:2,user_name:'Joe Bob',page_number:16,body:'This is a super duper blooper amp with 0.1 watts and 120 horsepower',page_title:'The Best Title in the World',at_sec:1258174435}]}],_show:function(payload)
{if(typeof iz_whoiam=='undefined'||iz_whoiam==null)
{setTimeout(function(){izPartyLineManager._show(payload);},200);return;}
var data=eval("("+payload+")");if(this.testing)
{if(typeof this.fauxPayload=='undefined')
{this.fauxPayload=-1;}
++this.fauxPayload;if(this.fauxPayload>=this.fauxPayloads.length)
{return;}
data=this.fauxPayloads[this.fauxPayload];iz_whoiam.avatar='/images/error.jpg';}
else
{if(data.users.length>0)
{if(data.users[0].at_sec==this.lastActivitySec)
{this.delayBetweenActivityChecks*=2;this.delayBetweenActivityChecks=Math.min(this.delayBetweenActivityChecks,5*60*1000)
return;}
this.lastActivitySec=data.users[0].at_sec;if(this.alreadyDrawn)
{this.delayBetweenActivityChecks=10000;}}}
this.time_now=data.time_now;this.server_time_minus_client_time=data.time_now-new Date().getTime()/1000;this.page_number=iz_page_number;this._update(data.users,this.alreadyDrawn);this.data=data;this.updateChats(data);this.alreadyDrawn=true;},update:function()
{if(!this.enabled)
{return;}
if(this.delayBetweenActivityChecks>20000)
{if(this.timeoutProcess)
{clearTimeout(this.timeoutProcess);this.timeoutProcess=null;}
this.delayBetweenActivityChecks=10000;this.show();}
this.delayBetweenActivityChecks=10000;this.page_number=iz_page_number;var users=[];for(var i=0,len=this.users.length;i<len;++i)
{users.push(cloneHashS(this.users[i]));}
this._update(users,false);},_update:function(users,animate)
{this.previous_users=this.users?this.users:[];this.users=users;var total_number_of_users=users.length;var page_numbers=[];var page_numbers_to_users={};var current_user=null;var num_users_before_current_page=0;var num_users_after_current_page=0;var num_users_on_current_page=0;for(var i=0,len=this.users.length;i<=len;++i)
{if(i==len)
{if(current_user)
{break;}
this.users.push({user_id:iz_whoiam.id});}
var user=this.users[i];var pgnum=user.page_number;if(user.user_id==iz_whoiam.id)
{current_user={current_url:izPageManager.getPage().link,avatar_url:iz_whoiam.avatar,user_name:iz_whoiam.user_name,page_number:this.page_number,issue_month:iz_issue_month,user_id:iz_whoiam.id,page_title:document.title,at_sec:new Date().getTime()/1000+this.server_time_minus_client_time};user=current_user;this.users[i]=current_user;pgnum=this.page_number;}
if(!page_numbers_to_users[pgnum])
{page_numbers_to_users[pgnum]=[];page_numbers.push(pgnum);}
page_numbers_to_users[pgnum].push(user);if(pgnum<this.page_number)
{++num_users_before_current_page;}
else if(pgnum>this.page_number)
{++num_users_after_current_page;}
else
{++num_users_on_current_page;}}
var page_offsets=cumulativeOffset(iz_page);var container=this.partyLineBar;if(!container)
{container=$C('div');container.id="partyline_bar";container.style.position='absolute';container.style.left=(iz_embedded_toc?$('embedded_toc').offsetWidth:0)+"px";var dim=getWindowSize();var top=(dim[1]-this.AVATAR_HEIGHT)+"px";{var offsets=cumulativeOffset($('prefetched_pages_array'));top=(offsets[1]+$('prefetched_pages_array').offsetHeight-this.AVATAR_HEIGHT)+"px";}
container.style.height="50px";container.style.top=top;container.style.width=iz_canvas.offsetWidth+"px";this.partyLineBar=container;document.body.appendChild(container);Event.observe(this.partyLineBar,"mousemove",function(event){izPartyLineManager.trackMouse(event);});Event.observe(this.partyLineBar,"mouseout",function(event){izPartyLineManager.trackMouseOut(event);});Event.observe(this.partyLineBar,"click",function(event){izPartyLineManager.togglePopupSticky(event);});if(iz_whoiam.logged_in||iz_whoiam.anyone_can_post)
{Event.observe(this.partyLineBar,(isFF?'DOMMouseScroll':'mousewheel'),function(event){izPartyLineManager.mouseWheelListener(event);});}}
var done=false;while(!done)
{done=true;for(var i=0;i<page_numbers.length-1;++i)
{if(Math.abs(page_numbers[i+1]-this.page_number)<Math.abs(page_numbers[i]-this.page_number))
{var tmp=page_numbers[i+1];page_numbers[i+1]=page_numbers[i];page_numbers[i]=tmp;done=false;}}}
page_numbers.reverse();var partyLineWidth=container.offsetWidth;var displayed_page_number_spread=iz_page_count;var users=page_numbers_to_users[this.page_number];var num_users=users.length;var balloonWidth=(this.isChatBarEnabled()?this.BALLOON_OFFSET_WIDTH:0)
var cur_page_width=Math.min(num_users/total_number_of_users*partyLineWidth,num_users*this.AVATAR_WIDTH+balloonWidth);var remainder_width=partyLineWidth-cur_page_width;var cur_start_x=this.page_number/displayed_page_number_spread*(partyLineWidth-cur_page_width);var cur_center_x=cur_start_x+cur_page_width/2-(this.AVATAR_WIDTH+balloonWidth)/2;var width_before_current_page=cur_start_x;var width_after_current_page=partyLineWidth-cur_page_width-cur_start_x;var start_after_current_page=cur_start_x+cur_page_width;if(!this.e_id)
{this.e_id=1;}
var current={};var prev={};for(var i=0,len=this.previous_users.length;i<len;++i)
{if(!this.previous_users[i].avatar)
{continue;}
prev[this.previous_users[i].user_id]=this.previous_users[i];}
this.avatars=[];for(var i=0,len=page_numbers.length;i<len;++i)
{var pgnum=page_numbers[i];var users=page_numbers_to_users[pgnum];for(var j=0,lenj=users.length;j<lenj;++j)
{var user=users[j];var x=0;if(pgnum==this.page_number)
{x=cur_center_x+(j&1?1:-1)*(parseInt((j+1)/2)*cur_page_width/num_users_on_current_page);}
else if(pgnum<this.page_number)
{x=(user.page_number-1)/this.page_number*width_before_current_page;x+=Math.min(j*width_before_current_page/num_users_before_current_page,j*this.AVATAR_WIDTH);}
else
{x=start_after_current_page+(users.length-j-1)*Math.min(width_after_current_page/num_users_after_current_page,this.AVATAR_WIDTH)+(user.page_number-this.page_number)/(displayed_page_number_spread-this.page_number)*width_after_current_page;}
if(!prev[user.user_id])
{var avatar=null;if(user.user_id==iz_whoiam.id)
{avatar=$C('div');avatar.isMe=true;avatar.style.position='absolute';avatar.style.zIndex=50002;var balloon=$C('img');balloon.src="/images/avatar_balloon.png";balloon.style.left=0;balloon.style.position='relative';balloon.style.float='left';balloon.style.top=(-15)+"px";balloon.style.zIndex="50002";avatar.appendChild(balloon);user.avatar_balloon=balloon;this.balloon=balloon;}
var img=$C('img');img.src=user.avatar_url?user.avatar_url:"http://cdn3.magazines.me/images/default_avatar-transparent-bg.gif";if(avatar)
{avatar.appendChild(img);}
else
{avatar=img;}
avatar.img=img;avatar.style.left=x+"px";avatar.style.position='absolute';avatar.style.cursor='pointer';avatar.id=user.user_id+"_"+this.e_id;++this.e_id;avatar.user=user;avatar.style.top="50px";user.avatar=avatar;this.avatars.push(avatar);if(user.user_id==iz_whoiam.id)
{if(!this.isChatBarEnabled())
{avatar.img.style.border="1px solid #0000FF";}
avatar.style.cursor='move';Event.observe(avatar,'mousedown',function(event){izPartyLineManager.onPickup(event);});}
container.appendChild(avatar);resizeImage(img,this.AVATAR_WIDTH,this.AVATAR_HEIGHT);this._queueAnimation(avatar,'top',50,this.AVATAR_HEIGHT-img.offsetHeight,'move');if(this.balloon&&!this.isChatBarEnabled())
{this.balloon.style.visibility='hidden';}}
else
{user.avatar=prev[user.user_id].avatar;this.avatars.push(user.avatar);user.avatar.user=user;if(x!=user.avatar.offsetLeft)
{this._queueAnimation(user.avatar,'left',user.avatar.offsetLeft,x,'move');}
if(user.user_id==iz_whoiam.id)
{this._updateUserPopupContent(user.avatar);}}
var minutesSinceActive=(this.time_now/1000-user.at_sec)/60;var opacity=1.0-(minutesSinceActive>60?Math.min(minutesSinceActive/4*60,1)*0.8:0.0);opacity=(opacity>0.95?1.0:(opacity<0.2?0.2:opacity));Element.setOpacity(user.avatar,opacity);current[user.user_id]=user;if(user.user_id==iz_whoiam.id)
{if(!this.userPopup)
{this._buildUserPopup(user.avatar);}}}}
for(var i=0,len=this.previous_users.length;i<len;++i)
{if(!current[this.previous_users[i].user_id])
{this._queueAnimation(this.previous_users[i].avatar,'top',0,50,'remove');}}
container.appendChild(current_user.avatar);if(!animate)
{this.animate(0,1);}
else
{this.animate(this.DURATION_OF_ANIMATED_CHANGE,this.DURATION_OF_ANIMATED_CHANGE_FRAME);}},_queueAnimation:function(e,styleName,startValue,endValue,onComplete)
{if(!this.animation_queue)
{this.animation_queue=[];}
this.animation_queue.push({e:e,styleName:styleName,startValue:startValue,endValue:endValue,onComplete:onComplete});},animate:function(total_duration,frame_duration)
{if(this.animation_queue.length==0)
{return;}
this._animate(new Date().getTime(),total_duration,frame_duration);},_animate:function(startTime,total_duration,frame_duration)
{var completed=false;var completion=total_duration==0?1.0:(new Date().getTime()-startTime)/total_duration;if(completion>0.98)
{completion=1.0;completed=true;}
for(var i=0,len=this.animation_queue.length;i<len;++i)
{var q=this.animation_queue[i];q.e.style[q.styleName]=(q.startValue+(q.endValue-q.startValue)*completion)+(q.styleName=='left'||q.styleName=='top'?"px":"");}
if(!completed)
{setTimeout(function(){izPartyLineManager._animate(startTime,total_duration,frame_duration);},frame_duration);}
else
{for(var i=0,len=this.animation_queue.length;i<len;++i)
{var q=this.animation_queue[i];switch(q.onComplete)
{case'remove':{this.partyLineBar.removeChild(q.e);}}}
this.animation_queue=[];}},trackMouse:function(event)
{if((editing&&izEditor&&izEditor.consumingAllEvents)||(previewing)||(viewport==null)||(viewport.zoomLevel>0))
{return(true);}
if((!this.userPopup)||(!this.userPopup.sticky))
{var avatar=this._pickAvatar(event);if(!avatar)
{avatar=this.draggingAvatar;}
if(avatar)
{if((!this.userPopup)||(avatar!=this.userPopup.avatar))
{this._updateUserPopup(avatar);}
this._positionUserPoup(event);}
else if(this.userPopup!=null&&!this.userPopup.sticky)
{this._closeUserPopup(this.userPopup);}}},trackMouseOut:function(event)
{if(this.userPopup!=null)
{var x=Event.pointerX(event);var y=Event.pointerY(event);var offsets=cumulativeOffset(this.partyLineBar);if((x<offsets[0]||x>offsets[0]+this.partyLineBar.offsetWidth)||(y<offsets[1]||y>offsets[1]+Math.max(50,this.partyLineBar.offsetHeight)))
{if(this.userPopup!=null&&!this.userPopup.sticky)
{if(this.draggingAvatar)
{}
else
{this._closeUserPopup(this.userPopup);}}}}},gotoSamePage:function(event)
{var avatar=this._pickAvatar(event);if(avatar)
{iz_prefetcher.goto_page(avatar.user.page_number,'skip');Event.stop(event);return(false);}},togglePopupSticky:function(event)
{var avatar=this._pickAvatar(event);if(avatar)
{if(this.userPopup)
{this.userPopup.sticky=!this.userPopup.sticky;}}},_pickAvatar:function(event)
{var x=Event.pointerX(event);var y=Event.pointerY(event);for(var i=this.avatars.length-1;i>=0;--i)
{var a=this.avatars[i];var offsets=[this.partyLineBar.offsetLeft+a.offsetLeft,this.partyLineBar.offsetTop+a.offsetTop-(a.isMe?this.BALLOON_OFFSET_HEIGHT:0)];if((x>offsets[0]&&x<offsets[0]+a.offsetWidth)&&(y>offsets[1]&&y<offsets[1]+a.offsetHeight+(a.isMe?this.BALLOON_OFFSET_HEIGHT:0)))
{return(a);}}
return(null);},_buildUserPopup:function(avatar)
{var div=$C('div');div.id='partyline_user_popup_details';var isMe=avatar.user.user_id==iz_whoiam.id;var user_name=(avatar.user.user_name?(avatar.user.user_name!='supereditor'?avatar.user.user_name:'Magazines.me'):"Guest")+(isMe?"(You!)":"");var user_name=isMe?"You!":(avatar.user.user_name?(avatar.user.user_name!='supereditor'?avatar.user.user_name:'Magazines.me'):"Guest");html="<table><tr><td align='center'><div id='partyLine_popup_page_number' class='PartyLine_Popup_Page_Number'>"+avatar.user.page_number+"</div></td><td><div class='PartyLine_Popup_Avatar' id='partyline_avatar_image'><img src='"+avatar.img.src+"' /></div></td><td><div class='PartyLine_Popup_Username' id='partyline_user_name'>"+user_name+"</div></td></tr></table><div id='partyLine_popup_page_title' class='Clickable PartyLine_Popup_Page_Title'>"+this._cleanUpTitle(avatar.user.page_title)+"</div>";var chatty=false;if(iz_whoiam.logged_in||iz_whoiam.anyone_can_post)
{chatty=true;html+="<div id='partyline_chat_area'>"+"<div id='partyline_chat_prompt'>What music or equipment are you listening to?</div>"+"<TEXTAREA id='partyLine_posting_textArea' name='post[body]' autocomplete='off' rows='1'></TEXTAREA>"+"<div align='right'><input type='submit' class='Clickable' id='partyline_post_button' value='Send'></div>"+"</div>";}
div.innerHTML=html;var container=$C('div');var img=$C('img');img.src='http://cdn3.magazines.me/images/callout_to_left.png';container.appendChild(img);container.appendChild(div);container.id="partyline_user_popup";this.userPopup=container;container.style.left="10000px";div.style.top=0;div.style.left=0;div.style.width="300px";document.body.appendChild(container);if(chatty)
{Event.observe($('partyLine_posting_textArea'),'click',function(event){izPartyLineManager.enterMessage(event);});Event.observe($('partyline_post_button'),'click',function(event){return(izPartyLineManager.postMessage(event));});}
Event.observe(div,'click',function(event){return(izPartyLineManager._mouseClickedUserPopup(event));});},_mouseClickedUserPopup:function(event)
{var clickables=document.getElementsByClassName("Clickable",this.userPopup);var x=Event.pointerX(event);var y=Event.pointerY(event);if(!this.userPopup.avatar.isMe)
{for(var i=clickables.length-1;i>=0;--i)
{var s=clickables[i];var offsets=cumulativeOffset(s);var offsets=[this.userPopup.offsetLeft+s.offsetLeft,offsets[1]];if((x>offsets[0]&&x<offsets[0]+s.offsetWidth)&&(y>offsets[1]&&y<offsets[1]+s.offsetHeight))
{this._closeUserPopup(this.userPopup);iz_prefetcher.goto_page(this.userPopup.avatar.user.page_number,'skip');Event.stop(event);return(false);return;}}}
if((Math.abs(x-(this.userPopup.offsetLeft+this.userPopup.childNodes[1].offsetWidth-30))<30)&&(Math.abs(y-this.userPopup.offsetTop-30)<30))
{this._closeUserPopup(this.userPopup);}
return(true);},_positionUserPoup:function(event)
{this.userPopup.style.display='block';var x=Event.pointerX(event);var y=Event.pointerY(event);if(x>this.partyLineBar.offsetWidth/2+izFooterManager.getLeft())
{this.userPopup.childNodes[0].src='/images/callout_to_left.png';this.userPopup.style.left=(x-0.70*this.userPopup.offsetWidth)+"px";}
else
{this.userPopup.childNodes[0].src='/images/callout_to_right.png';this.userPopup.style.left=(x)+"px";}
var dim=getWindowSize();this.userPopup.style.top=(dim[1]-this.AVATAR_HEIGHT-10-izFooterManager.getHeight()-this.userPopup.offsetHeight)+"px";},_cleanUpTitle:function(title)
{return((title.startsWith(iz_mag_name+" - ")?title.substring(iz_mag_name.length+" - ".length):title).truncate(35));},_updateUserPopupContent:function(avatar)
{var user=avatar.user;var isMe=user.user_id==iz_whoiam.id;if($('partyline_chat_area'))
{$('partyline_chat_area').style.display=isMe&&this.isChatBarEnabled()?'block':'none';}
if($('partyline_avatar_image'))
{$('partyline_avatar_image').childNodes[0].src=avatar.img.src;$('partyLine_popup_page_number').innerHTML=user.page_number;var user_name=isMe?"You!":(avatar.user.user_name?(avatar.user.user_name!='supereditor'?avatar.user.user_name:'Magazines.me'):"Guest");$('partyline_user_name').innerHTML=user_name;$('partyLine_popup_page_title').innerHTML=this._cleanUpTitle(user.page_title);}},_updateUserPopup:function(avatar)
{this.userPopup.avatar=avatar;this.userPopup.sticky=false;this._updateUserPopupContent(avatar);this.userPopup.style.display='block';var img=this.userPopup.childNodes[0];var div=this.userPopup.childNodes[1];var w=div.offsetWidth;var h=div.offsetHeight;img.style.width=(1.4*w)+"px";img.style.height=(1.2*h)+"px";},_closeUserPopup:function()
{this.userPopup.style.display='none';this.userPopup.sticky=false;},onPickup:function(event)
{if(!this.draggingAvatar)
{this.target=this._pickAvatar(event);if(this.target)
{this.moveListener=this.onMove.bindAsEventListener(this);this.endListener=this.doEnd.bindAsEventListener(this);Event.observe(document,'mousemove',this.moveListener);Event.observe(document,'mouseup',this.endListener);var x=Event.pointerX(event);var y=Event.pointerY(event);var t=this.target;this.downOffsetX=x-this.partyLineBar.offsetLeft-t.offsetLeft;this.downOffsetY=y-this.partyLineBar.offsetTop-t.offsetTop;this.startTime=new Date().getTime();this.originalTop=this.target.offsetTop;this.draggingAvatar=this.target;Event.stop(event);}}},doEnd:function(event)
{Event.stopObserving(document,'mousemove',this.moveListener);Event.stopObserving(document,'mouseup',this.endListener);this.draggingAvatar=null;if(new Date().getTime()-this.startTime<250)
{}
else
{var x=Event.pointerX(event);var newPageNumber=1+parseInt((x-this.partyLineBar.offsetLeft)/this.partyLineBar.offsetWidth*iz_page_count);iz_prefetcher.goto_page(newPageNumber,'skip');this._closeUserPopup(this.userPopup);}
Event.stop(event);return(false);},onMove:function(event)
{var x=Event.pointerX(event);var y=Event.pointerY(event);if(this.draggingAvatar)
{var t=this.target;x-=this.partyLineBar.offsetLeft;t.style.left=Math.max(0,Math.min(this.partyLineBar.offsetWidth-this.target.offsetWidth,x-this.downOffsetX))+"px";t.style.top=this.originalTop+"px";this._positionUserPoup(event);var newPageNumber=1+parseInt(x/this.partyLineBar.offsetWidth*iz_page_count);t.user.page_number=newPageNumber;if($('partyLine_popup_page_number'))
{$('partyLine_popup_page_number').innerHTML=newPageNumber;var p=izPageManager.getLoadedPageByPageNumber(newPageNumber);$('partyLine_popup_page_title').innerHTML=p?this._cleanUpTitle(p.border_title):"----";}}
Event.stop(event);},updateChats:function(data)
{var chats=data.chats;if(this.popupChatsPaused)
{return;}
var chats_to_animate=[];if(this.testing)
{this.last_chats_displayed={};}
if(!this.last_chats_displayed&!this.testing)
{this.last_chats_displayed={};for(var i=0,len=chats.length;i<len;++i)
{this.last_chats_displayed[chats[i].id]=chats[i];this.animated_chat_history.push(chats[i]);}}
else
{for(var i=0,len=chats.length;i<len;++i)
{if(!this.last_chats_displayed[chats[i].id])
{chats_to_animate.push(chats[i]);this.last_chats_displayed[chats[i].id]=chats[i];}}}
if(chats_to_animate.length>0)
{for(var i=0,len=chats.length;i<len;++i)
{if(!chats[i].popup)
{this._buildChatPopup(chats[i]);}}
this._animateChats(chats_to_animate);}},_buildChatPopup:function(chat)
{var div=$C('div');div.className='Partyline_Chat_Popup_Details';var user_name=(chat.user_name?(chat.user_name!='supereditor'?chat.user_name:'Magazines.me'):"Guest")+(chat.user_id==iz_whoiam.id?" (You!)":"");var avatar=chat.avatar_url?chat.avatar_url:"http://cdn3.magazines.me/images/default_avatar-transparent-bg.gif"
var when=timeago(this.time_now-chat.at_sec);html="<div class='PartyLine_Chat_Popup_Payload'><div class='PartyLine_Chat_Popup_Avatar'><img src='"+avatar+"'/></div><div class='PartyLine_Chat_Popup_Msg'>"+chat.body+"</div></div><div class='PartyLine_Chat_Popup_Where'><span class='PartyLine_Chat_When'>"+when+" by "+user_name+" from </span><span class='PartyLine_Chat_Popup_Page_Number Clickable' id='plc_page_number"+chat.id+"'>"+chat.page_number+" </span><span class='PartyLine_Chat_Popup_Page_Title Clickable'>"+chat.page_title+"</span></div>";div.innerHTML=html;var popup=$C('div');var img=$C('img');popup.appendChild(img);popup.appendChild(div);popup.className="Partyline_Chat_Popup";popup.style.left="10000px";popup.chat=chat;chat.popup=popup;div.style.top=0;div.style.left=0;div.style.width="300px";var x=chat.page_number*(this.partyLineBar.offsetWidth-this.AVATAR_WIDTH)/iz_page_count+(iz_embedded_toc?$('embedded_toc').offsetWidth:0);for(var i=0,len=this.users.length;i<len;++i)
{if(this.users[i].user_id==chat.user_id)
{}}
if(x>this.partyLineBar.offsetWidth)
{x=this.partyLineBar.offsetWidth;}
var right_side=x>this.partyLineBar.offsetWidth/2;img.src=right_side?'/images/callout_to_left.png':'/images/callout_to_right.png';document.body.appendChild(popup);var w=div.offsetWidth;var h=div.offsetHeight;img.style.width=(1.4*w)+"px";img.style.height=(1.25*h)+"px";popup.style.left=(right_side?x-0.65*popup.offsetWidth:x)+"px";var dim=getWindowSize();popup.style.top=(dim[1]-izFooterManager.getHeight()-1-popup.offsetHeight+(isIE?50:0))+"px";Element.setOpacity(popup,0.0);removeSelf(popup);},postMessage:function(event)
{if($('partyLine_posting_textArea').value.strip().length>0)
{izPartyLineManager.editingPostingArea=false;var p=izPageManager.getCurrentPage();var payload="<ATT>current_url="+p.link+"</ATT>";payload+="<ATT>avatar_url="+iz_whoiam.avatar+"</ATT>";payload+="<ATT>user_name="+iz_whoiam.user_name+"</ATT>";payload+="<ATT>page_number="+iz_page_number+"</ATT>";payload+="<ATT>issue_month="+iz_issue_month+"</ATT>";payload+="<ATT>user_id="+iz_whoiam.id+"</ATT>";payload+="<ATT>page_title="+document.title+"</ATT>";payload+="<ATT>body="+$('partyLine_posting_textArea').value+"</ATT>";new Ajax.Request("/iz/magazines/"+iz_mag_id+"/quick_chat?issue_id="+iz_issue_id,{method:'POST',asynchronous:true,postBody:payload,contentType:'text/plain'});$('partyLine_posting_textArea').value="Thank you.";this.update();this._closeUserPopup(this.userPopup);return(true);}
else
{Event.stop(event);return false;}},enterMessage:function(event)
{if(!izPartyLineManager.editingPostingArea)
{izPartyLineManager.editingPostingArea=true;$('partyLine_posting_textArea').value='';Event.stop(event);return false;}
return(true);},mouseWheelListener:function(event)
{this._closeUserPopup(this.userPopup);event=event?event:window.event;var wheelData=event.detail?event.detail*-1:event.wheelDelta/40;var hide_bubble=null;if(this.animated_chat_history.length>0)
{if(typeof this.popup_chat_history_index=='undefined')
{this.popup_chat_history_index=this.animated_chat_history.length;}
if(wheelData<0)
{++this.popup_chat_history_index;if(this.popup_chat_history_index>this.animated_chat_history.length-1)
{this.popup_chat_history_index=this.animated_chat_history.length;hide_bubble=this.animated_chat_history[this.animated_chat_history.length-1];}}
else
{--this.popup_chat_history_index;if(this.popup_chat_history_index<0)
{this.popup_chat_history_index=-1;hide_bubble=this.animated_chat_history[0];}}
if(hide_bubble)
{var c=hide_bubble;if(c.popup&&c.popup.parentNode)
{removeSelf(c.popup);Element.setOpacity(c.popup,0.0);if(c.clickListener)
{Element.stopObserving(c.popup,"click",c.clickListener);}}}
else if(this.animated_chat_history.length>0)
{var chat=this.animated_chat_history[this.popup_chat_history_index];if(!chat.popup)
{this._buildChatPopup(chat);}
for(var i=0,len=this.animated_chat_history.length;i<len;++i)
{var c=this.animated_chat_history[i];if(c.popup&&c.popup.parentNode)
{removeSelf(c.popup);Element.setOpacity(c.popup,0.0);if(c.clickListener)
{Element.stopObserving(c.popup,"click",c.clickListener);}}}
if((!chat.popup.parentNode)||isIE)
{document.body.appendChild(chat.popup);chat.clickListener=function(event){izPartyLineManager.mouseClickedPopup(event,chat);};Event.observe(chat.popup,"click",chat.clickListener);}
Element.setOpacity(chat.popup,1.0);}}
Event.stop(event);return(false);},chatBarControls:function(event)
{this.popupChatsPaused=!this.popupChatsPaused;$('chat_bar_controls').src=this.popupChatsPaused?'/images/chat_bar_controls_paused.gif':'/images/chat_bar_controls.gif';},_animateChats:function(chats)
{this.__animateChats(chats,0,new Date().getTime(),1000,20,3000,true);},__animateChats:function(chats,which,startTime,total_duration,frame_duration,display_time,poppingUp)
{if(this.freezeAnimation&&!this.animateNextChatMessage)
{setTimeout(function(){izPartyLineManager.__animateChats(chats,which,startTime+205,total_duration,frame_duration,display_time,poppingUp);},1000);return;}
var chat=chats[which];if(!chat.popup.parentNode)
{document.body.appendChild(chat.popup);chat.mouseMoveListener=function(event){izPartyLineManager.mouseInChatPopup(event,true);};chat.mouseOutListener=function(event){izPartyLineManager.mouseInChatPopup(event,false);};chat.clickListener=function(event){izPartyLineManager.mouseClickedPopup(event,chat);};Event.observe(chat.popup,"mousemove",chat.mouseMoveListener);Event.observe(chat.popup,"mouseout",chat.mouseOutListener);Event.observe(chat.popup,"click",chat.clickListener);}
var completed=false;var completion=total_duration==0?1.0:(new Date().getTime()-startTime)/total_duration;if(completion>0.98)
{completion=1.0;completed=true;}
var opacity=poppingUp?completion:1-completion;Element.setOpacity(chat.popup,opacity);if(this.animateNextChatMessage)
{completed=true;poppingUp=false;this.animateNextChatMessage=false;this.freezeAnimation=false;}
if(!completed)
{setTimeout(function(){izPartyLineManager.__animateChats(chats,which,startTime,total_duration,frame_duration,display_time,poppingUp);},frame_duration);}
else if(poppingUp)
{setTimeout(function()
{izPartyLineManager.__animateChats(chats,which,new Date().getTime(),total_duration,frame_duration,display_time,false);if(which+1<chats.length)
{izPartyLineManager.__animateChats(chats,which+1,new Date().getTime(),total_duration,frame_duration,display_time,true);}},display_time);}
else
{this.animated_chat_history.push(chat);removeSelf(chat.popup);Element.stopObserving(chat.popup,"mousemove",chat.mouseMoveListener);Element.stopObserving(chat.popup,"mouseout",chat.mouseOutListener);Element.stopObserving(chat.popup,"click",chat.clickListener);}},mouseInChatPopup:function(event,flag)
{this.freezeAnimation=flag;},mouseClickedPopup:function(event,chat)
{var spans=getElementsByTagName(chat.popup,"span");var x=Event.pointerX(event);var y=Event.pointerY(event);for(var i=spans.length-1;i>=0;--i)
{var s=spans[i];var offsets=cumulativeOffset(s);var offsets=[chat.popup.offsetLeft+s.offsetLeft,offsets[1]];if((x>offsets[0]&&x<offsets[0]+s.offsetWidth)&&(y>offsets[1]&&y<offsets[1]+s.offsetHeight))
{if(s.className&&s.className.indexOf('Clickable')!=-1)
{iz_prefetcher.goto_page(chat.page_number,'skip');return;}}}
this.animateNextChatMessage=true;Element.setOpacity(chat.popup,0.0);}};IZ.CrawlerManager=Class.create();IZ.CrawlerManager.prototype={initialize:function()
{},init:function()
{izCrawlerManager=this;if($('news_crawler_btn'))
{Event.observe($('news_crawler_btn'),'click',function(event){izCrawlerManager.toggleEnable();Event.stop(event);return false;});}
if(this.isEnabled())
{this.testing=true;this.delayBetweenActivityChecks=10000;this.lastActivitySec=10000;this.DURATION_OF_ANIMATED_CHANGE=1000;this.DURATION_OF_ANIMATED_CHANGE_FRAME=20;this.enabled=true;this.timeoutProcess=null;this.data_msgs=[];this.CRAWLER_MSG_HEIGHT=45;this._show();}},isEnabled:function()
{return(getCookie('iz_partyline_crawler')=="yes");},closeCrawler:function()
{setCookie('iz_partyline_crawler','no',14);reloadWindow();},getHeight:function()
{return(this.isEnabled()?this.CRAWLER_MSG_HEIGHT+1:0);},toggleEnable:function()
{if(this.isEnabled())
{setCookie('iz_partyline_crawler','no',14);}
else
{setCookie('iz_partyline_crawler','yes',100000);}
reloadWindow();},fauxPayloads:[{time_now:1258174490,users:[{user_id:1,page_number:32,page_title:'This is a title long one at that you know',chat:'This is waay cool'},{user_id:2,page_number:32,page_title:'This is a title',at_sec:1258174435,chat:'This is a super duper blooper amp with 0.1 watts and 120 horsepower',avatar_url:'/images/error.jpg'},{user_id:3,page_number:32,page_title:'This is also a title',at_sec:1258174435,chat:"Hi there. Haven't seen you for ages. Hope you  stop  by more often"},{user_id:4,page_number:122,page_title:'This is also a title',at_sec:1258174435,chat:'Love your avatar'},{user_id:5,page_number:122,page_title:'This is also a title',at_sec:0,chat:'Check out page 1235. It has some cuss words'},{user_id:6,page_number:122,page_title:'This is also a title',at_sec:1258174435,chat:'This is just waay cool'}],msgs:[{id:1,user_id:1,user_name:'Joe',page_number:116,msg:'This is waay cool',page_title:'The Best Title in the World',at_sec:1258174435},{id:2,user_id:2,user_name:'Joe Bob',page_number:16,msg:'This is a super duper blooper amp with 0.1 watts and 120 horsepower',page_title:'The Best Title in the World',at_sec:1258174435},{id:3,user_id:1,user_name:'Joe Bob Joy',page_number:1,msg:"Hi there. Haven't seen you for ages. Hope you  stop  by more often",page_title:'The Best Title in the World',at_sec:1258174437},{id:4,user_id:30,page_number:50,msg:'Check out page 1235. It has some cuss words',page_title:'The Best Title in the World',at_sec:1258174439,avatar_url:'/images/error.jpg'},{id:5,user_id:3,user_name:'Joe',page_number:12,msg:'Check out page 1235. It has some cuss words 34567890 1234567890 1234567890 1234567890 12345 67890 12345 67890 1234567890 123456789 1234567890 1234567890',page_title:'The Best Title in the World',at_sec:1258174439}]}],_show:function()
{if(typeof iz_whoiam=='undefined'||iz_whoiam==null)
{setTimeout(function(){izCrawlerManager._show();},200);return;}
if(iz_mag_twitter_account&&iz_mag_twitter_list_name&&iz_news_crawler_enabled)
{var url="http://api.twitter.com/1/"+iz_mag_twitter_account+"/lists/"+iz_mag_twitter_list_name+"/statuses.json?callback=izCrawlerManager._showTwitters&per_page=200";var script=document.createElement('script');script.type="text/javascript";script.src=url;document.getElementsByTagName('head')[0].appendChild(script);}},_showTwitters:function(payload)
{this.data_msgs=[];var tweets_by_account={};if(payload)
{var data=payload;for(var i=0;i<data.length;++i)
{var status=data[i];if(!tweets_by_account[status.user.screen_name])
{tweets_by_account[status.user.screen_name]=0;}
if(tweets_by_account[status.user.screen_name]<2)
{var msg={msg:status.text,avatar_url:status.user.profile_image_url,user_name:status.user.screen_name,twitter:true};this.data_msgs.push(msg);tweets_by_account[status.user.screen_name]+=1;}}
this._showCrawler();}},_showCrawler:function()
{var c=$C('div');this.crawler=c;c.id='partyline_crawler';c.topMsg=$C('div');c.topMsg.id='pl_crawler_msg_1';c.topMsg.className='PartyLine_Crawler_Msg_Bar';c.bottomMsg=$C('div');c.bottomMsg.id='pl_crawler_msg_2';c.bottomMsg.className='PartyLine_Crawler_Msg_Bar';c.appendChild(c.bottomMsg);c.appendChild(c.topMsg);Event.observe(c,'click',function(event){if(izCrawlerManager.crawlerPageNumber){iz_prefetcher.goto_page(izCrawlerManager.crawlerPageNumber,'skip');Event.stop(event);return false;}});Event.observe(c,(isFF?'DOMMouseScroll':'mousewheel'),function(event){izCrawlerManager.mouseWheelListener(event);});Event.observe(c,"mousemove",function(event){izCrawlerManager.mouseInCrawler(event,true);});Event.observe(c,"mouseout",function(event){izCrawlerManager.mouseInCrawler(event,false);});$('page_content_view').appendChild(this.crawler);var deleteBtn=$C('img');deleteBtn.src='/images/delete.gif';deleteBtn.style.position='absolute';deleteBtn.style.left=(this.crawler.offsetWidth-10)+"px";deleteBtn.style.top=0;deleteBtn.style.width="10px";deleteBtn.style.cursor='pointer';Event.observe(deleteBtn,'click',function(){izCrawlerManager.toggleEnable();});c.appendChild(deleteBtn);this._showCrawlerMsg(0);},_showCrawlerMsg:function(which,mouseWheeling)
{var c=this.crawler;if(this.data_msgs.length==0)
{setTimeout(function(){izCrawlerManager._showCrawlerMsg(0);},3000);return;}
if(which>=this.data_msgs.length)
{which=0;}
if(which<0)
{which=this.data_msgs.length-1;}
this.whichMsg=which;var dmsg=this.data_msgs[which];var top=c.topMsg;var bottom=c.bottomMsg;c.topMsg=bottom;c.bottomMsg=top;c.appendChild(c.bottomMsg);top.style.top="0px";bottom.style.top=this.CRAWLER_MSG_HEIGHT+"px";this._populateCrawlerMsg(which);if(!mouseWheeling)
{this._animateCrawlerMsg(which);}
else
{var h=this.CRAWLER_MSG_HEIGHT;this.crawler.topMsg.style.top=(-h)+(-4)+"px";this.crawler.bottomMsg.style.top=(this.CRAWLER_MSG_HEIGHT+(-4)+-h)+"px";}},_populateCrawlerMsg:function(which)
{var b=this.crawler.bottomMsg;var hint=izHintManager.getRandomHint();if(hint)
{this.crawlerPageNumber=null;b.innerHTML="<table height='"+this.CRAWLER_MSG_HEIGHT+"'><tr><td><div class='Crawler_Msg_Hint_Avatar'><img src='"+'/images/baby-logo.gif'+"' /></div></td><td valign='middle'><div class='Crawler_Msg_Hint'>"+hint.msg+"</div></td></tr></table>";}
else
{var data=this.data_msgs[which];if(data.twitter)
{this.crawlerPageNumber=null;var words=data.msg.split((/\s+/));var str='';var top='';var bottom='';var len=0;var spacer='';for(var i=0,nwrds=words.length;i<nwrds;++i)
{var word=words[i];len+=word.length;if(word.startsWith('http://'))
{word="<a href='"+word+"' target='_blank'>"+word+"</a>";}
str+=spacer+word;spacer=' ';if(len>70)
{top=str;str='';spacer='';len=-70;}}
top.length>0?bottom=str:top=str;b.innerHTML="<table height='"+this.CRAWLER_MSG_HEIGHT+"'><tr><td valign='middle'><div class='Crawler_Msg_Hint_Avatar'><img src='"+data.avatar_url+"' /></div></td><td valign='middle'><div class='Crawler_Msg_User_Name'>"+data.user_name+"</td><td valign='middle'><td valign='middle'><div class='Crawler_Msg_Hint'>"+top+"</div><div class='Crawler_Msg_Hint'>"+bottom+"</div></td></tr></table>";}
else
{var when=timeago(this.time_now-data.at_sec);var src=data.avatar_url?data.avatar_url:"http://cdn3.magazines.me/images/default_avatar-transparent-bg.gif";var isMe=data.user_id==iz_whoiam.id;var user_name=(data.user_name?(data.user_name!='supereditor'?data.user_name:'Magazines.me'):"Guest")+(isMe?" (You!)":"");this.crawlerPageNumber=data.page_number;b.innerHTML="<table><tr><td><div class='Crawler_Element Crawler_Msg_Avatar'><img src='"+src+"' /></div></td><td valign='middle'><div class='Crawler_Element Crawler_Msg_User_Name'>"+user_name+" <span>says...</span></div></td><td><div class='Crawler_Element'><div><span class='Crawler_Msg_Where'>At page </span><span class='Crawler_Msg_Page_Number Clickable'>"+data.page_number+"</span><span class='Crawler_Msg_Page_Title Clickable'>"+data.page_title+"</span><span class='Crawler_Msg_When'>"+when+"</span></div><div class='Crawler_Msg_Msg'>"+data.msg+"</div></div></td></tr></table>";}}},_animateCrawlerMsg:function(which)
{this.__animateCrawlerMsg(which,new Date().getTime(),1000,20);},__animateCrawlerMsg:function(which,startTime,total_duration,frame_duration)
{if(this.freezeAnimation)
{setTimeout(function(){izCrawlerManager.__animateCrawlerMsg(which,startTime+205,total_duration,frame_duration);},500);return;}
var completed=false;var completion=total_duration==0?1.0:(new Date().getTime()-startTime)/total_duration;if(completion>0.98)
{completion=1.0;completed=true;}
var h=this.CRAWLER_MSG_HEIGHT;this.crawler.topMsg.style.top=(-h*completion)+(-4)+"px";this.crawler.bottomMsg.style.top=(this.CRAWLER_MSG_HEIGHT+(-4)+-h*completion)+"px";if(!completed)
{setTimeout(function(){izCrawlerManager.__animateCrawlerMsg(which,startTime,total_duration,frame_duration);},frame_duration);}
else
{setTimeout(function(){izCrawlerManager._showCrawlerMsg(which+1);},3000);}},mouseWheelListener:function(event)
{event=event?event:window.event;var wheelData=event.detail?event.detail*-1:event.wheelDelta/40;this.whichMsg+=(wheelData<0)?1:-1;this._showCrawlerMsg(this.whichMsg,true);},mouseInCrawler:function(event,flag)
{if(!flag)
{var x=Event.pointerX(event);var y=Event.pointerY(event);var offsets=cumulativeOffset(this.crawler);var offsets=[(iz_embedded_toc?$('embedded_toc').offsetWidth:0),offsets[1]];if((x>offsets[0]&&x<offsets[0]+this.crawler.offsetWidth)&&(y>offsets[1]&&y<offsets[1]+this.crawler.offsetHeight))
{flag=true;}}
this.freezeAnimation=flag;}};var startTime=0;var totalTime=0;var dToSTotalTime=0;IZ.PrefetchManager=Class.create();IZ.PrefetchManager.prototype={initialize:function()
{this.auto_prefetch_enabled=false;this.loadedPagesById={};this.realOrFauxPage=iz_start_page;this.max_page_number=iz_original_page_number;this.numLoadedPages=1;this.NUMBER_OF_PAGE_TURN_ANIMATIONS=5;this.LENGTH_OF_PAGE_TURN_ANIMATIONS=50;this.NUMBER_OF_PAGE_TURN_ANIMATIONS=10;this.LENGTH_OF_PAGE_TURN_ANIMATIONS=20;this.DELAY_BETWEEN_PAGE_CREATES=50;this.DELAY_AFTER_PAGE_RECEIVE_BEFORE_CREATES=50;if(isIE)
{}
if(isChrome)
{this.DELAY_BETWEEN_PAGE_CREATES=5;}
this.current_page_number=iz_original_page_number;this.DELAY_BETWEEN_PREFETCHES=500;this.DELAY_BETWEEN_RECORDING_PAGE_VISITS=5*1000;this.PREFETCH_BLOCK_SIZE=10;this.BACK_BUTTON_DELAY=500;this.TOO_CLOSE_TO_END_OF_CACHE=5;this.maxNumInCache=250;this.numInCache=0;this.prefetch_initialized=false;this.loadedPages={};this.loadedBatches=[];this.visited_pages=[''];this.current_visited_page=0;this.current_hash='';this.animationTooSlow=false;},_init:function()
{this.current_page_data=iz_start_page;var dim=getWindowSize();var i=$C("img");i.src="http://cdn3.magazines.me/images/doggear_lr.png";this.next_doggear=i;var s=i.style;s.position='absolute';s.zIndex='40000';s.left=(document.body.offsetWidth-100)+"px";s.top=(dim[1]-100)+"px";i=$C("img");i.src="http://cdn3.magazines.me/images/wait.gif";this.next_wait=i;s=i.style;s.position='absolute';s.zIndex='40000';s.left=(document.body.offsetWidth-42)+"px";s.top=(dim[1]-42)+"px";i=$C("img");i.src="http://cdn3.magazines.me/images/doggear_ll.png";this.previous_doggear=i;s=i.style;s.position='absolute';s.zIndex='40000';s.left=(iz_embedded_toc?$('embedded_toc').offsetWidth:0)+"px";s.top=(dim[1]-100)+"px";i=$C("img");i.src="http://cdn3.magazines.me/images/wait.gif";this.previous_wait=i;s=i.style;s.position='absolute';s.zIndex='40000';s.left=(iz_embedded_toc?$('embedded_toc').offsetWidth:0)+"px";s.top=(dim[1]-42)+"px";this.waiting_for_page_number=0;},start:function()
{if(iz_prefetching&&(!prefetched)&&(!this.prefetch_initialized))
{this._init();this.prefetch_initialized=true;if(!viewport)
{viewport=new IZ.Viewport(iz_start_page);}
this.canvas_width=getStyle(iz_canvas,"width");this.canvas_height=getStyle(iz_canvas,"height");this.min_canvas_padding_width=getPaddingsW(iz_canvas);this.canvas_padding_width=Math.max((iz_embedded_toc?2*$('embedded_toc').offsetWidth:0),getPaddingsW(iz_canvas));this.canvas_padding_height=getPaddingsH(iz_canvas);this._assign_toc_links("TOC_Popup_Link");this._assign_toc_links("TOC_Embedded_Link");this._assign_issue_map_links();iz_start_page.viewport=viewport;this.loadedPages[iz_original_page_number]=iz_start_page;if(editing)
{this.loadedPage(iz_start_page);}
iz_prefetcher._watchHashForBackButton();if((!editing)||iz_original_page_number!=1)
{setTimeout(function(){iz_prefetcher._prefetch(iz_original_page_number,0);},1);}
this.recordPageVisit(iz_page_id);setTimeout(function(){{iz_prefetcher._recordPageVisits();}},this.DELAY_BETWEEN_RECORDING_PAGE_VISITS);}},_assign_toc_links:function(clazzName)
{var fn=function(event){iz_prefetcher.goto_toc_link(event);}
var toc_links=document.getElementsByClassName(clazzName,document.body);var len=toc_links.length;for(var i=0;i<len;++i)
{Event.observe(toc_links[i],'click',fn);}},_assign_issue_map_links:function()
{var fn=function(event){iz_prefetcher.goto_toc_link(event);}
var im_links=document.getElementsByClassName("Issue_Map_Popup_Cell_Link",$('pages_popup'));var len=im_links.length;for(var i=0;i<len;++i)
{Event.observe(im_links[i],'click',fn);}},goto_toc_link:function(event)
{var e=Event.element(event);while(!e.id)
{e=e.parentNode;}
var index=e.id.lastIndexOf("_");var pagenum=e.id.substring(index+1);this.goto_page(pagenum,"skip",false);Event.stop(event);return(false);},getCurrentPage:function()
{return(this.current_page_data);},getPage:function()
{return(this.realOrFauxPage?this.realOrFauxPage:iz_start_page);},getPages:function()
{return(this.loadedPages);},loadedPage:function(page)
{if(page.page_number>this.max_page_number)
{this.max_page_number=page.page_number;$('header_last_page_number').innerHTML="of "+this.numLoadedPages;}
this.loadedPagesById[page.id]=page;var ovp=page.overflowing_page_id;if(ovp)
{if(!iz_article_overflow_pages[ovp])
{iz_article_overflow_pages[ovp]=[];}
if(iz_article_overflow_pages[ovp].indexOf(page.id)==-1)
{iz_article_overflow_pages[ovp].push(page.id);}}},_dumpPagesIzParts:function(msg)
{for(id in this.loadedPagesById)
{var page=this.loadedPagesById[id];if(page)
{for(n in page.iz_parts)
{}}}},updatePageId:function(oldId,newId)
{this.loadedPagesById[newId]=this.loadedPagesById[oldId];this.loadedPagesById[oldId]=null;this.loadedPagesById[newId].id=newId;},getLoadedPageByPageNumber:function(pg)
{return(this.loadedPages[pg]);},withPageDo:function(id,fn)
{var openPage=this.realOrFauxPage;izPageManager.fauxLoadPage(izPageManager.getLoadedPageById(id));fn();izPageManager.fauxLoadPage(openPage);},updatePageSections:function(section)
{for(pg in this.loadedPages)
{this.loadedPages[pg].section=section;updateVariables(this.loadedPages[pg]);}},getLoadedPageById:function(id)
{for(name in this.loadedPagesById)
{}
return(this.loadedPagesById[id]);},fauxLoadPageById:function(id)
{fauxLoadPage(getLoadedPageById(id));},fauxLoadPage:function(page)
{this.realOrFauxPage=page;iz_page_id=page.id;page_id=page.id;iz_canvas=page.iz_canvas;iz_paper=page.iz_paper;iz_page=page.iz_page;iz_page_width=page.aspect_ratio_width;iz_page_height=page.aspect_ratio_height;iz_parts=page.iz_parts;iz_content=page.iz_content;},scrolledToPage:function(page)
{this.realOrFauxPage.last_part_id=iz_last_part_id;this.realOrFauxPage=page;iz_page_number=page.page_number;iz_page_design_uri=page.page_design_uri;iz_last_part_id=page.last_part_id;iz_page_about=page.page_about;iz_page_id=page.id
page_id=page.id
iz_canvas=page.iz_canvas;iz_paper=page.iz_paper;iz_page=page.iz_page;iz_aspect_ratio=page.aspect_ratio;iz_page_subtitle=page.subtitle;iz_previous_article_title=page.previous_article_title;iz_border_title=page.border_title;iz_page_width=page.aspect_ratio_width;iz_page_height=page.aspect_ratio_height;iz_parts=page.iz_parts;if(!page.iz_content)
{}
iz_content=page.iz_content;if(editing)
{iz_editing_preferences=page.iz_editing_preferences;izSnapGrid.setOptions(iz_editing_preferences);izToolbar.initForScrolledToPage();}},onLoad:function(page)
{{var orig_page_id=iz_page_id;if(page.id!=orig_page_id)
{this.fauxLoadPage(page);}
izPart.onLoad();if(page.id!=orig_page_id)
{this.getLoadedPageById(orig_page_id);this.fauxLoadPage(this.loadedPagesById[orig_page_id]);}}},deletePage:function(page)
{if(this.realOrFauxPage.id==page.id)
{var p=izPageManager.getLoadedPageById(iz_article_page_id);izPageManager.fauxLoadPage(p);}
izPart.onUnloadParts(page.iz_parts);var pg=page.page_number;removeSelf(page.iz_canvas);var first_pgnum=10000;var last_pgnum=0;for(var pgnum in this.loadedPages)
{if(pgnum>pg)
{var p=this.loadedPages[pgnum];p.page_number-=1;first_pgnum=Math.min(pgnum,first_pgnum);last_pgnum=Math.max(pgnum,last_pgnum);updateVariables(p);p.iz_canvas.style.left=(p.page_number-iz_original_page_number)*(this.canvas_width+this.canvas_padding_width)+"px";}}
IZ.ArticleFormatter.removeAllArticlesOnPage(page.id);for(var i=first_pgnum+1;i<=last_pgnum;++i)
{this.loadedPages[i-1]=this.loadedPages[i];}
delete this.loadedPages[last_pgnum];--this.max_page_number;--iz_number_of_pages_in_article;--this.numLoadedPages;$('header_last_page_number').innerHTML="of "+this.numLoadedPages;delete this.loadedPagesById[page.id];var ovp=page.overflowing_page_id;if(ovp)
{var index=iz_article_overflow_pages[ovp].indexOf(page.id);if(index>=0)
{iz_article_overflow_pages[ovp].splice(index,1);}}},insertPage:function(html,js,id,pg,overflowing_page_id)
{if(pg==-1)
{pg=this.max_page_number+1;}
var page=cloneHashS(iz_start_page);page.iz_parts={};page.iz_content={};page.id=id;page.page_number=pg;page.overflowing_page_id=overflowing_page_id;page.html=html;page.above_html="";page.below_html="";var first_pgnum=10000;var last_pgnum=pg-1;for(var pgnum in this.loadedPages)
{if(pgnum>=pg)
{var p=this.loadedPages[pgnum];first_pgnum=Math.min(pgnum,first_pgnum);last_pgnum=Math.max(pgnum,last_pgnum);p.page_number+=1;updateVariables(p);p.iz_canvas.style.left=(p.page_number-iz_original_page_number)*(this.canvas_width+this.canvas_padding_width)+"px";}}
for(var i=last_pgnum;i>=first_pgnum;--i)
{this.loadedPages[i+1]=this.loadedPages[i];}
++this.max_page_number;++iz_number_of_pages_in_article;++this.numLoadedPages;$('header_last_page_number').innerHTML="of "+this.numLoadedPages;var c=$C('div');c.id="prefetch_page_"+pg;c.className="Overflow_Page";c.innerHTML="<div id='iz_canvas__"+id+"' class='IZ_Canvas IZ_Canvas__"+id+" IZ_Canvas__"+iz_article_page_id+"' >"+page.below_html+"<div id='iz_paper__"+id+"' style='width:"+page.aspect_ratio_width+"px; height:"+page.aspect_ratio_height+"px;' class='IZ_Paper IZ_Paper__"+id+" IZ_Paper__"+iz_article_page_id+"'><div id='iz_page__"+id+"' style='width:100%;height:100%' class='IZ_Page IZ_Page__"+id+" IZ_Page__"+iz_article_page_id+"'>"+page.html+"</div></div>"+page.above_html+"</div>";c=c.firstChild;c.style.position='absolute';c.style.paddingLeft=this.canvas_padding_width/2+"px";c.style.paddingRight=this.canvas_padding_width/2+"px";c.style.paddingTop=this.canvas_padding_height/2+"px";c.style.paddingBottom=this.canvas_padding_height/2+"px";c.style.width=this.canvas_width+"px";c.style.height=this.canvas_height+"px";c.style.left=isOpera?"5000px":(pg-1)*(this.canvas_width+this.canvas_padding_width)+"px";c.style.top="0px";$('prefetched_pages_array').appendChild(c);if(js)
{js=js.replace(/<script>/g,"</script>");try{window.eval(js);}
catch(e)
{}}
page.iz_canvas=c;page.iz_paper=$('iz_paper__'+id);page.iz_page=$('iz_page__'+id);var ovp=overflowing_page_id?this.loadedPagesById[overflowing_page_id]:iz_start_page;var len=ovp.iz_canvas.childNodes.length;var appending=false;for(var i=0;i<len;++i)
{var p=ovp.iz_canvas.childNodes[i];if(p==ovp.iz_paper)
{appending=true;}
if(p.id&&p.id.indexOf('--')!=-1)
{var new_p=p.cloneNode(true);new_p.id=p.id+"__";new_p.s_left=p.s_left;new_p.s_top=p.s_top;new_p.s_width=p.s_width;new_p.s_height=p.s_height;if(appending)
{page.iz_canvas.appendChild(new_p);}
else
{page.iz_canvas.insertBefore(new_p,page.iz_paper);}}}
var parts=document.getElementsByClassName('Part',ovp.iz_page);var len=parts.length;for(var i=0;i<len;++i)
{var p=parts[i];if(p.id&&p.id.indexOf('--')!=-1)
{var new_p=p.cloneNode(true);new_p.id=p.id+"__"+page.id;new_p.s_left=p.s_left;new_p.s_top=p.s_top;new_p.s_width=p.s_width;new_p.s_height=p.s_height;page.iz_page.appendChild(new_p);}}
var vp=new IZ.Viewport(page);page.viewport=vp;vp.dToSInitialize(page.iz_page);vp.newhome();for(id in iz_vtemplates)
{if(id.indexOf("__"+iz_article_page_id)!=-1)
{iz_vtemplates[id+"__"+page.id]=iz_vtemplates[id];}}
updateVariables(page);this.loadedPages[pg]=page;this.loaded(pg);this.loadedPage(page);vp.doResize();hideObscuredPageFooter(page);return(page);},_prefetch:function(pagenum,direction)
{var count=this.PREFETCH_BLOCK_SIZE;var index=parseInt((pagenum-1)/count);if(index>=0&&index<=iz_page_count/this.PREFETCH_BLOCK_SIZE&&!this.loadedBatches[index])
{this.loading=true;var req=new Ajax.Request("/"+iz_issue_id+(editing?"/prefetche/"+iz_page_id:"/prefetch/"+index+"/"+count),{method:'GET',onComplete:(function(transport,json){this._prefetched(index,count,pagenum,direction,transport.responseText);}).bind(this),asynchronous:true});}},_prefetched:function(index,count,pagenum,direction,payload)
{if(typeof iz_whoiam=='undefined')
{setTimeout(function(){iz_prefetcher._prefetched(index,count,pagenum,direction,payload);},this.DELAY_BETWEEN_PREFETCHES);return;}
this.loadedBatches[index]=true;this.numInCache+=count;var dim=getWindowSize();var pages=eval("("+payload+")");if(pages.length==0)
{return;}
if(direction==0)
{var newpages=[];var len=pages.length;var max_pg=0;for(var i=0;i<len;++i)
{var pg=pages[i].page_number;if(pg>=pagenum)
{newpages[pg-pagenum]=pages[i];max_pg=Math.max(pg-pagenum,max_pg)}}
for(var i=0;i<len;++i)
{var pg=pages[i].page_number;if(pg<pagenum)
{newpages[max_pg+pagenum-pg]=pages[i];}}
for(var i=0;len=newpages.length,i<len;++i)
{if(!newpages[i])
{newpages.splice(i,1);--i;}}
pages=newpages;}
else if(direction<0)
{pages.reverse();}
setTimeout(function(){iz_prefetcher._create_a_page(pages,0,dim);},this.DELAY_AFTER_PAGE_RECEIVE_BEFORE_CREATES);},recordPageVisit:function(page_id)
{if(editing)
{return;}
if(!this.visited_page_ids)
{this.visited_page_ids=[];this.visited_page_ats=[];}
this.visited_page_ids.push(page_id);this.visited_page_ats.push(new Date().getTime());},_recordPageVisits:function()
{if(typeof this.visited_page_ids=='undefined')
{return;}
if(iz_whoiam&&this.visited_page_ids.length>0)
{this.saveUserBehavior();}
setTimeout(function(){{iz_prefetcher._recordPageVisits();}},this.DELAY_BETWEEN_RECORDING_PAGE_VISITS);},saveUserBehavior:function(unloading)
{var payload="<ATT>current_url="+this.getPage().link+"</ATT>";payload+="<ATT>avatar_url="+iz_whoiam.avatar+"</ATT>";payload+="<ATT>user_name="+iz_whoiam.user_name+"</ATT>";payload+="<ATT>page_number="+iz_page_number+"</ATT>";payload+="<ATT>issue_month="+iz_issue_month+"</ATT>";payload+="<ATT>user_id="+iz_whoiam.id+"</ATT>";payload+="<ATT>page_title="+document.title+"</ATT>";new Ajax.Request("/iz/magazines/"+iz_mag_id+"/visited?issue_id="+iz_issue_id+"&page_ids="+this.visited_page_ids.join(',')+(unloading?"&unloading=true":""),{method:'POST',asynchronous:true,postBody:payload,contentType:'text/plain'});this.visited_page_ids=[];this.visited_page_ats=[];},_create_a_page:function(pages,pi,dim)
{var page=pages[pi];var pg=page.page_number;var id=page.id;if(editing&&pg==iz_original_page_number)
{var old_start_page=this.loadedPages[pg]
page.iz_canvas=iz_start_page.iz_canvas;page.iz_paper=iz_start_page.iz_paper;page.iz_page=iz_start_page.iz_page;page.iz_parts=iz_start_page.iz_parts;page.iz_content=iz_start_page.iz_content;page.viewport=old_start_page.viewport;page.viewport.page=page
page.iz_editing_preferences=iz_start_page.iz_editing_preferences;iz_start_page=page;this.loadedPages[pg]=page;}
if(((!this.loadedPages[pg])&&(pg>=1)&&(editing||pg<=iz_page_count))&&(pg!=3&&pg!=4))
{startTime=new Date().getTime();if(pg==iz_original_page_number)
{}
else if(pg==2)
{var iframe=$C('iframe')
iframe.style.position='absolute';iframe.style.width=(this.canvas_width+this.canvas_padding_width-(iz_embedded_toc?$('embedded_toc').offsetWidth:0))+"px";var headerHeight=$("page-header-id").offsetHeight+getMarginsH($("page-header-id"));iframe.style.height=(this.canvas_height+this.canvas_padding_height)+"px";iframe.style.left=(pg-1)*(this.canvas_width+this.canvas_padding_width/2)+"px";iframe.style.top="0px";iframe.style.display="block";iframe.style.scrolling="no";var link=page.link;if(iz_testing)
{link="http://"+(iz_domain.indexOf('.')!=-1?iz_domain.substring(0,iz_domain.indexOf('.')):iz_domain)+".localhost:5000"+link.substring(link.indexOf('/',8));}
if(link.charAt(link.length-1)=='/')
{link=link.substring(0,link.length-1);}
iframe.src=link+"?prefetch=true";$('prefetched_pages_array').appendChild(iframe);page.toc_canvas=iframe;setTimeout(function(){iz_prefetcher._wait_for_toc_to_load(pages,pi,dim);},this.DELAY_BETWEEN_PAGE_CREATES);return;}
else
{var c=$C('div');c.id="prefetch_page_"+pg;c.className="Prefetched_Page";c.innerHTML="<div id='iz_canvas__"+id+"' class='IZ_Canvas IZ_Canvas__"+id+"'>"+page.below_html+"<div id='iz_paper__"+id+"' style='width:"+page.aspect_ratio_width+"px; height:"+page.aspect_ratio_height+"px;' class='IZ_Paper IZ_Paper__"+id+"'><div id='iz_page__"+id+"' style='width:100%;height:100%' class='IZ_Page IZ_Page__"+id+"'>"+page.html+"</div></div>"+page.above_html+"</div>";c=c.firstChild;c.style.position='absolute';c.style.paddingLeft=this.canvas_padding_width/2+"px";c.style.paddingRight=this.canvas_padding_width/2+"px";c.style.paddingTop=this.canvas_padding_height/2+"px";c.style.paddingBottom=this.canvas_padding_height/2+"px";c.style.width=this.canvas_width+"px";c.style.height=this.canvas_height+"px";c.style.left=isOpera?"5000px":(pg-1)*(this.canvas_width+this.canvas_padding_width)+"px";c.style.top="0px";$('prefetched_pages_array').appendChild(c);if(isIE)
{var css='';var startIndex=0;var str='<style ';var html=c.innerHTML;var lhtml=html.toLowerCase();var index=0;if(!this.pageLoadingStyleSheet)
{this.pageLoadingStyleSheet=document.createStyleSheet()}
while((index=lhtml.indexOf(str,startIndex))>-1)
{index=lhtml.indexOf('>',index);css+=html.substring(index+1,lhtml.indexOf('</style>',index));startIndex=index+10;}
this.pageLoadingStyleSheet.cssText+=css;}
else if(isOpera)
{var html=c.innerHTML;if(!this.pageLoadingStyleSheet)
{var newSS=document.createElement('link');newSS.rel='stylesheet';newSS.type='text/css';newSS.href=escape("");document.body.appendChild(newSS);this.pageLoadingStyleSheet=document.styleSheets[document.styleSheets.length-1];setTimeout(function(){iz_prefetcher._addPageStylesToSheet(html,true);},100);}
else
{iz_prefetcher._addPageStylesToSheet(html,false);}}
if(!isFF)
{var js='';var startIndex=0;var str='<script ';var html=c.innerHTML;var lhtml=html.toLowerCase();var index=0;while((index=lhtml.indexOf(str,startIndex))>-1)
{index=lhtml.indexOf('>',index);js+=html.substring(index+1,lhtml.indexOf('</script>',index));startIndex=index+10;}
if(js.length>0)
{eval(js);}}
page.iz_editing_preferences=page.iz_editing_preferences?eval("("+page.iz_editing_preferences+")"):{};page.iz_canvas=c;page.iz_paper=$('iz_paper__'+id);page.iz_page=$('iz_page__'+id);innerHTMLSeconds=(new Date().getTime()-startTime)/1000;var vp=new IZ.Viewport(page);page.viewport=vp;dToSTime0=(new Date().getTime()-startTime)/1000;vp.dToSInitialize(page.iz_page);dToSTime=(new Date().getTime()-startTime)/1000;vp.newhome();updateVariables(page);}}
if(isIE)
{setTimeout(function(){iz_prefetcher._create_a_page_part_2(pages,pi,dim);},this.DELAY_BETWEEN_PAGE_CREATES);}
else
{iz_prefetcher._create_a_page_part_2(pages,pi,dim);}},_addPageStylesToSheet:function(html,firstTime)
{var css='';var lhtml=html.toLowerCase();var startIndex=0;var str='<style ';var index=0;while((index=lhtml.indexOf(str,startIndex))>-1)
{index=lhtml.indexOf('>',index);css+=html.substring(index+1,lhtml.indexOf('</style>',index));startIndex=index+10;}
var csses=css.split("}");for(var i=csses.length-1;i>=0;--i)
{var c=csses[i];if(c.strip().length>0)
{c+="}";if(isOpera)
{var opera_killers=['filter:alpha'];for(var j=0;j<opera_killers.length;++j)
{var str=opera_killers[j];var bad=c.indexOf(str);if(bad!=-1)
{var bad_end=c.indexOf(';',bad);c=c.substring(0,bad)+c.substring(bad_end+1);}}}
this.pageLoadingStyleSheet.insertRule(c,0);}}},_wait_for_toc_to_load:function(pages,pi,dim)
{if(this.toc_loaded)
{iz_prefetcher._create_a_page_part_2(pages,pi,dim);}
else
{setTimeout(function(){iz_prefetcher._wait_for_toc_to_load(pages,pi,dim);},this.DELAY_BETWEEN_PAGE_CREATES);}},_create_a_page_part_2:function(pages,pi,dim)
{var page=pages[pi];if(!page)
{}
var pg=page.page_number;if(((!this.loadedPages[pg])&&(pg>=1)&&(editing||pg<=iz_page_count))&&(pg!=3&&pg!=4))
{if(pg==iz_original_page_number)
{}
else if(pg!=2)
{var vp=page.viewport;vp.doResize();hideObscuredPageFooter(page);if(!editing)
{showCommentAvatars(page);izPicTools.setupZoomables(page.iz_canvas);izAdMarks.setupAdMarks(page.iz_canvas);izVideoMaster.setupVideos(page.iz_canvas);izPDFMaster.setupPDFs(page.iz_canvas);watchLinks(page.iz_canvas);}
var restTime=(new Date().getTime()-startTime)/1000;dToSTotalTime+=dToSTime;totalTime+=restTime;}
this.loadedPages[pg]=page;this.loaded(pg);++this.numLoadedPages;if(editing)
{$('header_last_page_number').innerHTML="of "+this.numLoadedPages;this.loadedPage(page);}
if((pg==5||(pg==1&&this.loadedPages[5]))&&$('iz_front_page_link'))
{var b=$('iz_front_page_link');b.href="#";Event.observe(b,'click',function(event){iz_prefetcher.goto('next');Event.stop(event);return false;});this._assign_toc_links("TOC_Page_Link");}}
if(pi==pages.length-1)
{if(!editing)
{this.check_cache_overflow();}
this.loading=false;if(this.waiting_for_page_number!=0)
{this._prefetch(this.waiting_for_page_number,0);}
if(!this.auto_prefetch_enabled)
{return;}
this._auto_prefetch();}
else
{for(var j=pi+1;j<pages.length;++j)
{if(pages[j])
{setTimeout(function(){iz_prefetcher._create_a_page(pages,j,dim);},this.DELAY_BETWEEN_PAGE_CREATES);return;}}}},check_cache_overflow:function()
{if(this.numInCache>this.maxNumInCache)
{var leftmost_batch=0;var rightmost_batch=0;for(var i=0;i<this.loadedBatches.length;++i)
{if(this.loadedBatches[i])
{if(!leftmost_batch)
{leftmost_batch=i;}
rightmost_batch=i;}}
var current_batch=this.curent_page_number/this.PREFETCH_BLOCK_SIZE;var unloadBatch=(current_batch-leftmost_batch>=rightmost_batch-current_batch)?leftmost_batch:rightmost_batch;for(var i=0;i<this.PREFETCH_BLOCK_SIZE;++i)
{var pgnum=unloadBatch*this.PREFETCH_BLOCK_SIZE+i;if(pgnum>4)
{var page=this.loadedPages[pgnum];var c=$("iz_canvas__"+page.id);if(c)
{removeSelf(c);}
this.loadedPages[page.page_number]=null;--this.numInCache;}}
this.loadedBatches[unloadBatch]=false;}},_auto_prefetch:function()
{var left=this.loaded_left_pagenum;var right=this.loaded_right_pagenum;var current=this.current_page_number;var numInCache=right-left+1;if(numInCache<this.maxNumInCache)
{if(right<iz_page_count&&(left==1||(current-left)/(right-current)>1/3))
{this._prefetch(+1);}
else if(left>1)
{this._prefetch(-1);}}},_watchHashForBackButton:function()
{var hash=(""+window.location.hash).substring(1);if((hash!=this.current_hash)&&(this.visited_pages.length>1))
{for(var i=0;i<this.visited_pages.length;++i)
{}
var len=this.visited_pages.length;var offset=this.current_visited_page;if((len+offset-2>=0)&&(this.visited_pages[len+offset-2]==hash))
{--this.current_visited_page;this.goto('previous',true);}
else if((len+offset<this.visited_pages.length)&&(this.visited_pages[len+offset]==hash))
{++this.current_visited_page;this.goto('next',true);}}
setTimeout(function(){iz_prefetcher._watchHashForBackButton();},this.BACK_BUTTON_DELAY);},resize:function()
{var dim=getWindowSize();this.canvas_width=getStyle(iz_canvas,"width");this.canvas_height=getStyle(iz_canvas,"height");this.canvas_padding_width=getPaddingsW(iz_canvas);this.canvas_padding_height=getPaddingsH(iz_canvas);var w=this.canvas_width+this.canvas_padding_width;$('prefetched_pages_array').style.left=-(this.current_page_number-iz_original_page_number)*dim[0]+"px";for(pgnum in this.loadedPages)
{if(pgnum==iz_original_page_number)
{continue;}
var p=this.loadedPages[pgnum];_doResizeCanvas(p);var s=p.iz_canvas.style;s.left=((pgnum-iz_original_page_number)*w)+"px";}},waitingForPage:function(page_number,which)
{this.waiting_for_page_number=page_number;if(!editing)
{if(which=='next'||(which=='skip'&&page_number>this.current_page_number))
{document.body.appendChild(this.next_doggear);document.body.appendChild(this.next_wait);}
else if(which=='previous'||(which=='skip'&&page_number<this.current_page_number))
{document.body.appendChild(this.previous_doggear);document.body.appendChild(this.previous_wait);}}},clearWaitingForPage:function()
{removeSelf(this.next_doggear);removeSelf(this.next_wait);removeSelf(this.previous_doggear);removeSelf(this.previous_wait);this.waiting_for_page_number=0;},loaded:function(page_number)
{if(page_number==2)
{this.toc_loaded=true;}
if(this.waiting_for_page_number==page_number)
{this.clearWaitingForPage();this.goto_page(page_number,'skip');}},goto:function(which,browser_back_or_forward_btn,navigation_buttons)
{var pg=this.current_page_number+(which=='next'?1:-1);if(pg==2)
{pg=5;}
else if(pg==4)
{pg=1;}
if(editing&&pg==2)
{pg=which=='previous'?1:5;}
this.goto_page(pg,which,browser_back_or_forward_btn,navigation_buttons);},goto_page:function(pg,which,browser_back_or_forward_btn,navigation_buttons)
{pg=parseInt(pg);if(pg==0&&!editing)
{window.location="/dashboard";return;}
if((editing&&pg>=iz_first_page_number_of_article&&pg<=this.max_page_number)||((!editing)&&pg<=iz_page_count&&pg>=1))
{var page=this.loadedPages[pg];if((!editing)&&(!browser_back_or_forward_btn))
{if(!this.loading)
{if(which=='next')
{this._prefetch(pg+(page?this.PREFETCH_BLOCK_SIZE:0),+1);}
else if(which=='previous')
{this._prefetch(pg-(page?this.PREFETCH_BLOCK_SIZE:0),-1);}
else
{this._prefetch(pg,0);}}}
if(page)
{updatePageTurningTrainers(page);iz_page_number=page.page_number;this.current_page_data=page;izPicTools.initForNewPage();if(isOpera)
{var prev_page=this.loadedPages[pg-1];if(prev_page&&prev_page.iz_canvas)
{var parts=document.getElementsByClassName('Part',prev_page.iz_canvas);for(var i=0,len=parts.length;i<len;++i)
{if(parts[i].id.startsWith("slot_pdf")||parts[i].id.startsWith("slot_video"))
{prev_page.iz_canvas.style.display='none';break;}}}
var next_page=this.loadedPages[pg+1];if(next_page&&next_page.iz_canvas)
{var parts=document.getElementsByClassName('Part',next_page.iz_canvas);for(var i=0,len=parts.length;i<len;++i)
{if(parts[i].id.startsWith("slot_pdf")||parts[i].id.startsWith("slot_video"))
{next_page.iz_canvas.style.display='none';break;}}}}
if(editing||isIE)
{$('prefetched_pages_array').style.left=-(pg-1)*(this.canvas_width+this.canvas_padding_width)+"px";if(page.iz_canvas)
{page.iz_canvas.style.display='block';}}
else if(isOpera)
{var prev_page=this.loadedPages[pg==5?1:pg-1];if(prev_page)
{(prev_page.iz_canvas?prev_page.iz_canvas:prev_page.toc_canvas).style.left="5000px";if(prev_page.toc_canvas)
{}
if(prev_page.iz_canvas)
{}}
var next_page=this.loadedPages[pg+1];if(next_page)
{if(next_page.toc_canvas)
{}
if(next_page.iz_canvas)
{}
(next_page.iz_canvas?next_page.iz_canvas:next_page.toc_canvas).style.left="5000px";}
if(page.iz_canvas)
{page.iz_canvas.style.display='block';page.iz_canvas.style.left=0;}
else if(page.toc_canvas)
{page.toc_canvas.style.display='block';page.toc_canvas.style.left=0;}}
else if(navigation_buttons&&(!isIE)&&(!this.animationTooSlow))
{if(page.iz_canvas)
{page.iz_canvas.style.display='block';}
this.animatePageTurn($('prefetched_pages_array'),(pg-1)*(this.canvas_width+this.canvas_padding_width));}
else
{$('prefetched_pages_array').scrollLeft=(pg-1)*(this.canvas_width+this.canvas_padding_width);if(page.iz_canvas)
{page.iz_canvas.style.display='block';}}
viewport=page.viewport;updateToolbar(page);if(editing)
{this.scrolledToPage(page);}
if(editing)
{document.title=page.border_title;}
else if(pg==iz_original_page_number)
{document.title=iz_border_title;window.location.hash="#";}
else
{document.title=page.border_title;var link=page.link;var index=link.indexOf('/','http://'.length);window.location.hash=index>=0?link.substring(index):'/';}
this.current_hash=(""+window.location.hash).substring(1);this.current_page_number=parseInt(pg);if(!browser_back_or_forward_btn)
{while(this.current_visited_page<0)
{this.visited_pages.pop();++this.current_visited_page;}
this.visited_pages.push(this.current_hash);}
this.clearWaitingForPage(pg);if(izPartyLineManager)
{izPartyLineManager.update();}
this.recordPageVisit(page.id);}
else
{this.waitingForPage(pg,which);}}},animatePageTurn:function(pages,finalX)
{var left=pages.scrollLeft;var tx=(finalX-left);var animations=this.NUMBER_OF_PAGE_TURN_ANIMATIONS/2;var dx=tx/2;var lefts=[];for(var i=0;i<animations;++i)
{lefts[i]=left+dx*(1-Math.cos(Math.PI/2*i/animations));lefts[2*animations-i-1]=finalX-dx*Math.sin(Math.PI/2*i/animations);}
lefts[animations]=pages.scrollLeft+tx/2;this.animationStart=new Date().getTime();setTimeout(function(){iz_prefetcher._animatePageTurn(pages,lefts,0,finalX);},this.LENGTH_OF_PAGE_TURN_ANIMATIONS);},_animatePageTurn:function(pages,lefts,iteration,finalX)
{pages.scrollLeft=lefts[iteration];if(new Date().getTime()-this.animationStart>3*this.NUMBER_OF_PAGE_TURN_ANIMATIONS*this.LENGTH_OF_PAGE_TURN_ANIMATIONS)
{++this.numberTimesAnimationWasSlow;if(this.numberTimesAnimationWasSlow>3)
{this.animationTooSlow=true;}
pages.scrollLeft=finalX;}
else if(++iteration<this.NUMBER_OF_PAGE_TURN_ANIMATIONS)
{setTimeout(function(){iz_prefetcher._animatePageTurn(pages,lefts,iteration,finalX);},this.LENGTH_OF_PAGE_TURN_ANIMATIONS);}
else
{this.numberTimesAnimationWasSlow=0;pages.scrollLeft=finalX;}}};if(typeof iz_prefetcher=="undefined"||!iz_prefetcher)var iz_prefetcher=new IZ.PrefetchManager();izPageManager=iz_prefetcher;IZ.Device=Class.create();IZ.Device.prototype={initialize:function(options)
{this.options={ANIMATE_PAN_DELAY:50,ANIMATE_PAN_ITERATIONS:5,CHECK_FOR_ZOOM_EVENTS_DELAY:100,CHECK_FOR_PDF_STEALING_FOCUS_AFTER_LOAD:500}
Object.extend(this.options,options||{});var b=$('previous_page_button');if(b&&iz_prefetching)
{Event.observe(b,'click',function(event){iz_prefetcher.goto('previous',false,true);Event.stop(event);return false;});b.href="#";}
b=$('next_page_button');if(b&&iz_prefetching)
{Event.observe(b,'click',function(event){iz_prefetcher.goto('next',false,true);Event.stop(event);return false;});b.href="#";}
if(!editing)
{Event.observe(document,"keypress",function(event){if(viewport)viewport.keyPress(event);});}
if(!previewing)
{this.mouseWheelListener=this.doMouseWheel.bindAsEventListener(this);Event.observe($('prefetched_pages_array'),(isFF?'DOMMouseScroll':'mousewheel'),this.mouseWheelListener);}
var fn=function(event){if(viewport){viewport.trackMouse(event);}};Event.observe(document.body,'mousemove',fn,false);Event.observe(document.body,'mouseout',fn,false);if(!editing)
{Event.observe($('prefetched_pages_array'),'click',function(event){if(getModifiers(event)&CTL_KEY){if(viewport){viewport.toggleZoom(event);return false;}}else{return true;}});if(!prefetched)
{setInterval(function(){if(viewport){viewport._checkForZoomEvents();}},this.options.CHECK_FOR_ZOOM_EVENTS_DELAY);}
if($("header_zoom_button"))
{Event.observe('header_zoom_button','click',function(event){viewport.zoom(viewport.zoomLevel==1?0:1);});}}
if((!previewing)&&(!editing))
{setInterval(function(){if(viewport){viewport._setFocus();}},this.options.CHECK_FOR_PDF_STEALING_FOCUS_AFTER_LOAD);}},doMouseWheel:function(event)
{if(!viewport)
{return(true);}
izHintManager.usingScrollWheel();event=event?event:window.event;var wheelData=event.detail?event.detail*-1:event.wheelDelta/40;{iz_prefetcher.goto(wheelData<0?'next':'previous');}
Event.stop(event);return(false);}};IZ.Viewport=Class.create();IZ.Viewport.IZ_CONSTRAINT="constraint";IZ.Viewport.IZ_CONSTRAINED="constrained_";IZ.Viewport.IZ_EDITTIME_CONSTRAINED="Constrained";IZ.Viewport.IZ_RUNTIME_CONSTRAINED="Runtime";IZ.Viewport.prototype={initialize:function(page,options)
{this.options=options||{};this.page=page;page.viewport=this;this.mz_page=page.iz_page;this.mz_paper=page.iz_paper;this.mz_canvas=page.iz_canvas;this.mz_page_width=page.aspect_ratio_width;this.mz_page_height=page.aspect_ratio_height;this.mz_aspect_ratio=page.aspect_ratio
this.currentPageZoom=null;this.zoomFactor=1.0;this.zoomFactors=[1,2];this.zoomLevel=0;this.pageFonts={};this.pageFontScale={};this.pageFontScaled={};this.lineHeights={};this.margins={left:effectiveCanvasPaddingWidth/2,right:effectiveCanvasPaddingWidth/2,top:effectiveCanvasPaddingHeight/2,bottom:effectiveCanvasPaddingHeight/2};this.mz_canvas.style.padding=effectiveCanvasPaddingHeight/2+"px "+effectiveCanvasPaddingWidth/2+"px";this.pan={x:0,y:0};},getPage:function()
{return(this.page);},getFontSize:function(page,linesPerPage)
{var fh=getInsideHeight(page)/(linesPerPage*(isIE?1.0:getPageZoom()));return(this._getFontSize(fh));},_getFontSize:function(fh,ff)
{var p=$C('p');if(!ff)
{ff='Verdana,Arial,Helvetica,sans-serif';}
p.style.fontFamily=ff;p.innerHTML='Tj';document.body.appendChild(p);if(isOpera)
{if(Element.getStyle(p,'lineHeight')=='normal'&&fh<=12)
{p.style.lineHeight='100%';}}
var fs=parseInt(fh*10)/10-2;p.style.fontSize=fs+"px";var lineHeight=getStyle(p,'height');while(lineHeight<fh)
{fs+=0.1;p.style.fontSize=fs+"px";lineHeight=getStyle(p,'height');}
var ofs=fs;while(lineHeight>fh)
{fs-=0.1;p.style.fontSize=fs+"px";lineHeight=getStyle(p,'height');if(fs<0)
{fs=ofs;break;}}
var results=[fs,getStyle(p,'height')];removeSelf(p);return(results);},_setFocus:function()
{if((new Date().getTime()-iz_last_PDF_loaded_time)/1000<3.5)
{window.focus();$('prefetched_pages_array').focus();}},_checkForZoomEvents:function()
{if(this.currentPageZoom)
{if(this.currentPageZoom>getPageZoom()&&this.zoomLevel>0)
{this.zoomout();}
else if(this.currentPageZoom<getPageZoom()&&this.zoomLevel==0)
{this.zoomin();}
else if(this.currentPageZoom!=getPageZoom())
{this._resizeElements();}}
this.currentPageZoom=getPageZoom();},keyPress:function(event)
{if(!izEditor)
{switch(event.keyCode)
{case Event.KEY_PAGEUP:if(!this.panning)
{iz_prefetcher.goto('previous');}
Event.stop(event);return(false);case Event.KEY_PAGEDOWN:if(!this.panning)
{iz_prefetcher.goto('next');}
Event.stop(event);return(false);case Event.KEY_LEFT:if(this.panning)
{this.setPan(this.pan.x-10,this.pan.y);}
else if(izPartyLineManager&&izPartyLineManager.editingPostingArea)
{return(true);}
else
{iz_prefetcher.goto('previous');}
Event.stop(event);return(false);case Event.KEY_UP:if(this.panning)
{this.setPan(this.pan.x,this.pan.y-10);}
else
{iz_prefetcher.goto('previous');}
Event.stop(event);return(false);case Event.KEY_RIGHT:if(this.panning)
{this.setPan(this.pan.x+10,this.pan.y);}
else if(izPartyLineManager&&izPartyLineManager.editingPostingArea)
{return(true);}
else
{iz_prefetcher.goto('next');}
Event.stop(event);return(false);case Event.KEY_DOWN:if(this.panning)
{this.setPan(this.pan.x,this.pan.y+10);}
else
{iz_prefetcher.goto('next');}
Event.stop(event);return(false);case Event.KEY_ESC:if(this.zoomLevel==1)
{this.toggleZoom(event);}
Event.stop(event);return(false);}}},trackMouse:function(event)
{if((editing&&izEditor&&izEditor.consumingAllEvents)||(previewing))
{return(true);}
var x=Event.pointerX(event);var y=Event.pointerY(event);if(this.zoomLevel>0)
{this.autoPan(x,y);}},doResize:function()
{this._resizeElements();},_pushCanvasPartsOntoPage:function()
{this.constrained=[];this.parts_above=getNextSiblingsByClass(this.mz_paper,'Part');this.parts_below=getPreviousSiblingsByClass(this.mz_paper,'Part');var canvas_offsets=cumulativeOffset(this.mz_canvas);var page_offsets=cumulativeOffset(this.mz_page);for(var i=0;i<this.parts_below.length;++i)
{var p=this.parts_below[i];if(p.className&&p.className.indexOf(IZ.Viewport.IZ_RUNTIME_CONSTRAINED)!=-1)
{this.parts_below.splice(i,1);--i;this.constrained.push(p);continue;}
p.style.left=(p.offsetLeft-canvas_offsets[0]-page_offsets[0]-getStyle(this.mz_paper,'borderLeftWidth')*2)+"px";p.style.top=(p.offsetTop-canvas_offsets[1]-page_offsets[1])+"px";this.mz_page.appendChild(p);}
for(var i=0;i<this.parts_above.length;++i)
{var p=this.parts_above[i];if(p.className&&p.className.indexOf(IZ.Viewport.IZ_RUNTIME_CONSTRAINED)!=-1)
{this.parts_above.splice(i,1);--i;this.constrained.push(p);continue;}
p.style.left=(p.offsetLeft-canvas_offsets[0]-page_offsets[0]-getStyle(this.mz_paper,'borderLeftWidth')*2)+"px";p.style.top=(p.offsetTop-canvas_offsets[1]-page_offsets[1])+"px";this.mz_page.appendChild(p);}},_popCanvasPartsOntoCanvas:function()
{for(var i=0;i<this.constrained.length;++i)
{this._constrain(this.constrained[i]);}
if(this.parts_below.length>0||this.parts_above.length>0)
{var canvas_offsets=cumulativeOffset(this.mz_canvas);var page_offsets=cumulativeOffset(this.mz_page);for(var i=0;i<this.parts_below.length;++i)
{var p=this.parts_below[i];p.style.left=(p.offsetLeft-canvas_offsets[0]+page_offsets[0]+getStyle(this.mz_paper,'borderLeftWidth')*2)+"px";p.style.top=(p.offsetTop-canvas_offsets[1]+page_offsets[1])+"px";this.mz_canvas.insertBefore(p,this.mz_paper);this._snap(p);}
for(var i=0;i<this.parts_above.length;++i)
{var p=this.parts_above[i];p.style.left=(p.offsetLeft-canvas_offsets[0]+page_offsets[0]+getStyle(this.mz_paper,'borderLeftWidth')*2)+"px";p.style.top=(p.offsetTop-canvas_offsets[1]+page_offsets[1])+"px";this.mz_canvas.appendChild(p);this._snap(p);}}},updateSelectionHandles:function()
{if(izEditor)
{izEditor.updateHandles();}},doPanAction:function(style,pos)
{if(!this.origPan)
{this.origPan={x:this.pan.x,y:this.pan.y};}
this.setPan(this.origPan.x-pos[0],this.origPan.y-pos[1]);},endPanAction:function(draggable,event)
{this.origPan=null;if(izEditor)
{izEditor.ignoreNextClickEvent();}},panChunk:function(direction,distance)
{if(!distance)
{distance=200.0;}
switch(direction)
{case"west":this.animatePan(this.pan.x-distance,this.pan.y);break;case"east":this.animatePan(this.pan.x+distance,this.pan.y);break;case"north":this.animatePan(this.pan.x,this.pan.y-distance);break;case"south":this.animatePan(this.pan.x,this.pan.y+distance);break;}},animatePan:function(targetPanX,targetPanY)
{var incrementPan={x:(this.pan.x-targetPanX)/this.options.ANIMATE_PAN_ITERATIONS,y:(this.pan.y-targetPanY)/this.options.ANIMATE_PAN_ITERATIONS};setTimeout((function(){this._animatePan(incrementPan,0);}).bind(this),this.options.ANIMATE_PAN_DELAY);},_animatePan:function(incrementPan,iteration)
{this.setPan(this.pan.x+incrementPan.x,this.pan.y+incrementPan.y);if(++iteration<this.options.ANIMATE_PAN_ITERATIONS)
{setTimeout((function(){this._animatePan(incrementPan,iteration);}).bind(this),this.options.ANIMATE_PAN_DELAY);}},panBack:function()
{},setPan:function(px,py)
{this.pan.x=px;this.pan.y=py;},autoPan:function(x,y)
{var offsets=cumulativeOffset(this.mz_paper);offsets[0]+=getStyle(this.mz_paper,"paddingLeft")+getStyle(this.mz_paper,"borderLeftWidth");offsets[1]+=getStyle(this.mz_paper,"paddingTop")+getStyle(this.mz_paper,"borderTopWidth");this.pan.x=this.zoomLevel==0?0:(this.mz_page.offsetWidth<this.mz_paper.offsetWidth?0:x-offsets[0]);this.pan.y=this.zoomLevel==0?0:(this.mz_page.offsetHeight<this.mz_paper.offsetHeight?0:y-offsets[1]);this.mz_page.style.left=-this.pan.x+"px";this.mz_page.style.top=-this.pan.y+"px";},toggleZoom:function(event)
{var x=Event.pointerX(event);var y=Event.pointerY(event);this.zoom(this.zoomLevel==1?0:1,x,y);},zoomin:function()
{this.zoom(this.zoomLevel+1);},zoomout:function()
{this.zoom(this.zoomLevel-1);},zoom:function(level,x,y)
{if((level<0)||(level>this.zoomFactors.length-1))
{return;}
if(!x)
{x=this.mz_page.width/2;y=this.mz_page.height/2;}
var change=this.zoomFactors[level]/this.zoomFactor;this.zoomLevel=level;this.zoomFactor=this.zoomFactors[this.zoomLevel];this.pan.x=-(x-(x+this.pan.x)*change);this.pan.y=-(y-(y+this.pan.y)*change);var offsets=cumulativeOffset(this.mz_page);this.pan.x=level==0?0:(this.mz_page.offsetWidth<this.mz_paper.offsetWidth?0:x-offsets[0]);this.pan.y=level==0?0:(this.mz_page.offsetHeight<this.mz_paper.offsetHeight?0:y-offsets[1]);this._resizeElements();},_updatePaperSizeForZoomLevel:function()
{if(this.zoomLevel>0)
{var width=Math.min(getInsideWidth(this.mz_canvas),this.zoomFactor*this.mz_page.offsetWidth);this.mz_paper.style.width=width+"px";this.mz_paper.style.left=this.mz_canvas.offsetLeft+this.mz_canvas.offsetWidth/2-width/2;var height=Math.min(getInsideHeight(this.mz_canvas),this.zoomFactor*this.mz_page.offsetHeight);this.mz_paper.style.height=height+"px";this.mz_paper.style.top=this.mz_canvas.offsetTop+this.mz_canvas.offsetHeight/2-height/2;}},newhome:function()
{this.zoomFactor=1.0;this.zoomLevel=0;this.pan.x=0;this.pan.y=0;},_resizeElements:function()
{this._resizePage(this.mz_paper,this.mz_canvas,1.0);this._resizePage(this.mz_page,this.mz_paper,this.zoomFactor);this._centerPageVertically();this._updatePaperSizeForZoomLevel();if(editing||unformatted)
{this._doCreateWidgets();}
this._pushCanvasPartsOntoPage();this._stod();this._popCanvasPartsOntoCanvas();if(editing)
{if(!this.onLoaded)
{izPageManager.onLoad(this.page);this.onLoaded=true;}
this._doConstraints();IZ.ArticleFormatter.display(this.page.id);this.updateSelectionHandles();izSnapGrid.update(true);}
else if(unformatted)
{this._doConstraints();}},_doCreateWidgets:function()
{for(id in elementLayouts)
{iz_layout.doCreateWidgets(id);}},_doConstraints:function()
{for(id in elementLayouts)
{iz_layout.doConstraints(id);}},_min:function(v1,v2)
{return(v1<v2?v1:v2);},dToS:function(e,the_page,force)
{var dw=getInsideWidth(the_page);var dh=getInsideHeight(the_page);if(e.nodeName=='IMG')
{e.s_left=(e.offsetLeft-the_page.offsetLeft)/dw;e.s_top=e.offsetTop/dh;if(force||!e.s_width)
{e.s_width=getInsideWidth(e)/dw;}
if(force||!e.s_height)
{e.s_height=getInsideHeight(e)/dh;}
return;}
var offsets=cumulativeOffset(e);var pageOffsets=cumulativeOffset(the_page);e.s_left=(offsets[0]-pageOffsets[0]-getStyle(e,'marginLeft')+this.pan.x)/dw;e.s_top=(offsets[1]-pageOffsets[1]-getStyle(e,'marginTop')+this.pan.y)/dh;if(force||!e.s_width)
{e.s_width=getInsideWidth(e)/dw;}
if(force||!e.s_height)
{e.s_height=getInsideHeight(e)/dh;}
if(e.style)
{for(var i=0;i<this.xGeometricStyles.length;++i)
{var s=this.xGeometricStyles[i];var val=Element.getStyle(e,s);if(val)
{e['s_'+s]=val.substring(0,val.length-2)/dw;}}
for(var i=0;i<this.yGeometricStyles.length;++i)
{var s=this.yGeometricStyles[i];var val=Element.getStyle(e,s);if(val)
{e['s_'+s]=val.substring(0,val.length-2)/dh;}}}},dToSPoint:function(e,the_page)
{var dw=getInsideWidth(the_page);var dh=getInsideHeight(the_page);var position=e.style.position;if(!position)
{position=Element.getStyle(e,"position");}
if(position!='absolute')
{var s_left=(""+(getStyle(e,'left')/dw)).substring(0,6);var s_top=(""+(getStyle(e,'top')/dh)).substring(0,6);return[s_left,s_top];}
var offsets=cumulativeOffset(e);var pageOffsets=cumulativeOffset(the_page);var s_left=(""+((offsets[0]-pageOffsets[0]+this.pan.x)/dw)).substring(0,6);var s_top=(""+((offsets[1]-pageOffsets[1]+this.pan.y)/dh)).substring(0,6);return[s_left,s_top];},dToSSize:function(e)
{var dw=getInsideWidth(this.mz_page);var dh=getInsideHeight(this.mz_page);var s_width=(""+(getStyle(e,'width')/dw)).substring(0,6);var s_height=(""+(getStyle(e,'height')/dh)).substring(0,6);return[s_width,s_height];},_short:function(value)
{return((""+value).substring(0,6));},dToElementGeometries:function(e)
{var dw=getInsideWidth(this.mz_page);var dh=getInsideHeight(this.mz_page);var str="var e=$('"+e.id+"'); if (e) { ";var guts="";if(e.style)
{for(var i=0;i<this.xGeometricStyles.length;++i)
{guts+=this._dToE(e,this.xGeometricStyles[i],dw);}
for(var i=0;i<this.yGeometricStyles.length;++i)
{guts+=this._dToE(e,this.yGeometricStyles[i],dh);}}
return(guts.length>0?str+guts+" }":"");},_dToE:function(e,n,dim)
{var str="";var n_modded="s_"+n+"_modded";var val=Element.getStyle(e,n);if(val&&(e.style[n]||e[n_modded]))
{str="e.s_"+n+"="+this._short(val.substring(0,val.length-2)/dim)+";e."+n_modded+"=true;";}
return(str);},xGeometricStyles:['paddingLeft','paddingRight','borderLeftWidth','borderRightWidth','marginLeft','marginRight'],yGeometricStyles:['paddingTop','paddingBottom','borderTopWidth','borderBottomWidth','marginTop','marginBottom'],dToSInitialize:function(e)
{if(!this.initialized)
this.initialized=new Date().toString();var dw=0;var dh=0;if(editing||unformatted)
{dw=getInsideWidth(this.mz_page);dh=getInsideHeight(this.mz_page);}
else
{dw=this.mz_page_width;dh=this.mz_page_height;}
dw=getInsideWidth(this.mz_page);dh=getInsideHeight(this.mz_page);if(editing||unformatted)
{iz_layout.preConstraints(e,dw,dh);}
this.mz_page.s_height=1.0;this.mz_page.s_width=1.0;this._pushCanvasPartsOntoPage();dToSTime1=(new Date().getTime()-startTime)/1000;this._dToSInitialize(e,1.0/dw,1.0/dh);dToSTime2=(new Date().getTime()-startTime)/1000;this._popCanvasPartsOntoCanvas();if(editing||unformatted)
{iz_layout.finalConstraints(e,dw,dh);}},_debug:function(e,indent)
{if(e.id)
{var classname=e.className?"("+e.className+")":""}
if(e.childNodes)
{var len=e.childNodes.length;for(var i=0;i<len;++i)
{this._debug(e.childNodes[i],indent+"&nbsp;&nbsp;&nbsp;&nbsp;");}}},doPageLayout:function(options)
{iz_layout.doElementLayouts();iz_layout.doLayout();},_dToSInitialize:function(e,sx,sy)
{var nn=e.nodeName;if((nn=="#text")||(nn=="#comment")||(nn=="SCRIPT")||(nn=="STYLE")||(nn=="PARAM"))
{return;}
if((!nn)||(nn=='')||(nn=="SPAN")||(nn=="TBODY")||(nn=="TR")||(nn=="STRONG")||(nn=="EM"))
{var len=e.childNodes.length;for(var i=0;i<len;++i)
{var n=e.childNodes[i];if(n.nodeName!="#text")
{this._dToSInitialize(n,sx,sy);}}
return;}
var position=e.style.position;if(!position)
{position=Element.getStyle(e,"position");}
var styles=getStyles(e,["top","left","paddingLeft","paddingRight","borderLeftWidth","borderRightWidth","paddingTop","paddingBottom","borderTopWidth","borderBottomWidth","fontSize","marginLeft","marginRight","marginTop","marginBottom"]);var insideWidth=e.offsetWidth-styleToFloat(styles["paddingLeft"])-styleToFloat(styles["paddingRight"])-styleToFloat(styles["borderLeftWidth"])-styleToFloat(styles["borderRightWidth"]);var insideHeight=e.offsetHeight-styleToFloat(styles["paddingTop"])-styleToFloat(styles["paddingBottom"])-styleToFloat(styles["borderTopWidth"])-styleToFloat(styles["borderBottomWidth"]);if(e.s_left)
{}
if((!e.s_left)&&(e.s_left!=0))
{e.s_left=(styleToFloat(styles["left"])+this.pan.x)*sx;}
if((!e.s_top)&&(e.s_top!=0))
{e.s_top=(styleToFloat(styles["top"])+this.pan.y)*sy;}
if(!e.s_width)
{e.s_width=insideWidth*sx;}
else
{sx=e.s_width/insideWidth;}
if(!e.s_height)
{e.s_height=insideHeight*sy;}
else
{sy=e.s_height/insideHeight;}
if(e.preserveAspect)
{e.s_width=e.s_height=Math.min(e.s_width,e.s_height);}
if(e.style)
{var fontSize=styleToFloat(styles['fontSize']);if(!e.s_fontSize)
{e.s_fontSize=fontSize*sy;}
var len=this.xGeometricStyles.length;for(var i=0;i<len;++i)
{var s=this.xGeometricStyles[i];var val=styles[s];if(val&&val!="0px"&&!e['s_'+s])
{var vs=val.substring(0,val.length-2);if((val.charAt(val.length-1)=='m')&&(val!='medium'))
{vs=vs*fontSize;}
e['s_'+s]=vs*sx;}}
var len=this.yGeometricStyles.length;for(var i=0;i<len;++i)
{var s=this.yGeometricStyles[i];var val=styles[s];if(val&&val!="0px"&&!e['s_'+s])
{var vs=val.substring(0,val.length-2);if((val.charAt(val.length-1)=='m')&&(val!='medium'))
{vs=vs*1.5*fontSize;}
e['s_'+s]=vs*sy;}}}
if(e.className=="Column")
{if(e.id.indexOf('izz')!=-1)
{var trowspacers=document.getElementsByClassName("Trowseg",e);if(trowspacers.length==0)
{return;}}
else
{var srowspacers=document.getElementsByClassName("srowseg",e);if(srowspacers.length==0)
{return;}}}
if(e.childNodes)
{if(e.id&&e.id.startsWith("_singlepage_"))
{e.s_height=1.0;e.s_width=1.0;e.style.height="100%";sx=this.zoomFactor/this.page.saved_page_width;sy=this.zoomFactor/this.page.saved_page_height;this.multipage=false;}
var len=e.childNodes.length;for(var i=0;i<len;++i)
{var n=e.childNodes[i];if(n.nodeName!="#text")
{this._dToSInitialize(n,sx,sy);}}}},_centerPageVertically:function()
{var centeredPaddingTop=(iz_canvas_dimensions[1]-getStyle(this.mz_page,'height'))/2;var paddingTop=getStyle(this.mz_canvas,'paddingTop');this.mz_canvas.style.paddingTop=centeredPaddingTop+"px";this.mz_canvas.style.paddingBottom=centeredPaddingTop+"px";this.mz_canvas.style.height=(iz_canvas_dimensions[1]-2*centeredPaddingTop)+"px";},_resizePage:function(child,parent,zoom)
{this.resized_slots={};var s=child.style;var marginsW=getMarginsW(child);var marginsH=getMarginsH(child);if(!editing)
{marginsW+=getBordersW(child);marginsH+=getBordersH(child);}
if((isChrome||isSafari)&&this.page.page_number!=1)
{marginsW=0;marginsH=0;}
var pw=getInsideWidth(parent)-marginsW;var ph=getInsideHeight(parent)-marginsH;if(ph*this.mz_aspect_ratio>pw)
{ph=pw/this.mz_aspect_ratio;}
else
{pw=ph*this.mz_aspect_ratio;}
s.width=pw*zoom+"px";s.height=ph*zoom+"px";},_snap:function(e)
{var cn=e.className;if(cn&&cn.indexOf('Snap')!=-1)
{var bh=e.s_height==0?0:getBordersH(e);var bw=e.s_width==0?0:getBordersW(e);var cns=e.className.split(/\s+/);var cw=this.mz_canvas.offsetWidth;var ch=this.mz_canvas.offsetHeight;for(var i=0;i<cns.length;++i)
{switch(cns[i])
{case"SnapLEFT":e.style.left=0;break;case"SnapTOP":e.style.top=0;break;case"SnapWIDTH":e.style.width=(cw-bw)+"px";break;case"SnapHEIGHT":e.style.height=(ch-bh)+"px";break;case"SnapRIGHT":e.style.left=(cw-e.offsetWidth)+"px";break;case"SnapBOTTOM":e.style.top=(ch-e.offsetHeight)+"px";break;}}
if(e.id.startsWith("slot_picture"))
{this.cropImageToContainer(e,{});}}},_constrain:function(e)
{var cn=e.className;var cmd=cn.substring(cn.indexOf('_',cn.indexOf(IZ.Viewport.IZ_RUNTIME_CONSTRAINED))+1).split(' ')[0];var m=e.parentNode;s=e.style;switch(cmd)
{case'fill':var editing_adj=editing?4:0;var pos=Element.getStyle(m,'position');var rel=pos=='relative'||pos=='absolute';s.height=(m.offsetHeight-editing_adj)+"px";s.width=(m.offsetWidth-editing_adj)+"px";s.left=rel?0:(m.offsetLeft+"px");s.top=rel?0:(m.offsetTop+"px");break;case'crop':s.left=0;s.top=0;this.cropImageToContainer(e,{});break;case'fit':this.fitImageToContainer(e,{preserveAspectRatio:true});break;case'force':this.fitImageToContainer(e,{preserveAspectRatio:false});break;case'shrinkwrap':this.fitImageToContainer(e,{preserveAspectRatio:true,shrinkwrap:true});break;}
if(e.childNodes)
{var len=e.childNodes.length;for(var i=0;i<len;++i)
{var cn=e.childNodes[i].className;if(cn&&cn.indexOf(IZ.Viewport.IZ_RUNTIME_CONSTRAINED)!=-1)
{this._constrain(e.childNodes[i]);}}}},_stod:function()
{if(typeof this.mz_page.s_left=='undefined')
{return;}
this.pageFonts={};this.pageFontScale={};this.pageFontScaled={};this.lineHeights={};if(editing&&this.page.page_number==iz_original_page_number)
{izSnapGrid.update();}
this.mz_page.style.left=-this.pan.x+"px";this.mz_page.style.top=-this.pan.y+"px";pw=getInsideWidthFloat(this.mz_page);ph=getInsideHeightFloat(this.mz_page);if(this.mz_page.childNodes)
{var len=this.mz_page.childNodes.length;for(var i=0;i<len;++i)
{this._stodKids(pw,ph,this.mz_page.childNodes[i]);}}},_stodKids:function(pw,ph,e)
{var nn=e.nodeName;if((nn=="BR")||(nn=="SCRIPT")||(nn=="#comment")||(nn=="STYLE"))
{return;}
if((nn=="SPAN")||(nn=="TBODY")||(nn=="TR"))
{if(e.childNodes)
{var len=e.childNodes.length;for(var i=0;i<len;++i)
{this._stodKids(pw,ph,e.childNodes[i]);}}
return;}
var cn=e.className;if(cn&&cn.indexOf("GRID")!=-1)
{return;}
var slot=this._getSlot(e)
if(slot&&this.resized_slots[slot.id])
{return;}
this.pan.x=0;this.pan.y=0;if((cn&&cn.indexOf('TextShadow')!=-1))
{return;}
if(e.id&&e.id.startsWith(IZ.Viewport.IZ_CONSTRAINED))
{var heightLN=e.id.substring(e.id.lastIndexOf('_')+1,e.id.length-2);var constraintId=e.id.substring(IZ.Viewport.IZ_CONSTRAINED.length,e.id.indexOf('_',IZ.Viewport.IZ_CONSTRAINED.length+1));var p=$(constraintId);var srow=getParentWithClassLike(p,'srow')
if(!srow)
{return;}
var h=parseFloat(heightLN)*srow.offsetHeight;var scale=h/e.offsetHeight;e.style.fontSize=0.8*h+"px";e.firstChild.style.fontSize=0.8*h+"px";e.s_height=h/ph;e.s_width=(scale*e.offsetWidth)/pw;}
if(e.nodeName=="#text"&&e.nodeValue&&e.nodeValue.strip().length>0)
{var cn=e.parentNode.className;if(cn&&cn.indexOf("Free_Scale")!=-1)
{this.scaleTextToSlot(e.parentNode);}
else
{this.fitTextToWindow(e);}
return;}
if(!e.style)
{return;}
var s=e.style;var position=s.position;if(!position)
{position=Element.getStyle(e,"position");}
var len=this.xGeometricStyles.length;for(var i=0;i<len;++i)
{var name=this.xGeometricStyles[i];var sval=e['s_'+name];if(sval)
{var val=parseInt(sval*pw+0.5);if((sval>0)&&(val==0)&&(name.startsWith("border")))
{val=1;}
s[name]=val+"px";}}
len=this.yGeometricStyles.length;for(var i=0;i<len;++i)
{var name=this.yGeometricStyles[i];if(name=='lineHeight')
{continue;}
var sval=e['s_'+name];if(sval)
{var val=parseInt(sval*ph+0.5);if((sval>0)&&(val==0)&&(name.startsWith("border")))
{val=1;}
s[name]=val+"px";}}
if(e.s_width)
{var bh=e.s_height==0?0:getBordersH(e);var bw=e.s_width==0?0:getBordersW(e);if((!cn)||(cn.indexOf("Ignore_Width")==-1))
{s.width=Math.max(e.s_width*pw-bw,0)+"px";}
if((!cn)||(cn.indexOf("Ignore_Height")==-1))
{s.height=Math.max(e.s_height*ph-bh,0)+"px";}
if((e.s_width*pw<1)||(cn&&cn.indexOf('Width_GTE_1')!=-1))
{s.width="1px";}
if((((e.nodeName=="HR")||(cn&&cn.indexOf('Height_GTE_1')!=-1))&&(e.s_height*ph<1))||(cn&&cn.indexOf('Height_1')!=-1))
{s.height="1px";}
if(e.isNote)
{var offsets=cumulativeOffset(this.mz_page);s.left=parseInt((e.s_left*pw)-this.pan.x+offsets[0])+"px";s.top=parseInt((e.s_top*ph)-this.pan.y+offsets[1])+"px";}
else if(e.isMoved||position=='relative')
{var offsets=cumulativeOffset(this.mz_page);s.left=parseInt(e.s_left*pw)+"px";s.top=parseInt(e.s_top*ph)+"px";if(nn=='IMG')
{var width=getStyle(e,'width');if(width>pw-bw-3&&width<pw-bw+3)
{s.width=(pw-bw)+"px";}
if(height>ph-bh-3&&height<ph-bh+3)
{s.height=(ph-bh)+"px";}}}
else if(position=='absolute')
{var padh=e.s_height==0?0:getPaddingsH(e);var padw=e.s_width==0?0:getPaddingsW(e);if(typeof e.s_center!='undefined')
{s.left=parseInt(((this.multipage?0.25:0.50)-e.s_width/2)*pw-this.pan.x)+"px";}
else if(typeof e.s_right!='undefined')
{s.left=parseInt((((this.multipage?0.5:1.0)-e.s_right-e.s_width)*pw)-this.pan.x)+"px";}
else
{var left=parseInt(e.s_left*pw);var width=getStyle(e,'width');var right=left+width+bw+padw;if(left>-3&&left<3)
{left=0;}
if(right>pw-3&&right<pw+3)
{if(width>pw-bw-3&&width<pw-bw+3)
{s.width=(pw-bw)+"px";}
else
{left+=pw-right+(editing||bw==0?0:1);}}
s.left=(left-this.pan.x)+"px";}
if(typeof e.s_middle!='undefined')
{s.top=parseInt(((0.50-e.s_height/2)*ph)-this.pan.y)+"px";}
else if(typeof e.s_bottom!='undefined')
{s.top=parseInt(((1.0-e.s_bottom-e.s_height)*ph)-this.pan.y)+"px";}
else
{var top=parseInt(e.s_top*ph);var height=getStyle(e,'height');var bottom=top+height+bh+padh;if(top>-3&&top<3)
{top=0;}
if(bottom>ph-3&&bottom<ph+3)
{if(height>ph-bh-3&&height<ph-bh+3)
{s.height=(ph-bh)+"px";}
else
{top+=ph-bottom;}}
s.top=(top-this.pan.y)+"px";}}
else
{}
if(e.hintedTop||e.hintedLeft)
{if(e.hintedLeft)
{var paddingLeft=getStyle(this.mz_page,"paddingLeft");s.left=parseInt((e.s_left*pw)-this.pan.x+paddingLeft)+"px";}
if(e.hintedTop)
{var paddingTop=getStyle(this.mz_page,"paddingTop");s.top=parseInt((e.s_top*ph)-this.pan.y+paddingTop)+"px";}}}
if(isIE&&e.nodeName=="HR")
{s.position="relative";s.top=(-e.offsetHeight/2)+"px";}
if(e.nodeName=='A')
{s.width="";s.height="";}
if(cn&&cn=="Column")
{var texts=getElementsByTagName(e,"#text");if(texts.length>0)
{if(e.id.indexOf('izz')!=-1)
{var trowspacers=document.getElementsByClassName("Trowseg",e);for(var i=0;i<trowspacers.length;++i)
{var seg=trowspacers[i];if(!seg.s_width)
{continue;}
seg.style.width=seg.s_width*pw+"px";}}
else
{var srowspacers=document.getElementsByClassName("srowseg",e);for(var i=0;i<srowspacers.length;++i)
{var seg=srowspacers[i];if(!seg.s_width)
{continue;}
seg.style.width=seg.s_width*pw+"px";}}
this.fitTextToWindow(e);return;}}
if(e.id&&e.id.startsWith("slot_htmlwidget"))
{return;}
if(e.childNodes)
{var len=e.childNodes.length;for(var i=0;i<len;++i)
{this._stodKids(pw,ph,e.childNodes[i]);}}},fitTextToWindow:function(e)
{var column=this._getAncestorByClass(e,"Column")
if(column)
{if(iz_greeking)
{return;}
var slot=this._getSlot(e)
if(!this.resized_slots[column.id])
{var texts=[];var textValues=[];var id=column.id;if(id.indexOf('_izz_')!=-1)
{this._scaleTextForColumns(column);return;}
var linesPerPage=id.substring(id.lastIndexOf('_')+1);id=id.substring(0,id.lastIndexOf('_'));var linesThisColumn=id.substring(id.lastIndexOf('_')+1);var id=id.substring(0,id.lastIndexOf('_'));var srows=document.getElementsByClassName("srow",column);var linesPerColumn=getInsideHeight(column)/getInsideHeight(this.mz_page)*linesPerPage;var partialColumnHeight=null
if(id.lastIndexOf('_')>-1)
{partialColumnHeight=parseFloat(id.substring(id.lastIndexOf('_')+1))/1000;}
var lh1=getInsideHeight(this.mz_page)/linesPerPage;lineHeight=getInsideHeight(column)/parseInt(linesPerColumn+1);if(this.mz_page_updated_at>1242566745||editing)
{lineHeight=lh1;}
this.lineHeights["columns_"+linesPerPage]=lineHeight;if((!partialColumnHeight)||(partialColumnHeight>0.95))
{partialColumnHeight=0.95;}
var isJustified=false;var justifiers=document.getElementsByClassName("justifier",column);for(var i=0;i<justifiers.length;++i)
{justifiers[i].parentNode.removeChild(justifiers[i]);}
var EOPs=[];var _texts=getElementsByTagName(column,"#text");var _texts_len=_texts.length;for(var i=0;i<_texts_len;++i)
{if(_texts[i].nodeValue.strip().length>0)
{var text=_texts[i];texts.push(text);var justified=Element.getStyle(text.parentNode,"text-align")=='justify';textValues.push(text.nodeValue);if(justified)
{isJustified=true;if(justifiers.length==0)
{var cn=text.parentNode.className;var EOP=cn&&(cn.indexOf('EOP')!=-1);var words=text.nodeValue.strip().split(/\s/);if(words.length>0)
{if(words[words.length-1]=='izEOLLLLLLLLLLLLLLL')
{words.pop();}
else if(EOP)
{EOPs.push(text);}
text.nodeValue=words.join(' ');}}}}}
this.scaleTextToContainer(column,{linesPerColumn:linesPerColumn,linesPerPage:linesPerPage,partialColumnHeight:partialColumnHeight,finetune:true,lineHeight:lineHeight});var hasOverflow=true;lineHeight+="px";var srows_length=srows.length;for(var i=0;i<srows_length;++i)
{srows[i].style.height=lineHeight;}
var lastSrow=null;var texts_length=texts.length;for(var i=0;i<texts_length;++i)
{var srow=this._getAncestorByClass(texts[i],"srow");if(srow)
{if(srow==lastSrow)
{texts[i-1].nodeValue=texts[i-1].nodeValue+" ";texts[i-1]=null;}}
lastSrow=srow;}
for(var i=0;i<texts_length;++i)
{if(!texts[i])
{continue;}
if((!EOPs.include(texts[i]))&&isJustified)
{texts[i].nodeValue=texts[i].nodeValue+" ";var span=$C("span");span.className="justifier";span.style.paddingRight=0.8*column.offsetWidth+"px";span.innerHTML="&nbsp;";{texts[i].parentNode.appendChild(span);}}
else
{texts[i].nodeValue=textValues[i];if(isJustified)
{texts[i].parentNode.style.textAlign="left";}}}
for(var i=0;i<srows_length-1;++i)
{srows[i].style.overflow='visible';}
this.resized_slots[column.id]=true;}}
else
{var slot=this._getSlot(e)
if(!slot)
{var p=e.parentNode;this.scaleTextToContainer(p,{});}
else if(!this.resized_slots[slot.id])
{this.scaleTextToContainer(slot,{});this.resized_slots[slot.id]=true;}}},greek:function()
{},_isSROW:function(e)
{return(e.className&&(e.className=="srow"||e.className=="srow EOP"));},_getAncestorByClass:function(container,name)
{var p=container;while(p)
{var cn=p.className;if(cn&&(cn==name||cn.indexOf(name+" ")!=-1||cn.indexOf(" "+name)!=-1))
{return(p);}
p=p.parentNode;}
return(null);},_getSlot:function(container)
{var p=container;while(p)
{if(p.id&&p.id.indexOf("slot_")!=-1)
{return(p);}
p=p.parentNode;}
return(null);},getElementsByTagName:function(e,tag)
{if(tag=="#text")
{return(this._getElementsByTagName(e,tag,[]));}
return(e.getElementsByTagName(tag));},_getElementsByTagName:function(e,tag,results)
{if(e.childNodes)
{var len=e.childNodes.length;for(var i=0;i<len;++i)
{var kid=e.childNodes[i];var nn=kid.nodeName;if(nn==tag)
{results.push(kid);}
if((nn!="#text")&&(nn!="#comment")&&(nn!="SCRIPT")&&(nn!="STYLE"))
{this._getElementsByTagName(kid,tag,results);}}}
return(results);},clearSomeAncesterSizes:function(child,ancestor)
{var p=child.parentNode;while(p&&p!=ancestor)
{if(p.style)
{if((!p.className)||(p.className!='srowseg'))
{p.style.width="";}
p.style.height="";}
p=p.parentNode;}},scaleTextToSlot:function(e,options)
{var slot=this._getSlot(e)
this.scaleTextToContainer(slot,{});},_scaleTextForColumns:function(column)
{var e=column;var id=e.id;var fh=parseFloat(id.substring(id.lastIndexOf('_')+1))/10;id=id.substring(0,id.lastIndexOf('_'));var orig_fs=parseFloat(id.substring(id.lastIndexOf('_')+1))/10;id=id.substring(0,id.lastIndexOf('_'));var linesPerPage=parseFloat(id.substring(id.lastIndexOf('_')+1));id=id.substring(0,id.lastIndexOf('_'));var rawScaleFactor=getInsideHeight(this.mz_page)/parseFloat(id.substring(id.lastIndexOf('_')+1));var scaled_fh=rawScaleFactor*fh;var article_slot=this._getSlot(e);var ff=Element.getStyle(article_slot,'fontFamily');article_slot.style.fontFamily=ff;var fs_and_height=this._getFontSize(scaled_fh,ff);var new_fs=Math.min(rawScaleFactor*orig_fs,fs_and_height[0]);var scaleFactor=new_fs/orig_fs;var justified=Element.getStyle(article_slot,"text-align")=='justify';if(justified)
{var justifiers=document.getElementsByClassName("justifier",column);for(var i=0;i<justifiers.length;++i)
{justifiers[i].parentNode.removeChild(justifiers[i]);}}
var gridHeight=getInsideHeight(this.mz_page)/linesPerPage;var texts=this.getElementsByTagName(e,"#text");if((!texts)||(texts.length==0))
{return;}
var shadow=getTextShadow(e);if(shadow)
{setTextShadow(e,null,0,0,true);}
var lastTrow=null;var EOPs=[];var textValues=[];var len=texts.length;for(var i=0;i<len;++i)
{var text=texts[i];if(text.nodeValue.strip().length>0)
{var trow=this._getAncestorByClass(text,"Trowseg");if(!trow)
{var trow=this._getAncestorByClass(text,"Trow");}
if(trow)
{if(trow==lastTrow)
{texts[i-1].nodeValue=texts[i-1].nodeValue+" ";texts[i-1]=null;continue;}}
lastTrow=trow;var p=text.parentNode;p.style.height="";p.style.width="";var found_fs=getStyle(p,'fontSize');var fs=new_fs;if(found_fs!=orig_fs)
{fs=found_fs/orig_fs*new_fs;}
p.style.fontSize=fs+"px";if(justified)
{textValues.push(text.nodeValue);var cn=p.className;var EOP=cn&&(cn.indexOf('EOP')!=-1);var words=text.nodeValue.strip().split(/\s/);if(words.length>0)
{if(words[words.length-1]=='izEOLLLLLLLLLLLLLLL')
{words.pop();}
else if(EOP)
{EOPs.push(text);}
text.nodeValue=words.join(' ');}}}}
var trows=document.getElementsByClassName("Trow",e);trows=trows.concat(document.getElementsByClassName("Trowseg",e));var len=trows.length;var top=0;for(var i=0;i<len;++i)
{var trow=trows[i];trow.style.top=top+"px";var cn=trow.className;var index=cn.indexOf('Row_');var numGridsTall=1;if(index!=-1)
{numGridsTall=parseInt(cn.substring(index+4,index+5));}
var tries=1;while(trow.offsetHeight>numGridsTall*gridHeight&&tries<20&&trow.nodeName!="TABLE")
{trow.style.height="";trow.style.letterSpacing=(-0.1*tries)+"px";++tries;}
top+=numGridsTall*gridHeight;}
if(justified)
{var texts_length=texts.length;for(var i=0;i<texts_length;++i)
{if(!texts[i])
{continue;}
if(!EOPs.include(texts[i]))
{texts[i].nodeValue=texts[i].nodeValue+" ";var span=$C("span");span.className="justifier";span.style.paddingRight=0.8*column.offsetWidth+"px";span.innerHTML="&nbsp;";texts[i].parentNode.appendChild(span);}
else
{texts[i].nodeValue=textValues[i];texts[i].parentNode.style.textAlign="left";}}}
if(shadow)
{setTextShadows(e,shadow);}},scaleTextToContainer:function(container,options)
{var e=container;if(e.id.startsWith("sssslot_snippet-3727-4"))
{}
else
{}
var origWidth=getInsideWidthFloat(e);var origHeight=getInsideHeightFloat(e);var marginsPaddings=e.offsetWidth-origWidth;if(e.offsetHeight==0)
{return;}
var _texts=this.getElementsByTagName(e,"#text");if((!_texts)||(_texts.length==0))
{return;}
var shadow=getTextShadow(e);if(shadow)
{setTextShadow(e,null,0,0,true);}
var maxWidthAndHeight={width:origWidth,height:origHeight};var finetune=options.finetune;var lineHeight=options.lineHeight?options.lineHeight:(options.linesPerColumn?getInsideHeight(e)/options.linesPerColumn:null);var partialColumnHeight=options.partialColumnHeight;var srows=document.getElementsByClassName("srow",e);var lh=lineHeight+"px";var srows_length=srows.length;for(var i=0;i<srows_length;++i)
{if(lineHeight)
{srows[i].style.height=lh;}
if(isIE)
{if(srows[i].firstChild)
{srows[i].style.fontSize=null;srows[i].style.height=null;}}}
var fontSizes=[];var texts=[];var fw=[];var watchSizeOf=e;var currentWidth=0;var currentHeight=0;var tdiv=$C("div");var len=_texts.length;for(var i=0;i<len;++i)
{var text=_texts[i];if(text.nodeValue.strip().length>0)
{this.clearSomeAncesterSizes(text,e);{}
text=text.parentNode;if(srows.length>0)
{currentHeight+=text.offsetHeight;}
text.style.height="";text.style.width="";if(text.offsetWidth>currentWidth)
{watchSizeOf=text;currentWidth=text.offsetWidth;}
var fs=getStyle(text,'fontSize');if(isIE&&srows.length>0)
{tdiv.innerHTML=text.innerHTML;fs=getStyle(tdiv,'fontSize');}
fontSizes.push(fs==0?1:fs);texts.push(text);fw.push(Element.getStyle(text,'fontWeight'));}}
var texts_length=texts.length;if(texts_length==0)
{return;}
var guess=1.0;var doNotGuess=false;var pfs_key=null;if(srows.length>0&&options.linesPerPage)
{pfs_key="srow_"+options.linesPerPage;if(this.pageFontScale[pfs_key])
{var scale=this.pageFontScale[pfs_key];if(!this.pageFontScaled[pfs_key])
{this.pageFontScaled[pfs_key]=[];}
for(var i=0;i<texts_length;++i)
{if(this._isSROW(texts[i])||this._isSROW(texts[i].parentNode)||this._isSROW(texts[i].parentNode.parentNode))
{texts[i].style.fontSize=(fontSizes[i]*scale)+"px";texts[i].style.fontWeight=fw[i];doNotGuess=true;guess=scale;}}}}
var w=origWidth;w=10000;if((watchSizeOf.nodeName!="SPAN")&&(watchSizeOf.nodeName!="TABLE"))
{var np=texts[0];while(np&&np!=e)
{if((np.nodeName=='SPAN')||(np.nodeName=='TABLE'))
{watchSizeOf=np;break;}
np=np.parentNode;}}
if(watchSizeOf.nodeName!='TABLE')
{w+=marginsPaddings;}
var h=partialColumnHeight?partialColumnHeight*getInsideHeight(e):origHeight+getPaddingsH(e);var origOffsetWidth=e.offsetWidth;e.style.height="";if(currentHeight==0)
{currentHeight=getInsideHeight(e);if(currentHeight<=0)
{currentHeight=1;}}
var g=null;var gmTop=null;var gmBottom=null;if(e.id&&e.id.startsWith("slot_glyph"))
{g=e.firstChild;while(g&&g.nodeName!='P')
{g=g.nextSibling;}
if(g)
{var cn=g.className;if(cn&&cn.startsWith('MARGIN_'))
{gmBottom=cn.substring(cn.lastIndexOf('_')+1)/100;h+=-gmBottom*origHeight;cn=cn.substring(0,cn.lastIndexOf('_'));gmTop=cn.substring(cn.lastIndexOf('_')+1)/100;h+=-gmTop*origHeight;}
g.style.marginTop=0;g.style.marginBottom=0;}}
if(e.id.startsWith('slot_dropcap'))
{g=e.getElementsByTagName('P')[0];g.style.top=(getStyle(e,'marginTop')-getStyle(e,'marginBottom'))+"px";g.style.left=(getStyle(e,'marginLeft')-getStyle(e,'marginRight'))+"px";}
var origId=e.id;e.id="";if(isIE)
{e.style.fontSize="0px";}
if(origWidth<e.offsetWidth)
{e.style.width=origWidth+"px";}
if(!doNotGuess)
{guess=Math.min(h/currentHeight,w/currentWidth);for(var i=0;i<texts_length;++i)
{texts[i].style.fontSize=fontSizes[i]*guess+"px";texts[i].style.fontWeight=fw[i];}
guess=Math.min(guess*h/(e.offsetHeight>0?e.offsetHeight:watchSizeOf.offsetHeight),origWidth==e.offsetWidth?100:guess*origWidth/e.offsetWidth);for(var i=0;i<texts_length;++i)
{texts[i].style.fontSize=fontSizes[i]*guess+"px";texts[i].style.fontWeight=fw[i];}}
var ignoreIfLessThanWidth=(origOffsetWidth==e.offsetWidth);if(e.offsetHeight==0)
{e.id=origId;if(!options.shrinkContainer)
{e.style.width=origWidth+"px";e.style.height=origHeight+"px";}
return;}
if(shadow)
{e.id=origId;setTextShadow(e,null,0,0,true);e.id="";h-=shadow.dy+1;}
lineHeight=srows.length>0?lineHeight:h;while((!doNotGuess)&&(ignoreIfLessThanWidth||e.offsetWidth-marginsPaddings<w+1)&&(e.offsetHeight<h+1)&&(watchSizeOf.offsetWidth<w+1)&&(fontSizes[0]*guess<lineHeight+1)&&(guess<15))
{guess+=0.5;for(var i=0;i<texts_length;++i)
{if(fontSizes[i]*guess>lineHeight)
{break;}
texts[i].style.fontSize=fontSizes[i]*guess+"px";texts[i].style.fontWeight=fw[i];}}
var LOOPED=20;var looped=LOOPED;while((!doNotGuess)&&((e.offsetWidth-marginsPaddings>origWidth)||(e.offsetHeight>h+1)||(watchSizeOf.offsetWidth>w+1)||(fontSizes[i]*guess>lineHeight))&&(guess>0.5)&&(looped-->0))
{guess-=0.5;for(var i=0;i<texts_length;++i)
{texts[i].style.fontSize=fontSizes[i]*guess+"px";}}
if(doNotGuess&&(looped==LOOPED))
{looped=LOOPED;if(srows.length>0)
{var corrected=true;guess=1.0;while((looped-->0)&&(guess>0.1)&&(corrected))
{var max_factor=0;var min_factor=0;var std_s_height=0;corrected=false;for(var i=0;i<texts_length-1;++i)
{var t=texts[i];if((!t.innerHTML)||(t.innerHTML=='&nbsp;')||(t.innerHTML.strip().length==0))
{continue;}
var s_height=t.s_height;if(!s_height)
{s_height=t.parentNode.s_height;}
s_height=fontSizes[i]
var f=t.offsetHeight/s_height;if(max_factor==0)
{max_factor=f*1.2;min_factor=f*0.8;std_s_height=s_height;}
else if(s_height==std_s_height)
{if(f<min_factor||f>max_factor)
{guess-=0.05;corrected=true;var scale=this.pageFontScale[pfs_key];for(var i=0;i<texts_length;++i)
{texts[i].style.fontSize=fontSizes[i]*scale*guess+"px";texts[i].style.fontWeight=fw[i];}
break;}}}}}
e.id=origId;if(!options.shrinkContainer)
{e.style.width=origWidth+"px";e.style.height=origHeight+"px";}
this.cacheScaleFactor(pfs_key,guess,texts,doNotGuess);if(shadow)
{setTextShadows(e,shadow);}
if(e.id.startsWith("slot_blurb"))
{e.style.fontSize=watchSizeOf.style.fontSize;}
return;}
if(looped!=LOOPED)
{guess+=0.5;for(var i=0;i<texts_length;++i)
{texts[i].style.fontSize=fontSizes[i]*guess+"px";texts[i].style.fontWeight=fw[i];}}
looped=LOOPED;while(((e.offsetWidth>w)||(e.offsetHeight>h+1)||(watchSizeOf.offsetWidth>w+1)||(fontSizes[0]*guess>lineHeight+1))&&(guess>0.1)&&(looped-->0))
{guess-=0.1;for(var i=0;i<texts_length;++i)
{texts[i].style.fontSize=fontSizes[i]*guess+"px";texts[i].style.fontWeight=fw[i];}}
if(finetune)
{looped=LOOPED;while((ignoreIfLessThanWidth||e.offsetWidth<origWidth)&&(e.offsetHeight<h+1&&fontSizes[0]*guess<lineHeight+1)&&(looped-->0))
{guess+=0.02;for(var i=0;i<texts_length;++i)
{texts[i].style.fontSize=fontSizes[i]*guess+"px";texts[i].style.fontWeight=fw[i];}}
if(looped<LOOPED&&looped>0)
{guess-=0.02;for(var i=0;i<texts_length;++i)
{texts[i].style.fontSize=fontSizes[i]*guess+"px";texts[i].style.fontWeight=fw[i];}}
looped=LOOPED;var aaa=watchSizeOf.offsetWidth;while(((e.offsetWidth>origWidth)||(e.offsetHeight>h+1)||(watchSizeOf.offsetWidth>w))&&(looped-->0)&&(guess>0.004))
{guess-=0.004;for(var i=0;i<texts_length;++i)
{texts[i].style.fontSize=fontSizes[i]*guess+"px";texts[i].style.fontWeight=fw[i];}}}
looped=LOOPED;if(srows.length>0)
{var corrected=true;while((looped-->0)&&(guess>0.1)&&(corrected))
{var max_factor=0;var min_factor=0;var std_s_height=0;corrected=false;for(var i=0;i<texts_length-1;++i)
{var t=texts[i];if((!t.innerHTML)||(t.innerHTML=='&nbsp;')||(t.innerHTML.strip().length==0))
{continue;}
var s_height=t.s_height;if(!s_height)
{s_height=t.parentNode.s_height;}
s_height=fontSizes[i]
var f=t.offsetHeight/s_height;if(max_factor==0)
{max_factor=f*1.2;min_factor=f*0.8;std_s_height=s_height;}
else if(s_height==std_s_height)
{if(f<min_factor||f>max_factor)
{guess-=0.05;corrected=true;for(var i=0;i<texts_length;++i)
{texts[i].style.fontSize=fontSizes[i]*guess+"px";texts[i].style.fontWeight=fw[i];}
break;}}}}}
e.id=origId;if(!options.shrinkContainer)
{e.style.width=origWidth+"px";e.style.height=origHeight+"px";}
if(e.id.startsWith("slot_blurb"))
{e.style.fontSize=watchSizeOf.style.fontSize;}
for(var i=0;i<texts_length;++i)
{if(texts[i].className&&texts[i].className!='srow')
{this.pageFonts[texts[i].className]=texts[i].style.fontSize;}}
this.cacheScaleFactor(pfs_key,guess,texts,doNotGuess);if(shadow)
{setTextShadows(e,shadow);}
if(g)
{if(gmTop!=null)
{g.style.marginTop=gmTop+"em";g.style.marginBottom=gmBottom+"em";}}},cacheScaleFactor:function(key,guess,texts,guessIsScaleFactor)
{if(key)
{var refs=this.pageFontScaled[key];var scale=this.pageFontScale[key];if(refs&&scale&&guess!=1.0&&guessIsScaleFactor)
{if(guess>1.0)
{var factor=1.0/guess;var len=texts.length
for(var i=0;i<len;++i)
{texts[i].style.fontSize=(getStyle(texts[i],'fontSize')*factor)+"px";}
guess=scale;}
else
{var factor=guess;var len=refs.length;for(var i=0;i<len;++i)
{refs[i].style.fontSize=(getStyle(refs[i],'fontSize')*factor)+"px";}
guess=guess*scale;}}
else if(guessIsScaleFactor&&scale)
{guess=scale;}
if(!refs)
{refs=[];this.pageFontScaled[key]=refs;}
var len=texts.length;for(var i=0;i<len;++i)
{refs.push(texts[i]);}
this.pageFontScale[key]=guess;}},fitImageToContainer:function(container,options)
{var e=this._getSlot(container);var origWidth=getInsideWidth(e);var origHeight=getInsideHeight(e);var maxWidthAndHeight={width:origWidth,height:origHeight};var img=this.findElementAndMaximumSize(e,e,maxWidthAndHeight,"IMG");if(!img)
{return;}
var w=e.offsetWidth-getPaddingsW(e);var h=e.offsetHeight-getPaddingsH(e);if(typeof izEditor!='undefined'&&izEditor)
{izEditor.showHandles(false);w=origWidth;h=origHeight;}
if(options.shrinkContainer||options.shrinkwrap)
{e.style.width="";e.style.height="";}
e.style.overflow='hidden';e.style.overflowX='hidden';e.style.overflowY='hidden';if(options.preserveAspectRatio)
{var ratio=img.o_width?img.o_width/img.o_height:img.offsetWidth/img.offsetHeight;if(options.scrollable)
{if(h*ratio>w)
{w=h*ratio
e.style.overflowX='auto';}
else
{h=w/ratio;e.style.overflowY='auto';}}
else
{if(h*ratio>w)
{h=w/ratio;w=h*ratio}
else
{w=h*ratio
h=w/ratio;}}}
else
{img.s_width=e.s_width;img.s_height=e.s_height;}
img.style.left=0;img.style.top=0;img.style.width=w+"px";img.style.height=h+"px";if(typeof izEditor!='undefined'&&izEditor)
{izEditor.showHandles(true);}},cropImageToContainer:function(container,options)
{var e=this._getSlot(container);var w=e.offsetWidth-getPaddingsW(e);var h=e.offsetHeight-getPaddingsH(e);e.style.height=getStyle(e,'height')+"px";e.style.width=getStyle(e,'width')+"px";var maxWidthAndHeight={width:w,height:h};var img=this.findElementAndMaximumSize(e,e,maxWidthAndHeight,"IMG");var imgs=e.getElementsByTagName('IMG');var img=imgs.length>0?imgs[0]:null;if(!img)
{return;}
var mw=w;var mh=h;var cropper=img.parentNode;cropper.style.overflow="hidden";var ratio=img.o_width?img.o_width/img.o_height:img.offsetWidth/img.offsetHeight;var s=img.style;s.position="relative";if(h*ratio>w)
{s.top=0;w=mh*ratio
h=w/ratio;if(!img.isMoved)
{s.left=-(w-mw)/2+"px";}
else if(img.offsetLeft+w<mw)
{s.left=(mw-w)+"px";}
if(img.offsetLeft>0)
{s.left=0;}}
else
{s.left=0;h=mw/ratio;w=h*ratio
if(!img.isMoved)
{s.top=-(h-mh)/2+"px";}
else if(img.offseTop+h<mh)
{s.top=(mh-h)+"px";}
if(img.offsetTop>0)
{s.top=0;}}
s.width=w+"px";s.height=h+"px";this.dToS(img,this.mz_page,true);},updateSomeAncesterSizes:function(start,finish)
{if(start==finish)
{return;}
var w=getOutsideWidth(start);var h=getOutsideHeight(start);var p=start.parentNode;while(p&&p!=finish)
{p.style.width=w+"px";p.style.height=h+"px";w+=getInsidesW(p)+getMarginsW(p);h+=getInsidesH(p)+getMarginsH(p);p=p.parentNode;}},findElementAndMaximumSize:function(container,e,size,nodeName)
{if(e.childNodes)
{var len=e.childNodes.length;for(var i=0;i<len;++i)
{var kid=e.childNodes[i];var nn=kid.nodeName;if((nn=="#comment")||(nn=="SCRIPT"))
{continue;}
if(nn==nodeName)
{if(nn=="#text")
{if(kid.nodeValue&&kid.nodeValue.trim().length>0)
{if(size)
{size.width-=getMarginsW(e)+getInsidesW(e);size.height-=getMarginsH(e)+getInsidesH(e);}
return(kid);}}
else
{if(size)
{size.width-=getMarginsW(kid)+getInsidesW(kid);size.height-=getMarginsH(kid)+getInsidesH(kid);if(e!=container)
{size.width-=getMarginsW(e)+getInsidesW(e);size.height-=getMarginsH(e)+getInsidesH(e);}}
return(kid);}}
var found=this.findElementAndMaximumSize(container,kid,size,nodeName);if(found)
{if(size&&e!=container)
{size.width-=getMarginsW(e)+getInsidesW(e);size.height-=getMarginsH(e)+getInsidesH(e);}
return(found);}}}
return(null);}};IZ.AdMarks=Class.create();IZ.AdMarks.prototype={initialize:function()
{this.MARGIN=20;this.TRANSPARENCY=0.50;this.CELLSPACING=4;this.admarks={};this.adtexts={};this.adtextForAdmark={};this.photos=[];this.adMarkElements=[];var prefetched_pages_array=$('prefetched_pages_array');Event.observe(prefetched_pages_array,"mousemove",function(event){if(viewport)izAdMarks.trackMouse(event);});Event.observe(prefetched_pages_array,"mouseout",function(event){if(viewport)izAdMarks.trackMouseOut(event);});},setupAdMarks:function(canvas)
{if(!this.built)
{var marks=document.getElementsByClassName('ADMARK',canvas);for(var i=0;i<marks.length;++i)
{var mark=marks[i];mark.className='ADMARK';var p=$(mark.id.substring('admark_'.length));var bar=$C('div');bar.className="Photo_Bar";bar.innerHTML="<table width='100%' cellspacing='"+this.CELLSPACING+"'><tr><td></td><td valign='middle' align='right'><td align='center' width='25'><img id='"+p.id+"_real_zoom' style='display:none' src='http://static3.magazines.me/images/toolbar/real-zoom-photo.png' class='Clickable' title='Zoom this picture'></td><td width='25'><img id='"+p.id+"_zoom' style='display:none' src='http://static0.magazines.me/images/toolbar/zoom-photo.png' class='Clickable' title='See picture at actual size'></td><td align='right' valign='top'><div id='admarks_"+p.id+"'></div></td></tr></table>";insertAfter(bar,p);$("admarks_"+p.id).appendChild(mark);Event.observe($(p.id+'_zoom'),"click",function(event){izPicTools.zoom(event);});Event.observe($(p.id+'_real_zoom'),"click",function(event){izPicTools.zoom(event,'real');});var img=mark.getElementsByTagName('IMG')[0];if(mark.offsetWidth>p.offsetWidth/2)
{img.style.width=p.offsetWidth/2+"px";}
var s=bar.style;s.position="absolute";s.width=(p.offsetWidth-2*this.MARGIN+2*this.CELLSPACING)+"px";this.admarks[p.id]=[mark.id];this.adMarkElements.push(mark);Element.setOpacity(mark,this.TRANSPARENCY);this.photos.push(p);$('admarks_'+p.id).parentNode.style.width=mark.offsetWidth+"px";mark.style.position='';s.left=(p.offsetLeft+this.MARGIN)+"px";s.top=(p.offsetTop+p.offsetHeight-bar.offsetHeight+2*this.CELLSPACING-this.MARGIN)+"px";}
this.built=true;}},trackMouse:function(event)
{if((editing&&izEditor&&izEditor.consumingAllEvents)||(previewing)||(viewport==null)||(viewport.zoomLevel>0))
{return(true);}
var p=this._pickPhoto(event);if(p==null)
{this._out();}
else if(p!=this.photo)
{this._out();this.photo=p;var img=p.getElementsByTagName('IMG')[0];$(p.id+"_zoom").style.display='block';$(p.id+"_real_zoom").style.display=img.o_width?'block':'none';}
if(p)
{var am=this._pickAdMark(event);if((am==null)||(am!=this.admark))
{this._outMark(p.id);this.admark=am;if(am)
{Element.setOpacity(am,1.0);}}}},_out:function()
{if(this.photo!=null)
{var pid=this.photo.id;this._outMark(pid);$(pid+"_zoom").style.display='none';$(pid+"_real_zoom").style.display='none';this.photo=null;}},_outMark:function(pid)
{for(var i=0;i<this.admarks[pid].length;++i)
{Element.setOpacity($(this.admarks[pid][i]),this.TRANSPARENCY);}
this.admark=null;},trackMouseOut:function(event)
{this._out();},_pickPhoto:function(event)
{var x=Event.pointerX(event);var y=Event.pointerY(event);for(var i=this.photos.length-1;i>=0;--i)
{var p=this.photos[i];var offsets=cumulativeOffset(p);if((x>offsets[0]&&x<offsets[0]+p.offsetWidth)&&(y>offsets[1]&&y<offsets[1]+p.offsetHeight))
{return(p);}}
return(null);},_pickAdMark:function(event)
{var x=Event.pointerX(event);var y=Event.pointerY(event);for(var i=this.adMarkElements.length-1;i>=0;--i)
{var p=this.adMarkElements[i];var offsets=cumulativeOffset(p);if((x>offsets[0]&&x<offsets[0]+p.offsetWidth)&&(y>offsets[1]&&y<offsets[1]+p.offsetHeight))
{return(p);}}
return(null);}};var izAdMarks=new IZ.AdMarks();IZ.PicTools=Class.create();IZ.PicTools.prototype={initialize:function()
{this.BAR_WIDTH=60;this.BAR_HEIGHT=40;this.bar=this._buildBar();this.slot=null;this.zoomables=[];var prefetched_pages_array=$('prefetched_pages_array');Event.observe(prefetched_pages_array,"mousemove",function(event){if(viewport)izPicTools.trackMouse(event);});Event.observe(prefetched_pages_array,"mouseout",function(event){if(viewport)izPicTools.trackMouseOut(event);});Event.observe(document,"keydown",function(event){izPicTools.keypress(event);});},setupZoomables:function(canvas)
{if(editing)
{return;}
{var parts=document.getElementsByClassName('Part',canvas);for(var i=0;i<parts.length;++i)
{var p=parts[i];if(p.zoomable||((typeof p.zoomable=='undefined')&&iz_preferences.all_pictures_zoomable&&p.id&&p.id.startsWith("slot_picture")&&((!p.className)||(p.className.indexOf('Shadow')==-1))))
{this.zoomables.push(p);}}}},trackMouse:function(event)
{if((editing&&izEditor&&izEditor.consumingAllEvents)||(previewing)||(viewport==null)||(viewport.zoomLevel>0))
{return(true);}
var p=this._pickZoomable(event);if(p)
{this._activateBar(p);return;}
if(this.slot!=null)
{this.slot=null;removeSelf(this.bar);}},trackMouseOut:function(event)
{if(this.slot!=null)
{var x=Event.pointerX(event);var y=Event.pointerY(event);var canvas=viewport.getPage().iz_canvas;var offsets=cumulativeOffset(canvas);if((x<offsets[0]||x>offsets[0]+canvas.offsetWidth)||(y<offsets[1]||y>offsets[1]+canvas.offsetHeight))
{this.slot=null;removeSelf(this.bar);}}},initForNewPage:function(event)
{if(this.slot!=null)
{this.slot=null;removeSelf(this.bar);}},_pickZoomable:function(event)
{var x=Event.pointerX(event);var y=Event.pointerY(event);for(var i=this.zoomables.length-1;i>=0;--i)
{var p=this.zoomables[i];var offsets=cumulativeOffset(p);if((x>offsets[0]&&x<offsets[0]+p.offsetWidth)&&(y>offsets[1]&&y<offsets[1]+p.offsetHeight))
{return(p);}}
return(null);},_buildBar:function()
{var id="zoom_tools";var div=$C("div");div.innerHTML="<table cellspacing='2' cellpadding='0' style='margin:5px;'><tr><td align='center'><img id='"+id+"_zoom' src='http://static1.magazines.me/images/toolbar/zoom-photo.png' class='Clickable' title='Zoom this picture'></td><td><img id='"+id+"_real_zoom' src='http://static2.magazines.me/images/toolbar/real-zoom-photo.png' class='Clickable' title='See picture at actual size'></td></tr></table>";div.id=id;div.style.position="absolute";div.style.zIndex="40000";document.body.appendChild(div);Event.observe($(id+'_zoom'),"click",function(event){izPicTools.zoom(event);});Event.observe($(id+'_real_zoom'),"click",function(event){izPicTools.zoom(event,'real');});document.body.removeChild(div);return(div);},_activateBar:function(slot)
{if(this.slot!=slot)
{if(!$('admark_'+slot.id))
{var o_img=slot.getElementsByTagName('IMG')[0];var offsets=cumulativeOffset(slot);var bar=this.bar;var s=this.bar.style;document.body.appendChild(bar);$("zoom_tools_real_zoom").style.display=o_img.o_width?'block':'none';var left=offsets[0]+slot.offsetWidth/2-bar.offsetWidth/2;var top=offsets[1]+slot.offsetHeight-bar.offsetHeight;var dim=getWindowSize();if(left<0)
{left=0;}
else if(left>dim[0]-bar.offsetWidth)
{left=dim[0]-bar.offsetWidth;}
if(top>dim[1]-bar.offsetHeight)
{top=dim[1]-bar.offsetHeight;}
s.left=left+"px";s.top=top+"px";}
this.slot=slot;}},zoom:function(event,cmd)
{var slot=this.slot;var bar=this.bar;bar.style.display='none';var zoomed=slot.cloneNode(true);Element.setOpacity(zoomed,1.0);var s=zoomed.style;s.position="absolute";s.zIndex=3000;s.left=0;s.top=0;s.width=document.body.offsetWidth+"px";s.height=document.body.offsetHeight+"px";document.body.appendChild(zoomed);var pickupListener=this.onPickup.bindAsEventListener(this);Event.observe(zoomed,'mousedown',pickupListener);this.zoomLevel=1;Event.observe(zoomed,"click",function(event){izPicTools.zoomedClick(event,zoomed);});s.cursor="move";this.zoomed=zoomed;this.ignoreClick=0;if(cmd)
{var o_img=slot.getElementsByTagName('IMG')[0];var img=zoomed.getElementsByTagName('IMG')[0];img.o_width=o_img.o_width;img.o_height=o_img.o_height;s=img.style;switch(cmd)
{case'real':if(o_img.o_width)
{s.width=o_img.o_width+"px";s.height=o_img.o_height+"px";s.left=(document.body.offsetWidth-o_img.o_width)/2+"px";s.top=(document.body.offsetHeight-o_img.o_height)/2+"px";}
else
{cmd=null;}
this.zoomLevel=3;break;default:cmd=null;break;}}
if(!cmd)
{viewport.cropImageToContainer(zoomed);}},keypress:function(event)
{if(editing||iz_comments_popped)
{return(true);}
var z=this.zoomed;if(z)
{switch(event.keyCode)
{case toAscii('r')-32:case Event.KEY_ESC:removeSelf(z);this.zoomed=null;this.bar.style.display='block';break;case toAscii('z')-32:this.zoomedClick(event,z);break;}}
else if(this.slot)
{switch(event.keyCode)
{case toAscii('r')-32:this.zoom(event,'real');break;case toAscii('z')-32:this.zoom(event,'zoom');break;}}},zoomedClick:function(event,zoomed)
{if(this.ignoreClick>0)
{--this.ignoreClick;}
else if(this.zoomLevel>=3)
{removeSelf(zoomed);this.bar.style.display='block';this.zoomed=null;}
else
{var img=zoomed.getElementsByTagName('IMG')[0];var w=img.offsetWidth*1.5;var h=img.offsetHeight*1.5;var ratio=img.o_width?img.o_width/img.o_height:img.offsetWidth/img.offsetHeight;if(h*ratio>w)
{w=h*ratio
h=w/ratio;}
else
{h=w/ratio;w=h*ratio}
img.style.left=(zoomed.offsetWidth-w)/2+"px";img.style.top=(zoomed.offsetHeight-h)/2+"px";img.style.width=w+"px";img.style.height=h+"px";++this.zoomLevel}},onPickup:function(event)
{this.target=this.zoomed.getElementsByTagName('IMG')[0];this.moveListener=this.onMove.bindAsEventListener(this);this.endListener=this.doEnd.bindAsEventListener(this);Event.observe(document,'mousemove',this.moveListener);Event.observe(document,'mouseup',this.endListener);var x=Event.pointerX(event);var y=Event.pointerY(event);var offsets=cumulativeOffset(this.target);this.downOffsetX=x-offsets[0];this.downOffsetY=y-offsets[1];this.minX=this.zoomed.offsetWidth-this.target.offsetWidth;this.minY=this.zoomed.offsetHeight-this.target.offsetHeight;this.startTime=new Date().getTime();this.doing=true;Event.stop(event);},doEnd:function(event)
{Event.stopObserving(document,'mousemove',this.moveListener);Event.stopObserving(document,'mouseup',this.endListener);this.doing=false;if(new Date().getTime()-this.startTime<250)
{this.zoomedClick(event,this.zoomed);}
++this.ignoreClick;Event.stop(event);},onMove:function(event)
{var x=Event.pointerX(event);var y=Event.pointerY(event);if(this.doing)
{var t=this.target
t.style.left=Math.min(0,Math.max(this.minX,(x-this.downOffsetX)))+"px";t.style.top=Math.min(0,Math.max(this.minY,(y-this.downOffsetY)))+"px";}
Event.stop(event);}};var izPicTools=new IZ.PicTools();IZ.VideoMaster=Class.create();IZ.VideoMaster.prototype={initialize:function()
{this.players={};},setupVideos:function(canvas)
{if(!this.built)
{var parts=document.getElementsByClassName('Part',canvas);for(var i=0;i<parts.length;++i)
{var e=parts[i];if(e.id.startsWith("slot_video"))
{this.players[e.id]=new IZ.VideoPlayer(e);}}
this.built=true;}},created:function(e)
{this.players[e.id]=new IZ.VideoPlayer(e);},setVideo:function(e,url)
{if(!this.players[e.id])
{this.setupVideos();}
this.players[e.id].setVideo(url);},setVideos:function(e,urls)
{if(!this.players[e.id])
{this.setupVideos();}
this.players[e.id].setVideos(urls);},resized:function(e)
{if(!this.players[e.id])
{this.setupVideos();}
this.players[e.id].resized();}};var izVideoMaster=new IZ.VideoMaster();IZ.VideoPlayer=Class.create();IZ.VideoPlayer.prototype={initialize:function(e)
{this.element=e;this.tube=e;this.kind='youtube';this.ASPECT_RATIO=640/505;if(editing)
{this.tube.disabled=true;}
this.buildPlayer();},setVideo:function(url)
{var start=-1;var end=-1;if(url.indexOf('vimeo.com/')!=-1)
{this.kind='vimeo';start=url.indexOf('vimeo.com/')+'vimeo.com/'.length;end=url.indexOf('?',start);}
else
{start=url.indexOf('v=')+2;if(start==1)
{start=url.indexOf('/v/')+3;}
end=url.indexOf('&',start);this.kind='youtube';}
if(start>1)
{this.video_id=end>0?url.substring(start,end):url.substring(start);this.buildPlayer();}},resized:function()
{this.buildPlayer();},buildPlayer:function()
{var width=this.element.offsetWidth-4;var height=this.element.offsetHeight-4;if(width/this.ASPECT_RATIO>height)
{width=this.ASPECT_RATIO*height;}
else
{height=width/this.ASPECT_RATIO;}
if(!editing)
{var start=-1;var end=-1;var str=this.tube.innerHTML;if(str.indexOf('vimeo')!=-1)
{start=str.indexOf('clip_id=')+'clip_id='.length;end=str.indexOf('&',start);this.kind='vimeo';}
else
{start=str.indexOf('/v/')+3;end=str.indexOf('&',start);this.kind='youtube';}
if(start!=-1&&end!=-1)
{this.video_id=str.substring(start,end);}}
if(this.kind=='vimeo')
{var id=this.video_id?this.video_id:'1236923';this.tube.innerHTML="<object width='"+width+"' height='"+height+"'><param name='allowfullscreen' value='true' /><param name='allowscriptaccess' value='always' /><param name='movie' value='http://vimeo.com/moogaloop.swf?clip_id="+id+"&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1' /><embed src='http://vimeo.com/moogaloop.swf?clip_id="+id+"&amp;server=vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1' type='application/x-shockwave-flash' allowfullscreen='true' allowscriptaccess='always' width='"+width+"' height='"+height+"'></embed></object>";}
else
{var id=this.video_id?this.video_id:'8nTFjVm9sTQ';this.tube.innerHTML="<object width='"+width+"' height='"+height+"'><param name='movie' value='http://www.youtube.com/v/"+id+"&hl=en&fs=1&rel=0'></param><param name='allowFullScreen' value='true'></param><param name='allowscriptaccess' value='always'></param><embed src='http://www.youtube.com/v/"+id+"&hl=en&fs=1&rel=0' type='application/x-shockwave-flash' allowscriptaccess='always' allowfullscreen='true' width="+width+" height="+height+"'></embed></object>";}}};IZ.PDFMaster=Class.create();IZ.PDFMaster.prototype={initialize:function()
{this.viewers={};},setupPDFs:function(canvas)
{var parts=document.getElementsByClassName('Part',canvas);for(var i=0;i<parts.length;++i)
{var e=parts[i];if(e.id.startsWith("slot_pdf"))
{if(editing)
{this.viewers[e.id]=new IZ.PDFViewer(e);}
iz_last_PDF_loaded_time=new Date().getTime();}}},created:function(e)
{this.viewers[e.id]=new IZ.PDFViewer(e);},setURL:function(e,url)
{if(!this.viewers[e.id])
{this.setupPDFs();}
this.viewers[e.id].setURL(url);},setConfig:function(e,c)
{if(!this.viewers[e.id])
{this.setupPDFs();}
this.viewers[e.id].setConfig(c);},resized:function(e)
{if(!this.viewers[e.id])
{this.setupPDFs();}
this.viewers[e.id].resized();}};var izPDFMaster=new IZ.PDFMaster();IZ.PDFViewer=Class.create();IZ.PDFViewer.prototype={initialize:function(e)
{this.element=e;this.viewer=e;this.url="/default.pdf";this.config={has_scrollbars:false,has_navigation_panes:false,has_statusbar:false,has_messages:false,initial_view:"FitB"};if(editing)
{}
this.buildViewer();},setURL:function(url)
{this.url=url;this.buildViewer();},setConfig:function(c)
{this.config=c;this.buildViewer();},resized:function()
{this.buildViewer();},buildViewer:function()
{var width=this.element.offsetWidth;var height=this.element.offsetHeight;if(!editing)
{var start=-1;var end=-1;var str=this.viewer.innerHTML;if(str.indexOf('src=')!=-1)
{start=str.indexOf('src=')+'src='.length+1;end=str.indexOf('#',start);}
if(start!=-1&&end!=-1)
{this.url=str.substring(start,end);}}
var embed=this.viewer.getElementsByTagName("EMBED")[0];if(!embed)
{this.viewer.innerHTML="<embed src='"+this.url
+"#toolbar="+(this.config.has_toolbar?'1':'0')
+"&navpanes="+(this.config.has_navpanes?'1':'0')
+"&scrollbar="+(this.config.has_scrollbars?'1':'0')
+"&statusbar="+(this.config.has_statusbar?'1':'0')
+"&messages="+(this.config.has_messages?'1':'0')
+"&view="+this.config.initial_view
+"' width='"+width+"' height='"+height+"'></embed>";}
else
{embed.src=this.url
+"#toolbar="+(this.config.has_toolbar?'1':'0')
+"&navpanes="+(this.config.has_navpanes?'1':'0')
+"&scrollbar="+(this.config.has_scrollbars?'1':'0')
+"&statusbar="+(this.config.has_statusbar?'1':'0')
+"&messages="+(this.config.has_messages?'1':'0')
+"&view="+this.config.initial_view;embed.width=width+"px";embed.height=height+"px";embed.style.width=width+"px";embed.style.height=height+"px";embed.width=width+"px";embed.height=height+"px";embed.style.width=width+"px";embed.style.height=height+"px";}}};