BLIP.Class.create("BLIP.Controls.Activity",BLIP.Controls.Control,function(config){var thisContext=this;this.config=config;this.target=config.target,this.postsId=config.postsId,this.usersId=config.usersId,this.token=config.token,BLIP.Controls.Control.call(this,{target:config.target,delayInitialization:false,useDocumentWrite:false});$(document).ready(function(){thisContext.initialize();});},{config:{},target:"",url:"/dashboard/activity",postsId:null,usersId:null,token:"",getActivityItemHtml:function(item){var html='<div class="ActivityItem '+this.getActivityTypeHtml(item.activity_type)+'">';var postsTitle=BLIP.Utils.truncate(item.posts_title,30);html+='<span class="ActivityEventTitle">Comment on <a target="context" href="'+item.source.asset_url+'">'+postsTitle+"</a></span>";var text;if(item.source.excerpt!=undefined){text=item.source.excerpt;}else{text=item.source.title;}text=BLIP.Utils.truncate(text,150);html+=text;html+='<div class="Clear"></div>';html+='<div class="ActivityEventSource">Posted on '+item.partner+' by <a target="author" href="'+item.source.author.url+'">'+item.source.author.name+"</a></div>";
html+='<div class="ExtraLinks">';html+='<a target="context" href="'+item.source.asset_url+'">See in context</a>';html+="</div>";html+="</div>";return html;},getActivityTypeHtml:function(type){switch(type){case"comment":return"ActivityComment";break;}},getJSON:function(pg){var url=this.url;if(this.token!=undefined){url+="/"+this.token;}url+="?users_id="+this.usersId;if(this.postsId!=undefined){url+="&posts_id="+this.postsId;}url+="&skin=json&version=2";url+="&callback=activity.loadItems&page="+pg;$.getScript(url);},initialize:function(){this.getJSON(1);},loadItems:function(items){if(!items.length){$("#"+this.target).append("<div id='EmptyActivity'>&nbsp;</div>");return;}if(items[0].error!=undefined){$("#"+this.target).html(BLIP.Utils.getLoadFailureHTML());return;}for(var i=0;i<items.length;i++){$("#"+this.target).append(this.getActivityItemHtml(items[i]));}}});BLIP.Class.create("BLIP.Controls.Advertising",BLIP.Controls.Control,function(config){var thisContext=this;this.config=config;BLIP.Controls.Control.call(this,{target:config.target,delayInitialization:false,useDocumentWrite:false});
$(document).ready(function(){thisContext.initialize();});},{adsForm:{},config:{},getHtml:function(){var html=this.getOptedHtml();html+="<div class='Clear'></div>";html+="<div id='AdSettings'></div>";return html;},getOptedHtml:function(){var html='<div id="OptedHtml">';if(this.config.preroll||this.config.overlay||this.config.postroll){html+=this.getOptedInHtml();}else{html+=this.getOptedOutHtml();}html+="</div>";return html;},getOptedInHtml:function(){var html='<div id="AdvertisingStatus" class="OptedIn">';html+="<h3>You have turned on advertising!</h3>If you'd like to maximize potential revenue please opt into all three advertising formats. You can opt out of any or all formats at any time.";html+="</div>";if((this.config.preroll&&this.config.customPreroll!="blend")||(this.config.overlay&&this.config.customOverlay!="blend")||(this.config.postroll&&this.config.customPostroll!="blend")){html+='<div id="CustomAds"><h3>It looks like you have custom advertising settings enabled.</h3>Be careful, saving new changes to your settings will overwrite your custom settings.</div>';
}return html;},getOptedOutHtml:function(){var html='<div id="AdvertisingStatus" class="OptedOut">';html+="<h3>Your videos aren't generating revenue.</h3>  Turn on advertising to begin generating revenue.  We share all proceeds 50/50.  To maximize potential revenue opt into all three advertising formats.  You can change which formats you accept or turn advertising off entirely at any time.";html+="</div>";return html;},getPrerollHtml:function(){var html="<div class='AdExplanation'>";html+="Preroll ads run before the start of your video and are generally between 3 and 15 seconds. These ads often perform very well since most of your viewers will see them.";html+="</div>";return html;},getOverlayHtml:function(){var html="<div class='AdExplanation'>";html+='Overlay ads are inserted in the lower third of your video. Some overlays will automatically shrink or hide themselves if the viewer doesn\'t interact with them. Viewers also have the opportunity to close the ad unit by clicking an "X" in the corner.';
html+="</div>";return html;},getPostrollHtml:function(){var html="<div class='AdExplanation'>";html+="Postroll ads start playing when your video finishes. If you're using the Show Player then postroll ads will play in-between episodes of your show.";html+="</div>";return html;},initialize:function(){$("#"+this.target).html(this.getHtml());this.setForm();},setForm:function(){var thisContext=this;this.adsForm=new BLIP.Controls.Form.SettingsForm({callback:BLIP.Delegate.create(thisContext,thisContext.updateAdStatus),target:"AdSettings",formHeading:"<h3 class='Dashboard'>Advertising Settings</h3>",formAction:"/prefs/advertising_manage/?no_wrap=1&no-cache=1&new_dashboard=1",form:{id:"Form",cssClass:"FormBlock",items:[{label:"post",type:"hidden",name:"post",id:"hidden_post",value:"update"},{label:"Advertising",type:"container",id:"Ads",items:[{label:"Preroll"+thisContext.getPrerollHtml(),type:"checkbox",name:"ad_preroll_blend",id:"Preroll",value:"on",checked:thisContext.config.preroll?true:false},{label:"Overlay"+thisContext.getOverlayHtml(),type:"checkbox",name:"ad_overlay_blend",id:"Overlay",value:"on",checked:thisContext.config.overlay?true:false},{label:"Postroll"+thisContext.getPostrollHtml(),type:"checkbox",name:"ad_postroll_blend",id:"Postroll",value:"on",checked:thisContext.config.postroll?true:false}]},{name:"Submit",type:"submit",id:"Submit",value:"Save Settings"}]}});
},updateAdStatus:function(){this.config.customPreroll="blend";this.config.customOverlay="blend";this.config.customPostroll="blend";this.config.preroll=$("#Preroll").attr("checked");this.config.overlay=$("#Overlay").attr("checked");this.config.postroll=$("#Postroll").attr("checked");$("#OptedHtml").html(this.getOptedHtml());}});BLIP.Class.create("BLIP.Controls.CategoryMapDisplay",BLIP.Controls.Control,function(config){var thisContext=this;this.config=config;this.target=config.target;this.servicenames=config.servicenames;this.servicetokens=config.servicetokens;this.defaultservice=config.defaultservice;controlConfig={target:config.target,delayInitialization:false,useDocumentWrite:false};BLIP.Controls.Control.call(this,controlConfig);$(document).ready(function(){thisContext.initialize();});},{config:{},target:"",servicenames:"",servicetokens:"",defaultservice:"youtube",initialize:function(){var displayobj=this;$("#"+this.target).html(this.getHtml());$("#CategoryMapSelector").change(function(){displayobj.changeMap(this.value);
});displayobj.changeMap(this.defaultservice);},changeMap:function(service){var url="/categorymap?source="+service+"&target=blip&no_wrap=1";$("#CategoryMapDisplayList").load(url);},getHtml:function(){var html="<table><tr><th>Categories on "+"<select id='CategoryMapSelector'>";for(var i=0;i<this.servicenames.length;i++){html+="<option value='"+this.servicetokens[i]+"'>"+this.servicenames[i]+"<"+"/option>";}html+="</select></th>"+"<th>Suggested categories on blip.tv</th></tr></table>";html+="<div id='CategoryMapDisplayList'></div>";return html;}});BLIP.Class.create("BLIP.Controls.DestinationRegistration",BLIP.Controls.Control,function(config){var thisContext=this;this.dest=config.dest;BLIP.Controls.Control.call(this,{target:config.target,delayInitialization:false,useDocumentWrite:false});$(document).ready(function(){thisContext.initialize();});},{dest:"",target:"",attempts:0,config:{},form:{},bindSubmitToAjax:function(){$("#FormBlock").attr("action","javascript: void(0);");},displayRegistrationError:function(msg){BLIP.Utils.showError({div:"#Submit",msg:msg});
$("#Submit").val("Retry");$("#Submit").attr("disabled",false);},initialize:function(){this.initializeForm();this.initializeFormAttributes();},initializeForm:function(){var thisContext=this;this.form=new BLIP.Controls.Form.RegistrationForm({target:"Setup",parentForm:thisContext,formAction:"/dashboard/register/"+thisContext.dest+"?skin=json&no-cache=1&callback=registration.response&no_wrap=1",formHeading:"",form:{id:"Form",cssClass:"FormBlock",items:[{label:"Username",name:"login",type:"text",id:"Username"},{label:"Password",name:"password",type:"password",id:"Password"},{label:"",name:"submit",type:"button",value:"Submit",id:"Submit"}]}});},initializeFormAttributes:function(){this.bindSubmitToAjax();},pingStatus:function(response){this.attempts++;if(this.attempts>60){var thisContext=this;$("#ProcessingWrapper").slideUp("slow",function(){thisContext.displayRegistrationError("Sorry. We have encountered a problem registering your account.  Please try again later.");});return;}if(response){switch(response[0].status){case"Complete":case"Completed":location.reload(true);
break;case"Error":var thisContext=this;$("#ProcessingWrapper").slideUp("slow",function(){thisContext.displayRegistrationError(response[0].message);});break;case"Requested":case"Processing":setTimeout(BLIP.Delegate.create(this,this.sendPing),1000);break;}}else{this.sendPing();}},sendPing:function(){$.getScript("/dashboard/register/"+this.dest+"/status?skin=json&no-cache=1&callback=registration.pingStatus");}});BLIP.Class.create("BLIP.Controls.DestinationRegistration.Status",BLIP.Controls.DestinationRegistration,function(config){var thisContext=this;BLIP.Controls.DestinationRegistration.call(this,config);$(document).ready(function(){thisContext.initialize();});},{initialize:function(){$("#"+this.target).slideDown("slow");$("#LinkAccounts input").attr("disabled",true);this.sendPing();},pingStatus:function(response){this.attempts++;if(response){switch(response[0].status){case"Error":$("#"+this.target).slideUp("slow");$("#LinkAccounts input").attr("disabled",false);break;case"Complete":case"Completed":location.reload(true);
break;case"Requested":case"Processing":default:if(this.attempts<10){setTimeout(BLIP.Delegate.create(this,this.sendPing),3000);}break;}}else{this.sendPing();}},sendPing:function(){$.getScript("/dashboard/register/"+this.dest+"/status?skin=json&no-cache=1&callback=destStatus.pingStatus");}});BLIP.Class.create("BLIP.Controls.EmbedCode",Object,function(config){var thisContext=this;this.target=config.target;this.postsId=config.postsId;this.usersId=config.usersId;this.metadataReady=config.metadataReady;this.earlyDisplay=config.earlyDisplay;this.domain=config.domain;$(document).ready(function(){thisContext.initialize();});},{target:"",postsId:null,usersId:null,metadataReady:null,earlyDisplay:null,domain:"",embedCode:"",session:Math.floor(Math.random()*100000),setEmbed:function(){if(this.metadataReady==1&&(this.earlyDisplay||player instanceof PokkariShowPlayer)){var html="<div id='EmbedInstructionWrapper'>\n";html+='<div id="EmbedInstruction"><img src="/skin/mercury/dashboard/images/arrow.down.black.gif">Select a player to embed : <select id=\'ShowPlayers\'></select></div><textarea id=\'ShowPlayerCode\' readonly="readonly"></textarea></div>';
$("#ShowPlayer").html(html);var queryUrl="/players/list/?skin=json&callback=embed.embedsLoaded&reorder=1&users_id="+this.usersId+"&cachekey="+this.session;$.getScript(queryUrl);}else{var html='<div id="EmptyEmbed"></div>';$("#ShowPlayer").html(html);}},embedsLoaded:function(players){var select=document.getElementById("ShowPlayers");select.options.length=1;var self=this;select.onchange=function(){self.getEmbedCode(this.value,self.postsId);};if(players&&players.length>0){for(var i=0;i<players.length;i++){if(players[i].id){select.options[i]=new Option(players[i].name,players[i].id);}if(i+1==players.length){select.options[i+1]=new Option("Standard Player",-1);}}}else{select.options[0]=new Option("Standard Player",-1);}var playerId=select.options[0].value;this.getEmbedCode(playerId,this.postsId);},getEmbedCode:function(playersId,postsId){$.getScript("/players/embed/?posts_id="+this.postsId+"&players_id="+playersId+"&skin=json&callback=embed.gotEmbedCode&cachekey="+this.session);if(player instanceof PokkariShowPlayer){this.setVideo(playersId);
}},gotEmbedCode:function(params){if(params&&params.length&&params[0]&&params[0].code){var code=params[0].code;var textarea=document.getElementById("ShowPlayerCode");textarea.value=code;}},setVideo:function(playersId){var queryUrl="/players/embed/?skin=json&callback=embed.videoLoaded&width=462&players_id="+playersId+"&posts_id="+this.postsId+"&opaque=1";$.getScript(queryUrl);},videoLoaded:function(params){if(params&&params.length&&params[0]&&params[0].code){var code=params[0].code;var extraParams="?autostart=false&file="+this.domain+"/rss/flash/"+this.postsId;code=code.replace(/(embed src=\".*?)\"/,"$1"+extraParams+'"');$("#Video").html(code);}},initialize:function(){this.setEmbed();}});BLIP.Class.create("BLIP.Controls.EpisodeConversions",Object,function(config){var thisContext=this;this.target=config.target;this.postsId=config.postsId;$(document).ready(function(){thisContext.initialize();});},{target:"",postsId:null,progressMeters:[],setConversions:function(){var queryUrl="/posts/conversion_status?skin=json&no-cache=1&nocache=1&ids="+this.postsId+"&callback=EpisodeConversions.loadProgressMeters";
$.getScript(queryUrl);},checkConversions:function(){for(var i in this.progressMeters){if(!this.progressMeters[i]){continue;}if(this.progressMeters[i].lastStatus!="Completed"){return;}}$("#"+this.target).html('<div id="NoConversions">There are no pending conversions.</div>');},loadProgressMeters:function(items){thisContext=this;for(var i=0;i<items.length;i++){if(items[i].conversions&&items[i].conversions.length>0){items[i].conversions.sort(this.sortConversionItems);}for(var j=0;j<items[i].conversions.length;j++){switch(items[i].conversions[j].status){case"Requested":case"Error":case"Timeout":case"Pending":var progressDivTarget=this.target;if(this.progressMeters.length==0){$("#"+progressDivTarget).html("");}$("#"+progressDivTarget).prepend("<div id='ConversionRow"+j+"' class='ConversionRow'>?</div>");this.progressMeters.push(new BLIP.Controls.ProgressMeter.TranscodingProgressMeter({target:progressDivTarget+"  #ConversionRow"+j,id:items[i].id,itemid:items[i].item_id,conversionsId:items[i].conversions[j].conversions_id,parent:"EpisodeConversions.progressMeters["+this.progressMeters.length+"]",hasTime:true,singleEpisode:true}));
}}}},sortConversionItems:function(a,b){if(a.format==b.format){return(b.conversions_id-a.conversions_id);}else{if(b.format.toLowerCase()<a.format.toLowerCase()){return -1;}else{return 1;}}},initialize:function(){this.setConversions();}});BLIP.Class.create("BLIP.Controls.EpisodeDestinationsStatus",BLIP.Controls.Control,function(config){var thisContext=this;this.config=config;this.postsId=config.postsId;this.target=config.target;controlConfig={target:config.target,delayInitialization:false,useDocumentWrite:false};BLIP.Controls.Control.call(this,controlConfig);$(document).ready(function(){thisContext.initialize();});},{config:{},postsId:null,target:"",getCompletedHtml:function(dest){var html='<div class="Dest DestComplete" id="Dest'+dest.type+dest.id+'">';html+='<div class="DestLocation">';html+=BLIP.Utils.truncate(dest.name,15);html+='<span class="DestStatus">';if(dest.crosspostsUrl&&dest.crosspostsUrl!=""){html+='<a href="'+dest.crosspostsUrl+'" target="_BLANK">Completed</a>';}else{html+="Completed";
}html+="</span>";html+="</div>";html+="</div>";return html;},getFailedHtml:function(dest){var html='<div class="Dest DestFail" id="Dest'+dest.type+dest.id+'">';html+='<div class="DestLocation">';html+=dest.name;html+='<span class="DestStatus">Sorry, distribution failed</span>';html+="</div>";html+='<div class="DestLinks">';var message;if(dest.message!=""){message="Error received from destination: "+dest.message;}else{message="An unrecognizable error has occured.  Please contact support@blip.tv";}message+="<br><br>If you think the problem above has been solved and want to try cross-posting your video, press the button below.";message+="<div class='RetryCrossPost'>";message+="<input type='button' value='Retry Crosspost' onClick='"+BLIP.Delegate.createAsString(this,this.retryCrossPost,dest)+"'>";message+="</div>";html+='<a href="javascript:'+BLIP.Delegate.createAsString(BLIP.Utils,BLIP.Utils.showError,{div:"#Dest"+dest.type+dest.id+" .DestLinks",msg:message})+'">Troubleshoot</a>';html+="</div>";
html+="</div>";return html;},getPendingHtml:function(dest){var html='<div class="Dest DestPending" id="Dest'+dest.type+dest.id+'">';html+='<div class="DestLocation">';html+=BLIP.Utils.truncate(dest.name,16);html+='<span class="DestStatus">Pending</span>';html+="</div>";html+='<div class="DestLinks">';var message;if(dest.message!=""){message=dest.message;}else{message="It looks like we're still in the process of distributing your file to "+dest.name+". Hang tight, this could take anywhere from a few seconds to a few minutes.";}html+='<a href="javascript:'+BLIP.Delegate.createAsString(BLIP.Utils,BLIP.Utils.showHelpfulError,{div:"#Dest"+dest.type+dest.id+" .DestLinks",msg:message})+'">Troubleshoot</a>';html+="</div>";html+="</div>";return html;},getRequestedHtml:function(dest){var html='<div class="Dest DestPending" id="Dest'+dest.type+dest.id+'">';html+='<div class="DestLocation">';html+=BLIP.Utils.truncate(dest.name,16);html+='<span class="DestStatus">Requested</span>';html+="</div>";html+='<div class="DestLinks">';
var message;if(dest.message!=""){message=dest.message;}else{message="It looks like we're still in the process of distributing your file to "+dest.name+". Hang tight, this could take anywhere from a few seconds to a few minutes.";}html+='<a href="javascript:'+BLIP.Delegate.createAsString(BLIP.Utils,BLIP.Utils.showHelpfulError,{div:"#Dest"+dest.type+dest.id+" .DestLinks",msg:message})+'">Troubleshoot</a>';html+="</div>";html+="</div>";return html;},getHtml:function(destinations){var failedHtml="";var requestedHtml="";var pendingHtml="";var completedHtml="";for(var i=0;i<destinations.length;i++){switch(destinations[i].status.toLowerCase()){case"requested":requestedHtml+=this.getRequestedHtml(destinations[i]);break;case"processing":case"pending":case"retry":pendingHtml+=this.getPendingHtml(destinations[i]);break;case"completed":case"complete":case"succeeded":completedHtml+=this.getCompletedHtml(destinations[i]);break;case"error":case"fatal":failedHtml+=this.getFailedHtml(destinations[i]);break;
}}return(failedHtml+pendingHtml+requestedHtml+completedHtml);},initialize:function(){$("#"+this.target).append(this.getHtml(this.config.destinations));},retryResponse:function(dest,data){BLIP.Utils.hideError("#Dest"+dest.type+dest.id+" .DestLinks");if(data["error"]!="OK"){BLIP.Utils.showError({div:"#Dest"+dest.type+dest.id+" .DestLinks",msg:data["error"]});return;}for(var i=0;i<this.config.destinations.length;i++){if(this.config.destinations[i].type==dest.type&&this.config.destinations[i].id==dest.id){this.config.destinations[i].status="Requested";this.config.destinations[i].message="";break;}}$("#"+this.target).html(this.getHtml(this.config.destinations));$("#Dest"+dest.type+dest.id).fadeTo(500,0.1,function(){$("#Dest"+dest.type+dest.id).fadeTo(500,1,function(){$("#Dest"+dest.type+dest.id).fadeTo(500,0.1,function(){$("#Dest"+dest.type+dest.id).fadeTo(500,1);});});});},retryCrossPost:function(dest){var thisContext=this;var type=dest.type;var id=dest.id;var errorId=BLIP.Utils.getError("#Dest"+type+id+" .DestLinks").getErrorId();
$("#"+errorId+" input").attr("value","One moment please.");$("#"+errorId+" input").attr("disabled",true);var url="/posts/reset_"+type.toLowerCase()+"/"+id+"?skin=json&no-cache=1&no_wrap=1";if(type=="Ginger"){url+="&posts_id="+this.postsId;}$.ajax({url:url,cache:false,dataType:"json",success:function(data){thisContext.retryResponse(dest,data);}});}});BLIP.Class.create("BLIP.Controls.EpisodeRemove",BLIP.Controls.Control,function(config){var thisContext=this;this.config=config;this.target=config.target;this.cookieDomain=config.cookieDomain;this.returnTo=config.returnTo;controlConfig={target:config.target,delayInitialization:false,useDocumentWrite:false};BLIP.Controls.Control.call(this,controlConfig);$(document).ready(function(){thisContext.initialize();});},{config:{},target:"",cookieDomain:"",returnTo:null,initialize:function(){},removeEpisodes:function(){var thisContext=this;var url=new Url(location.href);var posts=url.getQueryParam("posts");var removeUrl="/posts/batch_delete/"+posts+"?skin=json&no-cache=1&callback=?";
$.getJSON(removeUrl,function(data){BLIP.Utils.updateCacheKiller(thisContext.cookieDomain);if(thisContext.returnTo){thisContext.returnTo();parent.BLIP.Utils.myModal.hide();}else{top.location.reload();}});}});BLIP.Class.create("BLIP.Controls.Error",BLIP.Controls.Control,function(config){var thisContext=this;this.config=config;controlConfig={target:config.target,delayInitialization:true,useDocumentWrite:false};BLIP.Controls.Control.call(this,controlConfig);$(document).ready(function(){thisContext.initialize();});},{config:{},randNum:0,createError:function(){var parentElement=$("body");$(parentElement).append(this.getHtml(this.config));},destroy:function(){$("#Error"+this.randNum).fadeOut(150,function(){$("#Error"+this.randNum).remove();});},getTargetProperties:function(){var targetObj=$(this.config.target);var offset=targetObj.offset();return{x:offset.left,y:offset.top,width:targetObj.width(),height:targetObj.height()};},getErrorId:function(){return"Error"+this.randNum;},getHtml:function(errObj){if(this.config.small){var targetHtml='<div class="ErrorBox ErrorBoxSmall" id="Error'+this.randNum+'">';
targetHtml+='<div class="ErrorBoxTitle"><a onClick="javascript:'+BLIP.Delegate.createAsString(this,this.hide,this.randNum)+'"><img src="/skin/mercury/dashboard/images/form.error.close.gif" class="ErrorHide"></a></div>';}else{var targetHtml='<div class="ErrorBox" id="Error'+this.randNum+'">';targetHtml+='<div class="ErrorBoxTitle"><a onClick="javascript:'+BLIP.Delegate.createAsString(this,this.hide,this.randNum)+'"><img src="/skin/mercury/dashboard/images/form.error.close.gif" class="ErrorHide"></a></div>';}targetHtml+='<div class="ErrorBoxContents">';targetHtml+=errObj.message;targetHtml+="</div>";targetHtml+='<div class="ErrorBoxNub"></div>';targetHtml+="</div>";return targetHtml;},hide:function(){$("#Error"+this.randNum).fadeOut(150);},initialize:function(){this.randNum=Math.floor(Math.random()*1000000000);},resetErrorOnResize:function(){this.setErrorPosition();},resetNub:function(destProperties_x,targetProperties){var targetX=targetProperties.x;var offsetX=targetX-destProperties_x-5;
$("#Error"+this.randNum+" .ErrorBoxNub").css("background-position",offsetX+" 0");},resize:function(){this.resetErrorOnResize();},setErrorPosition:function(){var targetObj=$(this.config.target);var targetProperties=this.getTargetProperties();var errorObj=$("#Error"+this.randNum);var destProperties={};destProperties.x=(targetProperties.x+(targetProperties.width/2))-(errorObj.width()/2);destProperties.y=(targetProperties.y-errorObj.height())-5;if(destProperties.x<0){destProperties.x=10;this.resetNub(destProperties.x,targetProperties);}else{if((parseInt(destProperties.x)+parseInt(errorObj.width())+10)>$(window).width()){destProperties.x=$(window).width()-errorObj.width()-11;this.resetNub(destProperties.x,targetProperties);}}errorObj.css("left",destProperties.x);errorObj.css("top",destProperties.y);},scrollToError:function(){var errorObj=$("#Error"+this.randNum);$("html, body").animate({scrollTop:errorObj.css("top")},"fast");},show:function(){this.createError();this.setErrorPosition();$("#Error"+this.randNum).fadeIn("fast");
}});BLIP.Class.create("BLIP.Controls.Help",BLIP.Controls.Error,function(config){BLIP.Controls.Error.call(this,config);},{getHtml:function(errObj){var targetHtml='<div class="HelpfulErrorBox" id="Error'+this.randNum+'">';targetHtml+='<div class="HelpfulErrorBoxTitle"><a onClick="javascript:'+BLIP.Delegate.createAsString(this,this.hide,this.randNum)+'"><img src="/skin/mercury/dashboard/images/form.error.helpful.close.gif" class="ErrorHide"></a></div>';targetHtml+='<div class="HelpfulErrorBoxContents">';targetHtml+=errObj.message;targetHtml+="</div>";targetHtml+='<div class="HelpfulErrorBoxNub"></div>';targetHtml+="</div>";return targetHtml;},resetNub:function(destProperties_x,targetProperties){var targetX=targetProperties.x;var offsetX=targetX-destProperties_x-5;$("#Error"+this.randNum+" .HelpfulErrorBoxNub a").css("background-position",offsetX+" 0");}});BLIP.Class.create("BLIP.Controls.Form",BLIP.Controls.Control,function(config){var thisContext=this;this.target=config.target;this.form=config.form;
this.formAction=config.formAction;this.formHeading=config.formHeading;this.isPro=config.isPro;this.formManager=config.formManager||undefined;controlConfig={target:config.target,delayInitialization:false,useDocumentWrite:false};BLIP.Controls.Control.call(this,controlConfig);$(document).ready(function(){thisContext.initialize();});},{form:{},formAction:"",formHeading:"",formManager:{},isPro:false,target:"",createSubmitIframe:function(){$("#"+this.target).after(this.getSubmitIframeHtml());},formSubmit:function(){$("#FormBlock").submit();if(this.formManager){this.formManager.finish();}},getFormInputHtml:function(item,isSubBlock){var inputHtml="";var subBlockHtml="";var thisContext=this;switch(item.type){case"select":inputHtml=this.getFormInputSelectHtml(item,{isSubBlock:isSubBlock});break;case"textarea":inputHtml=this.getFormInputTextareaHtml(item,{isSubBlock:isSubBlock});break;case"container":inputHtml=this.getFormInputContainerHtml(item);break;case"checkbox":case"radio":inputHtml=this.getFormInputCheckboxHtml(item,{isSubBlock:isSubBlock});
break;case"button":case"submit":inputHtml=this.getFormInputGenericHtml(item,{onClick:BLIP.Delegate.createAsString(thisContext,thisContext.formSubmit)});break;case"other":inputHtml=this.getOtherInputHtml(item);break;case"heading":inputHtml=this.getHeadingInputHtml(item);break;default:inputHtml+=this.getFormInputGenericHtml(item,{disabled:item.disabled,isSubBlock:isSubBlock});}if(item.items!=undefined&&item.type!="container"){subBlockHtml+=this.getFormSubBlock(item.items,item.id+"_sub");}else{if(item.options!=undefined){for(var option in item.options){if(item.options[option].items!=undefined){subBlockHtml+=this.getFormSubBlock(item.options[option].items,item.options[option].id+"_sub");}}}}return({inputHtml:inputHtml,subBlockHtml:subBlockHtml});},getFormInputHelp:function(item){if(item.help){var html;if(item.help.src){if(item.help.ajax){html="<a onclick='"+BLIP.Delegate.createAsString(this,this.toggleAjaxSubBlock,{item:item,src:item.help.src})+"' >"+item.help.caption+"<"+"/a>";}else{html="<a href='"+item.help.src+"'>"+item.help.caption+"<"+"/a>";
}}else{html="<a onclick='"+'BLIP.Utils.showHelpfulError({div:"#'+item.id+'",'+'msg:"'+item.help.message+'"})'+"; return false;' title='"+item.help.message+"'>"+item.help.caption+"</a>";}return BLIP.Utils.wrapHtmlTag({tag:"div",contents:html,elementClass:"FormInputHelp"});}else{return"";}},getFormInputCheckboxHtml:function(item){var inputHtml="";var html="";var thisContext=this;var additionalClass=item.cssClass?" "+item.cssClass:"";var label=BLIP.Utils.wrapHtmlTag({tag:"label",contents:item.label,forHtml:item.id});inputHtml+=this.getFormInputGenericHtml(item,{onClick:BLIP.Delegate.createAsString(thisContext,thisContext.handleRadioSelect,item),checked:item.checked,disabled:item.disabled})+" "+label;html=BLIP.Utils.wrapHtmlTag({tag:"div",contents:inputHtml,elementClass:"RadioInput"+additionalClass});return html;},getFormInputContainerHtml:function(item){var html="";var subBlockHtml="";for(var i=0;i<item.items.length;i++){var formObject=this.getFormInputHtml(item.items[i],false);html+=formObject.inputHtml;
subBlockHtml+=formObject.subBlockHtml;}html+=this.getFormInputHelp(item);html+=subBlockHtml;return BLIP.Utils.wrapHtmlTag({tag:"div",contents:html,elementClass:"FormInput",elementId:item.id});},getFormInputGenericHtml:function(item,params){var inputId=item.id?' id="'+item.id+'"':"";var inputValue=item.value?' value="'+item.value+'"':"";var inputClass=item.cssClass?' class="'+item.cssClass+'"':"";var inputName=item.name?' name="'+item.name+'"':"";var maxlengthHtml=item.maxlength?' maxlength="'+item.maxlength+'"':"";var onClickHtml="";var checkedHtml="";var disabledHtml="";var inputHtml="";if(params){onClickHtml=params.onClick?' onClick="'+params.onClick+'"':"";checkedHtml=params.checked==true?' checked="checked"':"";disabledHtml=params.disabled==true?' disabled="disabled"':"";if(params.isSubBlock){inputHtml+=this.getSubFormInputLabel(item);}}inputHtml+='<input type="'+item.type+'"'+inputId+inputClass+inputValue+inputName+maxlengthHtml+onClickHtml+checkedHtml+disabledHtml+">";if(item.prefix){inputHtml=item.prefix+" "+inputHtml;
}if(item.suffix){inputHtml+=" "+item.suffix;}inputHtml+=this.getFormInputHelp(item);if(!(item.type=="radio"||item.type=="checkbox"||item.type=="hidden")){return BLIP.Utils.wrapHtmlTag({tag:"div",contents:inputHtml,elementClass:"FormInput"});}else{return inputHtml;}},getFormInputSelectHtml:function(item,params){var selectHtml="";var optionsHtml="";var thisContext=this;for(var i=0;i<item.options.length;i++){optionsHtml+=BLIP.Utils.wrapHtmlTag({tag:"option",contents:item.options[i].name,elementValue:item.options[i].value,elementSelected:item.options[i].selected||undefined});}if(params.isSubBlock){selectHtml+=this.getSubFormInputLabel(item);}selectHtml+=BLIP.Utils.wrapHtmlTag({tag:"select",onChange:BLIP.Delegate.createAsString(thisContext,thisContext.handleRadioSelect,item),contents:optionsHtml,elementId:item.id||undefined,elementName:item.name});if(item.prefix){selectHtml=item.prefix+" "+selectHtml;}if(item.suffix){selectHtml+=" "+item.suffix;}selectHtml+=this.getFormInputHelp(item);return BLIP.Utils.wrapHtmlTag({tag:"div",contents:selectHtml,elementClass:"FormInput"});
},getFormInputTextareaHtml:function(item){var html=BLIP.Utils.wrapHtmlTag({tag:"textarea",contents:item.contents||item.value||"",elementName:item.name||undefined,elementClass:item.cssClass||undefined,elementId:item.id||undefined,disabled:item.disabled||undefined});return BLIP.Utils.wrapHtmlTag({tag:"div",contents:html,elementClass:"FormInput"});},getFormItemHtml:function(item){var html="";var labelHtml="";var extraSubmitCSS="";if(item.type=="hidden"){return this.getFormInputGenericHtml(item);}else{if(item.type=="submit"||item.type=="button"){extraSubmitCSS=" SubmitBlock";}else{if(item.type=="heading"){extraSubmitCSS=" FormHeading";}else{labelHtml=this.getFormLabelHtml(item);}}if(item.proFeature){extraSubmitCSS+=" ProFeature";if(!this.isPro){extraSubmitCSS+=" NotPro";}}var formObject=this.getFormInputHtml(item,false);html+=labelHtml+formObject.inputHtml;html+="<div class='Clear'></div>";var itemName=item.type=="container"?item.items[0].name:item.name;return BLIP.Utils.wrapHtmlTag({tag:"div",contents:html,elementClass:"FormInputWrapperBlock"+extraSubmitCSS,elementId:this.form.id+"_Block_"+itemName});
}},getFormLabelHtml:function(item){var extraCssClass="";if(item.disabled==true){extraCssClass=" DisabledLabel";}var label=BLIP.Utils.wrapHtmlTag({tag:"label",contents:item.label,forHtml:item.id});return BLIP.Utils.wrapHtmlTag({tag:"div",contents:label,elementClass:"FormInputLabel"+extraCssClass});},getFormSubBlock:function(item,name){var thisObj=this;var html="";for(var i=0;i<item.length;i++){var formObject=this.getFormInputHtml(item[i],true);html+=formObject.inputHtml;}var formSubBlockContents=BLIP.Utils.wrapHtmlTag({tag:"div",contents:html,elementClass:"FormSubBlockContents"});var formSubBlock=BLIP.Utils.wrapHtmlTag({tag:"div",contents:'<img src="/skin/mercury/dashboard/images/form.sub.nub.gif" class="FormSubNub">'+formSubBlockContents,elementId:name,elementClass:"FormSubBlock"});return formSubBlock;},getHtml:function(items){var html="";var formBlock="";for(var i=0;i<items.length;i++){if(this.isPro==false&&items[i].proFeature==true){this.setItemsDisabled(items[i]);}html+=this.getFormItemHtml(items[i]);
html+="<div class='Clear'></div>";}formBlock=BLIP.Utils.wrapHtmlTag({tag:"div",contents:html,elementClass:"FormBlock"});html=this.formHeading+BLIP.Utils.wrapHtmlTag({tag:"form",contents:html,elementId:"FormBlock",elementClass:"FormBlock"});return html;},getOtherInputHtml:function(item){return"";},getHeadingInputHtml:function(item){return"";},getSubFormInputLabel:function(item){if(item.label!=undefined&&item.label!=""){var extraCssClass="";if(item.disabled==true){extraCssClass=" DisabledLabel";}return BLIP.Utils.wrapHtmlTag({tag:"label",contents:item.label+": ",elementId:"LabelFor"+item.id,elementClass:"SubFormLabel"+extraCssClass,forHtml:item.id});}else{return"";}},getSubmitIframeHtml:function(){var html='<iframe class="UploadFrame" id="UploadFrameSubmit" name="UploadFrameSubmit">';html+="</iframe>";return html;},handleRadioSelect:function(item){if(item.type=="radio"||item.type=="select"){$("#"+item.id).parent().siblings(".FormSubBlock").css("display","none");if(item.items!=undefined&&item.type!="container"){this.uncheckAll(item.id+"_sub");
$("#"+item.id+"_sub").css("display","block");}else{if(item.options!=undefined){var selectedIndex=$("#"+item.id+" option").index($("#"+item.id+" option:selected"));$("#"+item.options[selectedIndex].id+"_sub").css("display","block");}else{if(item.ajax!=undefined){this.toggleAjaxSubBlock({item:item,src:items.ajax.src});}}}}else{if(item.type=="checkbox"){if($("#"+item.id).attr("checked")){this.uncheckAll(item.id+"_sub");$("#"+item.id+"_sub").css("display","block");}else{$("#"+item.id+"_sub").css("display","none");}}}},initialize:function(){$("#"+this.target).html(this.getHtml(this.form.items));this.initializeFormAttributes();},initializeFormAttributes:function(){this.createSubmitIframe();$("#FormBlock").attr("target","UploadFrameSubmit");$("#FormBlock").attr("action",this.formAction);$("#FormBlock").attr("method","post");$("#FormBlock").attr("enctype","multipart/form-data");$("#FormBlock").attr("encoding","multipart/form-data");},itemHasSubBlock:function(items){if(items.items!=undefined||items.ajax!=undefined){return true;
}else{if(items.options!=undefined){for(var item in items.options){if(items.options[item].items!=undefined){return true;}else{if(items.options[item].ajax!=undefined){return items.options[item].ajax.src;}}}}}return false;},setItemsDisabled:function(item){if(item.type!="container"){item.disabled=true;return;}else{for(var i=0;i<item.items.length;i++){item.items[i].disabled=true;}return;}},toggleAjaxSubBlock:function(properties){var item=properties.item;var src=properties.src;if($("#"+item.id+"_ajax").length==0){$("#Form_Block_"+item.name).append(this.getFormSubBlock(0,item.id+"_ajax"));$("#"+item.id+"_ajax .FormSubBlockContents").load(src,function(){$("#"+item.id+"_ajax").show();});}else{$("#"+item.id+"_ajax").remove();}},uncheckAll:function(target){$("#"+target+" input:checked").attr("checked",false);$("#"+target+" input:selected").attr("selected",false);},wrapHtmlTag:function(params){var idHtml=params.elementId?' id="'+params.elementId+'"':"";var classHtml=params.elementClass?' class="'+params.elementClass+'"':"";
var inputNameHtml=params.elementName?' name="'+params.elementName+'"':"";var inputValueHtml=params.elementValue?' value="'+params.elementValue+'"':"";var onClickHtml=params.onClick?' onClick="'+params.onClick+'"':"";var onChangeHtml=params.onChange?' onChange="'+params.onChange+'"':"";var selectedHtml=params.elementSelected?" selected":"";var attributesHtml=idHtml+classHtml+inputNameHtml+inputValueHtml+onClickHtml+onChangeHtml+selectedHtml;var html="<"+params.tag+attributesHtml+">";html+=params.contents;html+="</"+params.tag+">";return html;}});BLIP.Class.create("BLIP.Controls.Form.AdvancedPlayerForm",BLIP.Controls.Form,function(config){this.callback=config.callback;this.playerPreview=config.playerPreview;BLIP.Controls.Form.call(this,config);},{callback:null,addAction:function(){var name=$("#AddLabel").val();var value=$("#AddInput").val();$("#AddLabel").val("");$("#AddInput").val("");if(name&&value){this.setProperty(name,value);this.playerPreview.update(this.getAllPreviewParams());this.callback("add",name,value);
}},appendItem:function(item){$("#"+this.target).append(this.getFormItemHtml(item));},getFormInputGenericHtml:function(item,params){var inputId=item.id?' id="'+item.id+'"':"";var inputValue=item.value?' value="'+item.value+'"':"";var inputClass=item.cssClass?' class="'+item.cssClass+'"':"";var inputName=item.name?' name="'+item.name+'"':"";var maxlengthHtml=item.maxlength?' maxlength="'+item.maxlength+'"':"";var onClickHtml="";var checkedHtml="";var disabledHtml="";var inputHtml="";if(params){onClickHtml=params.onClick?' onClick="'+params.onClick+'"':"";checkedHtml=params.checked==true?' checked="checked"':"";disabledHtml=params.disabled==true?' disabled="disabled"':"";if(params.isSubBlock){inputHtml+=this.getSubFormInputLabel(item);}}inputHtml+='<input type="'+item.type+'"'+inputId+inputClass+inputValue+inputName+maxlengthHtml+onClickHtml+checkedHtml+disabledHtml+' onChange="'+BLIP.Delegate.createAsString(this,this.updateItemCallback,item.name)+'">';inputHtml+='<input type="button" onClick="'+BLIP.Delegate.createAsString(this,this.removeAction,item.name)+'" value="-" class="toggleButton">';
if(item.prefix){inputHtml=item.prefix+" "+inputHtml;}if(item.suffix){inputHtml+=" "+item.suffix;}if(!(item.type=="radio"||item.type=="checkbox"||item.type=="hidden")){return BLIP.Utils.wrapHtmlTag({tag:"div",contents:inputHtml,elementClass:"FormInput"});}else{return inputHtml;}},getHtml:function(items){var html="";var formBlock="";for(var i=0;i<items.length;i++){if(this.isPro==false&&items[i].proFeature==true){this.setItemsDisabled(items[i]);}html+=this.getFormItemHtml(items[i]);}formBlock=BLIP.Utils.wrapHtmlTag({tag:"div",contents:html,elementClass:"AdvancedFormBlock"});html=this.formHeading+BLIP.Utils.wrapHtmlTag({tag:"form",contents:html,elementId:"AdvancedFormBlock",elementClass:"AdvancedFormBlock"});return html;},getInsertionHtml:function(){var html="";html+='<div id="Block_AddItem" class="FormInputWrapperBlock">';html+='<div class="FormInputLabel">';html+='<input type="text" id="AddLabel">';html+="</div>";html+='<div class="FormInput">';html+='<input id="AddInput" type="text" name="addinput"/>';
html+='<input class="toggleButton" type="button" value="+" onclick="'+BLIP.Delegate.createAsString(this,this.addAction)+'"/>';html+="</div>";html+='<div class="Clear"></div>';html+="</div>";return html;},getAllParams:function(){var params="?";for(var item in this.form.items){params+=this.form.items[item].name+"="+escape(this.form.items[item].value);params+="&";}return params.substring(0,params.length-1);},getAllPreviewParams:function(){var params="?";for(var item in this.form.items){if(this.form.items[item].name=="file"||this.form.items[item].name=="autostart"){continue;}params+=this.form.items[item].name+"="+escape(this.form.items[item].value);params+="&";}params+="file="+escape("http://${safeusername}.${site_domain}/rss/flash");params+="&noAds=true";return params;},initialize:function(){$("#"+this.target).html(this.getHtml(this.form.items));$("#"+this.target).after(this.getInsertionHtml());this.playerPreview.update(this.getAllPreviewParams());},insertItem:function(name,value){var item={name:name,label:name,type:"text",id:"Advanced_"+name,value:value};
this.form.items.push(item);return item;},isItemPresent:function(name){for(var item in this.form.items){if(this.form.items[item].name==name){return true;}}return false;},removeAction:function(name){this.update("remove",name);},removeItem:function(name){for(var item in this.form.items){if(this.form.items[item].name==name){delete this.form.items[item];}}},removeProperty:function(name,ignoreCallback){this.removeItem(name);if($.browser.msie){$("#AdvancedForm_Block_"+name).remove();}else{$("#AdvancedForm_Block_"+name).slideUp(500,function(){$("#AdvancedForm_Block_"+name).remove();});}if(ignoreCallback!=true){this.callback("remove",name);}},setProperty:function(name,value){if(this.isItemPresent(name)){this.updateItem(name,value);$("#AdvancedForm_Block_"+name+" input[name="+name+"]").val(value);}else{var item=this.insertItem(name,value);this.appendItem(item);if(!$.browser.msie){$("#AdvancedForm_Block_"+name).css("display","none");$("#AdvancedForm_Block_"+name).slideDown();}}},setUpdatedProperty:function(name){var value=$("input[name="+name+"]").val();
this.updateItem(name,value);this.callback("add",name,value);},update:function(action,name,value,fromEditor){switch(action){case"add":this.setProperty(name,value);break;case"remove":this.removeProperty(name,fromEditor);break;}this.playerPreview.update(this.getAllPreviewParams());},updateItem:function(name,value){for(var item in this.form.items){if(this.form.items[item].name==name){this.form.items[item].value=value;}}},updateItemCallback:function(name){var value=$("#AdvancedForm_Block_"+name+" input[name="+name+"]").val(value);this.updateItem(name,value);this.playerPreview.update(this.getAllPreviewParams());this.callback("add",name,value);}});BLIP.Class.create("BLIP.Controls.Form.EpisodeInfo",BLIP.Controls.Form,function(config){this.config=config;BLIP.Controls.Form.call(this,config);},{getOtherInputHtml:function(item){if(item.fileLink){return this.wrapHtmlTag({tag:"div",contents:"<a href='"+item.value+"'>"+item.value+"</a>",elementClass:"FormInput",elementId:item.id});}else{return this.wrapHtmlTag({tag:"div",contents:item.value,elementClass:"FormInput",elementId:item.id});
}},initialize:function(){$("#"+this.target).html(this.getHtml(this.form.items));}});BLIP.Class.create("BLIP.Controls.MixedModeCheckboxes",BLIP.Controls.Control,function(){var thisContext=this;$(document).ready(function(){thisContext.initialize();});},{values:[],addOpacity:function(input,i){var thisContext=this;$(input).before("<img src='/skin/mercury/dashboard/images/form.mixed.png' class='MixedModeOpacity' id='MixedMode"+i+"'>");$(input).attr("disabled","disabled");var thisId=$(input).attr("id");$("#MixedMode"+i).css("margin-top","-2px");$("#MixedMode"+i).css("margin-left","-2px");$("label[for='"+thisId+"']").addClass("MixedModeLabel");$("#MixedMode"+i).click(function(){$(this).remove();$(input).attr("value",thisContext.values[i]);$(input).attr("disabled","");$("label[for='"+thisId+"']").removeClass("MixedModeLabel");});},convertCheckboxes:function(){var thisContext=this;$("input.MixedMode").each(function(i){thisContext.values[i]=$(this).val();$(this).attr("value","dc");thisContext.addOpacity(this,i);
});},initialize:function(){this.convertCheckboxes();}});BLIP.Class.create("BLIP.Controls.Form.PlayerForm",BLIP.Controls.Form,function(config){this.parentForm=config.parentForm;this.extraInfo=config.extraInfo;this.roles=config.roles;BLIP.Controls.Form.call(this,config);},{advancedSettings:{},extraInfo:{},formItemsMap:{},parentForm:null,roles:{},urlObj:null,defaultGuideTypes:{},defaultGuideTitles:{},adjustGuideTitleFields:function(){for(var i=1;i<=3;i++){$("#GuideTabs"+i).append($("#GuideTitle"+i).parent().remove());}},advancedActionHandler:function(){var thisContext=this;var params=this.advancedSettings.getAllParams();var url="${site_url_unescaped}/scripts/flash/showplayer.swf"+params;this.urlObj=new Url(url);this.refreshUrlFields();},bindOnChangeEvents:function(items){var thisContext=this;for(var i in items){if(items[i].type=="heading"||items[i].type=="submit"||items[i].type=="hidden"){continue;}var notUrlParam=items[i].notUrlParam;if(notUrlParam){continue;}var id=items[i].id;var name=items[i].name;
$("#PlayersLeft #"+id).bind("change",function(e,skipMe){if(skipMe!=1){thisContext.urlFieldChanged($(this).attr("id"));}});}},bindSubmitToAjax:function(){var thisContext=this;$("#FormBlock").attr("action","javascript: void(0);");$("#FormBlock").attr("method","post");$("#Submit").click(function(){$("#Feedback").fadeOut("slow");thisContext.postForm(thisContext);return false;});},createFeedbackDiv:function(){var feedbackDiv=document.createElement("div");feedbackDiv.setAttribute("id","Feedback");$("#FormBlock").prepend(feedbackDiv);},displayIncomplete:function(){var thisContext=this;$("#ProcessingWrapper").slideUp("slow",function(){thisContext.parentForm.displayError("Please fill out all of the fields.");});$("#Submit").val("Retry");$("#Submit").attr("disabled",false);},displaySuccess:function(playersId){$("#PlayersLeft #PlayersId").val(playersId);$("#Feedback").html("<p><b>Good news!</b></p>Your changes have been saved. Your new player will now appear on the <a href='/dashboard/players'>Manage players</a> page.").addClass("FeedbackSuccess").removeClass("FeedbackFailure").slideDown("slow");
$("#Submit").attr("disabled",false);window.setTimeout(function(){$("#Feedback").fadeOut("slow");},20000);},displayFailure:function(message){$("#Feedback").html("<p><b>There was an error!</b></p>"+message).addClass("FeedbackFailure").removeClass("FeedbackSuccess").slideDown("slow");$("#Submit").attr("disabled",false);},getHeadingInputHtml:function(item){return item.value;},getOtherInputHtml:function(item){return"<div class='FormInput'>"+item.value+"</div>";},hasTitle:function(){var epTitle=$("#PlayerName").val();if(epTitle.length>0){return true;}else{this.showFormError("#PlayerName","You must provide a player name.");return false;}},initialize:function(){this.formItemsMap=this.makeFormItemsMap(this.form.items);this.initializeUrlObj();this.initializeUrlDefaults();$("#"+this.target).html(this.getHtml(this.form.items));this.initializeGuides();this.refreshUrlFields();this.initializeFormAttributes();this.initializePlayerPreview();this.initializeAdvanced();this.initializeColorPicker();},initializeAdvanced:function(){var thisContext=this;
var items=new Array();for(var name in this.urlObj.query){var value=this.urlObj.getQueryParam(name);items.push({label:name,name:name,value:value,type:"text",id:"Advanced_"+name});}var callback=BLIP.Delegate.create(this,this.advancedActionHandler);this.advancedSettings=new BLIP.Controls.Form.AdvancedPlayerForm({target:"AdvancedSettingsForm",callback:callback,formHeading:"<h3 class='Dashboard'>Advanced settings</h3><div class='TipInline'>You might want to leave this part alone unless you know what you're doing. If you really want to know, the controls below can be used to add and remove individual player parameters. These parameters are the same ones you may have seen on our <a href='http://wiki.blip.tv/index.php/Showplayer'>wiki</a>.</div>",formAction:"",form:{id:"AdvancedForm",cssClass:"AdvancedFormBlock",items:items},playerPreview:thisContext.playerPreview});},initializeColorPicker:function(){var thisContext=this;$("#HighlightColor, #BackgroundColor, #ForegroundColor").ColorPicker({onSubmit:function(hsb,hex,rgb,el){$(el).val(hex);
thisContext.updateUrlColorFields($(el).attr("id"));$(el).trigger("change");$(el).ColorPickerHide();},onBeforeShow:function(){$(this).ColorPickerSetColor(this.value);}}).bind("keyup",function(){$(this).ColorPickerSetColor(this.value);});},initializeFormAttributes:function(){this.createFeedbackDiv();this.bindOnChangeEvents(this.formItemsMap);this.bindSubmitToAjax();},initializeGuides:function(){this.adjustGuideTitleFields();this.defaultGuideTypes={1:"details",2:"guide",3:"guide"};this.defaultGuideTitles={"None":"","Now Playing":"About","Latest Episodes":"Episodes","Chronological Episodes":"Episodes","Popular Episodes":"Popular","Playlist":"Recommended","Custom":""};this.defaultGuideTitles["Hot Episodes on "+this.extraInfo["siteName"]]="Hot Episodes";},initializePlayerPreview:function(){var thisContext=this;this.playerPreview=new BLIP.Controls.PlayerPreview({target:"PreviewPlayer",extraInfo:thisContext.extraInfo});},initializeUrlObj:function(){this.urlObj=new Url(this.formItemsMap["url"].value);
delete this.urlObj.query["keywords"];},initializeUrlDefaults:function(){this.formItemsMap["BrandName"].defaultValue="";this.formItemsMap["BrandLink"].defaultValue="";this.formItemsMap["HighlightColor"].defaultValue="000000";this.formItemsMap["BackgroundColor"].defaultValue="FFFFFF";this.formItemsMap["ForegroundColor"].defaultValue="666666";this.formItemsMap["SidebarChk"].defaultValue=false;this.formItemsMap["GuideChk"].defaultValue=true;this.formItemsMap["ShareChk"].defaultValue=true;this.formItemsMap["FullscreenChk"].defaultValue=true;this.formItemsMap["EndcapSimple"].defaultValue=false;this.formItemsMap["EndcapFull"].defaultValue=true;this.formItemsMap["Guide1"].defaultValue="Now Playing";this.formItemsMap["Guide2"].defaultValue="Latest Episodes";this.formItemsMap["Guide3"].defaultValue="Hot Episodes on "+this.extraInfo["siteName"];this.formItemsMap["PreferredRoleSelect"].defaultValue="Any";this.formItemsMap["AutoStartChk"].defaultValue=false;this.formItemsMap["H264Chk"].defaultValue=false;
this.formItemsMap["CCaptions"].defaultValue=false;this.formItemsMap["SmokeDuration"].defaultValue=8;},getUrlValue:function(key,defaultValue,isBoolean){var value=this.urlObj.getQueryParam(key);if(value==undefined){return defaultValue;}if(isBoolean){if(value=="true"){return true;}else{return false;}}return value;},makeFormItemsMap:function(items){var itemsMap={};for(var i=0;i<items.length;i++){if(!items[i].items&&!items[i].options){if(items[i].id==undefined){continue;}itemsMap[items[i].id]=items[i];}else{if(items[i].items){$.extend(itemsMap,this.makeFormItemsMap(items[i].items));}else{itemsMap[items[i].id]=items[i];$.extend(itemsMap,this.makeFormItemsMap(items[i].options));}}}return itemsMap;},postForm:function(thisContext){if(!this.validate()){return;}$("#Submit").attr("disabled","disabled");var results=thisContext.collectFormData();var urlParams=this.advancedSettings.getAllParams();var url="${site_url_unescaped}/scripts/flash/showplayer.swf"+urlParams;url=url.replace(/%24%7B(\w+)%7D/g,"${$1}");
results["url"]=url;$.post(thisContext.formAction,results,function(data){$("html, body").animate({scrollTop:0},"fast");thisContext.response(data);},"json");},collectFormData:function(){var results=new Object();for(var i in this.formItemsMap){if(this.formItemsMap[i]["notUrlParam"]!=true){continue;}var name=this.formItemsMap[i].name;var id=this.formItemsMap[i].id;if(this.formItemsMap[i]["type"]=="checkbox"){var value;if(!$("#PlayersLeft #"+id).attr("checked")){value=0;}else{value=$("#PlayersLeft #"+id).val();}results[name]=value;continue;}results[name]=$("#"+id).val();}return results;},refreshUrlFields:function(){$("#PlayersLeft #"+this.formItemsMap["BrandName"].id).val(this.getUrlValue("brandname",""));$("#PlayersLeft #"+this.formItemsMap["BrandLink"].id).val(this.getUrlValue("brandlink",""));$("#PlayersLeft #"+this.formItemsMap["SidebarChk"].id).attr("checked",this.getUrlValue("showplaylist",false,true)?"checked":"");$("#PlayersLeft #"+this.formItemsMap["GuideChk"].id).attr("checked",this.getUrlValue("showguidebutton",true,true)?"checked":"");
$("#PlayersLeft #"+this.formItemsMap["ShareChk"].id).attr("checked",this.getUrlValue("showsharebutton",true,true)?"checked":"");$("#PlayersLeft #"+this.formItemsMap["FullscreenChk"].id).attr("checked",this.getUrlValue("showfsbutton",true,true)?"checked":"");var useOldEndcap=this.getUrlValue("useoldendcap",false,true);if(useOldEndcap){$("#PlayersLeft #"+this.formItemsMap["EndcapSimple"].id).attr("checked","checked");}else{$("#PlayersLeft #"+this.formItemsMap["EndcapFull"].id).attr("checked","checked");}this.refreshUrlColorFields();var preferredRole=this.getUrlValue("preferredRole","Any",false);if(this.roles[preferredRole]!=1){preferredRole="Any";}$("#PlayersLeft #PreferredRoleSelect").val(preferredRole);$("#PlayersLeft #"+this.formItemsMap["AutoStartChk"].id).attr("checked",this.getUrlValue("autostart",false,true)?"checked":"");$("#PlayersLeft #"+this.formItemsMap["H264Chk"].id).attr("checked",this.getUrlValue("allowm4v",false,true)?"checked":"");$("#PlayersLeft #"+this.formItemsMap["CCaptions"].id).attr("checked",this.getUrlValue("usecaptions",false,true)?"checked":"");
$("#PlayersLeft #"+this.formItemsMap["SmokeDuration"].id).val(this.getUrlValue("smokeduration",8));this.refreshUrlGuideFields();},refreshUrlColorFields:function(){var thisContext=this;var lightColor=this.getUrlValue("lightcolor",this.formItemsMap["HighlightColor"].defaultValue).replace(/^(?:0x)|#/,"");$("#PlayersLeft #"+this.formItemsMap["HighlightColor"].id).val(lightColor);var backColor=this.getUrlValue("backcolor",this.formItemsMap["BackgroundColor"].defaultValue).replace(/^(?:0x)|#/,"");$("#PlayersLeft #"+this.formItemsMap["BackgroundColor"].id).val(backColor);var frontColor=this.getUrlValue("frontcolor",this.formItemsMap["ForegroundColor"].defaultValue).replace(/^(?:0x)|#/,"");$("#PlayersLeft #"+this.formItemsMap["ForegroundColor"].id).val(frontColor);if($("#ColorSchemeSelect [value='"+lightColor+","+backColor+","+frontColor+"']").length>0){$("#ColorSchemeSelect").val(lightColor+","+backColor+","+frontColor).length;$("#ColorCodes").hide();}else{$("#ColorSchemeSelect").val("custom");
$("#ColorCodes").show();}},refreshUrlGuideFields:function(){for(var i=1;i<=3;i++){var tabType=this.getUrlValue("tabType"+i,this.defaultGuideTypes[i],false);var tabUrl=this.getUrlValue("tabUrl"+i,"",false);var optionName;if(tabType=="none"){$("#Guide"+i+" option:contains('None')").attr("selected",true);$("#GuideTitle"+i).val(this.getUrlValue("tabTitle"+i,this.defaultGuideTitles["None"]));$("#Guide"+i+" option:contains('None')").trigger("change",1);}else{if(tabType=="details"){$("#Guide"+i+" option:contains('Now Playing')").attr("selected",true);$("#GuideTitle"+i).val(this.getUrlValue("tabTitle"+i,this.defaultGuideTitles["Now Playing"]));$("#Guide"+i+" option:contains('Now Playing')").trigger("change",1);}else{if(tabType=="guide"){if(tabUrl==""){optionName=this.formItemsMap["Guide"+i].defaultValue;}else{optionName=this.getUrlGuideOptionName(tabUrl);}$("#Guide"+i+" option:contains("+optionName+")").attr("selected",true);$("#GuideTitle"+i).val(this.getUrlValue("tabTitle"+i,this.defaultGuideTitles[optionName]));
if(optionName=="Playlist"){var matches=tabUrl.match(/bookmarks\/rss\/(\d+)$/);var playlistsId=matches[1];var foundPlaylist;$("select#Playlists"+i+" option").each(function(){if(this.value==playlistsId){this.selected=true;foundPlaylist=true;}});if(foundPlaylist!=true){continue;}}$("#Guide"+i+" option:contains("+optionName+")").trigger("change",1);}}}}},getUrlGuideOptionName:function(url){if(url.match(/rss\/flash$/)){return"Latest Episodes";}else{if(url.match(/rss\/flash\/?\?sort=~date$/)){return"Chronological Episodes";}else{if(url.match(/rss\/flash\/?\?sort=popular$/)){return"Popular Episodes";}else{if(url.match(/bookmarks\/rss\/\d+$/)){return"Playlist";}else{if(url.match(/\?bookmarked_by=hotepisodes/)){return"Hot Episodes on "+this.extraInfo["siteName"];}}}}}return"Custom";},resetUrlFieldPlaylist:function(id){var guideNum=id.substring(id.length-1,id.length);var numOptions=$("#Playlists"+guideNum+" option").size();if(numOptions>0){$("#Playlists"+guideNum+" option[index=0]").attr("selected","selected");
}},response:function(data){switch(data.status){case 0:this.displayFailure(data.error);break;case 1:this.displaySuccess(data.message);break;default:break;}},showFormError:function(div,msg){BLIP.Utils.showError({div:div,msg:msg});BLIP.Utils.scrollToError({div:div});},updateUrlColorFields:function(id){var lightColor="";var backColor="";var frontColor="";if(id=="ColorSchemeSelect"){var selectedVal=$("#"+id+" option:selected").val();if(selectedVal!="custom"){var colors=selectedVal.split(",");lightColor=colors[0];backColor=colors[1];frontColor=colors[2];$("#ColorCodes").hide();}else{$("#ColorCodes").show();}$("#PlayersLeft #"+this.formItemsMap["HighlightColor"].id).val(lightColor);$("#PlayersLeft #"+this.formItemsMap["BackgroundColor"].id).val(backColor);$("#PlayersLeft #"+this.formItemsMap["ForegroundColor"].id).val(frontColor);}else{lightColor=$("#PlayersLeft #"+this.formItemsMap["HighlightColor"].id).val().replace(/^(?:0x)|#/,"");backColor=$("#PlayersLeft #"+this.formItemsMap["BackgroundColor"].id).val().replace(/^(?:0x)|#/,"");
frontColor=$("#PlayersLeft #"+this.formItemsMap["ForegroundColor"].id).val().replace(/^(?:0x)|#/,"");$("#PlayersLeft #"+this.formItemsMap["HighlightColor"].id).val(lightColor);$("#PlayersLeft #"+this.formItemsMap["BackgroundColor"].id).val(backColor);$("#PlayersLeft #"+this.formItemsMap["ForegroundColor"].id).val(frontColor);if($("#ColorSchemeSelect [value='"+lightColor+","+backColor+","+frontColor+"']").length>0){$("#ColorSchemeSelect").val(lightColor+","+backColor+","+frontColor).length;}else{$("#ColorSchemeSelect").val("custom");}}},updateUrlFieldGuideTitle:function(id){var selectedIndex=$("#"+id+" option").index($("#"+id+" option:selected"));var optionName=this.formItemsMap[id].options[selectedIndex].name;var guideNum=id.substring(id.length-1,id.length);$("#GuideTitle"+guideNum).val(this.defaultGuideTitles[optionName]);},urlFieldChanged:function(id){if(id.match(/Guide\d/)){this.updateUrlFieldGuideTitle(id);this.resetUrlFieldPlaylist(id);}if(id.match(/Color/)){this.updateUrlColorFields(id);
}var params=this.urlFieldChangedGetActionValue(id);if(params!=undefined){for(var i=0;i<params.length;i++){this.advancedSettings.update(params[i]["action"],params[i]["name"],params[i]["value"],true);}}},urlFieldChangedGetActionValue:function(id){var thisContext=this;var type=this.formItemsMap[id].type;var name=this.formItemsMap[id].name;if(id.match(/Guide\d/)||id.match(/GuideTitle\d/)||id.match(/Playlists\d/)){return this.urlFieldChangedGetActionValueGuide();}if(id.match(/ColorScheme/)){return this.urlFieldChangedGetActionValueColor();}var returnObj;var action;var value;switch(type){case"text":case"select":var value=$("#PlayersLeft #"+id).val();break;case"radio":case"checkbox":var value=$("#PlayersLeft #"+id).attr("checked");break;}if(value===""||this.formItemsMap[id].defaultValue==value){returnObj=[{action:"remove",name:name,value:null}];}else{if(id.match(/Color/)){value="0x"+value;}returnObj=[{action:"add",name:name,value:String(value)}];}return returnObj;},urlFieldChangedGetActionValueColor:function(){var thisContext=this;
var lightColor=this.urlFieldChangedGetActionValue("HighlightColor");var backColor=this.urlFieldChangedGetActionValue("BackgroundColor");var frontColor=this.urlFieldChangedGetActionValue("ForegroundColor");var result=lightColor;$.merge(result,backColor);$.merge(result,frontColor);return result;},urlFieldChangedGetActionValueGuide:function(){var thisContext=this;var returnObj=[];for(var guideNum=1;guideNum<=3;guideNum++){var id="Guide"+guideNum;var selectedIndex=$("#"+id+" option").index($("#"+id+" option:selected"));var optionName=this.formItemsMap[id].options[selectedIndex].name;var tabTitle=$("#GuideTitle"+guideNum).val();var url="";if(optionName.match(/^None/)){returnObj.push({action:"add",name:"tabType"+guideNum,value:"none"},{action:"remove",name:"tabTitle"+guideNum,value:null},{action:"remove",name:"tabUrl"+guideNum,value:null});}else{if(optionName.match(/^Now/)){returnObj.push({action:"add",name:"tabType"+guideNum,value:"details"});if(tabTitle!=""){returnObj.push({action:"add",name:"tabTitle"+guideNum,value:tabTitle});
}else{returnObj.push({action:"remove",name:"tabTitle"+guideNum,value:null});}returnObj.push({action:"remove",name:"tabUrl"+guideNum,value:null});}else{if(optionName.match(/^Custom/)){returnObj.push({action:"add",name:"tabType"+guideNum,value:"guide"},{action:"remove",name:"tabTitle"+guideNum,value:null},{action:"remove",name:"tabUrl"+guideNum,value:null});}else{if(optionName.match(/^Latest/)){url="http://"+this.extraInfo["safeusername"]+"."+this.extraInfo["siteDomain"]+"/rss/flash";}else{if(optionName.match(/^Chronological/)){url="http://"+this.extraInfo["safeusername"]+"."+this.extraInfo["siteDomain"]+"/rss/flash?sort=~date";}else{if(optionName.match(/^Popular/)){url="http://"+this.extraInfo["safeusername"]+"."+this.extraInfo["siteDomain"]+"/rss/flash?sort=popular";}else{if(optionName.match(/^Hot/)){url="http://"+this.extraInfo["siteDomain"]+"/posts?bookmarked_by=hotepisodes&skin=rss";}else{if(optionName.match(/^Playlist/)){var selectedPlaylistIndex=$("#Playlists"+guideNum+" option").index($("#Playlists"+guideNum+" option:selected"));
if(selectedPlaylistIndex>=0){var playlistsId=this.formItemsMap["Playlists"+guideNum].options[selectedPlaylistIndex].value;url="http://"+this.extraInfo["siteDomain"]+"/bookmarks/rss/"+playlistsId;}}}}}}returnObj.push({action:"add",name:"tabType"+guideNum,value:"guide"});if(tabTitle!=""){returnObj.push({action:"add",name:"tabTitle"+guideNum,value:tabTitle});}else{returnObj.push({action:"remove",name:"tabTitle"+guideNum,value:null});}if(url!=""){returnObj.push({action:"add",name:"tabUrl"+guideNum,value:url});}else{returnObj.push({action:"remove",name:"tabUrl"+guideNum,value:null});}}}}}return returnObj;},validate:function(){if(!this.hasTitle()){return false;}else{return true;}}});BLIP.Class.create("BLIP.Controls.Form.RegistrationForm",BLIP.Controls.Form,function(config){this.parentForm=config.parentForm;BLIP.Controls.Form.call(this,config);},{parentForm:null,bindSubmitToAjax:function(){var thisContext=this;$("#Submit").click(function(){thisContext.postForm(thisContext);});},displayDefaultError:function(){var thisContext=this;
$("#ProcessingWrapper").slideUp("slow",function(){thisContext.parentForm.displayRegistrationError("Sorry. We have encountered a problem registering your account.  Please try again later.");});},displayIncomplete:function(){var thisContext=this;$("#ProcessingWrapper").slideUp("slow",function(){thisContext.parentForm.displayRegistrationError("Please fill out all of the fields.");});},displayProcessing:function(){this.parentForm.pingStatus();},initializeFormAttributes:function(){this.bindSubmitToAjax();},postForm:function(thisContext){this.parentForm.attempts=0;$("#Submit").attr("disabled",true);if($("#Username").val()==""||$("#Password").val()==""){this.displayIncomplete();return;}$("#ProcessingWrapper").slideDown("slow");$.post(thisContext.formAction,{username:$("#Username").val(),password:$("#Password").val()},function(data){thisContext.response(data);},"json");},response:function(data){switch(data.error){case"Not enough information supplied":this.displayIncomplete();break;case"OK":this.displayProcessing();
break;default:this.displayDefaultError();}}});BLIP.Class.create("BLIP.Controls.Form.SettingsForm",BLIP.Controls.Form,function(config){this.config=config;this.parentForm=config.parentForm;BLIP.Controls.Form.call(this,config);},{config:{},formItemsMap:{},parentForm:null,bindSubmitToAjax:function(){var thisContext=this;this.createSubmitIframe();$("#FormBlock").attr("target","UploadFrameSubmit");$("#FormBlock").attr("action",this.formAction+"&callback=window.parent.settings.response");$("#FormBlock").attr("method","post");$("#FormBlock").attr("enctype","multipart/form-data");$("#FormBlock").attr("encoding","multipart/form-data");$("#Submit").click(function(){if(thisContext.config.callback){thisContext.config.callback();}$("#Feedback").fadeOut("slow");thisContext.formSubmit();});},createFeedbackDiv:function(){var feedbackDiv=document.createElement("div");feedbackDiv.setAttribute("id","Feedback");$("#FormBlock").prepend(feedbackDiv);},displayIncomplete:function(){var thisContext=this;$("#ProcessingWrapper").slideUp("slow",function(){thisContext.parentForm.displayError("Please fill out all of the fields.");
});$("#Submit").val("Retry");$("#Submit").attr("disabled",false);},displaySuccess:function(){$("#Feedback").html("<p><b>Good news!</b></p>Your changes have been saved.").addClass("FeedbackSuccess").removeClass("FeedbackFailure").slideDown("slow");$("#Submit").attr("disabled",false);window.setTimeout(function(){$("#Feedback").fadeOut("slow");},7500);},displayFailure:function(message){$("#Feedback").html("<p><b>There was an error!</b></p>"+message).addClass("FeedbackFailure").removeClass("FeedbackSuccess").slideDown("slow");$("#Submit").attr("disabled",false);},getHeadingInputHtml:function(item){return item.value;},getOtherInputHtml:function(item){return"<div class='FormInput'>"+item.value+"</div>";},initializeFormAttributes:function(){this.createFeedbackDiv();this.bindSubmitToAjax();},response:function(data){$("html, body").animate({scrollTop:0},"fast");switch(data.status){case 0:this.displayFailure(data.error);break;case 1:this.displaySuccess();break;default:break;}}});BLIP.Class.create("BLIP.Controls.UploadFilesQueue",BLIP.Controls.Form,function(config){var thisContext=this;
this.target=config.target;this.formAction=config.formAction;this.uid=config.uid;controlConfig={target:config.target,delayInitialization:false,useDocumentWrite:false};BLIP.Controls.Control.call(this,controlConfig);this.initialize();},{completeMethod:{},iframeTarget:"",submitObject:{},filesSubmitted:[],formAction:"",target:{},uid:0,addHtmlFormTagsAttributes:function(i){if(i=="Thumb"){var submitLength=this.submitObject.length-1;$("#form"+i).attr("action",this.formAction+"?session="+this.uid+"&slot="+submitLength+"&callback=window.parent.upload.uploadComplete");}else{$("#UploadForm form:visible:eq("+i+")").attr("action",this.formAction+"?session="+this.uid+"&slot="+i+"&callback=window.parent.upload.uploadComplete");}},beginTransfer:function(i){if(this.submitObject[i].role=="thumbnail"){$("#formThumb").append('<input type="hidden" name="role"  value= "Thumbnail">');$("#formThumb").submit();}else{if(this.filesSubmitted[i]!="submitted"){this.filesSubmitted[i]="submitted";$("#UploadForm form:visible:eq("+i+")").submit();
}}},completeTransfer:function(){this.completeMethod();},createIframeTarget:function(id){this.iframeTarget=id;var html='<div id="'+id+'">Replace</div>';$("#"+this.target).after(html);},getHtml:function(){return this.getIframesHtml();},getIframeHtml:function(item,i){var html='<iframe class="UploadFrame" id="UploadFrame'+i+'" name="UploadFrame'+i+'">';html+="</iframe>";return html;},getIframesHtml:function(){var html="";for(var i=0;i<this.submitObject.length;i++){if(this.submitObject[i].role=="thumbnail"){html+=this.getIframeHtml(this.submitObject[i],"Thumb");}else{html+=this.getIframeHtml(this.submitObject[i],this.submitObject[i].i);}}return html;},initialize:function(){this.createIframeTarget("iframeContainer");},prepareForm:function(){$("#"+this.target).css("position","absolute");$("#"+this.target).css("margin-top","-6000px");$(".ListItemFileInput").css("margin-top","-600px");$("#ListItemThumbnailInput").css("margin-top","-600px");$("#"+this.iframeTarget).html(this.getHtml());for(var i=0;
i<this.submitObject.length;i++){if(this.submitObject[i].role=="thumbnail"){this.addHtmlFormTagsAttributes("Thumb");}else{this.addHtmlFormTagsAttributes(i);}}},upload:function(submitObject){this.submitObject=submitObject;this.prepareForm();this.beginTransfer(0);},uploadComplete:function(i){if((i+1)<this.submitObject.length){this.beginTransfer(i+1);}else{this.completeTransfer();}},wrapInFormTag:function(target,htmlClass,i){var divTarget="#ListItem"+i;var formElement=document.createElement("form");formElement.setAttribute("enctype","multipart/form-data");formElement.setAttribute("encoding","multipart/form-data");formElement.setAttribute("id","form"+i);if(htmlClass!=undefined){formElement.setAttribute("class",htmlClass);}$(divTarget).wrap(formElement);}});BLIP.Class.create("BLIP.Controls.EditUploadFilesQueue",BLIP.Controls.UploadFilesQueue,function(config){BLIP.Controls.UploadFilesQueue.call(this,config);},{startingSlot:0,filesToBeSubmitted:[],filesSubmitted:[],addHtmlFormTagsAttributes:function(i){if(i=="Thumb"){var submitLength=this.submitObject.length-1;
$("#form"+i).attr("action",this.formAction+"?session="+this.uid+"&slot="+submitLength+"&callback=window.parent.upload.uploadComplete");}else{$("#Episodes form:visible:eq("+i+")").attr("action",this.formAction+"?session="+this.uid+"&slot="+i+"&callback=window.parent.upload.uploadComplete");}},beginTransfer:function(i){if(this.submitObject[i].role=="thumbnail"){if(this.startingSlot==0){this.startingSlot=i;}this.filesToBeSubmitted.push({filename:this.submitObject[i].name,name:this.submitObject[i].name,role:this.submitObject[i].role,i:i,trueIndex:this.submitObject[i].i});$("#formThumb").submit();}else{if($("#Episodes form:visible:eq("+i+") .ListItemTitle input").val()){if(this.startingSlot==0){this.startingSlot=i;}var j=this.getSubmitObjectIndexFromListItemIndex(i);this.filesToBeSubmitted.push({filename:this.submitObject[j].name,name:this.submitObject[j].name,role:this.submitObject[j].role,i:j,trueIndex:this.submitObject[j].i});$("#Episodes form:visible:eq("+i+")").submit();}else{this.uploadComplete(i);
}}},getSubmitObjectIndexFromListItemIndex:function(index){var role=$("#Episodes form:visible:eq("+index+") .ListItemJob select").val();if(role=="Source"){return 0;}var formName=$("#Episodes form:visible:eq("+index+")").attr("id");var i=formName.charAt(formName.length-1);for(var j=1;j<this.submitObject.length;j++){if(this.submitObject[j].i==i){return j;}}}});BLIP.Class.create("BLIP.Controls.UploadForm",BLIP.Controls.Form,function(config){this.config=config;this.uid=config.uid;this.user=config.user;this.submitObject=config.submitObject;BLIP.Controls.Form.call(this,config);},{distSections:["videosite","aggregator","social","tv","messaging","blog"],licenseMap:{"Attribution ":{id:9,src:"",description:"This license lets others distribute, remix, tweak, and build upon your work, even commercially, as long as they credit you for the original creation. This is the most accommodating of licenses offered, in terms of what others can do with your works licensed under Attribution.",deed:"http://creativecommons.org/licenses/by/3.0",code:"http://creativecommons.org/licenses/by/3.0/legalcode"},"Attribution No Derivatives ":{id:10,src:"",description:"This license allows for redistribution, commercial and non-commercial, as long as it is passed along unchanged and in whole, with credit to you.",deed:"http://creativecommons.org/licenses/by-nd/3.0",code:"http://creativecommons.org/licenses/by-nd/3.0/legalcode"},"Attribution Non-Commercial No Derivatives ":{id:11,src:"",description:"This license allows for redistribution, commercial and non-commercial, as long as it is passed along unchanged and in whole, with credit to you.",deed:"http://creativecommons.org/licenses/by-nc-nd/3.0",code:"http://creativecommons.org/licenses/by-nc-nd/3.0/legalcode"},"Attribution Non-Commercial ":{id:12,src:"",description:"This license lets others remix, tweak, and build upon your work non-commercially, and although their new works must also acknowledge you and be non-commercial, they don?t have to license their derivative works on the same terms.",deed:"http://creativecommons.org/licenses/by-nc/3.0",code:"http://creativecommons.org/licenses/by-nc/3.0/legalcode"},"Attribution Non-Commercial Share Alike ":{id:13,src:"",description:"This license lets others remix, tweak, and build upon your work non-commercially, as long as they credit you and license their new creations under the identical terms. Others can download and redistribute your work just like the by-nc-nd license, but they can also translate, make remixes, and produce new stories based on your work. All new work based on yours will carry the same license, so any derivatives will also be non-commercial in nature.",deed:"http://creativecommons.org/licenses/by-nc-sa/3.0",code:"http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode"},"Attribution Share Alike ":{id:14,src:"",description:"This license lets others remix, tweak, and build upon your work even for commercial reasons, as long as they credit you and license their new creations under the identical terms. This license is often compared to open source software licenses. All new works based on yours will carry the same license, so any derivatives will also allow commercial use.",deed:"http://creativecommons.org/licenses/by-sa/3.0",code:"http://creativecommons.org/licenses/by-sa/3.0/legalcode"}},submitObject:{},uid:"",publish:{label:"",value:"Publish",id:"Publish",type:"submit"},user:0,changeCCLicense:function(){var license=this.getCCLicense();
$("#CC_sub #CC_status").html(license);if(license){$("#hidden_license").attr("value",this.licenseMap[license].id);}},checkAll:function(div){$("#"+div+" INPUT:enabled[type='checkbox']").attr("checked",true);},fixDescription:function(){var value;if($("#EpisodeDescription").attr("tagName").toLowerCase()=="iframe"){value=$("#EpisodeDescription").contents().find("body").html();value=value.replace(/<br\/?>$/,"");}else{value=$("#EpisodeDescription").val();}$("#description").val(value);},formSubmit:function(){if(this.validate()){this.fixDescription();this.formManager.fixDistDests();this.formManager.fixDisableAds();$("#FormBlock").append(this.getSubmitObjectHtml());this.formManager.finish();this.formManager.finishMetadata();}},initialize:function(){$("#"+this.target).html(this.getHtml(this.form.items));this.setDistDests(this.config.distributions);this.initializeFormAttributes();this.initializeCalendar();this.initializeRTE();},initializeCalendar:function(){if(this.isPro){$("input#DateToPublish").dynDateTime({ifFormat:"%Y/%m/%d %H:%M",showsTime:true,singleClick:true,step:1,timeFormat:"24"});
}},initializeDistributionDests:function(){var url="/users/dist_status/"+this.user+"?skin=json&callback=upload.metadataForm.setDistDests";$.getScript(url);},initializeFormAttributes:function(){this.createSubmitIframe();this.setLicenseCheck();this.setPrivacyCheck();this.setLanguagesCheck();$("#FormBlock").attr("target","UploadFrameSubmit");$("#FormBlock").attr("action",this.formAction+"?session="+this.uid+"&callback=window.parent.upload.metadataForm.metadataComplete");$("#FormBlock").attr("method","post");$("#FormBlock").attr("enctype","multipart/form-data");$("#FormBlock").attr("encoding","multipart/form-data");},initializeRTE:function(){if(!$.browser.msie){$("#EpisodeDescription").addClass("rte-zone");$("#EpisodeDescription").rte({cssUrl:"/skin/mercury/dashboard/upload.css",mediaUrl:"/skin/mercury/dashboard/images/rte/"});}},getCCLicense:function(){var license="Attribution ";if($("#CC_Com").attr("checked")==false){license+="Non-Commercial ";}if($("#CC_Mod_Share").attr("checked")==true){license+="Share Alike ";
}else{if($("#CC_Mod_No").attr("checked")==true){license+="No Derivatives ";}}return license;},getDistHeadingHtml:function(section){var sectionName="";switch(section){case"social":sectionName="Social Networks";break;case"messaging":sectionName="Messaging";break;case"videosite":sectionName="Video Sites";break;case"aggregator":sectionName="Aggregators";break;case"tv":sectionName="TV";break;case"blog":sectionName="Blogs";break;}var html="";html+="<div class='Clear'></div>";html+="<div class='DistSection' id='Dist_"+section+"'>";html+="	<div class='DistHeading'>";html+="		<a onClick='"+BLIP.Delegate.createAsString(this,this.checkAll,"Dist_"+section)+"'>Select all</a>";html+="		"+sectionName;html+="	</div>";if(section=="videosite"){html+="<div class='RadioInput DistDisabled'><input class='DistDisabled' type='checkbox' disabled='disabled' checked id='DistDestLocal'> blip.tv</div>";}return html;},getDistHtml:function(items){var html="";for(var i=0;i<items.length;i++){html+=this.getFormItemHtml(items[i]);
}return html;},getFileHiddenInputsHtml:function(item,i){var j=i;if(item.role=="Source"){j="";}var html='<input name="filename'+j+'" value="'+this.getSanitaryFilename(item.name)+'">';html+='<input name="file'+j+'_role" value="'+item.role+'">';html+='<input name="file'+j+'_slot" value="'+i+'">';return html;},getFormattedDistObject:function(items){var formattedItems=new Array();for(var item in items){var name="global_crosspost";var checked=0;var disabled=0;var val=items[item].id;var label=BLIP.Utils.truncate(items[item].name,15);var distClass="";if(items[item].legacyCrossPost==1){name="crosspost";}else{if(items[item].legacyCrossUpload==1){name="crossupload_archiveorg";}else{if(items[item].crossposts==1){name="ginger_crosspost";val+="_"+items[item].token;}else{if(items[item].userFeed==1){name="user_feed";val=items[item].token;}}}}if(items[item].locked==1){disabled=1;distClass="DistDisabled";if(items[item].active==1){checked=1;}}formattedItems.push({label:label,type:"checkbox",section:items[item].section,name:name,id:"DistDest"+item,value:val,canBind:items[item].canBind,disabled:disabled,cssClass:distClass,checked:checked});
}var distItemObject=[{label:"Distribution",type:"container",id:"Distribution",items:formattedItems,batch:true}];return distItemObject;},getFormInputContainerHtml:function(item){var html="";var subBlockHtml="";if(item.id=="Distribution"){for(var j=0;j<this.distSections.length;j++){html+=this.getDistHeadingHtml(this.distSections[j]);var additions=0;for(var i=0;i<item.items.length;i++){if(item.items[i].section==this.distSections[j]){var formObject=this.getFormInputHtml(item.items[i],false);html+=formObject.inputHtml;subBlockHtml+=formObject.subBlockHtml;additions++;}}if(additions==0){html+="<span class='DistDisabled'>None</span>";}if(this.distSections[j]=="videosite"){html+=this.getFormSubBlock([]);}html+="</div>";}}else{html=this.getFormInputContainerItemsHtml(item);}return BLIP.Utils.wrapHtmlTag({tag:"div",contents:html,elementClass:"FormInput",elementId:item.id});},getFormInputContainerItemsHtml:function(item){var html="";var subBlockHtml="";for(var i=0;i<item.items.length;i++){var formObject=this.getFormInputHtml(item.items[i],false);
html+=formObject.inputHtml;subBlockHtml+=formObject.subBlockHtml;}return html+=subBlockHtml;},getHtml:function(items){var html="";var formBlock="";for(var i=0;i<items.length;i++){if(this.isPro==false&&items[i].proFeature==true){this.setItemsDisabled(items[i]);}html+=this.getFormItemHtml(items[i]);}formBlock=this.wrapHtmlTag({tag:"div",contents:html,elementClass:"FormBlock"});var heading=this.formHeading||" ";html=heading+this.wrapHtmlTag({tag:"form",contents:html,elementId:"FormBlock",elementClass:"FormBlock"});html+=this.getPublishButtonHtml();return html;},getPublishButtonHtml:function(){return this.getFormItemHtml(this.publish);},getSanitaryFilename:function(filename){if(filename.lastIndexOf("\\")!=-1){return filename.substring((filename.lastIndexOf("\\")+1),filename.length);}else{if(filename.lastIndexOf("/")!=-1){return filename.substring((filename.lastIndexOf("/")+1),filename.length);}else{return filename;}}},getSubmitObjectHtml:function(){var html="";for(var i=0;i<this.submitObject.length;
i++){html+=this.getFileHiddenInputsHtml(this.submitObject[i],i);}html+="<input type='hidden' name='interactive_post' value='1'>";return html;},hasTitle:function(){var epTitle=$("#EpisodeTitle").val();if(epTitle.length>0){return true;}else{this.showFormError("#EpisodeTitle","You must provide an episode title.");return false;}},hasValidPrivacyPassword:function(){if($("#PubWithPass").attr("checked")){var privPass=$("#PrivacyPassword").val();var validCharsRegEx=/[^\x20-\x7e]/;if(privPass.length<3){this.showFormError("#PrivacyPassword","Passwords must be at least 3 characters long.");return false;}else{if(privPass.search(validCharsRegEx)==0){this.showFormError("#PrivacyPassword","You have invalid characters in your password.");return false;}else{return true;}}}else{return true;}},initializeDistSubBlocks:function(distObj){var thisContext=this;for(var i=0;i<distObj.items.length;i++){var item=distObj.items[i];if(item.canBind!=1){continue;}$("#Dist_"+item.section+" #"+item.id).unbind("click");$("#Dist_"+item.section+" #"+item.id).bind("click",function(){thisContext.toggleDistSubBlock($(this).attr("id"));
});}},metadataComplete:function(response){if(response[0]["status"]=="error"){document.location=this.config.site+"/dashboard/error?msg="+escape(response[0]["message"]);}else{document.location=this.config.site+"/dashboard/episode/"+response[0]["post id"];}},setDefaultCCLicense:function(value){switch(value){case 9:$("#CC_Com").attr("checked","checked");$("#CC_Mod_Yes").attr("checked","checked");break;case 10:$("#CC_Com").attr("checked","checked");$("#CC_Mod_No").attr("checked","checked");break;case 11:$("#CC_Mod_No").attr("checked","checked");break;case 12:$("#CC_Mod_Yes").attr("checked","checked");break;case 13:$("#CC_Mod_Share").attr("checked","checked");break;case 14:$("#CC_Com").attr("checked","checked");$("#CC_Mod_Share").attr("checked","checked");break;default:}},setDefaultLicense:function(input){var inputId=$(input).attr("id");if(inputId=="ARR"){$("#hidden_license").attr("value","-1");}else{if(inputId=="CC"){$("#hidden_license").attr("value",13);this.setDefaultCCLicense(13);this.changeCCLicense();
}else{$("#hidden_license").attr("value","7");}}},setDefaultPrivacy:function(input){var inputId=$(input).attr("id");if(inputId=="PrivacyPublic"){$("#hidden").attr("value","0");}else{var hidden_date=this.form.itemsMap["PrivacyContainer"]["PrivacyPrivate"]["DateToPublish"].value;var hidden_password=this.form.itemsMap["PrivacyContainer"]["PrivacyPrivate"]["PrivacyPassword"].value;$("#hidden").attr("value","1");$("#PrivacyPassword").attr("value",hidden_password);$("#DateToPublish").attr("value",hidden_date);if(hidden_password==""||hidden_password==undefined){$("input#PrivacyPassword").attr("disabled",true);$("#LabelForPrivacyPassword").addClass("DisabledLabel");$("input#PrivacyPassword").addClass("InputDisabled");$("input#PubWithPass").attr("checked",false);}else{$("input#PrivacyPassword").attr("disabled",false);$("#LabelForPrivacyPassword").removeClass("DisabledLabel");$("input#PrivacyPassword").removeClass("InputDisabled");$("input#PubWithPass").attr("checked",true);}if(hidden_date==""||hidden_date==undefined){$("input#DateToPublish").attr("disabled",true);
$("#LabelForDateToPublish").addClass("DisabledLabel");$("input#DateToPublish").addClass("InputDisabled");$("input#PubOnDate").attr("checked",false);}else{$("input#DateToPublish").attr("disabled",false);$("#LabelForDateToPublish").removeClass("DisabledLabel");$("input#DateToPublish").removeClass("InputDisabled");$("input#PubOnDate").attr("checked",true);}}},setDistDests:function(items){var distObj=this.getFormattedDistObject(items);$("#FormBlock").append(this.getDistHtml(distObj));this.initializeDistSubBlocks(distObj[0]);},setLanguagesCheck:function(){$("#Languages").change(function(){$("input#hidden_language").val($("select#Languages :selected").text());});},setLicenseCheck:function(){var thisContext=this;$("input.CC_radio").change(function(){thisContext.changeCCLicense();});$("input.CC_checkbox").change(function(){thisContext.changeCCLicense();});$("input[name='license_throwaway']").change(function(){thisContext.setDefaultLicense(this);});$("#CC_sub .FormSubBlockContents").append('<div id="CC_status">Attribution</div>');
},setPrivacyCheck:function(){var thisContext=this;$("input#PubWithPass").change(function(){thisContext.togglePublicPassword(this);});$("input#PubOnDate").change(function(){thisContext.togglePublicDate(this);});$("input[name='hidden_throwaway']").change(function(){thisContext.setDefaultPrivacy(this);});$("#PrivacyPrivate_sub .FormSubBlockContents").append('<div id="Privacy_status"></div>');},showFormError:function(div,msg){BLIP.Utils.showError({div:div,msg:msg});BLIP.Utils.scrollToError({div:div});},toggleDistSubBlock:function(id){var thisContext=this;var sectionId=$("#"+id).parent().parent().attr("id");var subBlockDiv=$("#"+sectionId).find(".FormSubBlock")[0];var distLabel=$($("label[for='"+id+"']")[0]).html();var textName=$("#"+id).attr("name")+"_"+$("#"+id).val();if($("#"+id).attr("checked")){var bindLabel="";var bindInput="<h4>Link with current "+distLabel+" Episode</h4>";bindInput+=this.getFormInputGenericHtml({label:"Episode URL",id:id+"_bind",value:"",name:textName,type:"text"},{isSubBlock:true});
var bindHtml="<div id="+textName+"_Block>"+bindLabel+bindInput+"<div class='Clear'></div></div>";$(subBlockDiv).find(".FormSubBlockContents").append(bindHtml);$(subBlockDiv).show();}else{$("#"+textName+"_Block").remove();if($(subBlockDiv).find(".FormSubBlockContents").children().length==0){$(subBlockDiv).hide();}}thisContext.toggleDistSubBlockComplete();},toggleDistSubBlockComplete:function(){},togglePublicDate:function(input){if($(input).attr("checked")==true){$("input#DateToPublish").attr("disabled",false);$("#LabelForDateToPublish").removeClass("DisabledLabel");$("input#DateToPublish").removeClass("InputDisabled");}else{$("input#DateToPublish").attr("disabled",true);$("#LabelForDateToPublish").addClass("DisabledLabel");$("input#DateToPublish").addClass("InputDisabled");}},togglePublicPassword:function(input){if($(input).attr("checked")==true){$("input#PrivacyPassword").attr("disabled",false);$("#LabelForPrivacyPassword").removeClass("DisabledLabel");$("input#PrivacyPassword").removeClass("InputDisabled");
}else{$("input#PrivacyPassword").attr("disabled",true);$("#LabelForPrivacyPassword").addClass("DisabledLabel");$("input#PrivacyPassword").addClass("InputDisabled");}},validate:function(){if(!this.hasValidPrivacyPassword()){return false;}else{if(!this.hasTitle()){return false;}else{return true;}}}});BLIP.Class.create("BLIP.Controls.EditUploadForm",BLIP.Controls.UploadForm,function(config){this.isBatchEdit=config.isBatchEdit;BLIP.Controls.UploadForm.call(this,config);},{hasRetryableDests:false,isBatchEdit:false,itemId:0,JSONtoFormNameMap:[],checkFormHasTitle:function(){if($("#EpisodeTitle").val()){return true;}else{this.showFileMissingError("#EpisodeTitle");return false;}},getDisclaimerHtml:function(){var html="<div class='Clear'></div>";html+="<div id='DistributionKey'>";html+="* This distribution destination has already been crossposted to. Selecting it again will resend your episode to this destination and possibly overwite what's already there.";html+="</div>";return html;},getFileChangeHtml:function(fileChanges){var html="";
for(var item in fileChanges){if(fileChanges[item].action=="role"){html+=this.getFileRoleChangeHiddenInputsHtml(fileChanges[item],fileChanges[item].i);}else{if(fileChanges[item].action=="remove"){html+=this.getFileDeletedHiddenInputsHtml(fileChanges[item],fileChanges[item].i);}}}return html;},getFileDeletedHiddenInputsHtml:function(item,i){var j=i||"";if(!item.id){return;}var j=i;var html='<input type="hidden" name="file'+j+'_id" value="'+item.id+'">';html+='<input type="hidden" name="file'+j+'_del" value="1">';return html;},getFileHiddenInputsHtml:function(item,i,slot){var j=i;if(item.role=="Source"){j="";}var html='<input type="hidden" name="filename'+j+'" value="'+this.getSanitaryFilename(item.filename)+'">';html+='<input type="hidden" name="file'+j+'_role" value="'+item.role+'">';html+='<input type="hidden" name="file'+j+'_slot" value="'+slot+'">';return html;},getFileRoleChangeHiddenInputsHtml:function(item,i){var j=i;if(item.role=="Source"){j="";}var html='<input type="hidden" name="file'+j+'_id" value="'+item.id+'">';
html+='<input type="hidden" name="file'+j+'_role" value="'+item.role+'">';return html;},getPublishButtonHtml:function(){return"";},getFormData:function(){},getFormItemHtml:function(item){var html="";var labelHtml="";var extraSubmitCSS="";if(item.type=="hidden"){return this.getFormInputGenericHtml(item);}else{if((this.isBatchEdit==true&&item.batch==true)||this.isBatchEdit==false){if(item.type=="submit"||item.type=="button"){extraSubmitCSS=" SubmitBlock";}else{labelHtml=this.getFormLabelHtml(item);}var formObject=this.getFormInputHtml(item);html+=labelHtml+formObject.inputHtml;html+="<div class='Clear'></div>";return this.wrapHtmlTag({tag:"div",contents:html,elementClass:"FormInputWrapperBlock"+extraSubmitCSS});}else{return"";}}},getFormattedDistObject:function(items){var formattedItems=new Array();for(var item in items){var name="";var checked=0;var mixed=0;var disabled=0;var val="";var label=BLIP.Utils.truncate(items[item].name,16);var distClass="";if(items[item].legacyCrossPost==1){name="crosspost";
val=items[item].id;}else{if(items[item].legacyCrossUpload==1){name="crossupload_archiveorg";val=items[item].id;}else{if(items[item].crossposts==1){name="ginger_crosspost";val=items[item].id+"_"+items[item].token;}else{if(items[item].userFeed==1){name="user_feed";val=items[item].token;}else{name="global_crosspost";val=items[item].id;}}}}switch(items[item].active){case 0:break;case 1:checked=1;break;case 2:mixed=1;break;default:}if(items[item].locked==1){disabled=1;distClass="DistDisabled";}if(items[item].canRetry==1){distClass+=" DistCanRetry";this.hasRetryableDests=true;}formattedItems.push({label:label,type:"checkbox",section:items[item].section,name:name,id:"DistDest"+item,value:val,canBind:items[item].canBind,disabled:disabled,cssClass:distClass,checked:checked,mixed:mixed});}var distItemObject=[{label:"Distribution",type:"container",id:"Distribution",items:formattedItems,batch:true}];return distItemObject;},getSubmitObjectHtml:function(filesToBeSubmitted){var html="";if(filesToBeSubmitted&&filesToBeSubmitted.length>0){for(var i=0;
i<filesToBeSubmitted.length;i++){html+=this.getFileHiddenInputsHtml(filesToBeSubmitted[i],filesToBeSubmitted[i].trueIndex,i+1);}}html+='<input type="hidden" name="id" value="'+this.itemId+'">';html+="<input type='hidden' name='interactive_post' value='1'>";html+="<input type='hidden' name='new_dashboard' value='1'>";return html;},handleRadioSelect:function(item){if(item.type=="radio"||item.type=="select"){$("#"+item.id).parent().siblings(".FormSubBlock").css("display","none");if(item.items!=undefined){this.uncheckAll(item.id+"_sub");$("#"+item.id+"_sub").css("display","block");}}else{if(item.type=="checkbox"){if($("#"+item.id).attr("checked")){this.uncheckAll(item.id+"_sub");$("#"+item.id+"_sub").css("display","block");}else{$("#"+item.id+"_sub").css("display","none");}}}parent.BLIP.Utils.myModal.modalResize();},initialize:function(){$("#"+this.target).html(this.getHtml(this.form.items));this.setDistDests(this.config.distributions);this.initializeFormAttributes();this.getFormData();this.setDistFormKey();
this.initializeCalendar();},initializeDistributionDests:function(){var url="/users/dist_status/"+this.user+"?skin=json&callback=upload.metadataForm.setDistDests";$.getScript(url);},initializeFormAttributes:function(){this.createSubmitIframe();this.setLicenseCheck();this.setPrivacyCheck();this.initializeLicense();this.initializePrivacy();var formUrl=this.formAction;if(this.isBatchEdit){formUrl+="?users_id="+this.user;}else{formUrl+="?session="+this.uid;}formUrl+="&no_wrap=1&callback=window.parent.upload.finish";$("#FormBlock").attr("target","UploadFrameSubmit");$("#FormBlock").attr("action",formUrl);$("#FormBlock").attr("method","post");$("#FormBlock").attr("enctype","multipart/form-data");$("#FormBlock").attr("encoding","multipart/form-data");},initializeLicense:function(){var licenseId=$("#hidden_license").val();var id;if(licenseId==-1){id="ARR";}else{if(licenseId==7){id="PUB";}else{id="CC";$("#CC_sub").css("display","block");}}$("#"+id).attr("checked","checked");this.setDefaultLicense($("#"+id));
},initializePrivacy:function(){var hiddenId=$("#hidden").val();var id;if(hiddenId==0){id="PrivacyPublic";}else{id="PrivacyPrivate";$("#PrivacyPrivate_sub").css("display","block");}$("#"+id).attr("checked","checked");this.setDefaultPrivacy($("#"+id));},setDefaultLicense:function(input){var inputId=$(input).attr("id");if(inputId=="ARR"){$("#hidden_license").attr("value","-1");$("#CC_Add").attr("value","");}else{if(inputId=="CC"){var value=this.form.itemsMap["hidden_license"].value;if(value==-1||value==7){value=13;}$("#hidden_license").attr("value",value);this.setDefaultCCLicense(value);this.changeCCLicense();var additional_value=this.form.itemsMap["License"]["CC"]["CC_Add"].value;$("#CC_Add").attr("value",additional_value);}else{$("#hidden_license").attr("value","7");$("#CC_Add").attr("value","");}}},setDistDests:function(items){var distObj=this.getFormattedDistObject(items);var html=this.getDistHtml(distObj);$("#DistributionTab").html(html);if(!this.isBatchEdit){this.initializeDistSubBlocks(distObj[0]);
}$(".idTabs").tabs();},setDistFormKey:function(){if(this.hasRetryableDests){$("#Distribution").append(this.getDisclaimerHtml());}},showFileMissingError:function(div){BLIP.Utils.showError({div:div,msg:"You must enter an episode title.",small:true});},toggleDistSubBlockComplete:function(){parent.BLIP.Utils.myModal.modalResize();},validateForm:function(){var errors=0;BLIP.Utils.clearAllErrors();if(this.checkFormHasTitle()==false){errors++;}if(this.hasValidPrivacyPassword()==false){errors++;}if(errors==0){return true;}return false;}});BLIP.Class.create("BLIP.Controls.Graph",BLIP.Controls.Control,function(config){var thisContext=this;this.config=config;this.target=config.target,BLIP.Controls.Control.call(this,{target:config.target,delayInitialization:false,useDocumentWrite:false});},{config:{},legendPosition:"sw",target:"",months:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sept","Oct","Nov","Dec"],bindHover:function(){var prevPoint=null;var thisContext=this;$("#"+this.target).bind("plothover",function(event,pos,item){if(item){if(prevPoint!=item.datapoint){prevPoint=item.datapoint;
$(".Tooltip").remove();thisContext.displayTip(item,item.pageX,item.pageY);}}});$("#"+this.target).mouseout(function(){$(".Tooltip").remove();prevPoint=null;});},displayTip:function(data,x,y){$("body").append(this.getTooltipHtml(data,data.series.label));var halfWidth=($("#"+this.target+"Tooltip").width())/2;$("#"+this.target+"Tooltip").css({opacity:0,top:y-50,left:x-halfWidth}).animate({top:y-54,opacity:1},175);$(".TooltipNub").css("margin-left",(halfWidth-5));},getGraphAttributes:function(){var thisContext=this;return({grid:{borderWidth:0,labelMargin:5,hoverable:true,clickable:false,mouseActiveRadius:15},legend:{position:thisContext.legendPosition},yaxis:{ticks:10,autoscaleMargin:0.2},xaxis:{mode:"time",timeformat:"%b %d"}});},getTooltipHtml:function(data,type){var date=new Date(Number(data.datapoint[0]));var quantity=data.datapoint[1];var html="<div id='"+this.target+"Tooltip' class='Tooltip'><div class='TooltipDate'>"+this.months[date.getMonth()]+" "+date.getDate()+"</div><div class='TooltipContents'>"+this.getQuantityFormat(quantity,type)+"</div><img class='TooltipNub' src='/skin/mercury/dashboard/images/stats.nub.gif'></div>";
return html;},getQuantityFormat:function(quantity,type){switch(type){case"Revenue":return"$"+quantity;case"Views":return quantity+" views";break;}},initialize:function(){},plotGraph:function(data){$.plot($("#"+this.target),data,this.getGraphAttributes());this.bindHover();}});BLIP.Class.create("BLIP.Controls.Graph.EngagementGraph",BLIP.Controls.Graph,function(config){BLIP.Controls.Graph.call(this,config);},{primaryColor:"#3F70AA",lines:{lineWidth:1,show:true,fill:true},getFlotFormattedData:function(data){var newData=new Array();for(var i=0;i<data.length;i++){var row=new Array();row.push(data[i].percentProgress);row.push(data[i].percentViewed);newData.push(row);}return newData;},getFlotFormattedObject:function(data){var newData=new Array();var thisContext=this;newData.push({color:thisContext.primaryColor,data:data,label:"% Viewed",lines:thisContext.lines});return newData;},getGraphAttributes:function(){return({grid:{borderWidth:0,labelMargin:5,hoverable:true,clickable:false,mouseActiveRadius:15},legend:{position:"ne"},yaxis:{ticks:10},xaxis:{ticks:10}});
},getTooltipHtml:function(data,type){var quantity=data.datapoint[1];var html="<div id='"+this.target+"Tooltip' class='Tooltip'><div class='TooltipDate'>"+quantity+"% of viewers</div><div class='TooltipContents'>watched until "+data.datapoint[0]+"%</div><img class='TooltipNub' src='/skin/mercury/dashboard/images/stats.nub.gif'></div>";return html;}});BLIP.Class.create("BLIP.Controls.Graph.EngagementGraph.EngagementDetailGraph",BLIP.Controls.Graph.EngagementGraph,function(config){this.postId=config.postId;BLIP.Controls.Graph.EngagementGraph.call(this,config);},{duration:0,displayPlayer:function(){$("#PlayerContainer").remove();$("#EngagementMark").remove();$(".ReportContent").css("display","none");$("#PoweredByTubeMogul").show();var offset=$("#ReportToggleSummary").offset();var targetWidth=345;var targetHeight=296;$("#ReportToggleSummary").prepend(this.getHtml(targetWidth,targetHeight));$("#PlayerContainer").css({position:"absolute",marginLeft:"-10px",width:targetWidth,height:targetHeight});
$("#ReportPlotGraphWrapper").prepend("<img src='/skin/mercury/dashboard/images/engagement.mark.png' id='EngagementMark'>");},getFlotFormattedData:function(data){var newData=new Array();var thisObj=this;for(var i=0;i<data.length;i++){var row=new Array();row.push(data[i].secondViewed);row.push(data[i].percentViewed);newData.push(row);if(i==data.length-1){var secondsViewed=data[i].secondViewed;this.duration=(secondsViewed==undefined)?0:parseInt(secondsViewed);}}return newData;},getGraphAttributes:function(){var thisContext=this;return({grid:{borderWidth:0,labelMargin:5,hoverable:true,clickable:false,mouseActiveRadius:15},legend:{position:"ne"},yaxis:{ticks:10,labelWidth:23,autoscaleMargin:0.2},xaxis:{ticks:20,labelHeight:6}});},getHtml:function(w,h){var html="<div id='PlayerContainer'>";html+=this.getPlayerHtml(w,h);html+="</div>";return html;},getPlayerHtml:function(w,h){var file="http://blip.tv/rss/flash/"+this.postId;var playerPath="/scripts/flash/showplayer.swf?showplayerpath=http%3A%2F%2Fblip.tv/scripts/flash/showplayer.swf&enablejs=true&lightcolor=0x3A5C9B&frontcolor=0x444444&backcolor=0xE5E5E5&showguidebutton=false&showfsbutton=false&showmorebutton=false&showsharebutton=false&autostart=false&noAds=true&file="+file;
var html='<embed src="'+playerPath+'" wmode="opaque" type="application/x-shockwave-flash" width="'+w+'" height="'+(h-6)+'" allowscriptaccess="always"></embed>';return html;},removePlayer:function(){$("#PlayerContainer").remove();$("#EngagementMark").remove();$(".ReportContent").css("display","block");$("#PoweredByTubeMogul").hide();},updateMarkPosition:function(seconds){var graphWidth=592;var marginLeft=28;if(this.duration>0){var percentElapsed=(parseFloat(seconds)/this.duration);}else{var percentElapsed=0;}var markPos=((graphWidth-marginLeft)*percentElapsed);var markLeft=markPos<=graphWidth?markPos:graphWidth;$("#EngagementMark").css({marginLeft:(markLeft+marginLeft)});},getTooltipHtml:function(data,type){var quantity=data.datapoint[1];var html="<div id='"+this.target+"Tooltip' class='Tooltip'><div class='TooltipDate'>"+quantity+"% of viewers</div><div class='TooltipContents'>watched until "+data.datapoint[0]+" seconds</div><img class='TooltipNub' src='/skin/mercury/dashboard/images/stats.nub.gif'></div>";
return html;}});BLIP.Class.create("BLIP.Controls.Graph.ViewsGraph",BLIP.Controls.Graph,function(config){BLIP.Controls.Graph.call(this,config);},{viewsColor:"#3F70AA",revenueColor:"#EA9923",lines:{lineWidth:1,show:true},appendRevenueData:function(originalData,data){originalData.push(this.getFlotFormattedRevenueObject(data));return originalData;},getFlotFormattedViewsData:function(data){var newData=new Array();for(var i=0;i<data.length;i++){var row=new Array();row.push(data[i].unixTime);row.push(data[i].views);newData.push(row);}return newData;},getFlotFormattedRevenueData:function(data){var newData=new Array();for(var i=0;i<data.length;i++){var row=new Array();row.push(data[i].unixTime);row.push(data[i].revenue);newData.push(row);}return newData;},getFlotFormattedViewsObject:function(data){var newData=new Array();var thisContext=this;newData.push({color:thisContext.viewsColor,data:data,label:"Views",lines:thisContext.lines});return newData;},getFlotFormattedRevenueObject:function(data){var thisContext=this;
return({color:thisContext.revenueColor,data:data,label:"Revenue",lines:thisContext.lines,yaxis:2,y2axis:{ticks:10}});}});BLIP.Class.create("BLIP.Controls.Graph.ViewsGraph.SmallSummary",BLIP.Controls.Graph.ViewsGraph,function(config){var thisContext=this;this.url=config.url;BLIP.Controls.Graph.ViewsGraph.call(this,config);$(document).ready(function(){thisContext.initialize();});},{legendPosition:"ne",target:"",url:"",initialize:function(){var thisContext=this;this.url+="&callback=viewsGraph.updateGraph";$.getScript(this.url);},emptyViews:function(){$("#"+this.target).addClass("EmptyStats");},updateGraph:function(data){var totalviews=0;var totalRevenue=0;if(data.length>0){data.reverse();for(var i=0;i<data.length;i++){totalviews+=data[i]["views"];totalRevenue+=parseFloat(data[i]["revenue"]);}}$("#StatsSummary #SummaryViews").html(BLIP.Utils.formatNumber(totalviews)+" views");if($("#StatsSummary #SummaryRevenue").length>0){$("#StatsSummary #SummaryRevenue").html("earned "+BLIP.Utils.formatNumber(totalRevenue.toFixed(2),"$"));
}if(totalviews==0){this.emptyViews();}else{var viewsData=viewsGraph.getFlotFormattedViewsData(data);var graphableData=viewsGraph.getFlotFormattedViewsObject(viewsData);if($("#StatsSummary #SummaryRevenue").length>0){var revenueData=viewsGraph.getFlotFormattedRevenueData(data);graphableData=viewsGraph.appendRevenueData(graphableData,revenueData);}viewsGraph.plotGraph(graphableData);}}});BLIP.Class.create("BLIP.Controls.Grid",BLIP.Controls.Control,function(config){var thisContext=this;this.target=config.target;this.items=config.items;this.labels=config.labels;this.style=config.style;controlConfig={target:config.target,delayInitialization:false,useDocumentWrite:false};BLIP.Controls.Control.call(this,controlConfig);$(document).ready(function(){thisContext.initialize();});},{columns:{},config:{},items:[],labels:[],target:"",style:[],add:function(item){},getLabelsHtml:function(){var th="";var thisContext=this;for(l in this.labels){th+=this.wrapHtmlTag({tag:"th",contents:thisContext.labels[l],elementClass:thisContext.style.td[l]});
}return th;},getHtml:function(items){var table="";var tr="";var thisContext=this;for(i in items){var td="";var c=0;for(r in items[i]){td+=this.wrapHtmlTag({tag:"td",contents:items[i][r],elementClass:thisContext.style.td[c]});c++;}tr+=this.wrapHtmlTag({tag:"tr",contents:td});}var th=this.getLabelsHtml();table=this.wrapHtmlTableTag(th+tr,this.style.table);return table;},getSidFromOtterAuth:function(sid){return sid.substring(0,7);},getTRHtml:function(){var html="";return html;},initialize:function(){var thisContext=this;thisContext.writeHtml(thisContext.getHtml(thisContext.items));},wrapHtmlTableTag:function(contents,htmlClass){var classHtml=htmlClass?" class='"+htmlClass+"'":"";var html="<table cellpadding='0' cellspacing='0' border='0'"+classHtml+">";html+=contents;html+="</table>";return html;},wrapHtmlTag:function(params){var idHtml=params.elementId?" id='"+params.elementId+"'":"";var classHtml=params.elementClass?" class='"+params.elementClass+"'":"";var inputNameHtml=params.elementName?" name='"+params.elementName+"'":"";
var inputValueHtml=params.elementValue?" value='"+params.elementValue+"'":"";var onClickHtml=params.onClick?" onClick='"+params.onClick+"'":"";var attributesHtml=idHtml+classHtml+inputNameHtml+inputValueHtml+onClickHtml;var html="<"+params.tag+attributesHtml+">";html+=params.contents;html+="</"+params.tag+">";return html;},writeHtml:function(html){$("#"+this.target).html(html);}});BLIP.Class.create("BLIP.Controls.Grid.DistributionGrid",BLIP.Controls.Grid,function(config){var thisContext=this;this.config=config;this.columns=config.columns;BLIP.Controls.Grid.call(this,config);},{config:{},blogs:0,activeDestinations:0,totalDestinations:0,getAmountMessageHtml:function(amount,total){if(amount!=total){var html="It looks like you're only distributing your show to <span>"+amount+" of "+total+" destinations</span>. Configuring your account information with the rest of the destinations will help increase your reach.";}else{var html="Wonderful! It looks like you're distributing to all destinations. This should help increase your total potential audience.";
}return html;},getHtml:function(items){var table="";var tr="";var thisContext=this;for(var i=0;i<items.length;i++){tr+=this.getTRHtml(items[i],i);if(items[i]["active"]!="0"){this.activeDestinations++;}if(items[i]["type"]=="blog"){this.blogs++;}}var tbody=this.wrapHtmlTag({tag:"tbody",contents:tr,elementId:"EpisodeRowsWrapper"});var thead=this.wrapHtmlTag({tag:"thead",contents:thisContext.getLabelsHtml()});table=this.wrapHtmlTableTag(thead+tbody,this.style.table);return table;},getSortedItems:function(items){var sortedItems=new Array();for(var item in items){var dest=items[item];if(sortedItems[dest.type]==undefined){sortedItems[dest.type]=new Array();}sortedItems[dest.type].push(dest);}return sortedItems;},getTRHtml:function(item,index){var td="";var thisContext=this;for(var i=0;i<this.columns.length;i++){switch(this.columns[i]){case"name":var url="<a href='/dashboard/distribution/"+item["token"]+"'>"+item["name"]+"</a>";td+=this.wrapHtmlTag({tag:"td",contents:url,elementClass:thisContext.style.td[i]});
break;case"status":var distStatus;if(item["status"]!=1){distStatus="<span class='OfflineDest'>Offline <img src='/skin/mercury/dashboard/images/dist.dest.offline.gif'></span>";}else{if(item["active"]==1){distStatus="<span class='ConfiguredDest'>Configured</span>";}else{distStatus="Not Configured";}}td+=this.wrapHtmlTag({tag:"td",contents:distStatus,elementClass:thisContext.style.td[i]});break;case"type":break;default:td+=this.wrapHtmlTag({tag:"td",contents:item[thisContext.columns[i]],elementClass:thisContext.style.td[i]});break;}}return this.wrapHtmlTag({tag:"tr",contents:td,elementClass:index%2?undefined:"Even",elementId:"EpisodeRow"+index});},initialize:function(){this.writeGrid();this.writeCompleteness();},writeCompleteness:function(){if(this.blogs>1){this.activeDestinations-=(this.blogs-1);this.totalDestinations-=this.blogs;}var amount=Math.floor((this.activeDestinations/this.totalDestinations)*100);var completenessBar=new BLIP.Controls.ProgressMeter.CompletenessProgressMeter({target:"AmountBar"});
completenessBar.setProgress(amount);$("#Amount").html(amount+"%");$("#AmountMessage").html(this.getAmountMessageHtml(this.activeDestinations,this.totalDestinations));},writeGrid:function(){var sortedItems=this.getSortedItems(this.items);this.totalDestinations=this.items.length;for(var i in sortedItems){$("#"+this.config.targets[i]).html(this.getHtml(sortedItems[i]));}}});BLIP.Class.create("BLIP.Controls.Grid.EpisodeGrid",BLIP.Controls.Grid,function(config){var thisContext=this;this.config=config;config.labels=this.labels;config.style=this.style;this.user=config.user;this.currentlyLoading=true;this.setJSON(this.currentPage,function(items){thisContext.currentlyLoading=false;thisContext.items=items;config.items=items;if(items.length>0){BLIP.Controls.Grid.call(this,config);}else{thisContext.setEmptyCSS();}});},{columns:["checkbox","thumbnail120Url","title","mediaDuration","datestampText","conversion","hidden","contentRating"],config:{},currentPage:1,currentProgressMeterPage:0,currentlyLoading:false,endOfList:false,searchMode:false,episodesLocked:true,searchQuery:"",searchType:"",labels:["<input type='checkbox' onClick='EpisodeGrid.toggleCheckAll()' id='CheckAll'>","Thumbnail","Title","Duration","Date","Status","Privacy","Rating"],order:[],postsArray:[],progressMeters:[],stdPageLength:12,isPolling:false,style:{table:"Grid",td:["Check","Thumbnail","EpisodeTitle","Length","Date","Conversion","Privacy","Rating"]},user:0,modalEdit:{},modalRemove:{},appendItems:function(items){if(items[0]){if(items[0].postsId>0){$("#CheckAll").attr("checked",false);
var tr="";for(var i=0;i<items.length;i++){tr+=this.getTRHtml(items[i],(((this.currentPage-1)*this.stdPageLength)+i));this.insertAssocArray(items[i]);}$("#EpisodeRowsWrapper").append(tr);this.refreshZebraStripes();if(!this.episodesLocked){this.registerDnD();}this.loadProgressMeterJSON(items);this.setOrders(items);}}else{if(this.searchMode&&this.currentPage==1){$("#EpisodeRowsWrapper").html(this.getSearchFailedHtml());}}},bigMonitorCheck:function(){if(this.endOfList){return;}if($(window).height()==$(document).height()){this.currentlyLoading=true;this.currentPage++;if(this.searchMode){this.loadSearch(this.currentPage);}else{this.load(this.currentPage);}}},bindSearchSubmit:function(){var thisContext=this;$("#EpisodeGridSearch input").keydown(function(event){if(event.keyCode==13){thisContext.search();}});},checkAll:function(status){$("#EpisodeGrid INPUT[type='checkbox']").attr("checked",status);},checkPageForward:function(){var endOfList;if(!this.endOfList){if(($(window).scrollTop()+$(window).height()>$(document).height()/1.5)&&this.currentlyLoading==false){this.currentlyLoading=true;
this.currentPage++;if(this.searchMode){this.loadSearch(this.currentPage);}else{this.load(this.currentPage);}}}},clearProgressMeters:function(){var polling=false;for(var i in this.progressMeters){if(!this.progressMeters[i]){continue;}for(var j in this.progressMeters[i]){if(!this.progressMeters[i][j]){continue;}this.progressMeters[i][j].stopPolling();if(this.progressMeters[i][j].isPolling){polling=true;}else{delete this.progressMeters[i][j];}}}if(polling==false){this.progressMeters=[];this.isPolling=false;}else{this.isPolling=true;}},clearItems:function(type){$("#EpisodeRowsWrapper").html("");this.currentlyLoading=false;this.currentPage=1;this.currentProgressMeterPage=0;this.items=[];this.postsArray=[];this.clearProgressMeters();this.endOfList=false;},duplicateItem:function(item){if(this.postsArray[item.postsId]){return 1;}return 0;},edit:function(){BLIP.Utils.clearAllErrors();var posts=this.getSelectedPosts();if(posts.length==0){BLIP.Utils.showError({div:"#EpisodeEditButton",msg:"Sorry, you can't edit episodes without selecting some first. Use the checkboxes to select the episodes you wish to edit."});
}else{var thisObj=this;if(posts.length>1){var purpose="Batch edit";var name="("+posts.length+" episodes)";}else{var purpose="Editing";var name=this.postsArray[$("#EpisodeGrid INPUT:checked").attr("id")];}this.modalEdit=new BLIP.Controls.ModalWindow({target:"EpisodeGrid",contentsUrl:"/dashboard/episode_edit?no_wrap=1&users_id="+this.user+"&posts="+posts.join(","),purpose:purpose,name:name});this.modalEdit.show();}},endOfListCheck:function(items){if(items.length==0){this.endOfList=true;}},getConversionHtml:function(item){var html="<div class='ConversionCompleteWrapper'>";html+="<div class='ActivityLink'><a href='/dashboard/episode/"+item["postsId"]+"'>Episode details</a> or <a href='/file/"+item["itemId"]+"' target='_BLANK' class='ExternalLink'>Permalink</a></div>";html+="<div class='ActivityLink LastActivityLink'><a href='/dashboard/episode/"+item["postsId"]+"' class='MutedLink'>"+(item["comments"]||0)+" comments</a> and <a href='/dashboard/stats/"+item["postsId"]+"' class='MutedLink'>"+(item["views"]||0)+" views and $"+(item["revenue"]||"0.00")+"</a></div>";
html+="</div>";return html;},getFormattedDuration:function(seconds){return seconds;},formatLeadingZeros:function(t){if(t<10){return"0"+t;}else{return t;}},formatSecondsAsTime:function(s){var time="";var hours;var minutes;var seconds;if(s>=3600){hours=Math.floor(s/3600);time+=hours+":";s-=(hours*3600);}if(s>=60){minutes=Math.floor(s/60);if(hours){time+=this.formatLeadingZeros(minutes)+":";}else{time+=minutes+":";}s-=(minutes*60);}else{if(hours){time+="00:";}else{time+="0:";}}if(s>0){time+=this.formatLeadingZeros(s);}else{time+="00";}return time;},getHtml:function(items){var table="";var tr="";var thisContext=this;for(var i=0;i<items.length;i++){tr+=this.getTRHtml(items[i],i);this.insertAssocArray(items[i]);}var tbody=this.wrapHtmlTag({tag:"tbody",contents:tr,elementId:"EpisodeRowsWrapper"});var thead=this.wrapHtmlTag({tag:"thead",contents:thisContext.getLabelsHtml()});table=this.wrapHtmlTableTag(thead+tbody,this.style.table);return table;},getSearchUrlForPage:function(pg,query,type){var sid=this.getSidFromOtterAuth(this.config.otter_auth);
return this.config.domain+"search/user?search="+query+"&type="+type+"&users_id="+this.user+"&version=2&callback=EpisodeGrid.loadGrid&page="+pg+"&sid="+sid+"&cc="+BLIP.Utils.getCacheKiller();},getSearchFailedHtml:function(){var html="<tr>";html+="<td colspan='8' class='NoSearchResults' valign='middle'>Sorry, We have no results matching that search term.</td>";html+="<tr>";return html;},getSelectedPosts:function(){var posts=new Array();$("#EpisodeGrid INPUT:checked").each(function(i){posts[i]=$(this).attr("id");});return posts;},getTRHtml:function(item,index){var td="";var thisContext=this;for(var i=0;i<this.columns.length;i++){switch(this.columns[i]){case"checkbox":td+=this.wrapHtmlTag({tag:"td",contents:"<input type='checkbox' id='"+item["postsId"]+"' onClick='"+BLIP.Delegate.createAsString(this,this.toggleSelectRow,item["postsId"])+"'>\n<input type='hidden' value='"+item["postsId"]+"'>",elementClass:thisContext.style.td[i]});break;case"thumbnail120Url":td+=this.wrapHtmlTag({tag:"td",contents:"<a href='/file/"+item["itemId"]+"' target='_BLANK'><img src='"+(item["thumbnail120Url"]||"/skin/mercury/dashboard/images/dashboard.placeholder_video_75.gif?v=1.5")+"'></a>",elementClass:thisContext.style.td[i]});
break;case"title":td+=this.wrapHtmlTag({tag:"td",contents:"<a href='/dashboard/episode/"+item["postsId"]+"' target='_BLANK'>"+item[thisContext.columns[i]]+"</a>",elementClass:thisContext.style.td[i]});break;case"mediaDuration":var duration;if(item["media"]){duration=thisContext.formatSecondsAsTime(item["media"].duration);}else{duration="?";}td+=this.wrapHtmlTag({tag:"td",contents:duration,elementClass:thisContext.style.td[i]});break;case"hidden":var privacy=item["hidden"]==1?"<span class='PrivateVideo'>Private</span>":"Public";td+=this.wrapHtmlTag({tag:"td",contents:privacy,elementClass:thisContext.style.td[i]});break;case"conversion":td+=this.wrapHtmlTag({tag:"td",contents:this.getConversionHtml(item),elementClass:thisContext.style.td[i]});break;default:td+=this.wrapHtmlTag({tag:"td",contents:item[thisContext.columns[i]],elementClass:thisContext.style.td[i]});break;}}var colorClass=index%2?"":"Even";return this.wrapHtmlTag({tag:"tr",contents:td,elementClass:colorClass,elementId:"EpisodeRow"+index});
},getUrlForPage:function(pg){var sid=this.getSidFromOtterAuth(this.config.otter_auth);return this.config.domain+"posts/?user="+this.user+"&skin=json&version=2&callback=EpisodeGrid.loadGrid&page="+pg+"&sid="+sid+"&type=file&nsfw=dc&cc="+BLIP.Utils.getCacheKiller();},initialize:function(){$("html, body").animate({scrollTop:0},"fast");this.writeHtml(this.getHtml(this.items));this.loadProgressMeterJSON(this.items);this.setOrders(this.items);this.endOfListCheck(this.items);this.setScrollEvent();this.bindSearchSubmit();},insertAssocArray:function(item){this.postsArray[item.postsId]=item.title;},load:function(pg){var thisContext=this;var page=pg||1;$("#LoadingIndicator").fadeIn();thisContext.currentlyLoading=true;this.setJSON(page,function(items){$("#LoadingIndicator").fadeOut();thisContext.currentlyLoading=false;var pruned_items=thisContext.pruneDupes(items);thisContext.appendItems(pruned_items);thisContext.mergeResults(pruned_items);thisContext.endOfListCheck(items);thisContext.bigMonitorCheck();
});},loadGrid:function(items){this.initCallback(items);},loadProgressMeterJSON:function(items){var posts=items[0].postsId;for(var i=1;i<items.length;i++){posts+=","+items[i].postsId;}var queryUrl="/posts/conversion_status?skin=json&no-cache=1&nocache=1&ids="+posts+"&callback=EpisodeGrid.loadProgressMeters";$.getScript(queryUrl);},loadProgressMeters:function(items){thisContext=this;for(var i=0;i<items.length;i++){var rowNum;if(items[i].conversions&&items[i].conversions.length>0){var rowNum=i+(this.currentProgressMeterPage*this.stdPageLength);this.progressMeters[rowNum]=new Array();items[i].conversions.sort(this.sortConversionItems);}for(var j=0;j<items[i].conversions.length;j++){switch(items[i].conversions[j].status){case"Requested":case"Error":case"Timeout":case"Pending":var progressDivTarget=this.target+" #EpisodeRow"+(rowNum);$("#"+progressDivTarget+" .Conversion").prepend("<div id='ConversionRow"+rowNum+"_"+j+"' class='ConversionRow'>?</div>");this.progressMeters[rowNum].push(new BLIP.Controls.ProgressMeter.TranscodingProgressMeter({target:progressDivTarget+" .Conversion #ConversionRow"+rowNum+"_"+j,id:items[i].id,itemid:items[i].item_id,conversionsId:items[i].conversions[j].conversions_id,parent:"EpisodeGrid.progressMeters["+rowNum+"]["+(this.progressMeters[rowNum].length)+"]",hasTime:true}));
break;case"Completed":break;}}}this.currentProgressMeterPage++;},mergeResults:function(items){var thisContext=this;if(!items||!items.length){return;}for(var i=0;i<items.length;i++){this.items.push(items[i]);}},pruneDupes:function(items){if(!items||!items.length){return items;}var pruned=[];for(var i=0;i<items.length;i++){if(!this.duplicateItem(items[i])){pruned.push(items[i]);}}return pruned;},refreshZebraStripes:function(items){$("#EpisodeGrid tr").removeClass("Even");$("#EpisodeGrid tr:odd").addClass("Even");},registerDnD:function(){var thisContext=this;$("#EpisodeGrid").tableDnD({enable:true,scrollAmount:25,onDragClass:"EpisodeRowDragging",onDrop:function(table,row){thisContext.respositionRow(table,row);}});},remove:function(){BLIP.Utils.clearAllErrors();var posts=this.getSelectedPosts();if(posts.length==0){BLIP.Utils.showError({div:"#EpisodeRemoveButton",msg:"Sorry, you can't remove episodes without selecting some first. Use the checkboxes to select the episodes you wish to remove."});
}else{var thisObj=this;var name;var purpose;if(posts.length>1){purpose="Batch remove";name="("+posts.length+" episodes)";}else{purpose="Removing";name=this.postsArray[$("#EpisodeGrid INPUT:checked").attr("id")];}this.modalRemove=new BLIP.Controls.ModalWindow({target:"EpisodeGrid",contentsUrl:"/dashboard/episode_remove?no_wrap=1&posts="+posts.join(","),purpose:purpose,name:name});this.modalRemove.show();}},respositionRow:function(table,row){var oldOrder=this.order[row.id];var previousRow=($("tr#"+row.id).prev());var nextRows=($("tr#"+row.id).next());var prevOrder=this.order[previousRow.attr("id")]||0;var nextOrder=this.order[nextRows.attr("id")]||((this.items.length+1)*1000000000);var newOrder=((nextOrder+prevOrder)/2);if(oldOrder!=newOrder){this.order[row.id]=((nextOrder+prevOrder)/2);var postsId=$(row).find("td input:hidden").val();var nextPostsId=nextRows.find("td input:hidden").val()||-1;$.get("/posts/reorder/?posts_id="+postsId+"&before_posts_id="+nextPostsId+"&skin=json&no-cache=1");
BLIP.Utils.updateCacheKiller(this.config.cookieDomain);}$("#EpisodeGrid tr").removeClass("Even");$("#EpisodeGrid tr:odd").addClass("Even");},returnToEpisodesList:function(){this.searchMode=false;this.clearItems("episodes");this.showToolbar();this.switchModes();},switchModes:function(){if(this.isPolling){this.clearProgressMeters();setTimeout(BLIP.Delegate.create(this,this.switchModes),1000);return;}if(this.searchMode){this.loadSearch();}else{this.load();}},setDraggable:function(){var thisContext=this;this.episodesLocked=false;this.registerDnD();$("#EpisodeGrid tbody").addClass("EpisodeRowHover");$("#PerformActions").slideUp(function(){$("#DragActions").slideDown(function(){$("#ActionsTab").animate({marginRight:"102px"},400);});});},setEmptyCSS:function(){$("#GridWrapper").css("background","#FFFFFF url(/skin/mercury/dashboard/images/empty.episodes.gif) no-repeat 50% 50%");$("#GridWrapper").height(150);},search:function(){this.searchQuery=$("#EpisodeGridSearch #query").val();this.searchType=$("#EpisodeGridSearch #type").val();
if(this.searchQuery&&this.searchType){this.searchMode=true;this.showSearchToolbar();this.clearItems();this.switchModes();}},loadSearch:function(pg){var thisContext=this;this.currentlyLoading=true;var page=pg||1;$("#LoadingIndicator").fadeIn();this.searchJSON(page,this.searchQuery,this.searchType,function(items){$("#LoadingIndicator").fadeOut();thisContext.currentlyLoading=false;var pruned_items=thisContext.pruneDupes(items);thisContext.appendItems(pruned_items);thisContext.mergeResults(pruned_items);thisContext.endOfListCheck(items);thisContext.bigMonitorCheck();});},searchJSON:function(pg,query,type,func){this.initCallback=func;var url=this.getSearchUrlForPage(pg,query,type);$.ajax({url:url,cache:true,dataType:"script"});},setJSON:function(pg,func){this.initCallback=func;var url=this.getUrlForPage(pg);$.ajax({url:url,cache:true,dataType:"script"});},setOrders:function(items){for(var i=0;i<items.length;i++){var count=((this.currentPage-1)*this.stdPageLength)+i;this.order["EpisodeRow"+count]=(count*1000000);
}},setScrollEvent:function(){var thisContext=this;$(window).scroll(function(){thisContext.checkPageForward();});this.bigMonitorCheck();},setSortingEvents:function(){var thisContext=this;$("#EpisodeGrid").tablesorter({cssAsc:"SortAscending",cssDesc:"SortDescending",headers:{0:{sorter:false},1:{sorter:false}}});},showSearchToolbar:function(){if(this.episodesLocked==false){this.unsetDraggable();}else{$("#EpisodeGridToolbar #Reorder").fadeOut(function(){$("#ActionsTab").animate({marginRight:"102px"},400,function(){$("#SearchActions").fadeIn();});});}},showToolbar:function(){$("#EpisodeGridToolbar #SearchActions").fadeOut(function(){$("#ActionsTab").animate({marginRight:"10px"},400,function(){$("#Reorder").fadeIn();});});},sortConversionItems:function(a,b){if(a.format==b.format){return(b.conversions_id-a.conversions_id);}else{if(b.format.toLowerCase()<a.format.toLowerCase()){return -1;}else{return 1;}}},toggleCheckAll:function(){if($("#CheckAll").attr("checked")){this.checkAll(true);$("#GridWrapper tbody tr").addClass("RowSelected");
}else{this.checkAll(false);$("#GridWrapper tbody tr").removeClass("RowSelected");}this.toggleEditButtons();},toggleEditButtons:function(){var numChecked=$("#EpisodeGrid INPUT:checked").size();if(numChecked==0){$("#EpisodeEditButton").attr("disabled","disabled");$("#EpisodeRemoveButton").attr("disabled","disabled");}else{$("#EpisodeEditButton").attr("disabled","");$("#EpisodeRemoveButton").attr("disabled","");}},toggleSelectRow:function(id){var parentTr=$("#"+id).parent().parent("tr");if($(parentTr).hasClass("RowSelected")){$(parentTr).removeClass("RowSelected");}else{$(parentTr).addClass("RowSelected");}this.toggleEditButtons();},unsetDraggable:function(callback){var thisContext=this;this.episodesLocked=true;$("#EpisodeGrid").tableDnD({enable:false});$("#EpisodeGrid tbody").removeClass("EpisodeRowHover");$("#DragActions").slideUp(function(){if(thisContext.searchMode){$("#EpisodeGridToolbar #Reorder").hide();}$("#PerformActions").slideDown(function(){if(thisContext.searchMode){$("#SearchActions").fadeIn();
}else{$("#ActionsTab").animate({marginRight:"10px"},400);}});});},wrapHtmlTableTag:function(contents,htmlClass){var classHtml=htmlClass?" class='"+htmlClass+"'":"";var html="<table cellpadding='0' cellspacing='0' border='0'"+classHtml+" id='EpisodeGrid'>";html+=contents;html+="</table>";return html;}});BLIP.Class.create("BLIP.Controls.Grid.EpisodesLatest",BLIP.Controls.Grid.EpisodeGrid,function(config){var thisContext=this;this.target=config.target,this.token=config.token,$(document).ready(function(){BLIP.Controls.Grid.EpisodeGrid.call(thisContext,config);});},{target:"",token:"",columns:["title","conversion"],labels:["Title","Status"],progressMeters:[],style:{table:"Grid",td:["EpisodeTitle","Conversion"]},getUrlForPage:function(pg){var url=this.config.domain+"dashboard/latest";if(this.token!=undefined){url+="/"+this.token;}url+="?skin=json&version=2&callback=EpisodeGrid.loadGrid&users_id="+this.user+"&cc="+BLIP.Utils.getCacheKiller();return url;},initialize:function(){this.writeHtml(this.getHtml(this.items));
this.loadProgressMeterJSON(this.items);},setEmptyCSS:function(){$("#EpisodesLatest").css("background","#FFFFFF url(/skin/mercury/dashboard/images/empty.episodes.gif) no-repeat 50% 50%");$("#EpisodesLatest").css("border","1px solid #DDDDDD");$("#EpisodesLatest").height(250);},setScrollEvent:function(){}});BLIP.Class.create("BLIP.Controls.Grid.EpisodesLatest.DistributionsLatest",BLIP.Controls.Grid.EpisodesLatest,function(config){var thisContext=this;this.target=config.target,this.token=config.token,$(document).ready(function(){BLIP.Controls.Grid.EpisodesLatest.call(thisContext,config);});},{target:"",token:"",columns:["title","conversion"],labels:["Title","Status"],style:{table:"Grid",td:["EpisodeTitle","Conversion"]},getConversionHtml:function(item){var html="<div class='ConversionCompleteWrapper'>";switch(item["crosspostsStatus"]){case"Requested":case"Processing":case"Pending":html+="<div class='DistStatus DistPending'>";html+="				<div class='DistLabel'>";html+="Distribution: Pending";
break;case"Completed":case"Complete":html+="<div class='DistStatus DistComplete'>";html+="				<div class='DistLabel'>";html+="Distribution: Complete";break;case"Error":html+="<div class='DistStatus DistError'>";html+="				<div class='DistLabel'>";html+="Distribution: Error";break;}html+="</div>";if(item["crosspostsMessage"]!=""){var func;var lang="More info";if(item["crosspostsStatus"]=="Error"){func=BLIP.Utils.showError;lang="Troubleshoot";}else{func=BLIP.Utils.showHelpfulError;}html+='<input class="Troubleshoot" id="Tip'+"_"+item["crosspostsRegId"]+"_"+item["postsId"]+'" type="button" onClick="'+BLIP.Delegate.createAsString(BLIP.Utils,func,{div:"#Tip"+"_"+item["crosspostsRegId"]+"_"+item["postsId"],msg:item["crosspostsMessage"]})+'" value="'+lang+'">';}html+="<div class='Clear'></div>";html+="</div>";html+="<div class='ActivityLink'><a href='/dashboard/episode/"+item["postsId"]+"'>Episode details</a> or <a href='/dashboard/episode/"+item["postsId"]+"'>Permalink</a></div>";html+="<div class='ActivityLink LastActivityLink'><a href='/dashboard/episode/"+item["postsId"]+"' class='MutedLink'>"+(item["comments"]||0)+" Comments</a> and <a href='/dashboard/episode/"+item["postsId"]+"' class='MutedLink'>"+(item["views"]||0)+" views and $"+(item["revenue"]||"0.00")+"</a></div>";
html+="</div>";return html;},getUrlForPage:function(pg){var url=this.config.domain+"dashboard/latest";if(this.token!=undefined){url+="/"+this.token;}url+="?skin=json&version=2&callback=EpisodeGrid.loadGrid&users_id="+this.user+"&cc="+BLIP.Utils.getCacheKiller();return url;},initialize:function(){this.writeHtml(this.getHtml(this.items));},setScrollEvent:function(){},getTRHtml:function(item,index){var td="";var thisContext=this;for(var i=0;i<this.columns.length;i++){switch(this.columns[i]){case"title":var url=item["crosspostsUrl"]!=""?item["crosspostsUrl"]:"/file/"+item["itemId"];td+=this.wrapHtmlTag({tag:"td",contents:"<a href='"+url+"' target='_BLANK'>"+item[thisContext.columns[i]]+"</a>",elementClass:thisContext.style.td[i]});break;case"conversion":td+=this.wrapHtmlTag({tag:"td",contents:this.getConversionHtml(item),elementClass:thisContext.style.td[i]});break;default:td+=this.wrapHtmlTag({tag:"td",contents:item[thisContext.columns[i]],elementClass:thisContext.style.td[i]});break;}}var colorClass=index%2?"":"Even";
return this.wrapHtmlTag({tag:"tr",contents:td,elementClass:colorClass,elementId:"EpisodeRow"+index});}});BLIP.Class.create("BLIP.Controls.Grid.PaginatedGrid",BLIP.Controls.Grid,function(config){var thisContext=this;this.config=config;this.rows=config.rows;this.columns=config.columns;this.units=config.units;this.prefix=config.prefix;this.suffix=config.suffix;this.maxLengths=config.maxLengths||new Array();this.smartLoading=config.smartLoading;this.currentItems=new Array();this.totalItems=new Array();BLIP.Controls.Grid.call(this,config);},{config:{},endingRow:0,index:0,maxLengths:[],totalItems:[],currentItems:[],page:0,remainder:0,getHtml:function(items){var tr="";var rows=(items==undefined)||(items.length<this.rows)?this.rows:items.length;var thisContext=this;for(i=0;i<rows;i++){var td="";var c=0;for(var r in this.columns){if(items==undefined){var contents="&nbsp;";}else{if(i>items.length||items[i]==undefined){var contents="&nbsp;";}else{if(this.maxLengths&&this.maxLengths[r]>0){var contents=BLIP.Utils.truncate(items[i][this.columns[r]],this.maxLengths[r]);
}else{var contents=items[i][this.columns[r]];}if(this.prefix&&this.prefix[r]!=""){contents=this.prefix[r]+contents;}if(this.suffix&&this.suffix[r]!=""){contents+=this.suffix[r];}}}td+=this.wrapHtmlTag({tag:"td",contents:contents,elementClass:thisContext.style.td[c]});c++;}tr+=this.wrapHtmlTag({tag:"tr",contents:td});}var th=this.getLabelsHtml();var html=this.wrapHtmlTableTag(th,this.style.table);html+=BLIP.Utils.wrapHtmlTag({tag:"div",elementId:thisContext.target+"Wrapper",elementClass:"TableWrapper",contents:thisContext.wrapHtmlTableTag(tr,thisContext.style.table)});html+=this.getPagination();return html;},getItems:function(){return this.currentItems;},getPagination:function(){var html='<div class="GridPaginationWrapper">';html+='	<div class="GridPagination">';html+='		<div class="GridPaginationButtons">';html+="			<a onClick="+BLIP.Delegate.createAsString(this,this.previousPage)+">Previous</a>";html+="			<a onClick="+BLIP.Delegate.createAsString(this,this.nextPage)+">Next</a>";html+="		</div>";
html+='		<div class="GridPaginationStatus"><span class="CurrentItem">0</span> - <span class="ItemsPerPage">0</span> of <span class="Total">0</span> '+this.units+"</div>";html+="	</div>";html+="</div>";return html;},initialize:function(){var thisContext=this;$(function(){thisContext.writeHtml(thisContext.getHtml(thisContext.currentItems));thisContext.sizeWrapper();$(".Grid tr:odd").addClass("Odd");thisContext.updateTotalCount();thisContext.updateDefaultCurrentCount();thisContext.page=0;});},nextPage:function(){if(((this.page+1)*this.rows)<this.currentItems.length){this.page++;var tdHeight=$("#"+this.target+"Wrapper tr").height();var remainingRows=this.currentItems.length-((this.page)*this.rows);if(remainingRows<this.rows){var moveHeight=0-(((this.page-1)*(tdHeight*this.rows))+(remainingRows*tdHeight));this.remainder=remainingRows;this.index=this.currentItems.length-this.rows+1;this.endingRow=this.currentItems.length;}else{var moveHeight=0-(this.page*(tdHeight*this.rows));this.index+=this.rows;
this.endingRow=this.index+this.rows-1;}this.updateCurrentCount(this.index,this.endingRow);$("#"+this.target+"Wrapper table").animate({marginTop:moveHeight+"px"},650);}},previousPage:function(){if(((this.page-1)*this.rows)>=0){this.page--;var tdHeight=$("#"+this.target+"Wrapper tr").height();var moveHeight=0-(this.page*(tdHeight*(this.rows)));if(this.remainder>0){moveHeight+=(tdHeight*(this.rows-this.remainder));}if(moveHeight>0){moveHeight=0;this.remainder=0;this.index=1;this.endingRow=this.rows;}else{this.index-=(this.rows);this.endingRow=this.index+(this.rows-1);}this.updateCurrentCount(this.index,this.endingRow);$("#"+this.target+"Wrapper table").animate({marginTop:moveHeight+"px"},650);}},setItems:function(items){if(this.smartLoading){for(var i=0;i<items.length;i++){this.currentItems.push(items[i]);this.totalItems.push(items[i]);}}else{this.currentItems=items;}this.initialize();},smartSetItems:function(numItems){var newCurrent=new Array;for(var i=0;i<numItems;i++){newCurrent.push(this.totalItems[i]);
}this.currentItems=newCurrent;this.initialize();},sizeWrapper:function(){var tdHeight=$("#"+this.target+"Wrapper tr").height();$("#"+this.target+"Wrapper").css("height",(tdHeight*this.rows)+"px");$("#"+this.target+"Wrapper").css("overflow","hidden");},updateCurrentCount:function(cur,total){$("#"+this.target+" .CurrentItem").html(cur);$("#"+this.target+" .ItemsPerPage").html(total);},updateDefaultCurrentCount:function(){if(this.currentItems!=undefined){if(this.currentItems.length==0){this.index=0;}else{this.index=1;}this.endingRow=(this.currentItems.length<this.rows)?this.currentItems.length:this.rows;this.updateCurrentCount(this.index,this.endingRow);}},updateTotalCount:function(){if(this.currentItems!=undefined){$("#"+this.target+" .Total").html(this.currentItems.length);}}});BLIP.Class.create("BLIP.Controls.Grid.PaginatedGrid.DetailsDayPaginatedGrid",BLIP.Controls.Grid.PaginatedGrid,function(config){BLIP.Controls.Grid.PaginatedGrid.call(this,config);},{getHtml:function(items){var tr="";
var rows=(items==undefined)||(items.length<this.rows)?this.rows:items.length;var thisContext=this;for(i=0;i<rows;i++){var td="";var c=0;for(var r in this.columns){if(items==undefined){var contents="&nbsp;";}else{if(i>items.length||items[i]==undefined){var contents="&nbsp;";}else{if(i<3&&this.columns[r]=="revenue"){var contents="<span class='RevenueProcessing'>$"+(items[i][this.columns[r]]||"0.00")+"*</span>";}else{if(this.columns[r]=="ecpm"){var contents="<span class='RevenueProcessing'>$--.--</span>";}else{if(this.maxLengths&&this.maxLengths[r]>0){var contents=BLIP.Utils.truncate(items[i][this.columns[r]],this.maxLengths[r]);}else{var contents=items[i][this.columns[r]];}if(this.prefix&&this.prefix[r]!=""){contents=this.prefix[r]+contents;}if(this.suffix&&this.suffix[r]!=""){contents+=this.suffix[r];}}}}}td+=this.wrapHtmlTag({tag:"td",contents:contents,elementClass:thisContext.style.td[c]});c++;}tr+=this.wrapHtmlTag({tag:"tr",contents:td});}var th=this.getLabelsHtml();var html=this.wrapHtmlTableTag(th,this.style.table);
html+=BLIP.Utils.wrapHtmlTag({tag:"div",elementId:thisContext.target+"Wrapper",elementClass:"TableWrapper",contents:thisContext.wrapHtmlTableTag(tr,thisContext.style.table)});html+=this.getPagination();return html;},setItems:function(items){if(this.smartLoading){for(var i=0;i<items.length;i++){this.currentItems.push(items[i]);this.totalItems.push(items[i]);}}else{this.currentItems=items;}this.totalItems[0]["revenue"]="";this.totalItems[1]["revenue"]="";this.initialize();}});BLIP.Class.create("BLIP.Controls.Grid.PaginatedGrid.DetailsEpisodePaginatedGrid",BLIP.Controls.Grid.PaginatedGrid,function(config){BLIP.Controls.Grid.PaginatedGrid.call(this,config);},{getHtml:function(items){var tr="";var rows=(items==undefined)||(items.length<this.rows)?this.rows:items.length;var thisContext=this;for(i=0;i<rows;i++){var td="";var c=0;for(var r in this.columns){if(items==undefined){var contents="&nbsp;";}else{if(i>items.length||items[i]==undefined){var contents="&nbsp;";}else{if(this.maxLengths&&this.maxLengths[r]>0){var contents=BLIP.Utils.truncate(items[i][this.columns[r]],this.maxLengths[r]);
}else{var contents=items[i][this.columns[r]];}if(this.prefix&&this.prefix[r]!=""){contents=this.prefix[r]+contents;}if(this.suffix&&this.suffix[r]!=""){contents+=this.suffix[r];}if(this.columns[r]=="title"){contents="<a href='/dashboard/stats/"+(items[i]["postsId"])+"'>"+contents+"</a>";}if(this.columns[r]=="ecpm"){var contents="<span class='RevenueProcessing'>$--.--</span>";}}}td+=this.wrapHtmlTag({tag:"td",contents:contents,elementClass:thisContext.style.td[c]});c++;}tr+=this.wrapHtmlTag({tag:"tr",contents:td});}var th=this.getLabelsHtml();var html=this.wrapHtmlTableTag(th,this.style.table);html+=BLIP.Utils.wrapHtmlTag({tag:"div",elementId:thisContext.target+"Wrapper",elementClass:"TableWrapper",contents:thisContext.wrapHtmlTableTag(tr,thisContext.style.table)});html+=this.getPagination();return html;}});BLIP.Class.create("BLIP.Controls.List",BLIP.Controls.Control,function(config){var thisContext=this;this.target=config.target;this.items=config.items;var controlConfig={target:config.target,delayInitialization:false,useDocumentWrite:false};
BLIP.Controls.Control.call(this,controlConfig);$(document).ready(function(){thisContext.initialize(config.items);});},{target:"",items:{},add:function(item){var l=this.items.length+1;this.items[l]=item;$("#"+this.target).append(this.getItemHtml(item,l));this.addExtraElements(l);},addExtraElements:function(i){},getHtml:function(items){var targetHtml="";for(i in items){targetHtml+=this.getItemHtml(items[i],i);}return targetHtml;},getItemContentsHtml:function(item,i){var contentsHtml='<div class="ListItemTitle">'+item.name+"</div>";contentsHtml+='<div class="ListItemTip">'+item.tip+"</div>";return contentsHtml;},getItemHtml:function(item,i){var itemHtml='<div class="ListItemWrapper" id="ListItem'+i+'">';itemHtml+='<div class="ListItemContents">';itemHtml+=this.getItemContentsHtml(item,i);itemHtml+="</div>";itemHtml+=this.getListTogglers(i);itemHtml+="</div>";return itemHtml;},getListTogglers:function(i){var listTogglers='<div class="ListToggler" onClick="'+BLIP.Delegate.createAsString(this,this.remove,i)+'">';
listTogglers+=this.getListTogglerButtonHtml({action:BLIP.Delegate.createAsString(this,this.remove,i),imgSrc:"images/list.remove.gif",title:"Remove"});listTogglers+="</div>";return listTogglers;},getListTogglerButtonHtml:function(button){var buttonHtml='<div class="ListTogglerLink">';buttonHtml+='<a onClick=""><img src="/skin/mercury/dashboard/'+button.imgSrc+'">'+button.title+"</a>";buttonHtml+="</div>";return buttonHtml;},initialize:function(items){$("#"+this.target).html(this.getHtml(items));},insertBefore:function(item,i){},moveBefore:function(i,j){},remove:function(i){if(this.items.length>1){this.items.splice(i,1);}else{this.items={};}this.removeActions(i);$("#ListItem"+i).remove();},removeActions:function(){},sort:function(funct){},swap:function(i,j){}});BLIP.Class.create("BLIP.Controls.List.PlayerList",BLIP.Controls.List,function(config){this.config=config;this.usersId=config.user;this.playlists=config.playlists;BLIP.Controls.List.call(this,config);},{basicPlayer:{name:"Blip.tv Basic Player",tip:"Click here to make this the default player.",id:-3},usersId:null,playlists:[],insertionControl:{name:"Add a new player",tip:"This player will start out with the same configuration as your default player.",action:"",actionTitle:"Add player",imgSrc:"images/list.add.gif"},embedControl:{name:"Embed",actionTitle:"Embed",imgSrc:"images/player.embed.gif"},modalRemove:{},session:Math.floor(Math.random()*100000),changeEmbed:function(postsId,playerIndex){var playersId;
if(playerIndex>0){playersId=this.items[playerIndex-1].id;}else{playersId=this.basicPlayer.id;}var thisContext=this;$.getJSON("/players/embed/?posts_id="+postsId+"&players_id="+playersId+"&users_id="+this.usersId+"&skin=json&no_wrap=1&cachekey="+this.session,function(response){$("#EmbedCode"+playerIndex+" .EmbedCodeText").html(BLIP.Utils.escapeHtml(response.code));});},changeEmbedChronological:function(i){this.changeEmbed(-3,i);},changeEmbedLatest:function(i){this.changeEmbed(-2,i);},changeEmbedPlaylist:function(i){var playlistsId=$("#EmbedCode"+i+" .Playlists").val();this.changeEmbed(playlistsId,i);},changeDisplayEmbedPlaylists:function(i){var thisContext=this;if(this.playlists&&this.playlists.length){var options="";for(var j=0;j<this.playlists.length;j++){options+='<option value="'+this.playlists[j].id+'">'+this.playlists[j].name+"</option>";}$("#EmbedCode"+i+" .Playlists").html(options);this.changeEmbedPlaylist(i);}},configure:function(i){var playersId=this.items[i-1].id;document.location.href="/dashboard/players/edit/"+playersId;
},displayChangeEmbed:function(i){var embedType=$("#EmbedCode"+i+" .EmbedTypes").val();switch(embedType){case"chronological":$("#EmbedCode"+i+" .PlaylistsWrapper").hide();this.changeEmbedChronological(i);break;case"latest":$("#EmbedCode"+i+" .PlaylistsWrapper").hide();this.changeEmbedLatest(i);break;case"playlist":this.changeDisplayEmbedPlaylists(i);$("#EmbedCode"+i+" .PlaylistsWrapper").show();break;default:}},getConcatenatedItemsArray:function(items){var basicPlayerItemArray=new Array(this.basicPlayer);return basicPlayerItemArray.concat(items);},getDefaultHtml:function(item){var i=0;var itemHtml='<div class="ListItemWrapper" id="ListItem'+i+'">';itemHtml+='<div class="ListItemContents">';itemHtml+=this.getItemContentsHtml(item,i);itemHtml+="</div>";itemHtml+=this.getListBasicTogglers(i);itemHtml+="</div>";return itemHtml;},getEmbedHtml:function(i){var html="<div class='EmbedCode' id='EmbedCode"+i+"'>";html+="<div class='SelectionBox' onClick='"+BLIP.Delegate.createAsString(this,this.toggleEmbed,i)+"'>";
html+=this.getListTogglerButtonHtml({action:BLIP.Delegate.create(this,this.toggleEmbed,i),imgSrc:this.embedControl.imgSrc,title:this.embedControl.actionTitle});html+="</div>";html+="<div class='EmbedCodeContents'>";html+="<div class='EmbedCodePlaylist'>";html+=this.getEmbedTypesHtml(i);html+="</div>";html+="<div class='EmbedCodeText'>Loading...";html+="</div>";html+="<div class='Clear'></div>";html+="<div class='EmbedCodeTip'>";html+="Troubleshooting: <a href='#'>I 'm having trouble embedding my video.</a>";html+="</div>";html+="</div>";html+="</div>";return html;},getEmbedTypesHtml:function(i){var embedChange=BLIP.Delegate.createAsString(this,this.displayChangeEmbed,i);var playlistChange=BLIP.Delegate.createAsString(this,this.changeEmbedPlaylist,i);var html="Select which episodes to play ";html+="<select class='EmbedTypes' onchange='"+embedChange+"'><option value='latest'>Latest Episodes</option><option value='chronological'>Chronological</option><option value='playlist'>Playlist</option></select>";
html+="and grab embed code below";html+="<div class='Clear'></div>";html+="<div class='PlaylistsWrapper'>";html+="Select one of your playlists <select class='Playlists' onchange='"+playlistChange+"'></select>";html+="</div>";return html;},getHtml:function(items){var targetHtml="";var itemsWithBasicPlayer=this.getConcatenatedItemsArray(items);for(var i in itemsWithBasicPlayer){i=parseInt(i);if(i==0){targetHtml+=this.getDefaultHtml(itemsWithBasicPlayer[i],i);}else{targetHtml+=this.getItemHtml(itemsWithBasicPlayer[i],i);}}return targetHtml;},getInsertionItemHtml:function(){var itemHtml="";itemHtml+='<div class="ListItemAdd" id="Add">';itemHtml+='<div class="ListItemWrapper ListItemUserAdd">';itemHtml+='<div class="ListItemContents">';itemHtml+=this.getItemContentsHtml(this.insertionControl);itemHtml+="</div>";itemHtml+=this.getInsertionListTogglers(this.insertionControl);itemHtml+="</div>";return itemHtml;},getInsertionListTogglers:function(item){var listTogglers="";var button={action:item.action,imgSrc:item.imgSrc,title:item.actionTitle};
listTogglers+='<div class="ListToggler" onClick="'+button.action+'">';listTogglers+=this.getListTogglerButtonHtml(button);listTogglers+="</div>";return listTogglers;},getListTogglers:function(i){var listTogglers='<div class="ListToggler" onClick="'+BLIP.Delegate.createAsString(this,this.toggleEmbed,i)+'">';listTogglers+=this.getListTogglerButtonHtml({action:BLIP.Delegate.createAsString(this,this.toggleEmbed,i),imgSrc:"images/player.embed.gif",title:"Embed"});listTogglers+="</div>";listTogglers+='<div class="ListToggler" onClick="'+BLIP.Delegate.createAsString(this,this.configure,i)+'">';listTogglers+=this.getListTogglerButtonHtml({action:BLIP.Delegate.createAsString(this,this.configure,i),imgSrc:"images/player.config.gif",title:"Configure"});listTogglers+="</div>";listTogglers+='<div class="ListToggler" onClick="'+BLIP.Delegate.createAsString(this,this.remove,i)+'">';listTogglers+=this.getListTogglerButtonHtml({action:BLIP.Delegate.createAsString(this,this.remove,i),imgSrc:"images/list.remove.gif",title:"Remove"});
listTogglers+="</div>";return listTogglers;},getListBasicTogglers:function(i){var listTogglers='<div class="ListToggler" onClick="'+BLIP.Delegate.createAsString(this,this.toggleEmbed,i)+'">';listTogglers+=this.getListTogglerButtonHtml({action:BLIP.Delegate.createAsString(this,this.toggleEmbed,i),imgSrc:"images/player.embed.gif",title:"Embed"});listTogglers+="</div>";listTogglers+='<div class="ListToggler" id="BasicConfig">';listTogglers+=this.getListTogglerButtonHtml({action:false,imgSrc:"images/player.no.config.png",title:"Not configurable"});listTogglers+="</div>";listTogglers+='<div class="ListToggler" id="BasicRemove">';listTogglers+=this.getListTogglerButtonHtml({action:false,imgSrc:"images/list.no.remove.png",title:"Not removable"});listTogglers+="</div>";return listTogglers;},initialize:function(items){this.insertionControl.action=BLIP.Delegate.createAsString(this,this.playerAdd);$("#"+this.target).html(this.getHtml(items));$("#"+this.target).after(this.getInsertionItemHtml(items));
this.makeItemsClickable(items);this.setDefaultPlayer(items);},makeDefault:function(i,ready){if($("#Players "+"#ListItem"+i).hasClass("DefaultPlayer")){return;}if(ready==1){$("#Players .ListItemTip").html("Click here to make this the default player.");$("#Players .ListItemWrapper").removeClass("DefaultPlayer");$("#Players "+"#ListItem"+i).addClass("DefaultPlayer");$("#ListItem"+i+" .ListItemTip").html("This is your default player.");return;}var thisContext=this;var playersId;if(i>0){playersId=this.items[i-1].id;}else{playersId=this.basicPlayer.id;}$.getJSON("/players/set_default/"+playersId+"?skin=json&no-cache=1&no_wrap=1",function(response){if(response&&response.error&&response.error=="OK"){thisContext.makeDefault(i,1);}});},makeItemsClickable:function(items){var thisContext=this;var itemsWithBasicPlayer=this.getConcatenatedItemsArray(items);for(var i in itemsWithBasicPlayer){$("#ListItem"+i+" .ListItemContents").click(BLIP.Delegate.create(this,this.makeDefault,i));}},playerAdd:function(){document.location.href="/dashboard/players/edit";
},remove:function(i){var playersId=this.items[i-1].id;var playersName=this.items[i-1].name;var thisContext=this;this.modalRemove=new BLIP.Controls.ModalWindow({target:"",contentsUrl:"/dashboard/player_remove?no_wrap=1&players_id="+playersId+"&index="+i,purpose:"Remove player",name:playersName});this.modalRemove.show();},removeActions:function(i){if($("#ListItem"+i).hasClass("DefaultPlayer")){this.makeDefault(0);}},removeItemFromList:function(i){this.items[i-1]=null;this.removeActions(i);$("#ListItem"+i).remove();if($("#EmbedCode"+i)){$("#EmbedCode"+i).remove();}},setDefaultPlayer:function(items){for(var i=0;i<items.length;i++){if(items[i]["isDefault"]==1){this.makeDefault(i+1,1);return;}}this.makeDefault(0,1);},setError:function(index){BLIP.Utils.showError({div:"#ListItem"+index,msg:"Something went wrong while trying to remove your player."});},toggleEmbed:function(i){if($("#EmbedCode"+i).length==0){$("#ListItem"+i).after(this.getEmbedHtml(i));this.displayChangeEmbed(i);}else{$("#EmbedCode"+i).remove();
}}});BLIP.Class.create("BLIP.Controls.UploadList",BLIP.Controls.List,function(config){this.config=config;this.docDomain=config.documentDomain;this.formAction=config.formAction;this.roles=this.config.roles;this.languages=this.config.languages;BLIP.Controls.List.call(this,config);},{config:{},formAction:"",insertionControls:[{name:"Add an additional format",tip:"Select a additional files to use for this episode.",actions:[{title:"Add format",action:"",imgSrc:"images/list.add.gif"}],cssClass:"ListItemVideo"},{name:"Add a thumbnail<input type='file' name='thumbnail' id='ListItemThumbnailInput'>",tip:"Select an image to Replace the thumbnail we automatically create for you.",actions:[{title:"Reset",action:"",imgSrc:"images/list.remove.gif"}],cssClass:"ListItemThumbnail"}],roles:[],submitObject:{},thumbnailHtml:"",thumbnailName:"",uploadFiles:{},uploadTip:{},validThumbFormats:["gif","bmp","jpg","jpeg","png"],validVideoFormats:["mov","wmv","flv","gif","jpg","png","jpeg","m4v","mpg","mp4","avi","mpeg","3g2","pdf","3gp","3gpp2","wav","mp3","xvid","ogg","ogm","ogv","divx","pando","mkv","mka","m4a","qtvr","xml"],validCaptionFormats:["tt","srt"],add:function(){var l=$("#UploadForm form:not(#formThumb)").size()||0;
var item=this.items[l]={};this.items[l]["tip"]="Please select a role for this file.";$(this.getItemHtml(item,l)).insertBefore("#"+this.target+" .ListItemAdd:first");this.inputHeightCheck(l);this.toggleAddVideoItem();this.addHtmlFormTags(l);this.addAuthInfoToForm(l);this.uploadTip.forceReposition();},addAuthInfoToForm:function(i){$("#form"+i).append("<input type='hidden' name='otter_auth' value='"+this.config.authCode+"'>");},addDefault:function(){this.add();$("#ItemSelect0").val("Master");this.handleSelection(0);},addFormAttribs:function(i){var url=this.formUrl+"?session="+this.uid;var uploadFormName="UploadFrame"+i;$("#form"+i).attr("target",uploadFormName);$("#form"+i).attr("method","post");$("#form"+i).attr("enctype","multipart/form-data");$("#form"+i).attr("encoding","multipart/form-data");},addHtmlFormTags:function(i){this.wrapItemInFormTag("ListItem"+i,undefined,i);this.addFormAttribs(i);},addHtmlFormTagsToThumb:function(){this.wrapThumbInFormTag(undefined,"Thumb");this.addFormAttribs("Thumb");
this.addAuthInfoToForm("Thumb");this.addThumbRoleToForm();},addThumbRoleToForm:function(){$("#formThumb").append("<input type='hidden' name='thumb_role' id='thumb_role' value='Thumbnail'>");},checkFormHasValidMaster:function(){var firstMasterId=0;var numMasters=0;$.each($("select:visible"),function(i,n){if($(this).attr("value")=="Source"){if(numMasters==0){firstMasterId=$(this).attr("id");}numMasters++;}});if(numMasters==1){return true;}else{if(numMasters>1){this.showRoleError("#"+firstMasterId);return false;}else{this.showNoMasterError("#AddListItemVideo img");return false;}}},checkFormHasValidFormats:function(){var thisContext=this;var numErrors=0;$.each($("#UploadForm form:not(#formThumb)"),function(i,n){if($(this).is(":visible")){if((!thisContext.fileVideoFormatCheck($("#FileInput"+i).val()))&&numErrors==0&&$("#ItemSelect"+i).val()!="Captions"){if($("#ItemSelect"+i).val()!="Select a role"){thisContext.showFileError("#FileInput"+i);numErrors++;}}else{if((!thisContext.fileCaptionFormatCheck($("#FileInput"+i).val()))&&numErrors==0&&$("#ItemSelect"+i).val()=="Captions"){if($("#LanguageSelect"+i).val()!="Select a Language"){thisContext.showCaptionError("#FileInput"+i);
numErrors++;}}}}});if(numErrors==0){if($("#ListItemThumbnailInput").val()&&this.fileThumbFormatCheck($("#ListItemThumbnailInput").val())==false){thisContext.showThumbError("#ListItemThumbnailInput");numErrors++;}}if(numErrors>0){return false;}else{return true;}},checkFormHasValidRoles:function(){var thisContext=this;var numErrors=0;$.each($("#UploadForm form:not(#formThumb)"),function(i,n){if($(this).is(":visible")){if(numErrors==0&&$("#ItemSelect"+i).val()=="Select a role"){thisContext.showRoleMissingError("#ItemSelect"+i);numErrors++;}if(numErrors==0&&$("#LanguageSelect"+i).val()=="Select a Language"){thisContext.showLanguageMissingError("#LanguageSelect"+i);numErrors++;}}});if(numErrors>0){return false;}else{return true;}},createSubmitObject:function(){this.submitObject=[];var submitObject=new Array({});var thisContext=this;$.each($("#UploadForm form:not(#formThumb)"),function(i,n){if($(this).is(":visible")){if($("#ItemSelect"+i).val()!="Select a role"&&$("#FileInput"+i).val()!=""){if($("#ItemSelect"+i).val()=="Source"){submitObject[0]={name:thisContext.getItemName(i),role:thisContext.getItemRole(i),i:i};
}else{submitObject.push({name:thisContext.getItemName(i),role:thisContext.getItemRole(i),i:i});}}else{$(this).hide();}}});if($("#ListItemThumbnailInput").val()){submitObject.push({name:$("#ListItemThumbnailInput").val(),role:"thumbnail"});}this.submitObject=submitObject;},fileThumbFormatCheck:function(filename){var format=this.getFormat(filename);for(var i=0;i<this.validThumbFormats.length;i++){if(format==this.validThumbFormats[i]){return true;}}return false;},fileVideoFormatCheck:function(filename){var format=this.getFormat(filename);for(var i=0;i<this.validVideoFormats.length;i++){if(format==this.validVideoFormats[i]){return true;}}return false;},fileCaptionFormatCheck:function(filename){var format=this.getFormat(filename);for(var i=0;i<this.validCaptionFormats.length;i++){if(format==this.validCaptionFormats[i]){return true;}}return false;},fileCaptionFormatCheck:function(filename){var format=this.getFormat(filename);for(var i=0;i<this.validCaptionFormats.length;i++){if(format==this.validCaptionFormats[i]){return true;
}}return false;},getFormat:function(filename){var dotIndex=filename.lastIndexOf(".");var format=filename.substring(dotIndex+1,filename.length);format=format.toLowerCase();return format;},getHtml:function(items){var targetHtml="";for(var i in items){targetHtml+=this.getItemHtml(items[i],j);}targetHtml+=this.getInsertionItemHtml();targetHtml+=this.getSubmissionHtml();return targetHtml;},getItemName:function(i){return($("#FileInput"+i).val());},getItemRole:function(i){if($("#LanguageSelect"+i).length>0){return("Closed Captioning - "+$("#LanguageSelect"+i).val());}return($("#ItemSelect"+i).val());},getFileInputHtml:function(i){return'<input type="file" name="file'+i+'" class="ListItemFileInput" id="FileInput'+i+'">';},getInsertionItemHtml:function(){var itemHtml="";for(var i in this.insertionControls){itemHtml+='<div class="ListItemAdd" id="Add'+this.insertionControls[i].cssClass+'">';itemHtml+='<div class="ListItemWrapper '+this.insertionControls[i].cssClass+'">';itemHtml+='<div class="ListItemContents">';
itemHtml+=BLIP.Controls.List.prototype.getItemContentsHtml.call(this,this.insertionControls[i]);itemHtml+="</div>";itemHtml+=this.getInsertionListTogglers(this.insertionControls[i]);itemHtml+="</div>";}return itemHtml;},getInsertionListTogglers:function(item){var listTogglers="";for(var i in item.actions){var button={action:item.actions[i].action,imgSrc:item.actions[i].imgSrc,title:item.actions[i].title};listTogglers+='<div class="ListToggler" onClick="'+button.action+'">';listTogglers+=this.getListTogglerButtonHtml(button);listTogglers+="</div>";}return listTogglers;},getItemContentsHtml:function(item,i){var contentsHtml='<div class="ListItemTitle">'+this.getFileInputHtml(i)+"</div>";contentsHtml+='<div class="ListItemJob">'+this.getJobHtml(i)+"</div>";contentsHtml+='<div class="Clear"></div>';contentsHtml+='<div class="ListItemTip">'+item.tip+"</div>";return contentsHtml;},getLanguageHtml:function(i){var html='<div class="ListItemLanguageWrapper" id="LanguageItem'+i+'">';html+='<div class="ListItemLanguage">';
html+='<div class="ListItemLanguageTip">Select a language for your captions</div>';html+='<select id="LanguageSelect'+i+'" name="file'+i+'_language" onChange="'+BLIP.Delegate.createAsString(this,this.handleSelection,i)+'">';html+="<option>Select a Language</option>";for(var k in this.languages){html+='<option value="'+this.languages[k]+'">'+this.languages[k]+"</option>";}html+="</select>";html+="</div>";html+="</div>";return html;},getJobHtml:function(i){var jobHtml='<select id="ItemSelect'+i+'" name="file'+i+'_role" onChange="'+BLIP.Delegate.createAsString(this,this.handleSelection,i)+'">';var roleValue="";jobHtml+="<option>Select a role</option>";for(var k in this.roles){if(this.roles[k]=="Master"){roleValue="Source";}else{roleValue=this.roles[k];}jobHtml+='<option value="'+roleValue+'">'+this.roles[k]+"</option>";}jobHtml+="</select>";return jobHtml;},getSubmissionHtml:function(){var html='<div id="SubmitItems">';html+='<input type="submit" value="Proceed to Step 2" onClick="'+BLIP.Delegate.createAsString(this,this.submitList)+'" id="UploadSubmitButton">';
html+="</div>";return html;},getSubmitObject:function(){return this.submitObject;},getThumbInsertionListTogglers:function(i){var listTogglers='<div class="ListToggler">';listTogglers+=this.getListTogglerButtonHtml({action:null,imgSrc:"images/list.remove.gif",title:"Remove"});listTogglers+="</div>";return listTogglers;},handleCaptionSelection:function(i,state){if(state=="expanded"){$("#ListItem"+i).addClass("ExpandedItem");}else{$("#ListItem"+i).removeClass("ExpandedItem");}},handleSelection:function(i){if($("#ItemSelect"+i).val()=="Source"){this.masterSet("ListItem"+i);}else{this.masterUnset("ListItem"+i);}if($("#ItemSelect"+i).val()=="Captions"){if($("#LanguageSelect"+i).length==0){$("#ListItem"+i).append(this.getLanguageHtml(i));this.handleCaptionSelection(i,"expanded");}}else{$("#LanguageItem"+i).remove();this.handleCaptionSelection(i,"collapsed");}},initialize:function(items){this.insertionControls[0].actions[0].action=BLIP.Delegate.createAsString(this,this.add);this.insertionControls[1].actions[0].action=BLIP.Delegate.createAsString(this,this.resetThumbnail);
$("#"+this.target).html(this.getHtml(items));this.addHtmlFormTagsToThumb();this.toggleAddVideoItem();this.setSubmitTip();this.addDefault();},inputHeightCheck:function(i){var stdHeight=19;var inputHeight=$("#FileInput"+i).height();if(inputHeight>stdHeight){var diff=stdHeight-inputHeight;$("#FileInput"+i).css("margin-top",diff+"px");}},masterSet:function(id){$("#"+id).removeClass("ListItemMasterFile");$("#"+id).addClass("ListItemMasterFile");$("#"+id+" .ListItemTip").html("This is the master file for conversions (like Flash).");},masterUnset:function(id){$("#"+id).removeClass("ListItemMasterFile");$("#"+id+" .ListItemTip").html("Please select a role for this file.");},remove:function(i){if(this.items.length>1){this.items.splice(i,1);}else{this.items={};}this.removeActions(i);$("#form"+i).hide();},removeActions:function(i){this.toggleAddVideoItem();},removeAll:function(){this.items={};$("#"+this.target+"> .ListItemWrapper").hide();this.toggleAddVideoItem();},renameMaster:function(){$(".ListItemMasterFile input:visible").attr("name","file");
$(".ListItemMasterFile select:visible").attr("name","file_role");},resetThumbnail:function(){this.thumbnailName="";this.resetThumbnailInput();},resetThumbnailInput:function(){$("#ListItemThumbnailInput").val("");},setDocumentDomain:function(){document.domain=this.docDomain;},setSubmitTip:function(){this.uploadTip=new BLIP.Controls.Tip({target:"UploadSubmitButton",delayInitialization:true,tip:"Your upload will start while you fill out some information in the next step."});},showFileError:function(div){BLIP.Utils.showError({div:div,msg:"The file you selected is not a format that we accept. Try a something like a mov, wmv, flv, gif, jpg, png, jpeg, m4v, mpg, mp4, avi, mpeg, xvid, ogg, or divx."});},showCaptionError:function(div){BLIP.Utils.showError({div:div,msg:"The captions file you selected is not a format that we accept. Try a something like a tt or srt file"});},showNoMasterError:function(div){BLIP.Utils.showError({div:div,msg:'You must add at least one video whose role is <b>"Master"</b>.'});
},showRoleError:function(div){BLIP.Utils.showError({div:div,msg:'There can only be one <b>"Master"</b> file. You should select a different role for this video or change the role of the file you originally marked as Master.'});},showRoleMissingError:function(div){BLIP.Utils.showError({div:div,msg:"You need to assign a role to this file before proceeding."});},showLanguageMissingError:function(div){BLIP.Utils.showError({div:div,msg:"You need to assign a language to this captions file before proceeding."});},showThumbError:function(div){BLIP.Utils.showError({div:div,msg:"The file you selected is not a format that we accept. Try selecting a bmp, gif, jpeg, jpg, or png."});},submitList:function(){if(this.validateForm()){var thisContext=this;this.renameMaster();this.createSubmitObject();this.uploadFiles=new BLIP.Controls.UploadFilesQueue({target:thisContext.target,uid:thisContext.config.uid,formAction:thisContext.formAction});this.uploadFiles.upload(this.submitObject);this.uploadFiles.completeMethod=function(){thisContext.config.uploadForm.finishQueue();
};this.config.uploadForm.initializeMetadataForm();this.uploadTip.destroy();}},toggleAddVideoItem:function(){if(this.items.length>0){$(".ListItemAdd:first").removeClass("EmptyList");}else{$(".ListItemAdd:first").addClass("EmptyList");}},validateForm:function(){var errors=0;BLIP.Utils.clearAllErrors();if(!this.checkFormHasValidRoles()){errors++;}else{if(!this.checkFormHasValidMaster()){errors++;}else{if(!this.checkFormHasValidFormats()){errors++;}}}if(errors==0){return true;}return false;},wrapInFormTag:function(divTarget,htmlClass,i){var formElement=document.createElement("form");formElement.setAttribute("enctype","multipart/form-data");formElement.setAttribute("encoding","multipart/form-data");formElement.setAttribute("id","form"+i);if(htmlClass!=undefined){formElement.setAttribute("class",htmlClass);}$(divTarget).wrap(formElement);},wrapItemInFormTag:function(target,htmlClass,i){this.wrapInFormTag("#ListItem"+i,htmlClass,i);},wrapThumbInFormTag:function(htmlClass,i){this.wrapInFormTag("#AddListItemThumbnail .ListItemWrapper",htmlClass,i);
}});BLIP.Class.create("BLIP.Controls.EditUploadList",BLIP.Controls.UploadList,function(config){BLIP.Controls.UploadList.call(this,config);},{fileChanges:[],insertionControls:[{name:"Add additional format",actions:[{title:"Add video",action:"",imgSrc:"images/list.listB.add.gif"}],cssClass:"ListItemVideo"},{name:"Replace thumbnail<input type='file' name='thumbnail' id='ListItemThumbnailInput'>",actions:[{title:"Clear",action:"",imgSrc:"images/list.listB.remove.gif"}],cssClass:"ListItemThumbnail"}],add:function(){var l=this.items.length||0;this.items[l]={};var item=this.items[l];this.insert(item,l);},addNew:function(){var l=this.items.length||0;this.items[l]={};var item=this.items[l];$(this.getNewItemHtml(item,l)).insertBefore("#"+this.target+" .ListItemAdd:first");this.toggleAddVideoItem();this.addHtmlFormTags(l);this.addAuthInfoToForm(l);parent.BLIP.Utils.myModal.modalResize();},addRemoveToUpdates:function(i){var thisContext=this;this.fileChanges[thisContext.items[i].id]={i:i,id:thisContext.items[i].id,action:"remove"};
},checkFormHasValidFormats:function(){var thisContext=this;var numErrors=0;$.each($("#"+this.target+" form:not(#formThumb)"),function(i,n){if($(this).is(":visible")){var filename=$("#FileInput"+i).val()||$("#FileInput"+i).text();if(!thisContext.fileVideoFormatCheck(filename)&&$("#ItemSelect"+i).val()!="Captions"&&numErrors==0){thisContext.showFileError("#FileInput"+i);numErrors++;}else{if(!thisContext.fileCaptionFormatCheck(filename)&&$("#ItemSelect"+i).val()=="Captions"&&numErrors==0){thisContext.showCaptionError("#FileInput"+i);numErrors++;}}}});if(numErrors==0){if($("#ListItemThumbnailInput").val()&&this.fileThumbFormatCheck($("#ListItemThumbnailInput").val())==false){thisContext.showThumbError("#ListItemThumbnailInput");numErrors++;}}if(numErrors>0){return false;}else{return true;}},checkFormHasValidRoles:function(){var thisContext=this;var numErrors=0;$.each($("#"+this.target+" form:not(#formThumb)"),function(i,n){if($(this).is(":visible")){if(numErrors==0&&$("#ItemSelect"+i).val()=="Select a role"){thisContext.showRoleMissingError("#ItemSelect"+i);
numErrors++;}if(numErrors==0&&$("#LanguageSelect"+i).val()=="Select a Language"){thisContext.showLanguageMissingError("#ItemSelect"+i);numErrors++;}}});if(numErrors>0){return false;}else{return true;}},oldCreateSubmitObject:function(){var submitObject=[];this.submitObject=[];var thisObj=this;$.each($("#Episodes form:not(#formThumb)"),function(i,n){if($(this).is(":visible")){if($("#ItemSelect"+i).val()!="Select a role"){submitObject.push({name:thisObj.getItemName(i),role:thisObj.getItemRole(i),id:thisObj.getId(i),i:i});}}});if($("#ListItemThumbnailInput").val()){submitObject.push({name:$("#ListItemThumbnailInput").val(),role:"thumbnail"});}this.submitObject=submitObject;},createSubmitObject:function(){this.submitObject=[];var submitObject=new Array({});var thisContext=this;var thumbI;$.each($("#Episodes form:not(#formThumb)"),function(i,n){if($(this).is(":visible")){if($("#ItemSelect"+i).val()!="Select a role"){if($("#ItemSelect"+i).val()=="Source"){submitObject[0]={name:thisContext.getItemName(i),role:thisContext.getItemRole(i),id:thisContext.getId(i),i:i};
}else{submitObject.push({name:thisContext.getItemName(i),role:thisContext.getItemRole(i),id:thisContext.getId(i),i:i});}}}thumbI=i+1;});if($("#ListItemThumbnailInput").val()){submitObject.push({name:$("#ListItemThumbnailInput").val(),role:"thumbnail",i:thumbI});}this.submitObject=submitObject;},initialize:function(items){this.insertionControls[0].actions[0].action=BLIP.Delegate.createAsString(this,this.addNew);this.insertionControls[1].actions[0].action=BLIP.Delegate.createAsString(this,this.resetThumbnail);$("#"+this.target).html(this.getHtml(items));this.addHtmlFormTagsToThumb();this.toggleAddVideoItem();this.setSubmitTip();},insert:function(item,l){$(this.getItemHtml(item,l)).insertBefore("#"+this.target+" .ListItemAdd:first");this.toggleAddVideoItem();this.addHtmlFormTags(l);this.addAuthInfoToForm(l);parent.BLIP.Utils.myModal.modalResize();},getChangesToFilesList:function(originalItems){var originalFilesArray=new Array();var additionalMediaFiles=originalItems.additionalMedia;if(additionalMediaFiles!=undefined){for(var i=0;
i<additionalMediaFiles.length;i++){originalFilesArray[additionalMediaFiles[i].id]=additionalMediaFiles[i].role;}}for(var i=0;i<this.submitObject.length;i++){var item=this.submitObject[i];if(item.id==undefined){continue;}if(this.fileChanges[item.id]==undefined){if((originalFilesArray[item.id]).toLowerCase()!=(item.role).toLowerCase()){this.fileChanges[item.id]={i:i,id:item.id,role:item.role,action:"role"};}}}return this.fileChanges;},getId:function(i){return this.items[i].id;},getInsertionItemHtml:function(){var itemHtml="";for(var i in this.insertionControls){itemHtml+='<div class="ListItemAdd" id="Add'+this.insertionControls[i].cssClass+'">';itemHtml+='<div class="ListItemWrapper '+this.insertionControls[i].cssClass+'">';itemHtml+='<div class="ListItemContents">';itemHtml+='<div class="ListItemTitle">'+this.insertionControls[i].name+"</div>";itemHtml+="</div>";itemHtml+=this.getInsertionListTogglers(this.insertionControls[i]);itemHtml+="</div>";}return itemHtml;},getItemContentsHtml:function(item,i){var contentsHtml='<div class="ListItemTitle"><div id="FileInput'+i+'">'+BLIP.Utils.getProperFilename(item.name)+"</div></div>";
contentsHtml+='<div class="ListItemJob">'+this.getJobHtml(i)+"</div>";return contentsHtml;},getItemName:function(i){return($("#ListItem"+i+" input#FileInput"+i).val()||$("#FileInput"+i).text());},getListTogglers:function(i){var listTogglers='<div class="ListToggler" onClick="'+BLIP.Delegate.createAsString(this,this.remove,i)+'">';listTogglers+=this.getListTogglerButtonHtml({action:BLIP.Delegate.createAsString(this,this.remove,i),imgSrc:"images/list.listB.remove.gif",title:"Remove"});listTogglers+="</div>";listTogglers+='<div class="ListToggler" id="CancelToggler" onClick="'+BLIP.Delegate.createAsString(this,this.change,i)+'">';listTogglers+=this.getListTogglerButtonHtml({action:BLIP.Delegate.createAsString(this,this.change,i),imgSrc:"images/list.listB.cancel.gif",title:"Cancel"});listTogglers+="</div>";return listTogglers;},getNewItemContentsHtml:function(item,i){var contentsHtml='<div class="ListItemTitle">'+this.getFileInputHtml(i)+"</div>";contentsHtml+='<div class="ListItemJob">'+this.getJobHtml(i)+"</div>";
return contentsHtml;},getNewItemHtml:function(item,i){var itemHtml='<div class="ListItemWrapper ListItemNew" id="ListItem'+i+'">';itemHtml+='<div class="ListItemContents">';itemHtml+=this.getNewItemContentsHtml(item,i);itemHtml+="</div>";itemHtml+=this.getNewItemListTogglers(i);itemHtml+="</div>";return itemHtml;},getNewItemListTogglers:function(i){var listTogglers='<div class="ListToggler" onClick="'+BLIP.Delegate.createAsString(this,this.remove,i)+'">';listTogglers+=this.getListTogglerButtonHtml({action:BLIP.Delegate.createAsString(this,this.remove,i),imgSrc:"images/list.listB.remove.gif",title:"Remove"});listTogglers+="</div>";return listTogglers;},getSubmissionHtml:function(){return"";},handleCaptionSelection:function(i,state){if(state=="expanded"){$("#ListItem"+i).addClass("ExpandedItem");}else{$("#ListItem"+i).removeClass("ExpandedItem");}parent.BLIP.Utils.myModal.modalResize();},remove:function(i){this.addRemoveToUpdates(i);this.removeActions(i);$("#form"+i).hide();parent.BLIP.Utils.myModal.modalResize();
},resetThumbnail:function(){$("#ListItemThumbnailInput").val("");},setItems:function(items){var posts=items[0].Posts;var i=0;var role;var language;if(posts[i].additionalMedia){for(var j=0;j<posts[i].additionalMedia.length;j++){this.items.push({name:posts[i].additionalMedia[j].url,role:posts[i].additionalMedia[j].role,id:posts[i].additionalMedia[j].id});this.insert(this.items[j],j);if(posts[i].additionalMedia[j].role=="Source"){this.masterSet("ListItem"+j);$("select[name='file0_role']").val("Source");}else{if(posts[i].additionalMedia[j].role=="web"){role="Web";}else{if(posts[i].additionalMedia[j].role.match(/Blip/i)){role=posts[i].additionalMedia[j].role;$("#ItemSelect"+j).attr("disabled","true");$("#ItemSelect"+j).append("<option value='"+posts[i].additionalMedia[j].role+"'>"+posts[i].additionalMedia[j].role+"</option>");}else{if(posts[i].additionalMedia[j].role.search(/Closed\sCaptioning\s-\s/)!=-1){role="Captions";var split=(posts[i].additionalMedia[j].role).split("-");language=split[1].replace(/^\s+/,"");
}else{role=posts[i].additionalMedia[j].role;}}}}if(j>0){$("select[name='file"+j+"_role']").val(role);if(language){this.handleSelection(j);$("select[name='file"+j+"_language']").val(language);}}}}},setSubmitTip:function(){},showFileError:function(div){BLIP.Utils.showError({div:div,msg:"The file you selected is not a format that we accept. Try a something like a mov, wmv, flv, gif, jpg, png, jpeg, m4v, mpg, mp4, avi, mpeg, xvid, ogg, or divx."});},showNoMasterError:function(div){BLIP.Utils.showError({div:div,msg:'You must add at least one video whose role is <b>"Master"</b>.',small:true});},showRoleError:function(div){BLIP.Utils.showError({div:div,msg:'There can only be one <b>"Master"</b> file.',small:true});},submitList:function(){var thisContext=this;this.createSubmitObject();return(this.submitObject);},validateForm:function(){var errors=0;BLIP.Utils.clearAllErrors();$(".ui-tabs-nav").tabs("select",0);if(!this.checkFormHasValidRoles()){errors++;}else{if(!this.checkFormHasValidMaster()){errors++;
}else{if(!this.checkFormHasValidFormats()){errors++;}}}if(errors==0){return true;}return false;},wasListModified:function(items){return true;}});BLIP.Class.create("BLIP.Controls.UserList",BLIP.Controls.List,function(config){this.config=config;BLIP.Controls.List.call(this,config);},{insertionControl:{name:"Add a linked account",tip:"This account will appear in your list of linked accounts.",action:"",actionTitle:"Add account",imgSrc:"images/list.add.gif"},removeAction:{},bindEnterKey:function(){var thisContext=this;$("#AccountCredentials input").keydown(function(event){if(event.keyCode==13){thisContext.validateCredentials();}});},getAccountAddHtml:function(){var html="<div id='AccountAdd'>";html+="<div id='SelectionBox' onClick='"+BLIP.Delegate.createAsString(this,this.toggleAccountAdd)+"'>";html+=this.getListTogglerButtonHtml({action:this.insertionControl.action,imgSrc:this.insertionControl.imgSrc,title:this.insertionControl.actionTitle});html+="</div>";html+="<div id='AccountAddContents'>";
html+="<div id='AccountAddStatus'>";html+=this.getDefaultAddStatus();html+="</div>";html+="<div id='AccountCredentials'>";html+="<label for='linked_login'>Login:</label> <input type='text' id='linked_login' name='linked_login'>";html+="<div class='Clear'></div>";html+="<label for='linked_password'>Password:</label> <input type='password' id='linked_password' name='linked_password'>";html+="</div>";html+="<input type='button' value='Add account' id='AccountAddButton' onClick='"+BLIP.Delegate.createAsString(this,this.validateCredentials)+"'>";html+="<div class='Clear'></div>";html+="<div id='AccountAddTip'>";html+="Troubleshooting: <a href='/users/mailpasswd'>I can't remember my password.</a>";html+="</div>";html+="</div>";html+="</div>";return html;},getDefaultAddStatus:function(){return"<img src='/skin/mercury/dashboard/images/arrow.down.black.gif'>Enter the credentials of an account you wish to add.";},getHtml:function(items){var targetHtml="";for(i in items){targetHtml+=this.getItemHtml(items[i],i);
}return targetHtml;},getInsertionItemHtml:function(){var itemHtml="";itemHtml+='<div class="ListItemAdd" id="Add">';itemHtml+='<div class="ListItemWrapper ListItemUserAdd">';itemHtml+='<div class="ListItemContents">';itemHtml+=this.getItemContentsHtml(this.insertionControl);itemHtml+="</div>";itemHtml+=this.getInsertionListTogglers(this.insertionControl);itemHtml+="</div>";return itemHtml;},getInsertionListTogglers:function(item){var listTogglers="";var button={action:item.action,imgSrc:item.imgSrc,title:item.actionTitle};listTogglers+='<div class="ListToggler" onClick="'+button.action+'">';listTogglers+=this.getListTogglerButtonHtml(button);listTogglers+="</div>";return listTogglers;},getListTogglers:function(i){var listTogglers='<div class="ListToggler" onClick="'+BLIP.Delegate.createAsString(this,this.remove,i)+'">';listTogglers+=this.getListTogglerButtonHtml({action:BLIP.Delegate.createAsString(this,this.remove,i),imgSrc:"images/list.remove.gif",title:"Remove"});listTogglers+="</div>";
listTogglers+='<div class="ListToggler" onClick="'+BLIP.Delegate.createAsString(this,this.switchTo,i)+'">';listTogglers+=this.getListTogglerButtonHtml({action:BLIP.Delegate.createAsString(this,this.switchTo,i),imgSrc:"images/user.switch.gif",title:"Become"});listTogglers+="</div>";return listTogglers;},initialize:function(items){this.insertionControl.action=BLIP.Delegate.createAsString(this,this.toggleAccountAdd);$("#"+this.target).html(this.getHtml(items));$("#"+this.target).after(this.getInsertionItemHtml(items));},remove:function(i){this.removeAction=BLIP.Delegate.create(this,this.removeItemFromList,i);var url="/dashboard/linked_users/remove?linked_users_id="+this.items[i].id+"&skin=json&callback=userList.removeResponse&no-cache=1";$.getScript(url);},removeItemFromList:function(i){if(this.items.length>1){this.items.splice(i,1);}else{this.items={};}this.removeActions(i);$("#ListItem"+i).remove();},removeResponse:function(response){if(response[0].error=="OK"){this.removeAction();}},switchTo:function(i){document.location="/dashboard/su/"+this.items[i].id+"&return_url=/dashboard";
},toggleAccountAdd:function(){if($("#AccountAdd").length==0){$("#Add").after(this.getAccountAddHtml());this.bindEnterKey();}else{$("#AccountAdd").remove();}},validateCredentials:function(){$("#AccountAddButton").attr("disabled",true);$("#AccountAddStatus").html("Validating");var url="/dashboard/linked_users/add?linked_login="+$("input#linked_login").val()+"&linked_password="+$("input#linked_password").val()+"&skin=json&callback=userList.validationResponse&no-cache=1";$.getScript(url);},validationResponse:function(response){if(response[0].error!=undefined){$("#AccountAddStatus").html("<img src='/skin/mercury/dashboard/images/form.error.smalltitle.gif' class='AccountAddError'> "+response[0].error);$("#AccountAddButton").attr("disabled",false);}else{$("#AccountAdd").remove();this.add({name:response[0].displayName,tip:response[0].login,id:response[0].usersId});}}});BLIP.Class.create("BLIP.Controls.ModalWindow",BLIP.Controls.Control,function(config){var thisContext=this;this.config=config;controlConfig={target:config.target,delayInitialization:false,useDocumentWrite:false};
BLIP.Controls.Control.call(this,controlConfig);},{frameCallback:function(){var thisContext=this;this.modalResize();this.removeLoadingBackground();},getHtml:function(){var html="";html+='<div class="ModalDialog" id="ModalDialog'+this.mid+'">';html+='<div id="ModalDialogWindowWrapper">';html+='<div id="ModalDialogWindow">';html+='<div id="ModalDialogWindowTitle">';html+='<a onClick="'+BLIP.Delegate.createAsString(this,this.hide)+'"><img src="/skin/mercury/dashboard/images/modal.close.gif" id="ModalDialogClose"></a>';html+=this.config.purpose+' <span id="EditTarget">'+this.config.name+"</span>";html+="</div>";html+='<iframe id="ModalDialogWindowFrame" class="ModalDialogWindowFrameLoading" scrolling="no" frameborder="0">';html+="</iframe>";html+="</div>";html+="</div>";html+="</div>";return html;},hide:function(){$("#ModalDialog"+this.mid).remove();this.toggleScrollbars();},modalResize:function(){var realHeight=$("#EditorWrapper").height();if($.browser.msie){$("body").css("height",realHeight);
}else{$("body").css("height",realHeight+" !important");}this.resizeFrame();},toggleScrollbars:function(){if($.browser.msie||$.browser.safari){if($("html").css("overflow")=="hidden"){$("html").css("overflow","auto");}else{$("html").css("overflow","hidden");}}else{if($("body").css("overflow")=="hidden"){$("body").css("overflow","auto");}else{$("body").css("overflow","hidden");}}$(".ModalDialog").css("overflow","auto");},removeLoadingBackground:function(){$("#ModalDialog"+this.mid+" #ModalDialogWindowFrame").removeClass("ModalDialogWindowFrameLoading");},resizeFrame:function(){var h=$("#ModalDialogWindowFrame").contents().find("#EditorWrapper").height();if(h==null){h=$($("#ModalDialogWindowFrame").contents()[0].body.childNodes[1]).height();}$("#ModalDialog"+this.mid+" #ModalDialogWindowFrame").css("height",(h+12));},setBackground:function(){if($.browser.msie&&$.browser.version.substr(0,1)<6){$("#ModalDialog"+this.mid).css("background",'url("/skin/mercury/dashboard/images/modal.bg.alpha30.png")');
$("#ModalDialog"+this.mid+" #ModalDialogWindowWrapper").css("background",'url("/skin/mercury/dashboard/images/modal.bg.alpha50.gif")');}else{$("#ModalDialog"+this.mid).css("background",'url("/skin/mercury/dashboard/images/modal.bg.alpha50.png")');$("#ModalDialog"+this.mid+" #ModalDialogWindowWrapper").css("background",'url("/skin/mercury/dashboard/images/modal.bg.alpha30.png")');}},setIframeUrl:function(url){var thisContext=this;$("#ModalDialog"+this.mid+" #ModalDialogWindowFrame").attr("src",url);$("#ModalDialog"+this.mid+" #ModalDialogWindowFrame").load(function(){thisContext.frameCallback();});},setModalId:function(){this.mid=Math.floor(Math.random()*1000000000);},show:function(){BLIP.Utils.myModal=this;this.setModalId();$("body").append(this.getHtml());this.setBackground();$("#ModalDialog"+this.mid).show();this.setIframeUrl(this.config.contentsUrl);this.toggleScrollbars();}});BLIP.Class.create("BLIP.Controls.PageComponents",Object,function(config){var thisContext=this;this.initialize(config.controls);
$(document).ready(function(){thisContext.loadAllControls(config.controls);});},{initialize:function(controls){for(var i=0;i<controls.length;i++){$("#"+controls[i].target).html(this.getPlaceholderHTML());}},getPlaceholderHTML:function(){return'<div class="LoadControl"><table width="100%" height="100%"><tr><td></td></tr></table></div>';},loadAllControls:function(controls){for(var i=0;i<controls.length;i++){this.loadControl({control:controls[i],i:i});}},loadControl:function(controlObj){var thisContext=this;$("#"+controlObj.control.target).load(controlObj.control.src,controlObj.control.args,function(responseText,textStatus,XMLHttpRequest){if(textStatus!="success"){thisContext.loadFailure(controlObj.control,controlObj.i);}});},loadFailure:function(control,i){$("#"+control.target).html(BLIP.Utils.getLoadFailureHTML());},reloadControl:function(controlObj){$("#"+controlObj.control.target).html(this.getPlaceholderHTML());this.loadControl(controlObj);}});BLIP.Class.create("BLIP.Controls.PlayerPreview",BLIP.Controls.Control,function(config){var thisContext=this;
this.target=config.target;this.extraInfo=config.extraInfo;$(document).ready(function(){thisContext.initialize();});},{extraInfo:{},target:"",getHtml:function(params){var html='<embed src="';html+="/scripts/flash/showplayer.swf";html+=this.replaceParams(params);html+='" type="application/x-shockwave-flash" ';html+='width="465" height="335" allowscriptaccess="always" allowfullscreen="true" wmode="opaque">';return html;},initialize:function(){},replaceParams:function(params){var paramsReplaced=params;paramsReplaced=paramsReplaced.replace(/%24%7Bsite_url%7D/g,"http://"+this.extraInfo.siteDomain);paramsReplaced=paramsReplaced.replace(/%24%7Bposts_id%7D/g,"");paramsReplaced=paramsReplaced.replace(/%24%7Bsite_domain%7D/g,this.extraInfo.siteDomain);paramsReplaced=paramsReplaced.replace(/%24%7Bsafeusername%7D/g,this.extraInfo.safeusername);return paramsReplaced;},update:function(params){$("#"+this.target).html(this.getHtml(params));}});BLIP.Class.create("BLIP.Controls.PlayerRemove",BLIP.Controls.Control,function(config){var thisContext=this;
this.config=config;this.target=config.target;this.cookieDomain=config.cookieDomain;this.successReturn=config.successReturn;this.errorReturn=config.errorReturn;controlConfig={target:config.target,delayInitialization:false,useDocumentWrite:false};BLIP.Controls.Control.call(this,controlConfig);$(document).ready(function(){thisContext.initialize();});},{config:{},target:"",cookieDomain:"",successReturn:null,errorReturn:null,initialize:function(){},removePlayer:function(){var thisContext=this;var url=new Url(location.href);var playersId=url.getQueryParam("players_id");var removeUrl="/players/delete/"+playersId+"?skin=json&no-cache=1&no_wrap=1";$.getJSON(removeUrl,function(response){if(response&&response.error&&response.error=="This player has been deleted."){if(thisContext.successReturn){thisContext.successReturn();parent.BLIP.Utils.myModal.hide();return;}}else{if(thisContext.errorReturn){thisContext.errorReturn();parent.BLIP.Utils.myModal.hide();return;}}top.location.reload();});}});BLIP.Class.create("BLIP.Controls.ProgressBar",BLIP.Controls.Control,function(config){var thisContext=this;
this.target=config.target;this.statusUrl=config.statusUrl;this.uid=config.uid;this.submitObject=config.submitObject;var controlConfig={target:config.target,delayInitialization:true,useDocumentWrite:false};BLIP.Controls.Control.call(this,controlConfig);$(document).ready(function(){thisContext.initialize();});},{barHeight:97,divName:"ProgressBar",filesObj:{},progressTip:{},submitObject:{},target:"",statusUrl:"",uid:"",embedProgressBar:function(){var height=this.getMovieHeight();var so=new SWFObject("/scripts/flash/ProgressBar.swf?callback=swfReady","bar","650",height,"9.0.0","#FFFFFF");so.addVariable("statusURL",this.statusUrl);so.addParam("wmode","opaque");so.write(this.divName);$("#"+this.divName).height(height);this.setProgressTip(height);},getHtml:function(){var html="<div id='"+this.divName+"'>";html+="If SWFObject is working this text will replaced by the Flash movie.";html+="</div>";return html;},getMovieHeight:function(){return this.barHeight*this.submitObject.length;},initialize:function(){$("#"+this.target).before(this.getHtml());
document.loadedMethod=BLIP.Delegate.create(this,this.loadComplete);this.embedProgressBar();},loadComplete:function(){this.start();},parseForSwf:function(callback){return callback.substring(0,callback.length-2);},start:function(){var files=new Object();files.filename=new Array();files.slot=new Array();for(var i=0;i<this.submitObject.length;i++){files.filename[i]=this.submitObject[i].name;files.slot[i]=i;}this.thisMovie("bar").displayProgress(files,this.uid);},setProgressTip:function(height){var thisContext=this;this.progressTip=new BLIP.Controls.Tip({target:thisContext.divName,delayInitialization:true,yoffset:height,tip:"Your files are transferring but this upload will not be complete until you fill out the metadata below."});},thisMovie:function(movieName){if($.browser.msie){return window[movieName];}else{return document[movieName];}}});function swfReady(){document.loadedMethod();}BLIP.Class.create("BLIP.Controls.ProgressMeter",BLIP.Controls.Control,function(config){var thisContext=this;
this.config=config;this.target=config.target;controlConfig={target:config.target,delayInitialization:false,useDocumentWrite:false};BLIP.Controls.Control.call(this,controlConfig);$(document).ready(function(){thisContext.initialize();});},{complete:false,config:{},elapsed:0,percent:0,remaining:0,shouldPoll:false,target:"",completeProgress:function(callback){callback?callback():undefined;},formatLeadingZeros:function(t){if(t<10){return"0"+t;}else{return t;}},formatSecondsAsTime:function(s){var time="";var hours;var minutes;var seconds;if(s>=3600){hours=Math.floor(s/3600);time+=hours+":";s-=(hours*3600);}if(s>=60){minutes=Math.floor(s/60);if(hours){time+=this.formatLeadingZeros(minutes)+":";}else{time+=minutes+":";}s-=(minutes*60);}else{if(hours){time+="00:";}else{time+="0:";}}if(s>0){time+=this.formatLeadingZeros(s);}else{time+="00";}return time;},getHtml:function(){var html='<div class="ProgressMeter">';html+='<div class="ProgressPercentWrapper"><div class="Percent">0%</div></div>';html+='<div class="ProgressMeterProgress"></div>';
html+='<div class="ProgressMeterBackground"></div>';html+=this.getProgressTimesHtml();html+='<div class="Clear"></div>';html+="</div>";return html;},getProgressTimesHtml:function(){if(this.config.hasTime){var html='<div class="ProgressMeterElapsed"><span>0:00</span> elapsed</div>';html+='<div class="ProgressMeterRemaining"><span>0:00</span> left</div>';return html;}},initialize:function(){$("#"+this.target).html(this.getHtml());},setProgress:function(params){var percent=params.percent;var duration=params.duration;var callback=params.callback;var elapsed=params.elapsed;var remaining=params.remaining;var thisContext=this;this.setElapsed(elapsed);this.setRemaining(remaining);this.setPercent(percent);this.shouldPoll=params.shouldPoll;if(percent==100&&this.shouldPoll==false){this.complete=true;}var w=Math.floor((percent/100)*$("#"+this.target+" .ProgressMeterBackground").width());$("#"+this.target+" .ProgressMeterProgress").animate({width:w},duration,"linear",function(){if(thisContext.complete){$("#"+thisContext.target+" .ProgressMeterProgress").addClass("ProgressComplete");
thisContext.completeProgress(callback);}});},test:function(){var randDur=Math.floor(Math.random()*3000)+10;this.setProgress({percent:100,duration:(randDur*1000),elapsed:60,remaining:60});this.remaining=randDur;this.updateRemaining();this.updateElapsed();this.updatePercent();},setElapsed:function(elapsed){if(elapsed==null||elapsed=="Unknown"){this.elapsed=null;return;}if(this.complete||elapsed==0){return;}if(typeof(elapsed)!="number"){elapsed=elapsed.replace(/\s+/g,"");if(elapsed.match(/^\d+:\d+:\d+$/)){var elapsedArr=elapsed.split(":",3);this.elapsed=parseInt(elapsedArr[0]*60*60)+parseInt(elapsedArr[1]*60)+parseInt(elapsedArr[2]);}}else{this.elapsed=elapsed;}},setRemaining:function(remaining){if(remaining==null||remaining=="Unknown"){this.remaining=null;return;}if(remaining==0||this.complete){this.remaining=0;return;}if(typeof(remaining)!="number"){remaining=remaining.replace(/\s+/g,"");if(remaining.match(/^\d+:\d+:\d+$/)){var remainingArr=remaining.split(":",3);this.remaining=parseInt(remainingArr[0]*60*60)+parseInt(remainingArr[1]*60)+parseInt(remainingArr[2]);
}}else{this.remaining=remaining;}},setPercent:function(percent){if(!percent){this.percent=0;return;}this.percent=percent;},updateElapsed:function(){var shouldPoll=this.shouldPoll;var timeElapsed;if(this.elapsed==null){timeElapsed=0;}else{this.elapsed++;timeElapsed=this.elapsed;}$("#"+this.target+" .ProgressMeterElapsed span").html(this.formatSecondsAsTime(timeElapsed));if(shouldPoll){setTimeout(BLIP.Delegate.create(this,this.updateElapsed),1000);}},updatePercent:function(){var shouldPoll=this.shouldPoll;if(this.complete==false){var percent=0;if(this.percent>0){percent=Math.floor(($("#"+this.target+" .ProgressMeterProgress").width()/$("#"+this.target+" .ProgressMeterBackground").width())*100);}$("#"+this.target+" .Percent").html(percent+"%");if(shouldPoll){setTimeout(BLIP.Delegate.create(this,this.updatePercent),500);}}else{$("#"+this.target+" .Percent").html("100%");}},updateRemaining:function(){var shouldPoll=this.shouldPoll;var timeRemaining;if(this.remaining==null){timeRemaining="Unknown time";
}else{if(this.remaining>0){this.remaining--;}timeRemaining=this.formatSecondsAsTime(this.remaining);}$("#"+this.target+" .ProgressMeterRemaining span").html(timeRemaining);if(shouldPoll){setTimeout(BLIP.Delegate.create(this,this.updateRemaining),1000);}}});BLIP.Class.create("BLIP.Controls.ProgressMeter.CompletenessProgressMeter",BLIP.Controls.ProgressMeter,function(config){BLIP.Controls.ProgressMeter.call(this,config);},{getHtml:function(){var html='<div class="ProgressMeter">';html+='<div class="ProgressMeterProgress"></div>';html+='<div class="ProgressMeterBackground"></div>';html+='<div class="Clear"></div>';html+="</div>";return html;},setProgress:function(percent){var thisContext=this;this.setPercent(percent);var w=Math.floor((percent/100)*$("#"+this.target+" .ProgressMeterBackground").width());$("#"+this.target+" .ProgressMeterProgress").animate({width:w},1400,"swing");$("#AmountWrapper img").animate({marginLeft:(w-5)},1400,"swing");}});BLIP.Class.create("BLIP.Controls.ProgressMeter.TranscodingProgressMeter",BLIP.Controls.ProgressMeter,function(config){var thisContext=this;
this.id=config.id;this.itemid=config.itemid;this.conversionsId=config.conversionsId;this.singleEpisode=config.singleEpisode;this.parent=config.parent;BLIP.Controls.ProgressMeter.call(this,config);},{minUpdateDelay:5,minRequestedUpdateDelay:10,maxUpdateDelay:15,pollingCallback:{},progress:0,err:{},id:0,itemid:0,format:"",lastStatus:"",conversionsId:0,k:0,singleEpisode:false,waitTimeSeconds:0,timer:null,isPolling:false,stopPolls:false,interjections:["Nice","Yes","Great","Yeah","Dude","Hurray","Cheers","Bien","Joy","I'll say","Ahoy","Alas","Alright","Aye","Bam","Beauty","Bingo","Gee","Ha","Hiya","Hola","Honk","Hot damn","Hurrah","Huzzah","Indeed","Kapow","Kerblam","Right on","Sweet","Woohoo","Yeeha","Sweet Fancy Moses","Good news","Yipee"],clearComplete:function(progress){$("#"+this.target).slideUp();if(this.singleEpisode){EpisodeConversions.checkConversions();}},getNextUpdateSeconds:function(progress){return(this.minUpdateDelay+((this.maxUpdateDelay-this.minUpdateDelay)*(Math.sin((progress/100)*Math.PI))));
},hidePercent:function(){$("#"+this.target+" .Percent").hide();},hideTimers:function(){$("#"+this.target+" .ProgressMeterElapsed").slideUp();$("#"+this.target+" .ProgressMeterRemaining").slideUp();},initialize:function(){$("#"+this.target).html("<div class='ConversionProgress'>"+this.getTitleHtml()+this.getHtml()+"</div><div class='Clear'></div>");this.startPolling();},getErrorButtonHtml:function(item){var html="<div class='ProgressMeterError'>";html+="<input type='button' value='Troubleshoot' onClick='"+BLIP.Delegate.createAsString(this,this.showTranscodeError,item)+"'>";html+="</div>";return html;},getInterjection:function(){return(this.interjections[Math.round(Math.random()*(this.interjections.length-1))]);},getK:function(conversions){for(var i=0;i<conversions.length;i++){if(conversions[i].conversions_id==this.conversionsId){this.k=i;return true;}}return false;},getProgress:function(id){this.isPolling=true;var url="/posts/conversion_status?skin=json&no-cache=1&ids="+this.id+"&callback="+this.parent+".progressResponse";
$.getScript(url);},getTitleHtml:function(){var html="<div class='ProgressTitle'>Getting conversion status</div>";return html;},getTranscodeErrorHtml:function(item){var html="There are a number of reasons why your conversion may have failed. Check out our <a href='http://blip.tv/faq/errors/#transcode_error0'>FAQ on conversions</a> for a little help.<br><br>";html+="<img src='/skin/mercury/dashboard/images/pro.star.tiny.png' class='TinyTranscodeProIcon'> If you've gone through the FAQ above and still want to try converting your video, press the button below.";html+="<div class='RetryConversion'>";html+="<input type='button' value='Retry conversion' onClick='"+BLIP.Delegate.createAsString(this,this.retryTranscode,item.format.toLowerCase())+"'>";html+="</div>";return html;},poll:function(){this.waitTimeSeconds=Math.ceil(this.getNextUpdateSeconds(this.progress||0))*1000;this.timer=setTimeout(BLIP.Delegate.create(this,this.getProgress),(this.waitTimeSeconds));},progressResponse:function(items){var thisContext=this;
this.isPolling=false;if(this.stopPolls){return;}if(items.length>0&&items[0].conversions.length>0&&this.getK(items[0].conversions)){var myItem=items[0].conversions[this.k];switch(items[0].conversions[this.k].status){case"Requested":if(this.lastStatus!="Requested"){this.setCSS("Requested");this.updateTitle(myItem);this.hideTimers();this.hidePercent();}this.lastStatus="Requested";break;case"Pending":this.setProgress({percent:myItem.percentage_done,duration:1000,elapsed:myItem.time_elapsed,remaining:myItem.time_remaining,shouldPoll:true});if(this.lastStatus!="Pending"){this.setCSS("Pending");this.showTimers();this.showPercent();this.updateRemaining();this.updateElapsed();this.updatePercent();this.updateTitle(myItem);}this.lastStatus="Pending";break;case"Completed":if(this.lastStatus!="Completed"){this.setProgress({percent:100,duration:1000,elapsed:0,remaining:0,shouldPoll:false});this.updateTitle(myItem);this.updatePercent();this.lastStatus="Completed";this.hideTimers();}break;case"Timeout":case"Error":if(this.lastStatus!="Error"){this.setProgress({percent:0,duration:1000,elapsed:null,remaining:null,shouldPoll:false});
this.hideTimers();this.setCSS("Error");this.setErrorButton(myItem);this.updateTitle(myItem);}this.lastStatus="Error";break;default:break;}this.progress=myItem.percent_done;if(myItem.status=="Requested"){setTimeout(BLIP.Delegate.create(this,this.poll),this.minRequestedUpdateDelay*1000);}else{if(myItem.status=="Pending"){this.poll();}else{if(myItem.status=="Completed"){setTimeout(BLIP.Delegate.create(this,this.clearComplete),5000);}else{}}}}},retryResponse:function(){BLIP.Utils.hideError("#"+this.target+" input");this.lastStatus="Error";this.initialize();},retryTranscode:function(fileType){var errorId=BLIP.Utils.getError("#"+this.target+" input").getErrorId();$("#"+errorId+" input").attr("value","One moment please.");$("#"+errorId+" input").attr("disabled",true);$.getScript("/file/requeue_transcode/"+this.itemid+"?format="+fileType+"&skin=json&callback="+BLIP.Utils.trimDelegate(BLIP.Delegate.createAsString(this,this.retryResponse)));},setCSS:function(state){$("#"+this.target).removeClass("ErrorState");
$("#"+this.target).removeClass("PendingState");$("#"+this.target).removeClass("RequestedState");$("#"+this.target).removeClass("CompletedState");$("#"+this.target).addClass(state+"State");},setErrorButton:function(item){$("#"+this.target+" .ProgressPercentWrapper").hide();$("#"+this.target+" .ProgressMeter").prepend(this.getErrorButtonHtml(item));var buttonWidth=$("#"+this.target+" .ProgressMeter input").width();var barWidth=$("#"+this.target+" .ProgressMeter").width();$("#"+this.target+" .ProgressMeterError").css("margin-left",Math.floor((barWidth/2)-(buttonWidth/2))-10);},showTranscodeError:function(item){var thisContext=this;BLIP.Utils.showError({div:"#"+thisContext.target+" input",msg:thisContext.getTranscodeErrorHtml(item)});},showPercent:function(){$("#"+this.target+" .Percent").show();},showTimers:function(){$("#"+this.target+" .ProgressMeterElapsed").slideDown();$("#"+this.target+" .ProgressMeterRemaining").slideDown();},startPolling:function(){this.getProgress(this.id);},stopPolling:function(){this.stopPolls=true;
clearTimeout(this.timer);},updateTitle:function(item){if(item.status=="Pending"){$("#"+this.target+" .ProgressTitle").html("Converting to "+item.format.toUpperCase()+" format");}else{if(item.status=="Requested"){$("#"+this.target+" .ProgressTitle").html(this.getInterjection()+"! Your "+item.format.toUpperCase()+" is queued for conversion.");}else{if(item.status=="Completed"){$("#"+this.target+" .ProgressTitle").html(item.format.toUpperCase()+" Conversion complete.");}else{if(item.status=="Error"){$("#"+this.target+" .ProgressTitle").html("Sorry, your "+item.format.toUpperCase()+" failed to convert.");}else{if(item.status=="Timeout"){$("#"+this.target+" .ProgressTitle").html("Sorry, your "+item.format.toUpperCase()+" timed out.");}}}}}}});BLIP.Class.create("BLIP.Controls.UploadProgressManager",BLIP.Controls.Control,function(config){var thisContext=this;this.target=config.target;this.statusUrl=config.statusUrl;this.uid=config.uid;this.startingSlot=config.startingSlot;this.submitObject=config.submitObject;
this.config=config;var controlConfig={target:config.target,delayInitialization:true,useDocumentWrite:false};BLIP.Controls.Control.call(this,controlConfig);$(document).ready(function(){thisContext.initialize();});},{config:{},currentUpload:0,progressBars:[],progressTip:{},startingSlot:0,statusUrl:"",submitObject:[],getWrapperHtml:function(){var html="<div id='ProgressWrapper'></div>";return html;},initialize:function(){$("#"+this.target).before(this.getWrapperHtml());this.initProgressBars();this.setProgressTip();this.progressBars[0].startPolling();},initProgressBars:function(){this.progressBars=new Array();for(var i=0;i<this.submitObject.length;i++){this.insertProgressBar(i);}},insertProgressBar:function(i){var thisObj=this;this.progressBars[i]=new BLIP.Controls.ProgressMeter.UploadProgressMeter({id:i,completedMethod:BLIP.Delegate.create(thisObj,thisObj.startNextMeter,i),sessionId:thisObj.uid,statusUrl:thisObj.statusUrl,target:thisObj.target,submitObject:thisObj.submitObject});},processResponse:function(data){var thisObj=this;
var startingSlot=this.startingSlot||0;if(data.session[this.currentUpload]){$.each(data.session,function(){thisObj.progressBars[this.slot-startingSlot].progressUpdate(this);});}else{this.progressBars[this.currentUpload].pendingIntervalPoll();}},setProgressTip:function(){var thisContext=this;var height=$("#ProgressWrapper").height();this.progressTip=new BLIP.Controls.Tip({target:"ProgressWrapper",delayInitialization:true,yoffset:height,tip:"Your files are transferring but this upload will not be complete until you fill out the metadata below."});},startNextMeter:function(i){if(i+1<this.submitObject.length){this.currentUpload=i+1;this.progressBars[this.currentUpload].startPolling();}}});BLIP.Class.create("BLIP.Controls.ProgressMeter.UploadProgressMeter",BLIP.Controls.ProgressMeter,function(config){var thisContext=this;this.id=config.id;this.sessionId=config.sessionId;this.statusUrl=config.statusUrl;this.submitObject=config.submitObject;this.completedMethod=config.completedMethod;config.hasTime=true;
BLIP.Controls.ProgressMeter.call(this,config);},{id:0,isFirstPoll:true,minUpdateDelay:3,maxUpdateDelay:7,sessionId:0,statusUrl:"",state:"Pending",submitObject:[],timer:null,waitTimeSeconds:0,completed:function(){this.complete=true;this.state="Completed";this.shouldPoll=false;this.completedMethod();this.setRemaining(0);this.setPercent(100);this.updatePercent();this.setProgressComplete(BLIP.Delegate.create(this,this.resetProgressMeterStyle));},firstPollEvents:function(){if(this.isFirstPoll){this.isFirstPoll=false;this.shouldPoll=true;this.state="Transferring";this.resetProgressMeterStyle();this.updatePercent();this.updateRemaining();this.updateElapsed();this.getProgress(this.id);}},getHtml:function(){var html='<div id="Meter'+this.id+'" class="ProgressMeter '+this.getMeterStyle()+'">';html+=this.getProgressTitleHtml();html+='<div class="ProgressPercentWrapper"><div class="Percent">0%</div></div>';html+='<div class="ProgressMeterProgress"></div>';html+='<div class="ProgressMeterBackground"></div>';
html+=this.getProgressTimesHtml();html+='<div class="Clear"></div>';html+="</div>";return html;},getMeterStyle:function(){if(this.state=="Transferring"){return"ProgressState";}else{if(this.state=="Completed"){return"CompletedState";}else{return"PendingState";}}},getNextUpdateSeconds:function(progress){return(this.minUpdateDelay+((this.maxUpdateDelay-this.minUpdateDelay)*(Math.sin((progress/100)*Math.PI))));},getProgress:function(){var url=this.statusUrl+"?session="+this.sessionId+"&callback=upload.progressBar.processResponse";$.getScript(url);},getProgressTitleHtml:function(){var html='<div class="ProgressTitle">';html+='<b class="State">'+this.state+":</b> "+this.submitObject[this.id].name;html+="</div>";return html;},initialize:function(){$("#ProgressWrapper").append(this.getHtml());},pendingIntervalPoll:function(){if(this.isFirstPoll){this.poll();setTimeout(BLIP.Delegate.create(this,this.pendingIntervalPoll),3000);}},poll:function(){if(this.complete==false){if(this.progress){this.waitTimeSeconds=Math.ceil(this.getNextUpdateSeconds(this.progress))*1000;
this.waitTimeSeconds+=1000;}else{this.waitTimeSeconds=5000;}this.timer=setTimeout(BLIP.Delegate.create(this,this.getProgress,this.id),(this.waitTimeSeconds));}},progressUpdate:function(session){if(session.bytesReceived!=session.bytesTotal){var thisObj=this;var elapsed=Math.round((session.currentTime-session.startTime)/1000);var percent=Math.round((session.bytesReceived/session.bytesTotal)*100);var remaining=Math.round(((session.bytesTotal*(session.currentTime-session.startTime))/session.bytesReceived)/1000);this.progress=percent;this.firstPollEvents();this.poll();this.setProgress({percent:percent,duration:thisObj.waitTimeSeconds,elapsed:elapsed,remaining:remaining,shouldPoll:true});}else{if(this.complete==false){this.completed();}}},resetProgressMeterStyle:function(){$("#Meter"+this.id).attr("class","ProgressMeter "+this.getMeterStyle());$("#Meter"+this.id+" .State").html(this.state+":");},setProgress:function(params){var percent=params.percent;var duration=params.duration;var callback=params.callback;
var elapsed=params.elapsed;var remaining=params.remaining;var thisContext=this;this.setElapsed(elapsed);this.setRemaining(remaining);this.setPercent(percent);var w=Math.floor((percent/100)*$("#Meter"+this.id+" .ProgressMeterBackground").width());$("#Meter"+this.id+" .ProgressMeterProgress").stop();$("#Meter"+this.id+" .ProgressMeterProgress").animate({width:w},duration,"linear",function(){if(thisContext.complete){$("#Meter"+thisContext.id+" .ProgressMeterProgress").addClass("ProgressComplete");}});},setProgressComplete:function(callback){var w=$("#Meter"+this.id+" .ProgressMeterBackground").width();$("#Meter"+this.id+" .ProgressMeterProgress").stop();$("#Meter"+this.id+" .ProgressMeterProgress").animate({width:w},500,"linear");callback();},startPolling:function(){this.poll();},updateElapsed:function(){var shouldPoll=this.shouldPoll;var timeElapsed;if(this.elapsed==null){timeElapsed=0;}else{this.elapsed++;timeElapsed=this.elapsed;}$("#Meter"+this.id+" .ProgressMeterElapsed span").html(this.formatSecondsAsTime(timeElapsed));
if(shouldPoll){setTimeout(BLIP.Delegate.create(this,this.updateElapsed),1000);}},updatePercent:function(){var shouldPoll=this.shouldPoll;if(this.complete==false){var percent=0;if(this.percent>0){percent=Math.floor(($("#Meter"+this.id+" .ProgressMeterProgress").width()/$("#Meter"+this.id+" .ProgressMeterBackground").width())*100);}$("#Meter"+this.id+" .Percent").html(percent+"%");if(shouldPoll){setTimeout(BLIP.Delegate.create(this,this.updatePercent),500);}}else{$("#Meter"+this.id+" .Percent").html("100%");}},updateRemaining:function(){var shouldPoll=this.shouldPoll;var timeRemaining;if(this.remaining==0){if(this.complete){timeRemaining="0:00";}else{timeRemaining="Calculating time";}}else{if(this.remaining>0){this.remaining--;}timeRemaining=this.formatSecondsAsTime(this.remaining);}$("#Meter"+this.id+" .ProgressMeterRemaining span").html(timeRemaining);if(shouldPoll){setTimeout(BLIP.Delegate.create(this,this.updateRemaining),1000);}}});BLIP.Class.create("BLIP.Controls.ReportAdjust",BLIP.Controls.Control,function(config){var thisContext=this;
var controlConfig={target:"",delayInitialization:false,useDocumentWrite:false};BLIP.Controls.Control.call(this,controlConfig);$(document).ready(function(){thisContext.initialize();});},{daysFetching:0,daysHave:0,loadedSections:0,totalSections:5,adjustEngagementGraph:function(data){var formattedData=engagementGraph.getFlotFormattedData(data);var graphableData=engagementGraph.getFlotFormattedObject(formattedData);engagementGraph.plotGraph(graphableData);},adjustSummary:function(){var items=detailsDay.getItems();var totalViews=0;var cpmViews=0;var totalRevenue=0;var eCPM=0;for(var i=0;i<items.length;i++){totalViews+=items[i].views;if(i>1){cpmViews+=items[i].views;totalRevenue+=parseFloat(items[i].revenue);}}totalRevenue=totalRevenue?totalRevenue:0;var eCPM=(totalViews>0)?((totalRevenue/cpmViews)*1000):0;$("#ReportToggleSummaryViews").html(BLIP.Utils.formatNumber(totalViews));$("#ReportToggleSummaryRevenue").html(BLIP.Utils.formatNumber(totalRevenue.toFixed(2),"$"));$("#ReportToggleSummaryCPM").html("$--.--");
},adjustViewsGraph:function(){var totalData=detailsDay.getItems();if($("#ShowViews").attr("checked")&&$("#ShowRevenue").attr("checked")){var viewsData=viewsGraph.getFlotFormattedViewsData(totalData);var graphableData=viewsGraph.getFlotFormattedViewsObject(viewsData);var revenueData=viewsGraph.getFlotFormattedRevenueData(totalData);graphableData=viewsGraph.appendRevenueData(graphableData,revenueData);viewsGraph.plotGraph(graphableData);}else{if($("#ShowViews").attr("checked")){var viewsData=viewsGraph.getFlotFormattedViewsData(totalData);var graphableData=viewsGraph.getFlotFormattedViewsObject(viewsData);viewsGraph.plotGraph(graphableData);}else{if($("#ShowRevenue").attr("checked")){var revenueData=viewsGraph.getFlotFormattedRevenueData(totalData);var graphableData=new Array(viewsGraph.getFlotFormattedRevenueObject(revenueData));viewsGraph.plotGraph(graphableData);}}}},bindActions:function(){var thisContext=this;$("#ReportToggleDateSource #Go").click(function(){$("#ReportToggleDateSource #Go").attr("disabled","disabled");
thisContext.updateReport();});$("#ReportShowHide input").change(function(){thisContext.adjustViewsGraph();});},displayLoadingIndicator:function(div){$("body").append(this.getLoadingIndicatorHtml(div));var w=$("#"+div).width();var h=$("#"+div).height();var offset=$("#"+div).offset();$("#"+div+"LoadingBox").css({width:w,height:h,top:offset.top,left:offset.left});},getLoadingIndicatorHtml:function(div){return"<div id='"+div+"LoadingBox' class='LoadingBox'><table width='100%' height=100%' border='0'><tr><td align='center' valign='middle'><img src='/skin/mercury/dashboard/images/dashboard.loading.gif'></td></tr></table></div>";},hideLoadingIndicator:function(div){$("#"+div+"LoadingBox").fadeOut(600,function(){$("#"+div+"LoadingBox").remove();});},initialize:function(){this.bindActions();this.updateReport();},loadCompleteCheck:function(){this.loadedSections++;if(this.loadedSections==this.totalSections){$("#ReportToggleDateSource #Go").attr("disabled","");this.loadedSections=0;}},responseDetailsByDay:function(response){this.daysHave=this.daysFetching;
this.daysFetching=0;detailsDay.setItems(response.reverse());this.adjustViewsGraph();this.adjustSummary();this.hideLoadingIndicator("DetailsDay");this.hideLoadingIndicator("ReportPlotGraph");this.loadCompleteCheck();},responseEngagement:function(response){this.adjustEngagementGraph(response);this.hideLoadingIndicator("EngagementGraph");this.loadCompleteCheck();},responseEpisodes:function(response){detailsEpisode.setItems(response);this.hideLoadingIndicator("DetailsEpisode");this.loadCompleteCheck();},responseReferrers:function(response){detailsReferrer.setItems(response);this.hideLoadingIndicator("DetailsReferrer");this.loadCompleteCheck();},responseUserAgents:function(response){detailsUserAgent.setItems(response);this.hideLoadingIndicator("DetailsUserAgent");this.loadCompleteCheck();},smartDetailsByDay:function(days){this.daysFetching=0;detailsDay.smartSetItems(days);this.adjustViewsGraph();this.adjustSummary();this.hideLoadingIndicator("DetailsDay");this.hideLoadingIndicator("ReportPlotGraph");
this.loadCompleteCheck();},updateDetailsByDay:function(days){if(parseInt(days)<=parseInt(this.daysHave)){this.smartDetailsByDay(parseInt(days));}else{this.displayLoadingIndicator("DetailsDay");this.displayLoadingIndicator("ReportPlotGraph");$.getScript("/dashboard/users_stats_over_time?days="+days+"&skin=json&no-cache=1&days_have="+this.daysHave+"&callback=reportAdjust.responseDetailsByDay");}},updateEngagement:function(days){$.getScript("/dashboard/users_video_engagement?days="+days+"&skin=json&no-cache=1&callback=reportAdjust.responseEngagement");this.displayLoadingIndicator("EngagementGraph");},updateEpisodes:function(days){$.getScript("/dashboard/users_stats_by_episode?days="+days+"&skin=json&no-cache=1&callback=reportAdjust.responseEpisodes");this.displayLoadingIndicator("DetailsEpisode");},updateReferrers:function(days){$.getScript("/dashboard/users_referrers_over_time?days="+days+"&skin=json&no-cache=1&callback=reportAdjust.responseReferrers");this.displayLoadingIndicator("DetailsReferrer");
},updateUserAgents:function(days){$.getScript("/dashboard/users_browsers_over_time?days="+days+"&skin=json&no-cache=1&callback=reportAdjust.responseUserAgents");this.displayLoadingIndicator("DetailsUserAgent");},updateReport:function(forcedDays){var days=$("#ReportToggleDateSource #DaysBack").val();$(".ForDays").html("for the last "+days+" days");$(".SummaryForDays").html("("+days+" days)");this.daysFetching=days;this.updateDetailsByDay(days);this.updateEngagement(days);this.updateEpisodes(days);this.updateReferrers(days);this.updateUserAgents(days);}});BLIP.Class.create("BLIP.Controls.ReportAdjust.ReportAdjustDetailed",BLIP.Controls.ReportAdjust,function(config){this.postId=config.postId;BLIP.Controls.ReportAdjust.call(this,config);},{postId:0,adjustEngagementGraph:function(data){var formattedData=engagementGraph.getFlotFormattedData(data);var graphableData=engagementGraph.getFlotFormattedObject(formattedData);engagementGraph.plotGraph(graphableData);},responseDetailsByDay:function(response){this.daysHave=this.daysFetching;
this.daysFetching=0;response.reverse();detailsDay.setItems(response);detailsFormats.setItems(response);this.adjustViewsGraph();this.adjustSummary();this.hideLoadingIndicator("DetailsDay");this.hideLoadingIndicator("DetailsFormats");this.hideLoadingIndicator("ReportPlotGraph");this.loadCompleteCheck();},responseEngagement:function(response){this.adjustEngagementGraph(response);this.hideLoadingIndicator("EngagementGraph");this.loadCompleteCheck();},smartDetailsByDay:function(days){this.daysFetching=0;detailsDay.smartSetItems(days);detailsFormats.smartSetItems(days);this.adjustViewsGraph();this.adjustSummary();this.hideLoadingIndicator("DetailsDay");this.hideLoadingIndicator("DetailsFormats");this.hideLoadingIndicator("ReportPlotGraph");this.loadCompleteCheck();},updateDetailsByDay:function(days){if(parseInt(days)<=parseInt(this.daysHave)){this.smartDetailsByDay(parseInt(days));}else{this.displayLoadingIndicator("DetailsDay");this.displayLoadingIndicator("DetailsFormats");if($("#EngagementTab").hasClass("ui-tabs-selected")==false){this.displayLoadingIndicator("ReportPlotGraph");
}$.getScript("/dashboard/posts_stats_over_time?days="+days+"&skin=json&no-cache=1&days_have="+this.daysHave+"&posts_id="+this.postId+"&callback=reportAdjust.responseDetailsByDay");}},updateReferrers:function(days){$.getScript("/dashboard/posts_referrers_over_time?days="+days+"&skin=json&no-cache=1&posts_id="+this.postId+"&callback=reportAdjust.responseReferrers");this.displayLoadingIndicator("DetailsReferrer");},updateUserAgents:function(days){$.getScript("/dashboard/posts_browsers_over_time?days="+days+"&skin=json&no-cache=1&posts_id="+this.postId+"&callback=reportAdjust.responseUserAgents");this.displayLoadingIndicator("DetailsUserAgent");},updateEngagement:function(days){$.getScript("/dashboard/video_engagement/"+this.postId+"?days="+days+"&skin=json&no-cache=1&callback=reportAdjust.responseEngagement");if($("#EngagementTab").hasClass("ui-tabs-selected")){this.displayLoadingIndicator("EngagementGraph");}},updateReport:function(forcedDays){var days=$("#ReportToggleDateSource #DaysBack").val();
$(".ForDays").html("for the last "+days+" days");$(".SummaryForDays").html("("+days+" days)");this.daysFetching=days;this.updateDetailsByDay(days);this.updateEngagement(days);this.updateReferrers(days);this.updateUserAgents(days);}});BLIP.Class.create("BLIP.Controls.Steps",BLIP.Controls.Control,function(config){var thisContext=this;this.config=config;this.target=config.target;this.currentStep=config.currentStep;this.totalSteps=config.totalSteps;var controlConfig={target:config.target,delayInitialization:false,useDocumentWrite:false};BLIP.Controls.Control.call(this,controlConfig);$(document).ready(function(){thisContext.initialize();});},{config:{},currentStep:0,target:"",totalSteps:0,getHtml:function(){html='<div id="Steps">';html+='Step <div id="CurrentStep" class="Step">'+this.currentStep+'</div> of <div id="TotalSteps" class="Step">'+this.totalSteps+"</div>";html+="</div>";return(html);},getTargetProperties:function(){var targetObj=$("#"+this.target);var offset=targetObj.offset();return{x:offset.left,y:offset.top,width:targetObj.width(),height:targetObj.height()};
},initialize:function(){$("body").append(this.getHtml());this.setStepsPosition();},resize:function(){this.setStepsPosition();},setStepsPosition:function(){var targetObj=$("#"+this.target);var targetProperties=this.getTargetProperties();var stepsObj=$("#Steps");var destProperties={};destProperties.x=(targetProperties.x+targetProperties.width-stepsObj.width()-4);destProperties.y=(targetProperties.y-43);stepsObj.css("left",destProperties.x);stepsObj.css("top",destProperties.y);},updateCurrentStep:function(currentStep){this.currentStep=currentStep;$("#Steps #CurrentStep").html(currentStep);}});BLIP.Class.create("BLIP.Controls.Tip",BLIP.Controls.Control,function(config){var thisContext=this;this.config=config;this.target=config.target;controlConfig={target:config.target,delayInitialization:false,useDocumentWrite:false};BLIP.Controls.Control.call(this,controlConfig);$(document).ready(function(){thisContext.initialize();});},{target:"",config:{},randNum:0,destroy:function(){$("#Tip"+this.randNum).remove();
},getHtml:function(){var targetHtml='<div class="Tip" id="Tip'+this.randNum+'">';targetHtml+='<div class="TipContents">';targetHtml+=this.config.tip;targetHtml+="</div>";targetHtml+="</div>";return(targetHtml);},forceReposition:function(){this.setTipPosition();},getTargetProperties:function(){var targetObj=$("#"+this.target);var offset=targetObj.offset();return{x:offset.left,y:offset.top,width:targetObj.width(),height:targetObj.height()};},initialize:function(){this.randNum=Math.floor(Math.random()*1000000000);$("body").append(this.getHtml());this.setTipPosition();},resize:function(){this.setTipPosition();},setTipPosition:function(){var targetObj=$("#"+this.target);var targetProperties=this.getTargetProperties();var tipObj=$("#Tip"+this.randNum);var destProperties={};var yoffset=this.config.yoffset||20;var xoffset=this.config.xoffset||10;destProperties.x=(targetProperties.x+xoffset);destProperties.y=(targetProperties.y+yoffset);tipObj.css("left",destProperties.x);tipObj.css("top",destProperties.y);
}});BLIP.Class.create("BLIP.Controls.TopMenu",Object,function(config){var thisContext=this;this.target=config.target;this.tabId=config.tabId;$(document).ready(function(){thisContext.initialize();});},{target:"",tabId:"",initialize:function(){this.setOver(this.tabId);$("#"+this.target+" #ListMenu li").hover(function(){$(this).addClass("Hovering");$(this).children(".SubMenu").show();if($.browser.msie&&$.browser.version.substr(0,1)=="6"&&$(this).children(".SubMenu").length>0){var listItemOffset=$(this).offset();var submenuOffset=$(this).children(".SubMenu").offset();var ieVariation=((listItemOffset.left)-(submenuOffset.left));if(ieVariation<-1){$(this).children(".SubMenu").css("margin-left",(ieVariation-1));}}},function(){$(this).removeClass("Hovering");$(this).children(".SubMenu").hide();});},setOver:function(tabId){$("#"+tabId).addClass("Over");}});BLIP.Class.create("BLIP.Controls.Upload",BLIP.Controls.Control,function(config){this.config=config;this.docDomain=config.docDomain;this.cookieDomain=config.cookieDomain;
this.site=config.site;if(!this.isBatchEdit){this.formAction=config.formAction;}this.statusUrl=config.statusUrl;var controlConfig={target:config.target,delayInitialization:true,useDocumentWrite:false};BLIP.Controls.Control.call(this,controlConfig);this.initialize();},{config:{},docDomain:"",cookieDomain:"",site:"",formAction:"",statusUrl:"",metadataComplete:false,metadataForm:{},metadataFormTarget:"FormWrapper",progressBar:{},queueComplete:false,steps:{},uid:0,uploadList:{},formItemsMap:{},finish:function(){var thanksDiv=document.createElement("div");thanksDiv.setAttribute("id","MetadataComplete");$("#"+this.metadataFormTarget).after(thanksDiv);$("#MetadataComplete").html(this.getThankYouHtml());$("#"+this.metadataFormTarget).hide();this.progressBar.progressTip.destroy();BLIP.Utils.updateCacheKiller(this.cookieDomain);},finishMetadata:function(response){if(this.queueComplete){$("#FormBlock").submit();}else{this.metadataComplete=true;}},finishQueue:function(){if(this.metadataComplete){$("#FormBlock").submit();
}else{this.queueComplete=true;}},fixDisableAds:function(){if(!$("#del").attr("checked")){$("#del").attr("checked",true);$("#del").attr("value","0");}},fixDistDests:function(){var value;$("#Distribution input[name='user_feed']").each(function(i){if($(this).attr("checked")){$(this).val("add_"+$(this).val());}else{$(this).attr("checked","checked");$(this).val("remove_"+$(this).val());}});},getThankYouHtml:function(){var html='			<img src="/skin/mercury/dashboard/images/form.upload.bigarrowup.gif" style="float: left; margin: -3px 10px 20px 0"><span style="font-size: 18px; line-height: 26px;">Your file is still being uploaded.</span><span style="display: block; font-size: 14px; color: #888;">It may take a few moments to digest your files once the upload is complete.  Hang tight! You\'ll be redirected momentarily.</span>';html+='			<div style="margin-top: 10px; border: 1px solid #C5C5C5; border-left: none; border-right: none; overflow: auto;">';html+='				<div style="padding: 10px; border-bottom: 1px dotted #AAA; overflow: auto;">';
html+='					<img src="/skin/mercury/dashboard/images/form.upload.smallrarrow.gif" style="float: left; margin: 3px 15px 0 -10px;"> Things that you shouldn\'t do right now.';html+="				</div>";html+='				<div style="padding: 23px 0 13px 0; overflow: auto;">';html+='					<div class="DontDo">';html+='						<img src="/skin/mercury/dashboard/images/form.upload.dont.close.gif">';html+="						Don't close this window.";html+="					</div>";html+='					<div class="DontDo">';html+='						<img src="/skin/mercury/dashboard/images/form.upload.dont.click.gif">';html+="						Don't click other links in this window.";html+="					</div>";html+='					<div class="DontDo">';html+='						<img src="/skin/mercury/dashboard/images/form.upload.dont.play.gif">';html+="						Don't play bandwidth intensive games.";html+="					</div>";html+='					<div class="DontDo">';html+='						<img src="/skin/mercury/dashboard/images/form.upload.dont.pick.gif">';html+="						Don't pick your nose.";html+="					</div>";html+="				</div>";
html+="			</div>";return html;},initialize:function(){this.setFormUID();this.initializeUploadList();this.initializeSteps();this.formItemsMap=this.makeFormItemsMap(this.config.formItems);},makeFormItemsMap:function(items){var itemsMap={};for(var i=0;i<items.length;i++){if(!items[i].items){itemsMap[items[i].id]=items[i];}else{itemsMap[items[i].id]=this.makeFormItemsMap(items[i].items);}}return itemsMap;},initializeMetadataForm:function(){var thisContext=this;var metadataDiv=document.createElement("div");metadataDiv.setAttribute("id",this.metadataFormTarget);$("#"+this.target).after(metadataDiv);this.metadataForm=new BLIP.Controls.UploadForm({target:thisContext.metadataFormTarget,formManager:thisContext,formHeading:thisContext.config.formHeading,formAction:thisContext.formAction,isPro:thisContext.config.isPro,distributions:thisContext.config.distributions,submitObject:thisContext.uploadList.getSubmitObject(),uid:thisContext.uid,user:thisContext.config.user,site:thisContext.site,form:{id:"Form",cssClass:"FormBlock",items:thisContext.config.formItems,itemsMap:thisContext.formItemsMap}});
this.initializeProgressBar();this.steps.updateCurrentStep(2);},initializeProgressBar:function(){var thisContext=this;this.progressBar=new BLIP.Controls.UploadProgressManager({uid:thisContext.uid,submitObject:thisContext.uploadList.getSubmitObject(),target:thisContext.metadataFormTarget,statusUrl:thisContext.statusUrl});},initializeSteps:function(){var thisContext=this;this.steps=new BLIP.Controls.Steps({target:thisContext.config.target,currentStep:1,totalSteps:2});},initializeUploadList:function(){var listTarget=this.config.target;var thisContext=this;this.uploadList=new BLIP.Controls.UploadList({target:listTarget,delayInitialization:true,items:[],uid:thisContext.uid,authCode:thisContext.config.authCode,uploadForm:thisContext,roles:thisContext.config.roles,formAction:thisContext.formAction,documentDomain:thisContext.docDomain,languages:thisContext.config.languages});},metadataCompleteResponse:function(response){document.location=this.config.site+"/dashboard/";},setFormUID:function(){this.uid=this.config.user+"BLIP"+Math.floor(Math.random()*100000001);
},uploadComplete:function(response){if(response[0]["status"]=="error"){document.location=this.config.site+"/dashboard/error?msg="+escape(response[0]["message"]);}else{var slot=response[0]["slot"];if(slot!=undefined){this.uploadList.uploadFiles.uploadComplete(parseInt(response[0]["slot"]));}else{document.location=this.config.site+"/dashboard/error?msg=An unknown error occurred.  Please try again or contact support@blip.tv";}}}});BLIP.Class.create("BLIP.Controls.EditUpload",BLIP.Controls.Upload,function(config){var thisContext=this;this.returnTo=config.returnTo;$(document).ready(function(){thisContext.prepareForm();BLIP.Controls.Upload.call(thisContext,config);});},{isBatchEdit:false,metadataForm:{},metadataFormTarget:"Metadata",originalItems:{},postIds:"",returnTo:null,uploadFilesQueue:{},usersId:null,finish:function(response){$("#ProgressWrapper").hide();$("#MetadataComplete").html(this.getNoFileThankYouHtml());if(upload.returnTo){setTimeout("upload.returnTo(); parent.BLIP.Utils.myModal.hide();",2000);
}else{setTimeout("top.location.reload();",2000);}parent.BLIP.Utils.updateCacheKiller(this.cookieDomain);parent.BLIP.Utils.myModal.modalResize();},finishMetadata:function(){$("#Metadata").show();if(!this.isBatchEdit){this.metadataForm.submitObject=this.uploadList.getSubmitObject();this.metadataForm.itemId=this.originalItems.itemId;$("#FormBlock").prepend(this.metadataForm.getSubmitObjectHtml(this.uploadFilesQueue.filesToBeSubmitted));$("#FormBlock").prepend(this.metadataForm.getFileChangeHtml(this.uploadList.getChangesToFilesList(this.originalItems)));}this.moveDistributionIntoFormBlock();$("#FormBlock").submit();$("#Metadata").hide();if(this.uploadFilesQueue.filesToBeSubmitted){if(this.uploadFilesQueue.filesToBeSubmitted.length>0){this.finish();}}},finishQueue:function(){this.finishMetadata();},getCompletedFormItems:function(items){var posts=items[0].Posts;for(var i=0;i<posts.length;i++){this.formItemsMap["EpisodeTitle"].value=BLIP.Utils.escapeDoubleQuotes(posts[0].title);this.formItemsMap["EpisodeDescription"].value=BLIP.Utils.escapeDoubleQuotes(posts[0].description);
this.formItemsMap["Category"].options[this.getOptionsId(this.formItemsMap["Category"].options,posts[0].categoryId)].selected=true;this.formItemsMap["EpisodeTags"].value=BLIP.Utils.escapeDoubleQuotes(this.getExplodedTags(posts[0].tags));this.formItemsMap["hidden_license"].value=posts[0].licenseId;this.formItemsMap["License"]["CC"]["CC_Add"].value=posts[0].additionalLicense;if(this.getOptionsId(this.formItemsMap["Rating"].options,posts[0].contentRating)){this.formItemsMap["Rating"].options[this.getOptionsId(this.formItemsMap["Rating"].options,posts[0].contentRating)].selected=true;}else{this.formItemsMap["Rating"].options[this.getOptionsId(this.formItemsMap["Rating"].options,-1)].selected=true;}this.formItemsMap["DisableAds"]["del"].checked=posts[0].adOptOut==1?true:false;}this.getCompletedConversionItems(this.formItemsMap["Conversion"],posts);if(!this.isBatchEdit){this.getCompletedPlaylistItems(this.formItemsMap["Playlists"],posts);this.setPrivacyItems(this.formItemsMap["PrivacyContainer"],posts);
}return this.config.formItems;},getCompletedConversionItems:function(conversions,posts){if(!this.config.isPro){return;}var numPosts=posts.length;var conversionsCounts={};for(var item in conversions){var type=conversions[item]["value"];conversionsCounts[type]=0;}for(var i=0;i<posts.length;i++){var dupeChecker={};var postsConversions=posts[i].conversions;for(var j=0;j<postsConversions.length;j++){var type=postsConversions[j]["format"]+":"+postsConversions[j]["role"];if(dupeChecker[type]==1){continue;}dupeChecker[type]=1;conversionsCounts[type]++;}}for(var item in conversions){var type=conversions[item]["value"];if(conversionsCounts[type]==numPosts){conversions[item].checked=true;conversions[item].disabled=true;}}},getCompletedPlaylistItems:function(playlists,posts){if(playlists["Playlists0"]){return;}var numPosts=posts.length;var playlistCounts={};for(var item in playlists){var id=playlists[item]["value"];playlistCounts[id]=0;}for(var i=0;i<posts.length;i++){var postsPlaylist=posts[i].playlists;
for(var j=0;j<postsPlaylist.length;j++){var id=postsPlaylist[j]["id"];playlistCounts[id]++;}}for(var item in playlists){var id=playlists[item]["value"];if(playlistCounts[id]==numPosts){playlists[item].checked=true;}}},setPrivacyItems:function(privacy,posts){if(!this.config.isPro){return;}this.formItemsMap["hidden"].value=posts[0].hidden;var nextHiddenDate=posts[0].nextHiddenDate;var hiddenPassword=posts[0].hiddenPassword;if(nextHiddenDate!=""){privacy["PrivacyPrivate"]["PubOnDate"].value=nextHiddenDate;}if(hiddenPassword==1){privacy["PrivacyPrivate"]["PubWithPass"].label="Make visible with new password";}privacy["PrivacyPrivate"]["DateToPublish"].value=nextHiddenDate;privacy["PrivacyPrivate"]["PrivacyPassword"].value=hiddenPassword;},getExplodedTags:function(tagsArray){return tagsArray.join(", ");},getNoFilePleaseWaitHtml:function(){var html='			<div style="margin-top: 10px; height: 80px; background: #FFF;">';html+='				<div style="padding: 13px 13px 13px 0; overflow: auto; float: left"><img src="/skin/mercury/dashboard/images/modal.beachball.gif"></div>';
html+='				<div style="padding: 13px 0 13px 0; overflow: auto;">';html+='					<span style="font-size: 18px; line-height: 26px;">Just a moment. We\'re digesting your changes.</span><span style="display: block; font-size: 14px; color: #888;">Please enjoy this image of a beachball while you wait.</span>';html+="				</div>";html+='				<div class="Clear"></div>';html+="			</div>";return html;},getNoFileThankYouHtml:function(){var html='			<div style="margin-top: 10px; height: 80px; background: #FFF;">';html+='				<div style="padding: 13px 13px 13px 0; overflow: auto; float: left"><img src="/skin/mercury/dashboard/images/modal.good.gif"></div>';html+='				<div style="padding: 13px 0 13px 0; overflow: auto;">';html+='					<span style="font-size: 18px; line-height: 26px;">Good news! Your changes have been made.</span><span style="display: block; font-size: 14px; color: #888;">Hang tight, this page will refresh in a just a second.</span>';html+="				</div>";html+="			</div>";return html;},getOptionsId:function(options,val){for(var i in options){if(parseInt(options[i].value)==parseInt(val)){return i;
}}return false;},initialize:function(){this.setFormUID();this.formItemsMap=this.makeFormItemsMap(this.config.formItems);if(this.isBatchEdit==false){this.initializeUploadList();}this.requestItemsFromJSON();},initializeMetadataForm:function(formItems,distributions){var thisContext=this;if(this.isBatchEdit==true){var submitObject=null;}else{var submitObject=thisContext.uploadList.getSubmitObject();}this.metadataForm=new BLIP.Controls.EditUploadForm({target:thisContext.metadataFormTarget,formManager:thisContext,formHeading:this.config.formHeading,formAction:thisContext.formAction,submitObject:submitObject,uid:thisContext.uid,user:thisContext.config.user,isBatchEdit:thisContext.isBatchEdit,isPro:thisContext.config.isPro,distributions:distributions,form:{id:"Form",cssClass:"FormBlock",items:formItems,itemsMap:thisContext.formItemsMap}});},initializeProgressBar:function(){var thisContext=this;this.progressBar=new BLIP.Controls.UploadProgressManager({uid:thisContext.uid,submitObject:thisContext.uploadFilesQueue.filesToBeSubmitted,target:thisContext.metadataFormTarget,statusUrl:thisContext.statusUrl,startingSlot:thisContext.uploadFilesQueue.startingSlot});
},initializeUploadList:function(){var listTarget=this.config.target;var thisContext=this;this.uploadList=new BLIP.Controls.EditUploadList({target:listTarget,delayInitialization:true,items:[],uid:thisContext.uid,authCode:thisContext.config.authCode,uploadForm:thisContext,roles:thisContext.config.roles,formAction:thisContext.formAction,documentDomain:thisContext.docDomain,languages:thisContext.config.languages});},moveDistributionIntoFormBlock:function(){$("#FormBlock").append($("#Distribution").html());$("#Distribution input:checked").each(function(i){var distId=($(this).attr("id"));$("#FormBlock #"+distId).attr("checked",true);});$("#Distribution input[type='text']").each(function(i){var distId=($(this).attr("id"));$("#FormBlock #"+distId).val($(this).val());});$("#Distribution").hide();},prepareForm:function(){this.setPostIds();this.setUsersId();this.setBatchValue();if(this.isBatchEdit){this.setBatchEditMode();}},requestItemsFromJSON:function(){var url="/dashboard/episode_detailed/"+this.postIds+"?users_id="+this.usersId+"&skin=json&callback=upload.setItems"+"&no-cache=1";
$.ajax({url:url,cache:true,dataType:"script"});},setBatchEditMode:function(){this.formAction="/posts/batch_edit/"+this.postIds;$("#Episodes").remove();$(".ui-tabs-nav").tabs("remove",0);$(".ui-tabs-nav").tabs("select",0);},setBatchValue:function(){if(/,/.test(this.postIds)){this.isBatchEdit=true;}else{this.isBatchEdit=false;}},setError:function(msg){parent.BLIP.Utils.showError({div:"#EpisodeEdit",msg:"Something went wrong: "+msg});parent.BLIP.Utils.myModal.hide();},setItems:function(items){if(!items[0]||!items[0].Posts){if(items[0].error!=undefined){this.setError(items[0].error);}else{this.setError("Unknown error.  Please contact support if this problem continues.");}return;}items=this.sortItems(items);if(this.isBatchEdit==false){this.uploadList.setItems(items);}this.initializeMetadataForm(this.getCompletedFormItems(items),items[0].Distributions);this.setOriginalItems(items);parent.BLIP.Utils.myModal.modalResize();},setOriginalItems:function(items){var post=items[0].Posts[0];for(var item in post){this.originalItems[item]=post[item];
}},setPostIds:function(){var url=new Url(location.href);this.postIds=url.getQueryParam("posts");},setUsersId:function(){var url=new Url(location.href);this.usersId=url.getQueryParam("users_id");},sortItems:function(items){if(items[0].Posts[0].additionalMedia&&items[0].Posts[0].additionalMedia.length>1){items[0].Posts[0].additionalMedia.sort(this.sortFormats);}return items;},sortFormats:function(a,b){if(a.role=="Source"&&b.role=="Source"){if(a.id<b.id){return -1;}else{return 1;}}else{if(a.role=="Source"){return -1;}else{if(b.role=="Source"){return 1;}else{if(a.id<b.id){return -1;}else{return 1;}}}}},showProcessingScreen:function(){$("#"+this.metadataFormTarget).hide();$("#SaveChanges").hide();$("#DistributionTab").hide();$(".idTabs").hide();if(!this.isBatchEdit){if(this.uploadFilesQueue.filesToBeSubmitted.length>0){this.initializeProgressBar();$("#ProgressBar").show();$("#"+this.metadataFormTarget).before("<div id='MetadataComplete'></div>");$("#MetadataComplete").html(this.getThankYouHtml());
}else{$("#"+this.metadataFormTarget).before("<div id='MetadataComplete'></div>");$("#MetadataComplete").html(this.getNoFilePleaseWaitHtml());}}else{$("#"+this.metadataFormTarget).before("<div id='MetadataComplete'></div>");$("#MetadataComplete").html(this.getNoFilePleaseWaitHtml());}parent.BLIP.Utils.myModal.modalResize();},submit:function(){if(this.isBatchEdit==false){if(this.uploadList.wasListModified()){if(this.uploadList.validateForm()){if(this.metadataForm.validateForm()){this.uploadList.renameMaster();this.fixDistDests();this.fixDisableAds();thisContext=this;this.uploadFilesQueue=new BLIP.Controls.EditUploadFilesQueue({target:thisContext.target,uid:thisContext.uid,formAction:thisContext.formAction});this.uploadFilesQueue.completeMethod=BLIP.Delegate.create(this,this.finishQueue);this.uploadFilesQueue.upload(this.uploadList.submitList());}else{$(".ui-tabs-nav").tabs("select",1);}this.showProcessingScreen();}else{$(".ui-tabs-nav").tabs("select",0);}}}else{this.fixDistDests();this.fixDisableAds();
this.showProcessingScreen();this.finishMetadata();}},uploadComplete:function(response){if(response[0]["status"]=="error"){document.location=this.config.site+"/dashboard/error?msg="+escape(response[0]["message"]);}else{var slot=response[0]["slot"];if(slot!=undefined){this.uploadFilesQueue.uploadComplete(parseInt(response[0]["slot"]));}else{document.location=this.config.site+"/dashboard/error?msg=An unknown error occurred.  Please try again or contact support@blip.tv";}}}});BLIP.Utils={errorArray:[],myModal:null,getCacheKiller:function(){var c_name="cache_killer";var c_start=document.cookie.indexOf(c_name+"=");if(c_start!=-1){c_start=c_start+c_name.length+1;c_end=document.cookie.indexOf(";",c_start);if(c_end==-1){c_end=document.cookie.length;}return unescape(document.cookie.substring(c_start,c_end));}else{return 0;}},clearAllErrors:function(){for(var item in this.errorArray){this.errorArray[item].destroy();}},escapeHtml:function(html){return html.replace(/&/gmi,"&amp;").replace(/\"/gmi,"&quot;").replace(/>/gmi,"&gt;").replace(/</gmi,"&lt;");
},escapeDoubleQuotes:function(str){if(str&&typeof(str)=="string"){return str.replace(/\"/g,"&#34;");}},formatNumber:function(nStr,prefix){var prefix=prefix||"";nStr+="";x=nStr.split(".");x1=x[0];x2=x.length>1?"."+x[1]:"";var rgx=/(\d+)(\d{3})/;while(rgx.test(x1)){x1=x1.replace(rgx,"$1"+","+"$2");}return prefix+x1+x2;},getError:function(div){if(this.errorArray[div]){return this.errorArray[div];}},getLoadFailureHTML:function(){var html='<div class="FailControl">';html+='<div class="FailControlContents">';html+='<div class="FailMessage">';html+='<img src="/skin/mercury/dashboard/images/dashboard.error.gif">';html+="There was a problem loading this dashboard component.";html+="</div>";html+="</div>";html+="</div>";return html;},getProperFilename:function(name,chars){var size=chars?chars:31;if(name){var lastSlash=name.lastIndexOf("/");var lastDot=name.lastIndexOf(".");var filename=name.substring(lastSlash+1,lastDot);var format=name.substring(lastDot,name.length);var shortFilename=BLIP.Utils.truncate(filename,size)+format.toUpperCase();
return shortFilename;}else{return false;}},hideError:function(div){if(this.errorArray[div]){this.errorArray[div].hide();}},scrollToError:function(params){var div=params.div;this.errorArray[div].scrollToError();},showError:function(params){var div=params.div;var msg=params.msg;var small=params.small||false;this.errorArray[div]=new BLIP.Controls.Error({target:div,message:msg,small:small});this.errorArray[div].show();},showHelpfulError:function(params){var div=params.div;var msg=params.msg;var small=params.small||false;this.errorArray[div]=new BLIP.Controls.Help({target:div,message:msg,small:small});this.errorArray[div].show();},showModalHelpText:function(params){var name=params.name;var src=params.src;var modal=new BLIP.Controls.ModalWindow({target:"",contentsUrl:src,purpose:"Help",name:name});modal.show();},trimDelegate:function(str){return str.substring(0,str.length-3);},truncate:function(str,max){if(str.length>max){return str.substring(0,(max-2))+"...";}return str;},updateCacheKiller:function(cookie_domain){var domain_str="";
if(cookie_domain&&cookie_domain!=""){domain_str=";domain="+cookie_domain;}var exdate=new Date();var expiredays=30;exdate.setDate(exdate.getDate()+expiredays);var cache_killer="cache_killer="+escape(Math.floor(Math.random()*1000000000))+";expires="+exdate.toGMTString()+";path=/"+domain_str;document.cookie=cache_killer;},uncheckAll:function(target){$("#"+target+" input:checked").attr("checked",false);$("#"+target+" input:selected").attr("selected",false);},wrapHtmlTag:function(params){var idHtml=params.elementId?" id='"+params.elementId+"'":"";var classHtml=params.elementClass?" class='"+params.elementClass+"'":"";var inputNameHtml=params.elementName?" name='"+params.elementName+"'":"";var inputValueHtml=params.elementValue?" value='"+params.elementValue+"'":"";var onClickHtml=params.onClick?" onClick='"+params.onClick+"'":"";var onChangeHtml=params.onChange?' onChange="'+params.onChange+'"':"";var selectedHtml=params.elementSelected?" selected":"";var forHtml=params.forHtml?" for='"+params.forHtml+"'":"";
var maxlengthHtml=params["maxlength"]?" maxlength='"+params.maxlength+"'":"";var disabled=params["disabled"]?" disabled='"+params.disabled+"'":"";var attributesHtml=idHtml+classHtml+inputNameHtml+inputValueHtml+onClickHtml+onChangeHtml+disabled+maxlengthHtml+selectedHtml+forHtml;var html="<"+params.tag+attributesHtml+">";html+=params.contents;html+="</"+params.tag+">";return html;},wrapInFormTag:function(divTarget,htmlClass,i){var formElement=document.createElement("form");formElement.setAttribute("enctype","multipart/form-data");formElement.setAttribute("encoding","multipart/form-data");formElement.setAttribute("id","form"+i);if(htmlClass!=undefined){formElement.setAttribute("class",htmlClass);}$(divTarget).wrap(formElement);}};