var usePB_Jquery=(typeof jQuery=="function");var PBxDomMsg={initialize:function(c,a){var b=/^(?:(?:(top|parent|frames\[(?:(?:['"][a-zA-Z\d-_]*['"])|\d+)\]))(?:\.|$))+/;if(b.test(c)){this.address=c}else{throw new Error("Invalid Message Target")}if(usePB_Jquery){this.memo=a}else{this.memo=(Object.isString(a))?a:a.toQueryString()}this.type="XdComMessage";return this},toQueryString:function(){var a={address:this.address,memo:this.memo};if(usePB_Jquery){return"address="+a.address+"&memo="+a.memo}else{return Object.toQueryString(a)}},type:"XdComMessage"};var PBxDom={initialize:function(){this.iframe=null;this.proxyUrl=null;this.isReady=false},open:function(a){this.proxyUrl=a;if(!this.iframe){if(usePB_Jquery){jQuery("<iframe />").attr({id:"pb_xdom",src:this.proxyUrl}).css({visibility:"hidden",position:"absolute",top:"0",left:"0",height:"1px",width:"1px"}).appendTo("body");jQuery("#pb_xdom").bind("load",{customevnt:this.event.onLoad},function(b){jQuery(document).trigger(b.data.customevnt)});this.iframe=jQuery("#pb_xdom")}else{this.iframe=new Element("iframe",{src:this.proxyUrl});this.iframe.setStyle({visibility:"hidden",position:"absolute",top:0,left:0,height:"1px",width:"1px"});document.body.appendChild(this.iframe);Event.observe(this.iframe,"load",function(){this.isReady=true;document.fire(this.event.onLoad)}.bind(this))}}},close:function(){if(this.iframe){if(usePB_Jquery){jQuery("#pb_xdom").remove()}else{this.iframe.remove()}}},send:function(a){if(!this.iframe||!this.proxyUrl){throw new Error("Proxy Closed")}else{if(a.type==PBxDomMsg.type){var b=a.toQueryString();if(usePB_Jquery){this.iframe.attr({src:this.proxyUrl+"#"+b})}else{this.iframe.src=this.proxyUrl+"#"+b}}else{throw new Error("Invalid Message")}}},event:{onLoad:"PBxDom:ProxyReady"}};var SaveToAlbumController;(function(){var a={initialize:function(){Event.observe(document,SaveToAlbumController.EVENT.ACTIVATE,this.activate.bindAsEventListener(this))},activate:function(c){var d=c.memo;if(d.isLoggedIn){PB.Controller.XdCom.getInstance().open();Event.observe(document,PB.Util.XdComReceiver.event.onMessage,this.onMessage.bindAsEventListener(this))}PBLightbox.getInstance();document.fire(PBLightbox.EVENT.ACTIVATE,{contentUrl:"/savetoalbumview",onComplete:function(){if(d.isLoggedIn){var e="200px";var g=document.domain;var f=unescape(d.viewerSaveToAlbumUrl)+"&mediaUrls[]="+d.mediaUrl+"&PBPROXY="+g;var h=$("staiFrame");h.style.height=e;h.src=f;h.show()}else{$("statuspanel").show();document.fire(PBLightbox.PBMessage.EVENT.NOTIFY,{message:new PBMessage({title:"",details:'WARNING: You must be logged in before you can save a copy of this media to your album. <a class="yellowLink" href="/login?returnUrl='+d.mediaBrowseUrl+'">Login</a> or <a class="yellowLink" href="/register">Register</a> to get started.',type:PBMessage.MESSAGE_TYPE.ALERT})});$("btnloggedout").show()}}})},onMessage:function(c){var d=c.memo;switch(d){case"loaded":this.closeProgress();break;case"close":this.closeFrame();break;case"success":$("staiFrame").style.height="450px";break;case"successAsk":$("staiFrame").style.height="600px";break;case"error":$("staiFrame").style.height="300px";break;default:break}},showSuccess:function(c){$("staiFrame").hide();Event.observe($("view_in_album"),"click",function(d){document.location.href=c});$("btnsuccess").show();$("statuspanel").show();this.msgAlert("status","All files were copied to your album.")},closeFrame:function(){document.fire(PBLightbox.EVENT.DEACTIVATE)},closeProgress:function(){document.fire(PBLightbox.PBProgress.EVENT.DEACTIVATE)},msgAlert:function(d,e){var c=(d=="error")?"Attention":"Success";document.fire(PBLightbox.PBMessage.EVENT.NOTIFY,{message:new PBMessage({title:c,details:e,type:d})});return}};var b={EVENT:{ACTIVATE:"SaveToAlbumController:activate"}};Controller.create("SaveToAlbumController",a,b)})();(function(){var a={initialize:function(e,c){var d=/^(?:(?:(top|parent|frames\[(?:(?:['"][a-zA-Z\d-_]*['"])|\d+)\]))(?:\.|$))+/;if(d.test(e)){this.address=e}else{throw new Error("Invalid Message Target")}if(Object.isString(c)){this.memo=c}else{this.memo=c.toQueryString()}this.type=PB.Util.XdComMessage.type},toQueryString:function(){var c={address:this.address,memo:this.memo};return Object.toQueryString(c)}};var b={type:"XdComMessage"};Object.extend(PB.Util,{XdComMessage:Object.extend(Class.create(a),b)})})();(function(){var publicMembers={initialize:function(){},send:function(message){if(message.address&&message.memo){try{if(message.type!=PB.Util.XdComMessage.type){message=new PB.Util.XdComMessage(message.address,message.memo)}var target=eval(message.address);target.document.title=message.memo}catch(e){throw new Error("XdComMessage.address not found")}}else{throw new Error("Invalid Message")}}};var staticMembers={};Object.extend(PB.Util,{XdComSender:Object.extend(Class.create(publicMembers),staticMembers)})})();(function(){var a={initialize:function(){this.delay=100;this.timerId=-1;this.oTitle=document.title;this.dispatcher=this.dispatch.bind(this)},start:function(){if(this.timerId==-1){this.timerId=window.setInterval(this.dispatcher,this.delay)}},stop:function(){if(this.timerId!=-1){window.clearInterval(this.timerId);this.timerId=-1}},getMessage:function(){var c=null;if(document.title!=this.oTitle){c=document.title;document.title=this.oTitle}return c},dispatch:function(){var c=this.getMessage();if(c){document.fire(PB.Util.XdComReceiver.event.onMessage,c)}}};var b={event:{onMessage:"PB:XdComReceiverOnMessage"}};Object.extend(PB.Util,{XdComReceiver:Object.extend(Class.create(a),b)})})();(function(){var a={initialize:function(){this.sender=new PB.Util.XdComSender();this.receiver=new PB.Util.XdComReceiver()},open:function(){this.receiver.start()},close:function(){this.receiver.stop()},send:function(c){this.sender.send(c)}};var b={};Controller.create("XdCom",a,b)})();
