/* 

Multimedia Comments powered by Filemobile 
Version 2.2.1 
Build: 144 
Date: Mon 14 Feb 2010 17:23:30 PM EDT 

documentation - docs.comments.projects.fm/ 
demo - comments.filemobile.com/ 
product - filemobile.com/products/multimediacomments 

*/

if(typeof fm=="undefined"){fm=function(){}}fm.comments={};fm.comments.defaults={externalId:location.href.substr(7,location.href.length),externalTitle:location.href.substr(7,location.href.length),externalUrl:location.href,injector:"FM-MMC-v2.2",proxy:"",vhost:"",env:"live",wid:"",disableComments:false,enableUpload:true,style:2,pageSize:10,profiles:false,avatar:true,defaultAvatar:"http://www.filemobile.com/static/mmc2/images/avatar.gif",loadingIcon:"http://www.filemobile.com/static/mmc2/images/loading.gif",exactDate:false,longDate:true,liking:true,likingInline:true,likingShowValue:true,sort:"upload DESC",sortSelect:true,report:false,reportFade:true,maxLengthNumber:false,maxLengthDisplay:true,maxLengthCountdown:false,pager:false,pagerAjax:true,pagerLimit:2,pagerShowPrevNext:true,pagerShowFirstLast:true,pagerShowNumbers:true,pagerCenter:true,webcam:false,scroll:true,scrollDuration:0,rating:true,logHit:true,showUsername:true,showFirstName:false,showLastName:false,imageTranscoder:"14",imageHeight:"240",videoTranscoder:"21",videoPlayerWidth:"320",videoPlayerHeight:"240",autoUpdate:false,autoUpdateTime:60,layout:["header","comments","more","add"],translate:{justNow:"just now",momentsAgo:"moments ago",minuteAgo:"a minute ago",minutesAgo:"minutes ago",hourAgo:"about an hour ago",hoursAgo:"hours ago",dayAgo:"day ago",daysAgo:"days ago",yesterday:"yesterday",sunday:"Sun",monday:"Mon",tuesday:"Tue",wednesday:"Wed",thursday:"Thu",friday:"Fri",saturday:"Sat",january:"Jan",february:"Feb",march:"Mar",april:"Apr",may:"May",june:"Jun",july:"Jul",august:"Aug",september:"Sept",october:"Oct",november:"Nov",december:"Dec",comments:"Comments",newToOld:"Newest to oldest",oldToNew:"Oldest to newest",mostLikes:"Most thumbs up",moreComments:"More comments",newComments:" new comments",noComments:"No comments. Be the first!",commentsDisabled:"Comments have been disabled.",loginRequired:"You must login to like a comment.",error:"An error has occurred. Please try again.",close:"Close",like:"Like",report:"Report",guestComment:"Guest Comment",name:"Name",comment:"Comment",postComment:"Post Comment",moderationMessagePost:"Thank you for your comment.",moderationMessagePre:"Thank you for your comment. It will first have to be checked by our moderators before showing up on the site.",moderationMediaMessage:"<br/>Your media is being transcoded and will appear on the site shortly.",characterCount:"character count",createAccount:"Create Account",login:"Login",register:"Register",incorrectLogin:"Your username and/or password was incorrect. Please try again.",username:"Username",firstName:"First name",lastName:"Last name",email:"Email",password:"Password",confirmPassword:"Confirm password",webcam:"Webcam",browse:"Browse",cancel:"Cancel",wait:"Please wait...",attach:"Attach an image or video <span>(optional)</span>",removeFromQueue:"cancel",reason1:"Offensive",reason2:"Spam",reason3:"Off topic",frontReason1:"Offensive (rude, obscene, NSFW)",frontReason2:"Spam (ads, self-promotion)",frontReason3:"Off topic (trolling)",reportComment:"Report this comment",reportDescription:"Please tell us why you feel this comment should be flagged.",report:"Report",reportSent:"The comment has been reported. Our moderators will now review its content.",reportError:"An error has occurred on one of our servers causing you to see this message. Please try again.",ratingRateArticle:"Rate this article:",ratingAverageRating:"Average rating:",ratingBy:" by ",ratingPeople:"people",ratingUnrated:" Not rated",rating1:" Horrible!",rating2:" Not for me.",rating3:" It's alright",rating4:" I like it.",rating5:" I love it!",pagerNext:"Next",pagerPrev:"Prev",pagerFirst:"First",pagerLast:"Last",welcome:"Welcome, ",logout:"Logout",loading:"Loading Comments",validateRequired:" is a required field",validateDate:" does not have a valid date",validatePhone:" does not contain a valid phone number",validatePasswordLength:"Your password needs to be at least 6 characters long",validatePasswordMatch:"The passwords did not match",validateEmail:" does not contain a valid email address",validateEmailMatch:"The email fields do not match",validatePostalCode:" does not contain a valid Canadian postal code",validateUsernameLength:"A username has to be a minimum of 6 characters, can only contain A-Z 0-9 and _ (underscore) and has to start with a letter",validateEmailUnique:"The email address supplied is already registered. Did you forget your login information?",validateUsernameUnique:"The username you picked was already taken. Please try another name."}};fm.comments.lengthBlock="";fm.comments.commentForm="";fm.comments.anonymousCommentForm="";fm.comments.registerForm="";fm.comments.loginForm="";fm.comments.profileBlockAvatar="";fm.comments.profileBlockLink="";fm.comments.likingBlock="";fm.comments.likingClass="";fm.comments.reportBlock="";fm.comments.reportClass="";fm.comments.commentClass="";fm.comments.commentBlock="";fm.comments.commentBlockWithImage="";fm.comments.commentBlockWithVideo="";fm.comments.startOffset=0;fm.comments.currentUser=null;fm.comments.isLoggedIn=false;fm.comments.parentId=0;fm.comments.autoUpdateCount=1;fm.comments.queue="";fm.comments.title=jQuery("title").text();fm.comments.writeDom=function(){var b=[];b.header='<div id="fmCommentsHeader" class="fmClearfix"></div>';b.comments='<div id="fmComments" class="fmStyle'+fm.comments.settings.style+'"> <div id="fmLoading">Loading Comments</div> </div>';b.more='<div id="fmCommentsMore" class="fmClearfix"></div>';b.add='<div id="fmCommentsBox" class="fmClearfix"></div>';var a="";for(i=0;i<fm.comments.settings.layout.length;i++){a+=b[fm.comments.settings.layout[i]]}a+='<div class="fmPowered">	<a href="http://www.filemobile.com/products/multimediacomments" target="_blank">Multimedia Comments</a> are powered by <a href="http://www.filemobile.com" target="_blank">Filemobile</a></div>';return a};fm.comments.displayError=function(b){var a="Comment Error: ";switch(b){case 1:a+="There was not element specified in the initialization settings.";break;case 2:a+="The element specified in the initialization settings is not allowed.";break;case 3:a+="The element specified in the initialization settings does not exist.";break}alert(a)};fm.comments.init=function(a){fm.comments.settings={};fm.comments.settings=jQuery.extend(fm.comments.settings,fm.comments.defaults,a);fm.comments.settings.translate={};fm.comments.settings.translate=jQuery.extend(fm.comments.settings.translate,fm.comments.defaults.translate,a.translate);if(!fm.comments.settings.element||fm.comments.settings.element==="undefined"){fm.comments.displayError(1);return false}else{if(fm.comments.settings.element.substr(0,2)==="fm"){fm.comments.displayError(2);return false}else{if(jQuery("#"+fm.comments.settings.element).length<1){fm.comments.displayError(3);return false}}}jQuery("#"+fm.comments.settings.element).addClass("fmCommentsWrapper fmClearFix").html(fm.comments.writeDom());if(fm.comments.settings.rating===true){jQuery("#fmRatingUser").html('<span class="fmRatingHeader">'+fm.comments.settings.translate.ratingRateArticle+' </span><span id="fmRatingUserStars" class="fmClearfix"></span><span id="fmRatingWord"> '+fm.comments.settings.translate.ratingUnrated+"</span>");jQuery("#fmRatingAverage").html('<span class="fmRatingHeader">'+fm.comments.settings.translate.ratingAverageRating+' </span><span id="fmRatingStars" class="fmClearfix"></span><span>'+fm.comments.settings.translate.ratingBy+'</span><span id="fmRatingPeople">0</span> <span id="fmRatingPeopleText">'+fm.comments.settings.translate.ratingPeople+"</span>")}if(fm.comments.settings.maxLengthNumber>=1&&fm.comments.settings.maxLengthDisplay===true){if(fm.comments.settings.maxLengthCountdown==true){var b=fm.comments.settings.maxLengthNumber}else{var b="0/"+fm.comments.settings.maxLengthNumber}fm.comments.lengthBlock='<span id="fmCommentLength">'+fm.comments.settings.translate.characterCount+" <span>"+b+"</span></span>"}if(fm.comments.settings.enableUpload===false){fm.comments.showUpload=' class="disable"'}else{fm.comments.showUpload=""}fm.comments.commentForm='<div id="fmUploadFormContainer" class="fmFormbox fmClearfix">\n  <form id="uploadForm" action="">\n    <ul>\n      <li class="label"><label for="fmCommentText">'+fm.comments.settings.translate.comment+" "+fm.comments.lengthBlock+'</label></li>      <li><textarea class="fmTextarea required" id="fmCommentText" name="message" title="'+fm.comments.settings.translate.comment+'"></textarea></li>    </ul>    <input type="hidden" name="parent" id="fmParent" value="#{parent}">    <input type="hidden" name="username" id="fmUsername" value="#{username}" />    <input type="hidden" name="firstname" id="fmFirstName" value="#{firstname}" />    <input type="hidden" name="lastname" id="fmLastName" value="#{lastname}" />    <input type="hidden" name="userid" id="fmUserId" value="#{userid}" />    <input type="hidden" name="avatarid" id="fmAvatarId" value="#{avatarid}" />  </form><br/>  <div id="fmUploadStatus"'+fm.comments.showUpload+'>    <ul>      <li class="label">'+fm.comments.settings.translate.attach+'</li>    </ul>    <a id="uploadBtn" class="fmButton" href="#" onclick="return false;">      <div id="fmFlashSelectFile" style="display:block; position: absolute;"></div> '+fm.comments.settings.translate.browse+'      <span id="fmSelectFileBtn"></span>    </a>    <div id="fileList" class="fmClearfix"></div>    <div class="fmClearfix"></div>    <div class="fmButtonWrapper fmClearfix"><a class="fmButton" onclick="this.blur(); fm.swfuploader.startUpload(); return false;">'+fm.comments.settings.translate.postComment+'</a></div>  </div>  <div id="postUpload"></div>  <div class="fmClear"></div>  <div id="loader" style="display:none">'+fm.comments.settings.translate.comment+"</div></div>";if(fm.comments.settings.enableUpload===false){fm.comments.commentForm='<div class="fmFormbox fmClearfix" id="textOnlyCommentformContainer">  <form method="POST" action="#" id="fmPostTextComment" class="fmClearFix" onsubmit="return fm.comments.submitTextComment(this);">    <input type="hidden" name="parent" id="fmParent" value="#{parent}" />    <input type="hidden" name="username" id="fmUsername" value="#{username}" />    <input type="hidden" name="firstname" id="fmFirstName" value="#{firstname}" />    <input type="hidden" name="lastname" id="fmLastName" value="#{lastname}" />    <input type="hidden" name="userid" id="fmUserId" value="#{userid}" />    <input type="hidden" name="avatarid" id="fmAvatarId" value="#{avatarid}" />    <ul>      <li class="label"><label for="fmCommentText">'+fm.comments.settings.translate.comment+" "+fm.comments.lengthBlock+'</label></li>      <li><textarea name="message" id="fmCommentText" class="fmTextArea fmTextarea required" title="'+fm.comments.settings.translate.comment+'"></textarea></li>      <li class="label"><br/><input type="button" value="'+fm.comments.settings.translate.postComment+'" class="fmButton" onClick="return fm.comments.submitTextComment(jQuery(\'#fmPostAnonComment\'));"/></li>    </ul>  </form></div>'}fm.comments.anonymousCommentForm='<div class="fmFormbox fmClearfix" id="anonCommentformContainer">  <form method="POST" action="#" id="fmPostAnonComment" class="fmClearFix" onsubmit="return fm.comments.submitAnonComment(this);">    <ul>      <li class="label"><label for="fmCommentAuthor">'+fm.comments.settings.translate.name+'</label></li>      <li><input type="text" name="author" title="'+fm.comments.settings.translate.name+'"id="fmCommentAuthor" class="fmTextInput fmInput required" /></li>      <li class="label"><label for="fmCommentEmail">'+fm.comments.settings.translate.email+'</label></li>      <li><input type="text" name="email" id="fmCommentEmail" class="fmTextInput fmEmail fmInput required" title="'+fm.comments.settings.translate.email+'"/></li>      <li class="label"><label for="fmCommentText">'+fm.comments.settings.translate.comment+" "+fm.comments.lengthBlock+'</label></li>      <li><textarea name="message" id="fmCommentText" class="fmTextArea fmTextarea required" title="'+fm.comments.settings.translate.comment+'"></textarea></li>      <li class="label"><br/><input type="submit" value="'+fm.comments.settings.translate.postComment+'" class="fmButton" /></li>    </ul>  </form></div>';fm.comments.registerForm='<div id="fmCommentRegister" class="fmFormbox">  <form method="post" id="fmRegisterForm" onsubmit="fm.comments.register(this); return false;">    <ul>      <li class="label"><label for="fmRegisterUsername">'+fm.comments.settings.translate.username+'</label></li>      <li><input type="text" class="fmTextInput fmInput fmUsername checkUnique required" id="fmRegisterUsername" name="user" title="'+fm.comments.settings.translate.username+'" value="" /></li>      <li class="label"><label for="fmFirstname">'+fm.comments.settings.translate.firstName+'</label></li>      <li><input type="text" class="fmTextInput fmInput required" id="fmFirstname" name="firstname" title="'+fm.comments.settings.translate.firstName+'" value="" /></li>      <li class="label"><label for="lastname">'+fm.comments.settings.translate.lastName+'</label></li>      <li><input type="text" class="fmTextInput fmInput required" id="lastname" name="lastname" title="'+fm.comments.settings.translate.lastName+'" value="" /></li>      <li class="label"><label for="email">'+fm.comments.settings.translate.email+'</label></li>      <li><input type="text" class="fmTextInput fmEmail fmInput checkUnique required" id="email" name="email" title="'+fm.comments.settings.translate.email+'" value="" /></li>      <li class="label"><label for="password">'+fm.comments.settings.translate.password+'</label></li>      <li><input type="password" class="fmTextInput fmPassword fmInput required" id="password" name="password" title="'+fm.comments.settings.translate.password+'" /></li>      <li class="label"><label for="confirmpassword">'+fm.comments.settings.translate.confirmPassword+'</label></li>      <li><input type="password" class="fmTextInput fmPasswordConfirm fmInput" id="confirmpassword" title="'+fm.comments.settings.translate.confirmPassword+'" /></li>      <li class="label"><br/><input type="submit" class="fmButton" value="'+fm.comments.settings.translate.createAccount+'"/></li>    </ul>  </form></div>';fm.comments.loginForm='<div id="fmLoginFormContainer" class="fmFormbox fmClearfix">  <form action="http://filemobile.com/services/json" method="post" id="fmLoginForm" onSubmit="fm.comments.login(); return false;">  <ul>';fm.comments.settings.usernameForm=true;if(fm.comments.settings.usernameForm===true){fm.comments.loginForm+='    <li class="label">Username</li>    <li><input type="text" name="username" id="fmLoginUsername" class="fmTextInput fmInput required"></li>'}else{fm.comments.loginForm+='    <li class="label">Email</li>    <li><input type="text" name="email" id="fmLoginEmail" class="fmTextInput fmInput required"></li>'}fm.comments.loginForm+='    <li class="label">Password</li>    <li><input type="password" name="password" id="fmLoginPassword" class="fmTextInput fmInput required"></li>    <li class="label"><br/><input type="submit" value="Login" onclick="fm.comments.login(); return false;" class="fmButton"></li>  </ul>  </form></div>';if(fm.comments.settings.avatar===false){fm.comments.profileBlockAvatar="";fm.comments.profileBlockLink='<span class="fmName">#{username}</span>'}else{if(fm.comments.settings.profiles!==false){fm.comments.profileBlockAvatar='<a href="'+fm.comments.settings.profiles+'#{profileid}" class="fmAvatar"><img src="#{avatar}" /></a>';fm.comments.profileBlockLink='<a href="'+fm.comments.settings.profiles+'#{profileid}" class="fmName">#{username}</a>'}else{fm.comments.profileBlockAvatar='<span class="fmAvatar"><img src="#{avatar}" /></span>';fm.comments.profileBlockLink='<span class="fmName">#{username}</span>'}}if(fm.comments.settings.liking){fm.comments.likingBlock='<div class="fmRating"> <div class="fmValue" id="vote#{mid}">#{votecount}</div><span class="fmLike" onclick="fm.comments.like(#{mid})">'+fm.comments.settings.translate.like+"</span></div>"}if(fm.comments.settings.report){fm.comments.reportClass=" fmReportComment";fm.comments.reportBlock='<span class="fmReport" onclick="fm.comments.openReportBox(#{mid}, this)">'+fm.comments.settings.translate.report+"</span>"}fm.comments.commentClass=fm.comments.reportClass;fm.comments.commentBlock='<div class="fmComment'+fm.comments.commentClass+' fmClearfix" id="comment_#{mid}">  <div class="fmUser fmClearfix"> '+fm.comments.profileBlockAvatar+'    <div class="fmInfo fmClearfix"> '+fm.comments.profileBlockLink+' <abbr title="#{upload}" class="fmTimestamp">#{uploadage}</abbr> </div>  </div>  <div class="fmContent">#{comment}</div>'+fm.comments.reportBlock+fm.comments.likingBlock+"</div>";fm.comments.commentBlockWithImage='<div class="fmComment'+fm.comments.commentClass+' fmClearfix" id="comment_#{mid}">  <div class="fmUser fmClearfix"> '+fm.comments.profileBlockAvatar+'    <div class="fmInfo fmClearfix"> '+fm.comments.profileBlockLink+' <abbr title="#{upload}" class="fmTimestamp">#{uploadage}</abbr></div>  </div>  <div class="fmContent"><img src="#{image}/'+fm.comments.settings.imageTranscoder+'" />#{comment}</div>'+fm.comments.reportBlock+fm.comments.likingBlock+"</div>";fm.comments.commentBlockWithVideo='<div class="fmComment'+fm.comments.commentClass+' fmClearfix" id="comment_#{mid}">  <div class="fmUser fmClearfix">  '+fm.comments.profileBlockAvatar+'    <div class="fmInfo fmClearfix"> '+fm.comments.profileBlockLink+' <abbr title="#{upload}" class="fmTimestamp">#{uploadage}</abbr></div>  </div>  <div class="fmContent">    <object width="'+fm.comments.settings.videoPlayerWidth+'" height="'+fm.comments.settings.videoPlayerHeight+'" id="fmVideo#{mid}" data="http://www.filemobile.com/static/widgets/videoplayerv2/videoplayer_v2.swf" type="application/x-shockwave-flash" allowscriptaccess="always">      <param value="http://www.filemobile.com/static/widgets/videoplayerv2/videoplayer_v2.swf" name="movie"/>      <param value="true" name="allowFullScreen"/>      <param value="always" name="allowScriptAccess"/>      <param value="mid=#{mid}&amp;ext='+fm.comments.settings.videoTranscoder;if(fm.comments.settings.wid>0){fm.comments.commentBlockWithVideo+="&amp;wid="+fm.comments.settings.wid}fm.comments.commentBlockWithVideo+="&amp;sessionToken="+fm.cookies.getCookie("SABRE_ID")+'" name="FlashVars"/> </object><br/>#{comment}</div>'+fm.comments.reportBlock+fm.comments.likingBlock+"</div>";fm.comments.startOffset=0;fm.comments.fetchUserInfo(function(){fm.comments.initPhase2()});if(fm.comments.settings.avatar===false){jQuery("#fmComments").addClass("fmNoAvatar")}if(fm.comments.settings.liking===false){jQuery("#fmComments").addClass("fmNoLike")}if(fm.comments.settings.likingInline===true){jQuery("#fmComments").addClass("fmInlineLike")}};fm.comments.initPhase2=function(){fm.comments.formValidator=new FMFormValidate();fm.comments.formValidator.addValidationErrorListener(fm.comments.handleValidation);var a={externalid:fm.comments.settings.externalId,externaltitle:fm.comments.settings.externalTitle,externalurl:fm.comments.settings.externalUrl};fm.comments.proxyRequest("media.retrieveCommentsForExternalId",a,function(c){fm.comments.settings.moderation=c.settings.moderation;fm.comments.settings.anonymous=c.settings.anonymous;fm.comments.settings.login=c.settings.login;fm.comments.settings.register=c.settings.register;jQuery(fm.comments.settings.element).show();fm.comments.parentId=c.parent.id;if(!fm.comments.settings.avatar){jQuery("#fmComments").addClass("fmNoAvatar")}fm.comments.renderComments();fm.comments.generateHeader();if(fm.comments.settings.rating==true){var b=new fm.comments.rateArticle();b.getRating(c.parent)}if(fm.comments.settings.logHit==true){fm.comments.logHit(fm.comments.parentId)}},function(b){console.log(b)},true)};fm.comments.fetchUserInfo=function(a){if(fm.comments.currentUser){a();return}fm.comments.proxyRequest("users.getLoggedInUser",{},function(b){fm.comments.currentUser=b;fm.comments.isLoggedIn=parseInt(b.id)>1;a()},function(b){alert("While attempting to fetch the current users' info we receive an error. Comments could not be loaded.")},false)};fm.comments.proxyRequest=function(f,c,b,a,d){for(var g in c){if((typeof(c[g])=="number")&&(c[g]==0)){c[g]=c[g].toString()}}c.method=f;if(d==null){d=true}var e=jQuery.ajax({type:"POST",url:fm.comments.settings.proxy,data:c,dataType:"html",async:d,success:function(h){var j=jQuery.parseJSON(jQuery.trim(h));if(j.status){b(j.result)}else{if(a){a(j)}else{alert("Uncaught exception: "+j.result)}}},error:function(h){console.log(h)}})};fm.comments.handleValidation=function(c,l){if(!jQuery(c).hasClass("errorField")){var a=l.substr(0,l.indexOf(" "));var f=l;var l=l.substr(l.indexOf(" "));if(jQuery(c).type=="checkbox"){var j=jQuery(jQuery(c)).next()}else{var j=jQuery(jQuery(c).parent()[0]).prev().children()}var k=jQuery(c).attr("title");var g=k;if(k.indexOf("*")>=0){g=k.substr(0,k.indexOf("*"))}var d="";if(a==jQuery(c).attr("name")&&k){if(l!="The email address supplied is already registered. Did you forget your login information?"&&l.substr(1,8)!="username"&&l.substr(0,11)!="The captcha"){if(k.indexOf("*")>-1){d=g+" "+l}else{d=k+l}}else{if(l=="The email address supplied is already registered. Did you forget your login information?"){d="The email address supplied is already registered."}else{d=g+" "+l}}}else{if(l.substr(1,8)==="username"&&l.substr(14,6)!=="picked"){d=g+" "+l.substr(10)}else{if(l.substr(1)==="passwords did not match"){d="P"+l.substr(2)}else{if(jQuery(c).type=="checkbox"){d=g+l}else{d=k+" "+f}}}}var b=jQuery("label");for(var e=0;e<b.length;e++){if(b[e].htmlFor==jQuery(c).attr("id")){jQuery(b[e]).html(d);jQuery(b[e]).addClass("error");jQuery(c).addClass("errorField")}}function h(n){for(var m=0;m<b.length;m++){if(b[m].htmlFor==jQuery(c).attr("id")){jQuery(b[m]).html(n);jQuery(b[m]).removeClass("error");jQuery(c).removeClass("errorField")}}}}jQuery(c).focusin(function(){h(k)})};fm.comments.generateHeader=function(){var e="";if(fm.comments.currentUser.id>1){var g={parent:fm.comments.parentId,username:fm.comments.currentUser.user,userid:fm.comments.currentUser.id,avatarid:fm.comments.currentUser.avatar,firstname:fm.comments.currentUser.firstname,lastname:fm.comments.currentUser.lastname};var c=jQuery.tmpl(fm.comments.commentForm,g);var d="";e+='<ul class="fmTabs fmClearfix">';if(fm.comments.settings.webcam!=false){e+='<li onclick="fm.comments.tabs(this);" class="fmActive">'+fm.comments.settings.translate.comment+'</li><li class="fmLast" onclick="fm.comments.tabs(this);">'+fm.comments.settings.translate.webcam+"</li>"}e+='<li class="fmStyleless">'+fm.comments.settings.translate.welcome+""+fm.comments.stripHTML(fm.comments.currentUser.user)+' / <a href="javascript:fm.comments.logout()">'+fm.comments.settings.translate.logout+"</a></li></ul>";e+='<div id="fmTab0" class="fmTab fmClearfix">'+c+"</div>";if(fm.comments.settings.webcam!=false){e+='<div id="fmTab1" class="fmTab fmClearfix" style="display:none;"><object id="" class="fmWebcam" style="width: 420px; height: 316px;" data="http://filemobile.com/static/widgets/mmc_uploader/mmc_app.swf" type="application/x-shockwave-flash" allowscriptaccess="always"><param value="http://filemobile.com/static/widgets/mmc_uploader/mmc_app.swf" name="movie"/><param value="true" name="allowFullScreen"/><param value="always" name="allowScriptAccess"/><param value="vhost='+fm.comments.settings.vhost+"&parentid="+fm.comments.parentId+"&injector="+fm.comments.settings.injector+"&recordingLength=20&sessiontoken="+fm.cookies.getCookie("SABRE_ID")+'" name="FlashVars"/></object></div>'}}else{if(fm.comments.settings.disableComments){e+='<div id="fmCommentsDisabled">'+fm.comments.settings.translate.commentsDisabled+"</div>"}else{var b={parent:fm.comments.parentId};renderedAnonCommentForm=jQuery.tmpl(fm.comments.anonymousCommentForm,b);var a=0;if(fm.comments.settings.login||fm.comments.settings.register){if(fm.comments.settings.anonymous==false&&fm.comments.settings.login==false&&fm.comments.settings.register==false){}else{e+='<ul class="fmTabs fmClearfix">'}if(a==0){d="fmActive"}else{d="fmLast"}if(fm.comments.settings.anonymous!=false){a++;e+='<li onClick="fm.comments.tabs(this);" class="fmActive">'+fm.comments.settings.translate.guestComment+"</li>"}if(a==0){d="fmActive"}else{d="fmLast"}if(fm.comments.settings.login==true){a++;e+='<li class="'+d+'" onClick="fm.comments.tabs(this);">'+fm.comments.settings.translate.login+"</li>"}else{if(fm.comments.settings.login!=false){e+='<li class="'+d+'">'+fm.comments.settings.login+"</li>"}}if(a==0){d="fmActive"}else{d="fmLast"}if(fm.comments.settings.register==true){a++;e+='<li class="'+d+'" onClick="fm.comments.tabs(this);">'+fm.comments.settings.translate.register+"</li>"}else{if(fm.comments.settings.register!=false){e+='<li class="'+d+'">'+fm.comments.settings.register+"</li>"}}if(fm.comments.settings.anonymous==false&&fm.comments.settings.login==false&&fm.comments.settings.register==false){}else{e+="</ul>"}}else{var f=true}a=-1;if(fm.comments.settings.anonymous!=false){a++;e+='<div id="fmTab'+a+'" class="fmTab fmClearfix">';if(f){e+="<h6>"+fm.comments.settings.translate.guestComment+"</h6>"}if(fm.comments.settings.anonymous!=true&&fm.comments.settings.anonymous!=false){e+=fm.comments.settings.anonymous}else{e+=renderedAnonCommentForm}e+="</div>"}if(fm.comments.settings.login==true){a++;if(a!=0){style=' style="display:none;"'}else{style=""}e+='<div id="fmTab'+a+'" class="fmTab fmClearfix"'+style+">"+fm.comments.loginForm+"</div>"}if(fm.comments.settings.register==true){a++;if(a!=0){style=' style="display:none;"'}else{style=""}e+='<div id="fmTab'+a+'" class="fmTab fmClearfix"'+style+">"+fm.comments.registerForm+"</div>"}}}links='<div id="fmCommentCount" class="fmLeft"></div>';if(fm.comments.settings.sortSelect===true){links+='<select class="fmRight fmSelect">';if(fm.comments.settings.sort=="upload DESC"){links+='<option value="upload DESC">'+fm.comments.settings.translate.newToOld+"</option>";links+='<option value="upload ASC">'+fm.comments.settings.translate.oldToNew+"</option>";if(fm.comments.settings.liking){links+='<option value="votecount DESC, upload ASC">'+fm.comments.settings.translate.mostLikes+"</option>"}}else{if(fm.comments.settings.sort=="upload ASC"){links+='<option value="upload ASC">'+fm.comments.settings.translate.oldToNew+"</option>";links+='<option value="upload DESC">'+fm.comments.settings.translate.newToOld+"</option>";if(fm.comments.settings.liking){links+='<option value="votecount DESC, upload ASC">'+fm.comments.settings.translate.mostLikes+"</option>"}}else{if(fm.comments.settings.liking){links+='<option value="votecount DESC, upload ASC">'+fm.comments.settings.translate.mostLikes+"</option>"}links+='<option value="upload DESC">'+fm.comments.settings.translate.newToOld+"</option>";links+='<option value="upload ASC">'+fm.comments.settings.translate.oldToNew+"</option>"}}links+="</select>"}if(!fm.comments.settings.pager){more='<a class="fmButton" id="fmMoreCommentsBtn" style="display:none;">'+fm.comments.settings.translate.moreComments+"</a>"}else{more=""}jQuery("#fmCommentsBox").html(e);jQuery("#fmCommentsHeader").html(links);jQuery("#fmCommentsMore").html(more);jQuery("#fmCommentsHeader .fmSelect").change(function(){if(jQuery(this).val()!=""){var h=jQuery(this).val();fm.comments.renderComments({sort:jQuery(this).val(),newSort:true})}});jQuery("#fmMoreCommentsBtn").click(function(){fm.comments.renderComments()});setInterval(fm.comments.updateDateTime,15000);if(fm.comments.settings.autoUpdate===true&&fm.comments.settings.pager!==true){setInterval("fm.comments.autoUpdate()",fm.comments.settings.autoUpdateTime*1000)}if(fm.comments.settings.maxLengthNumber!==false&&fm.comments.settings.maxLengthNumber>0){fm.comments.limitCommentLength()}if(jQuery("#fmFlashSelectFile").length>0){fm.swfuploader.init(jQuery("#fmFlashSelectFile"))}};fm.comments.renderComments=function(b){if(typeof b=="undefined"){b={}}if(b.sort){fm.comments.settings.sort=b.sort}if(b.newSort==true){fm.comments.startOffset=0}if(jQuery("#fmMoreCommentsBtn")){jQuery("#fmMoreCommentsBtn").html('<div class="fmLoadingIcon"></div>')}if(fm.comments.settings.pager&&fm.comments.getQueryVariable("fmPage")){fm.comments.startOffset=(parseInt(fm.comments.getQueryVariable("fmPage"))-1)*fm.comments.settings.pageSize}if(parseInt(b.ajaxPage)>=0){fm.comments.startOffset=ajaxPage*fm.comments.settings.pageSize-fm.comments.settings.pageSize}if(fm.comments.settings.moderation=="pre"){moderationStatus="approved"}else{moderationStatus="notdenied"}if(b.offset!=null){fm.comments.startOffset=b.offset*fm.comments.settings.pageSize-fm.comments.settings.pageSize}var c=["filetype","uid","user_name","votecount","author","upload","message","publicUrl","status","avatar"];if(fm.comments.settings.showFirstName===true){c.push("user_firstname")}if(fm.comments.settings.showLastName===true){c.push("user_lastname")}var a={sort:fm.comments.settings.sort,limit:fm.comments.settings.pageSize,start:fm.comments.startOffset,parentid:fm.comments.parentId,context:"comment",includeChildren:1,channel:0,fields:c};fm.comments.proxyRequest("media.getFiles",a,function(d){fm.comments.commentCount=d.totalCount;jQuery("#fmCommentCount").html(fm.comments.commentCount+" "+fm.comments.settings.translate.comments);if(fm.comments.settings.pager&&(fm.comments.settings.externalId||fm.comments.settings.externalTitle)||fm.comments.settings.pager&&fm.comments.settings.pagerAjax){fm.comments.pager(fm.comments.startOffset,fm.comments.settings.pageSize,fm.comments.commentCount)}fm.comments.startOffset=fm.comments.startOffset+fm.comments.settings.pageSize;if(d.totalCount>0){var f=d.data;if(fm.comments.startOffset<=fm.comments.settings.pageSize||fm.comments.settings.pager){jQuery("#fmComments").html("")}for(i=0;i<f.length;i++){var e=fm.comments.displayComment(f[i]);jQuery("#fmComments").append(e)}if(f.length<fm.comments.settings.pageSize||fm.comments.startOffset==d.totalCount){jQuery("#fmMoreCommentsBtn").hide()}else{jQuery("#fmMoreCommentsBtn").show()}if(jQuery("#fmMoreCommentsBtn")){jQuery("#fmMoreCommentsBtn").html(fm.comments.settings.translate.moreComments)}}else{jQuery("#fmComments").html('<div id="fmNoComments">'+fm.comments.settings.translate.noComments+"</div>")}},function(d){console.log(d)},true)};fm.comments.like=function(a){if(!fm.comments.isLoggedIn){alert(fm.comments.settings.translate.loginRequired);return}if(!jQuery("#vote"+a).next().hasClass("fmDisabled")){jQuery("#vote"+a).next().addClass("fmDisabled");jQuery("#vote"+a).html(parseInt(jQuery("#vote"+a).html())+1);fm.comments.proxyRequest("media.rate",{mid:parseInt(a),uid:fm.comments.currentUser.id,rating:10,returnData:true},function(b){},function(b){console.log(b)})}};fm.comments.openReportBox=function(a,b){if(jQuery("#fmReportBox")){jQuery("#fmReportBox").remove()}var c='<option value="">---</option>';c+='<option value="'+fm.comments.settings.translate.reason1+'">'+fm.comments.settings.translate.frontReason1+"</option>";if(fm.comments.settings.translate.reason2.length>0){c+='<option value="'+fm.comments.settings.translate.reason2+'">'+fm.comments.settings.translate.frontReason2+"</option>"}if(fm.comments.settings.translate.reason3.length>0){c+='<option value="'+fm.comments.settings.translate.reason3+'">'+fm.comments.settings.translate.frontReason3+"</option>"}jQuery(b).after('<div id="fmReportBox" class="fmClearfix"><div class="fmTitle">'+fm.comments.settings.translate.reportComment+'</div><span class="fmReport" onclick="jQuery(\'#fmReportBox\').remove();">'+fm.comments.settings.translate.close+"</span> <p>"+fm.comments.settings.translate.reportDescription+'</p><select name="reason" class="fmSelect" id="fmReportReason">'+c+'</select><span class="fmButton" onclick="fm.comments.sendReport('+a+",jQuery('#fmReportReason').val());\">"+fm.comments.settings.translate.report+'</span><span class="fmButton" onclick="jQuery(\'#fmReportBox\').remove();">'+fm.comments.settings.translate.cancel+"</span></div>")};fm.comments.makeUploadAge=function(d){if(!d){return"error"}var g=d.split(" ");var f=g[0].split("-");f[5]=f[1];switch(f[1]){case"01":case"1":f[1]="Jan";f[3]=fm.comments.settings.translate.january;break;case"02":case"2":f[1]="Feb";f[3]=fm.comments.settings.translate.february;break;case"03":case"3":f[1]="Mar";f[3]=fm.comments.settings.translate.march;break;case"04":case"4":f[1]="Apr";f[3]=fm.comments.settings.translate.april;break;case"05":case"5":f[1]="May";f[3]=fm.comments.settings.translate.may;break;case"06":case"6":f[1]="Jun";f[3]=fm.comments.settings.translate.june;break;case"07":case"7":f[1]="Jul";f[3]=fm.comments.settings.translate.july;break;case"08":case"8":f[1]="Aug";f[3]=fm.comments.settings.translate.august;break;case"09":case"9":f[1]="Sep";f[3]=fm.comments.settings.translate.september;break;case"10":f[1]="Oct";f[3]=fm.comments.settings.translate.october;break;case"11":f[1]="Nov";f[3]=fm.comments.settings.translate.november;break;case"12":f[1]="Dec";f[3]=fm.comments.settings.translate.december;break}d=f[1]+" "+f[2]+", "+f[0]+" "+g[1];var b=Date.parse(d);var j=(arguments.length>1)?arguments[1]:new Date();var h=parseInt((j.getTime()-b)/1000);var e=new Date(d).getDay()+"";switch(e){case"0":e=fm.comments.settings.translate.sunday;break;case"1":e=fm.comments.settings.translate.monday;break;case"2":e=fm.comments.settings.translate.tuesday;break;case"3":e=fm.comments.settings.translate.wednesday;break;case"4":e=fm.comments.settings.translate.thursday;break;case"5":e=fm.comments.settings.translate.friday;break;case"6":e=fm.comments.settings.translate.saturday;break}var a="";var c=g[1].split(":");if(c[0]>12){c[0]=c[0]-12;c[2]="pm"}else{c[2]="am"}f[6]=f[2];if(f[2].substr(0,1)=="0"){f[2]=f[2].substr(1)}if(h<2){a=fm.comments.settings.translate.justNow}else{if(h<60){a=fm.comments.settings.translate.momentsAgo}else{if(h<120){a=fm.comments.settings.translate.minuteAgo}else{if(h<(45*60)){a=(parseInt(h/60)).toString()+" "+fm.comments.settings.translate.minutesAgo}else{if(h<(2*90*60)){a=fm.comments.settings.translate.hourAgo}else{if(h<(24*60*60)){a=(parseInt(h/3600)).toString()+" "+fm.comments.settings.translate.hoursAgo}else{if(h<(48*60*60)){a="1 "+fm.comments.settings.translate.dayAgo}else{if(h<(6*24*60*60)){a=(parseInt(h/86400)).toString()+" "+fm.comments.settings.translate.daysAgo}else{if(fm.comments.settings.longDate===false){a=f[5]+"/"+f[6]+"/"+f[0]+" "+c[0]+":"+c[1]+c[2]}else{a=e+", "+f[3]+" "+f[2]+", "+f[0]+" "+c[0]+":"+c[1]+c[2]}}}}}}}}}if(fm.comments.settings.exactDate==true){return e+", "+f[3]+" "+f[2]+", "+f[0]+" "+c[0]+":"+c[1]+c[2]}else{return a}};fm.comments.updateDateTime=function(){jQuery("#fmComments abbr").each(function(){jQuery(this).html(fm.comments.makeUploadAge(jQuery(this).attr("title")))})};fm.comments.getDateTime=function(){var e=new Date();var a=e.getHours();var c=e.getMinutes();var j=e.getSeconds();var g=e.getMonth()+1;var b=e.getDate();var f=e.getFullYear();if(a<10){a="0"+a}if(c<10){c="0"+c}if(j<10){j="0"+j}if(g<10){g="0"+g}if(b<10){b="0"+b}var h=f+"-"+g+"-"+b+" "+a+":"+c+":"+j;return h};fm.comments.limitCommentLength=function(){jQuery("#fmCommentText").keydown(function(a){str=jQuery(this).val();if(str.length>fm.comments.settings.maxLengthNumber&&(a.keyCode!=8||a.keyCode!=46)){jQuery(this).val(str.substr(0,fm.comments.settings.maxLengthNumber))}});jQuery("#fmCommentText").keyup(function(c){if(jQuery('#uploadForm label[for="fmCommentText"] span').length<1){jQuery('#uploadForm label[for="fmCommentText"]').append(" "+fm.comments.lengthBlock)}var d=jQuery(this).val();var b;if(d.length>fm.comments.settings.maxLengthNumber&&(c.keyCode!=8||c.keyCode!=46)){jQuery(this).val(d.substr(0,fm.comments.settings.maxLengthNumber))}var a=d.length;if(a>fm.comments.settings.maxLengthNumber){a=fm.comments.settings.maxLengthNumber}if(fm.comments.settings.maxLengthCountdown===true){if(a/fm.comments.settings.maxLengthNumber*100>=75){b='<span class="fmError">'+(fm.comments.settings.maxLengthNumber-a)+"</span>"}else{b=fm.comments.settings.maxLengthNumber-a}}else{if(a/fm.comments.settings.maxLengthNumber*100>=75){b='<span class="fmError">'+a+"</span>/"+fm.comments.settings.maxLengthNumber+""}else{b=a+"/"+fm.comments.settings.maxLengthNumber}}jQuery("#fmCommentLength span").html(b)})};fm.comments.submitTextComment=function(b){if(!fm.comments.formValidator.submit(b)){return false}else{if(!fm.comments.formValidator.submit(jQuery("#uploadForm"))){return false}else{if(fm.comments.formValidator.submit(jQuery("#uploadForm"))){jQuery(jQuery("#uploadForm").parents()[0]).prepend('<div id="fmFormOverlay"></div>');jQuery("#uploadForm textarea").each(function(d){d.disabled=true});var c=fm.comments.stripHTML(jQuery("#fmCommentText").val()).replace(/(\r\n|\r|\n)/g,"<br/>");var a={parentid:jQuery("#fmParent").val(),context:"comment",author:jQuery("#fmUsername").val(),uid:jQuery("#fmUserId").val(),message:c,injector:fm.comments.settings.injector};fm.comments.proxyRequest("media.insertTextFile",a,function(g){var e="";if(jQuery("#fmAvatarId").val()!=0){if(fm.comments.settings.env=="dev"){e="http://fmdev.s3.amazonaws.com/storage/"+jQuery("#fmAvatarId").val()+"/12"}else{e="http://rstorage.filemobile.com/storage/"+jQuery("#fmAvatarId").val()+"/12"}}else{e=fm.comments.settings.defaultAvatar}var h={username:jQuery("#fmUsername").val(),userid:jQuery("#fmUserId").val(),avatar:e,comment:c,votecount:"0",upload:fm.comments.getDateTime(),uploadage:fm.comments.settings.translate.justNow};var f='<div id="fmNewPost">'+jQuery.tmpl(fm.comments.commentBlock,h)+"</div>";if(fm.comments.settings.sort=="upload DESC"){jQuery("#fmComments").prepend(f)}else{jQuery("#fmComments").append(f)}jQuery("#fmFormOverlay").addClass("fmNoBackground");if(fm.comments.settings.moderation=="pre"){var d=fm.comments.settings.translate.moderationMessagePre}else{var d=fm.comments.settings.translate.moderationMessagePost}jQuery("#fmFormOverlay").html('<span class="fmSuccess">'+d+"</span>");fm.comments.updateCount()},function(d){jQuery("#fmFormOverlay").addClass("fmNoBackground");jQuery("#fmFormOverlay").html('<span class="fmError">'+fm.comments.settings.translate.error+'</span><a onclick="this.parents()[0].remove();" class="fmButton">'+fm.comments.settings.translate.close+"</a>");jQuery("#uploadForm textarea").each(function(e){e.disabled=false})},true);return false}}}return false};fm.comments.submitAnonComment=function(a){if(!fm.comments.formValidator.submit(a)){return false}else{fm.comments.postAnonComment(jQuery("#fmCommentAuthor"),jQuery("#fmCommentEmail"),jQuery("#fmCommentText"),a)}return false};fm.comments.getQueryVariable=function(b){var c=window.location.search.substring(1);var d=c.split("&");for(var a=0;a<d.length;a++){var e=d[a].split("=");if(e[0]==b){return e[1]}}};fm.comments.scroll=function(){jQuery("html,body").animate({scrollTop:(jQuery("#fmComments").offset().top)},fm.comments.settings.scrollDuration)};fm.comments.pager=function(f,p,x){var u="";var m="";var j="";var q="";var r="";var k="";var d="";var e=document.location.href;var g="";var s=1;var w=fm.comments.settings.pagerLimit;var o;var v='<span class="fmButton fmDisabled#{css}">#{text}</span>';var n="";var a=0;if(fm.comments.settings.scroll){n="fm.comments.scroll();"}if(fm.comments.settings.pagerAjax===true){o='<a class="fmButton#{css}" onclick="'+n+'fm.comments.renderComments({sort:0,newSort:false,ajaxPage:false,offset:#{page}});">#{text}</a>'}else{o='<a class="fmButton#{css}" href="#{url}fmPage=#{page}">#{text}</a>'}if(e.indexOf("fmPage=")>=0||fm.comments.settings.pagerAjax){if(fm.comments.settings.pagerAjax){s=f/p+1}else{s=parseInt(fm.comments.getQueryVariable("fmPage"))}e=e.substr(0,e.lastIndexOf("fmPage")-1);if(e.indexOf("?")<0){e+="?"}else{e+="&"}if(s>1){q=jQuery.tmpl(o,{url:e,page:(s-1),text:fm.comments.settings.translate.pagerPrev,css:" fmPrev"});j=jQuery.tmpl(o,{url:e,page:1,text:fm.comments.settings.translate.pagerFirst,css:""})}else{q=jQuery.tmpl(v,{text:fm.comments.settings.translate.pagerPrev,css:" fmPrev"});j=jQuery.tmpl(v,{text:fm.comments.settings.translate.pagerFirst,css:""})}if(s*p<x){r=jQuery.tmpl(o,{url:e,page:(s+1),text:fm.comments.settings.translate.pagerNext,css:" fmNext"});k=jQuery.tmpl(o,{url:e,page:(Math.ceil(x/p)),text:fm.comments.settings.translate.pagerLast,css:""})}else{r=jQuery.tmpl(v,{text:fm.comments.settings.translate.pagerNext,css:" fmNext"});k=jQuery.tmpl(v,{text:fm.comments.settings.translate.pagerLast,css:""})}}else{var s=1;if(e.indexOf("?")<0){e+="?"}else{e+="&"}j=jQuery.tmpl(v,{text:fm.comments.settings.translate.pagerFirst,css:""});q=jQuery.tmpl(v,{text:fm.comments.settings.translate.pagerPrev,css:" fmPrev"});r=jQuery.tmpl(o,{url:e,page:(s+1),text:fm.comments.settings.translate.pagerNext,css:" fmNext"});k=jQuery.tmpl(o,{url:e,page:(Math.ceil(x/p)),text:fm.comments.settings.translate.pagerLast,css:""})}if(fm.comments.settings.pagerShowNumbers){var l=s-w;var t=s+w;for(i=0;i<w;i++){if(l<1&&s>0){l++;if(t<=x/p){t++}}else{break}}for(i=0;i<w;i++){if(t>x/p){t++;if(t-w>=Math.ceil(x/p)+1){if(l-1>0){l--}}}else{break}}a=l;var c=t*p;if(c>x){c=x}for(i=(a-1)*p;i<c;i=i+p){if(a==s){d+=jQuery.tmpl(o,{url:e,page:a,text:a,css:" fmActive"})}else{d+=jQuery.tmpl(o,{url:e,page:a,text:a,css:""})}a++}}var b="";if(fm.comments.settings.pagerShowFirstLast===false){b+=" fmNoFirstLast"}if(fm.comments.settings.pagerShowPrevNext===false){b+=" fmNoPrevNext"}if(fm.comments.settings.pagerShowNumbers===false){b+=" fmNoNumbers"}m+='<div class="fmPager fmClearfix'+b+'">';if(fm.comments.settings.pagerShowFirstLast===true){m+=j}if(fm.comments.settings.pagerShowPrevNext===true){m+=q}if(fm.comments.settings.pagerShowNumbers===true){m+=d}if(fm.comments.settings.pagerShowPrevNext===true){m+=r}if(fm.comments.settings.pagerShowFirstLast===true){m+=k}m+="</div>";jQuery("#fmCommentsMore").html(m);if(fm.comments.settings.pagerCenter===true){var h=0;jQuery(".fmPager").children().each(function(){h+=parseInt(jQuery(this).outerWidth(true))});jQuery(".fmPager").width(h+"px");jQuery(".fmPager").css({margin:"0px auto"})}};fm.comments.tabs=function(a){jQuery(jQuery(a).parent()[0]).children().each(function(b){if(a==this){if(jQuery("#fmTab"+b)){jQuery("#fmTab"+b).show();jQuery(a).addClass("fmActive")}}else{if(jQuery("#fmTab"+b)){jQuery("#fmTab"+b).hide();jQuery(this).removeClass("fmActive")}}})};fm.comments.updateCount=function(){if(jQuery("#fmNoComments")){jQuery("#fmNoComments").remove()}var a=jQuery("#fmCommentCount").html();var b;if(a){b=a.match(/^(\d+)/)}else{b=["0"]}jQuery("#fmCommentCount").html((parseInt(b[0])+1)+" "+fm.comments.settings.translate.comments)};fm.comments.sendReport=function(a,d){if(d===""||!d){jQuery("#fmReportReason").addClass("errorField");jQuery("#fmReportReason").change(function(){jQuery(this).removeClass("errorField")})}else{var b=jQuery(jQuery("#fmReportBox .fmButton")[0]);if(b.attr("disabled")!="disabled"){b.attr("disabled","disabled");b.css({width:b.width()-1+"px"});b.html('<img src="'+fm.comments.settings.loadingIcon+'" class="fmLoading"/>');args="reason="+d+"&mid="+a;var c=jQuery.ajax({type:"POST",url:fm.comments.settings.report,data:args,dataType:"html",success:function(e){jQuery("#fmReportBox").find("select").remove();jQuery("#fmReportBox").find(".fmButton").remove();e=jQuery.parseJSON(jQuery.trim(e));if(e.result){jQuery("#fmReportBox").prev(".fmReport").remove();jQuery("#fmReportBox").find("p").text(fm.comments.settings.translate.reportSent);if(fm.comments.settings.reportFade==true){jQuery("#fmReportBox").delay(5000).fadeOut(500)}else{jQuery("#fmReportBox").remove()}}else{b.removeAttr("disabled");jQuery("#fmReportBox").find("p").text(fm.comments.settings.translate.reportError)}}})}}};fm.comments.confirmCredentials=function(b,a){fm.comments.proxyRequest("users.confirmCredentials",{username:b,password:a,returnUserInfo:true,login:true},function(c){if(c.id>1){window.location.reload()}else{alert(fm.comments.settings.translate.incorrectLogin);jQuery("#fmFormOverlay").remove()}},function(c){console.log(c)},true)};fm.comments.login=function(){jQuery(jQuery("#fmLoginForm").parents()[0]).prepend('<div id="fmFormOverlay"></div>');var b=jQuery("#fmLoginUsername").val();var a=jQuery("#fmLoginPassword").val();fm.comments.confirmCredentials(b,a)};fm.comments.register=function(d){jQuery(jQuery("#fmRegisterForm").parents()[0]).prepend('<div id="fmFormOverlay"></div>');if(!fm.comments.formValidator.submit(d)){jQuery("#fmFormOverlay").remove();return false}else{var c=jQuery(d).serializeArray()}jQuery("#fmRegisterForm input").each(function(){jQuery(this).attr("disabled","disabled")});var a=[];var b=[];var f;for(key in c){for(keytwo in c[key]){if(keytwo=="name"){a.push(c[key][keytwo])}else{b.push(c[key][keytwo])}}}function g(k,h){var j={};for(var e=0;e<k.length;e++){j[k[e]]=h[e]}return j}f=g(a,b);fm.comments.proxyRequest("users.register",f,function(e){fm.comments.confirmCredentials(f.user,f.password);return false},function(e){jQuery("#fmFormOverlay").addClass("fmNoBackground");jQuery("#fmFormOverlay").html('<span class="fmError">'+fm.comments.settings.translate.error+'</span><a onclick="jQuery(jQuery(this).parents()[0]).remove();" class="fmButton">'+fm.comments.settings.translate.close+"</a>");jQuery("#fmRegisterForm input").each(function(){jQuery(this).attr("disabled","")});return false},true);return false};fm.comments.stripHTML=function(a){a=a.replace(/\r\n/g,"#{fmLineBreak}").replace(/\n/g,"#{fmLineBreak}").replace(/\r/g,"#{fmLineBreak}");a=jQuery("<div>"+a+"</div>").text();return a.replace(/#{fmLineBreak}/g,"<br/>")};fm.comments.postAnonComment=function(b,d,g,f){b=fm.comments.stripHTML(b.val());d=fm.comments.stripHTML(d.val());g=fm.comments.stripHTML(g.val());var a=jQuery(f).attr("id");jQuery(a+" input").each(function(e){e.disabled=true});jQuery(a+" textarea").each(function(e){e.disabled=true});jQuery(jQuery(f).parents()[0]).prepend('<div id="fmFormOverlay"></div>');var c={parentid:fm.comments.parentId,context:"comment",author:b,sender:d,message:g,injector:fm.comments.settings.injector};fm.comments.proxyRequest("media.insertTextFile",c,function(j){var k={username:b,avatar:fm.comments.settings.defaultAvatar,comment:g,votecount:"0",upload:fm.comments.getDateTime(),uploadage:fm.comments.settings.translate.justNow,mid:j,profileid:"0"};var h='<div id="fmNewPost">'+jQuery.tmpl(fm.comments.commentBlock,k)+"</div>";fm.comments.updateCount();if(fm.comments.settings.sort=="upload DESC"){jQuery("#fmComments").prepend(h)}else{jQuery("#fmComments").append(h)}jQuery("#fmFormOverlay").addClass("fmNoBackground");if(fm.comments.settings.moderation=="pre"){var e=fm.comments.settings.translate.moderationMessagePre}else{var e=fm.comments.settings.translate.moderationMessagePost}jQuery("#fmNewPost .fmReport").remove();jQuery("#fmFormOverlay").height(jQuery(jQuery("#fmFormOverlay").parents()[0]).height()+20);jQuery("#fmFormOverlay").html('<span class="fmSuccess">'+e+"</span>");jQuery("#fm.comments.postAnonComment").removeAttr("onsubmit")},function(e){console.log(e);jQuery("#fmFormOverlay").addClass("fmNoBackground");jQuery("#fmFormOverlay").html('<span class="fmError">'+fm.comments.settings.translate.error+'</span><a onclick="jQuery(this.parents()[0]).remove();" class="fmButton">'+fm.comments.settings.translate.close+"</a>");jQuery("#fm.comments.postAnonComment input").each(function(h){h.disabled=false});jQuery("#fm.comments.postAnonComment textarea").each(function(h){h.disabled=false})},true)};fm.comments.logout=function(){fm.cookies.addCookie("SABRE_ID",null);window.location=window.location};fm.comments.logHit=function(b){var a={fileId:b};fm.comments.proxyRequest("media.logHit",a,function(c){},function(c){console.log("Error")})};fm.comments.rateArticle=function(){this.getRating=function(c){jQuery("#fmRatingPeople").html(c.votecount);if(c.votecount==1){jQuery("#fmRatingPeopleText").text("person")}else{jQuery("#fmRatingPeopleText").text("people")}this.rating=c.rating;this.mid=c.id;this.out="";if(this.mid==undefined){this.mid=c}if(this.rating==undefined){for(i=0;i<5;i++){this.out+='<div class="fmStar"></div>'}}else{for(i=0;i<this.rating;i++){this.out+='<div class="fmStar fmFull"></div>'}for(i=4;i>=this.rating;i--){this.out+='<div class="fmStar"></div>'}}jQuery("#fmRatingStars").html(this.out);this.out="";for(i=0;i<5;i++){this.out+='<div id="fmRate_'+i+'" class="fmStar"></div>'}var a=[fm.comments.settings.translate.rating1,fm.comments.settings.translate.rating2,fm.comments.settings.translate.rating3,fm.comments.settings.translate.rating4,fm.comments.settings.translate.rating5];if(fm.cookies.getCookie("rated"+fm.comments.settings.externalId)!=null){this.rating=fm.cookies.getCookie("rated"+fm.comments.settings.externalId);this.out="";for(i=0;i<this.rating;i++){this.out+='<div class="fmStar fmFull"></div>'}for(i=4;i>=this.rating;i--){this.out+='<div class="fmStar"></div>'}jQuery("#fmRatingUserStars").addClass("disabled").html(this.out);jQuery("#fmRatingWord").text(a[parseInt(this.rating-1)])}else{jQuery("#fmRatingUserStars").html(this.out);var b=this.mid;jQuery("#fmRatingUserStars").children().each(function(){jQuery(this).mouseenter(function(){jQuery(this).addClass("fmFull");jQuery(this).prevAll().each(function(d){jQuery(this).addClass("fmFull")});jQuery("#fmRatingWord").text(a[jQuery(this).index()])});jQuery(this).mouseleave(function(){jQuery(this).removeClass("fmFull");jQuery(this).prevAll().each(function(d){jQuery(this).removeClass("fmFull")});jQuery("#fmRatingWord").text(fm.comments.settings.translate.ratingUnrated)});jQuery(this).click(function(){jQuery(jQuery(this).parent()[0]).addClass("disabled");jQuery(jQuery(this).parent()[0]).children().unbind();myRating=jQuery(this).index()+1;var d=parseInt(jQuery("#fmRatingPeople").html())+1;if(d==1){jQuery("#fmRatingPeopleText").text("person")}else{jQuery("#fmRatingPeopleText").text("people")}jQuery("#fmRatingPeople").html(d);fm.comments.proxyRequest("media.rate",{mid:b,rating:myRating,uid:1,returnData:true},function(e){fm.cookies.addCookie("rated"+fm.comments.settings.externalId,myRating,{path:"/",expires:1})},function(e){console.log(e)})})})}}};fm.comments.displayComment=function(d){if(d.uid==1){b=fm.comments.settings.defaultAvatar;var e={username:fm.comments.stripHTML(d.author),comment:d.message,votecount:d.votecount,upload:d.upload,uploadage:fm.comments.makeUploadAge(d.upload),mid:d.id,profileid:d.uid,avatar:b};var c=jQuery.tmpl(fm.comments.commentBlock,e)}else{var b="";if(d.avatar!=0){if(fm.comments.settings.env=="dev"){b="http://fmdev.s3.amazonaws.com/storage/"+d.avatar+"/12"}else{b="http://rstorage.filemobile.com/storage/"+d.avatar+"/12"}}else{b=fm.comments.settings.defaultAvatar}var a="";if(fm.comments.settings.showUsername!==true&&fm.comments.settings.showFirstName===true||fm.comments.settings.showLastName===true){if(fm.comments.settings.showFirstName===true){a+=d.user_firstname}if(fm.comments.settings.showFirstName===true&&fm.comments.settings.showLastName===true){a+=" "}if(fm.comments.settings.showLastName===true){a+=d.user_lastname}}else{a+=d.user_name}if(d.filetype==4){var e={username:a,comment:d.message,votecount:d.votecount,upload:d.upload,uploadage:fm.comments.makeUploadAge(d.upload),mid:d.id,profileid:d.uid,avatar:b};var c=jQuery.tmpl(fm.comments.commentBlock,e)}else{if(d.filetype==1){var e={username:a,comment:d.message,image:d.publicUrl,votecount:d.votecount,upload:d.upload,uploadage:fm.comments.makeUploadAge(d.upload),mid:d.id,profileid:d.uid,avatar:b};var c=jQuery.tmpl(fm.comments.commentBlockWithImage,e)}else{var e={username:d.user_name,comment:d.message,image:d.publicUrl,votecount:d.votecount,upload:d.upload,uploadage:fm.comments.makeUploadAge(d.upload),mid:d.id,profileid:d.uid,avatar:b};var c=jQuery.tmpl(fm.comments.commentBlockWithVideo,e)}}}return c};fm.comments.autoUpdate=function(){var b=["filetype","uid","user_name","votecount","author","upload","message","publicUrl","status","avatar"];if(fm.comments.settings.showFirstName===true){b.push("user_firstname")}if(fm.comments.settings.showLastName===true){b.push("user_lastname")}var a={sort:fm.comments.settings.sort,limit:100,start:0,parentid:fm.comments.parentId,context:"comment",includeChildren:1,channel:0,fields:b,timeLimit:fm.comments.settings.autoUpdateTime*fm.comments.autoUpdateCount};fm.comments.proxyRequest("media.getFiles",a,function(e){if(e.totalCount>0){fm.comments.startOffset+=e.totalCount;fm.comments.autoUpdateCount=1;fm.comments.commentCount=parseInt(jQuery("#fmCommentCount").text().substr(0,jQuery("#fmCommentCount").text().indexOf(" ")))+parseInt(e.totalCount);jQuery("#fmCommentCount").html(fm.comments.commentCount+" "+fm.comments.settings.translate.comments);var d=e.data;for(i=0;i<d.length;i++){var c=fm.comments.displayComment(d[i]);if(jQuery("#comment_"+d[i].id).length===0){fm.comments.queue+=c}}if(fm.comments.queue.length>0){jQuery("title").text("("+e.totalCount+") "+fm.comments.title);if(jQuery("#fmAutoUpdateComments").length){jQuery("#fmAutoUpdateComments").text(e.totalCount+" New Comments")}else{jQuery("#fmComments").prepend('<a class="fmUpdateComments" id="fmAutoUpdateComments">'+e.totalCount+fm.comments.settings.translate.newComments+"</a>");jQuery("#fmAutoUpdateComments").click(function(){jQuery("#fmAutoUpdateComments").remove();if(fm.comments.settings.sort=="upload DESC"){jQuery("#fmComments").prepend(fm.comments.queue)}else{jQuery("#fmComments").append(fm.comments.queue)}jQuery("title").text(fm.comments.title);fm.comments.queue=""})}}}else{fm.comments.autoUpdateCount++}},function(c){console.log(c)},true)};function FMFormValidate(a){this.isValid=true;this.invalidMessage="";this.vForm=a;this.invalidelement=null;this.validationErrorListeners=[];this.validationSuccessListener=null;this.self=this;this.uniqueFields=[];this.translate=fm.comments.settings.translate;this.serverSideValidation=[];this.submit=function(b){return this.validateForm(b)};this.validateForm=function(f){if(f){this.vForm=f}try{var b=[];this.serverSideValidation=[];this.confirmEmail=[];this.isValid=true;var c=new Array("INPUT","SELECT","TEXTAREA");for(d=0;d<c.length;d++){jQuery(this.vForm).find(c[d]).each(function(){b.push(jQuery(this))})}for(var d=0;d<b.length;d++){if(!this.validateField(b[d])){this.handleInvalid();return false}}if(this.serverSideValidation.length>0){return this.validateServerSide()}else{if(this.validationSuccessListener){this.validationSuccessListener();return false}else{return true}}}catch(e){console.log(e);return false}};this.handleInvalid=function(){for(var b=0;b<this.validationErrorListeners.length;b++){this.validationErrorListeners[b](this.invalidelement,this.invalidMessage)}};this.validateField=function(d){if(!this.checkRequired(jQuery(d))){this.isValid=false;this.invalidMessage=this.getFieldName(jQuery(d))+this.translate.validateRequired;this.invalidelement=jQuery(d);return false}if(this.hasClass(jQuery(d),"fmCheckBox")&&this.hasClass(jQuery(d),"required")&&!jQuery(d).checked){this.isValid=false;var c=this.getFieldName(jQuery(d));c=c.substr(0,c.indexOf("_cb"));this.invalidMessage=c+this.translate.validateRequired;this.invalidelement=jQuery(d);return false}if(this.hasClass(jQuery(jQuery(d)),"fmDate")&&jQuery(d).val().length>0){var g=/^[1-2][0-9]{3}-[0-1][0-9]-[0-3][0-9]$/;if(!g.test(jQuery(d).val())){this.isValid=false;this.invalidMessage=this.getFieldName(jQuery(d))+this.translate.validateDate;this.invalidelement=jQuery(d);return false}}if(jQuery(d).hasClass("fmPhonenumber")&&jQuery(d).val().length>0){jQuery(d).val()=jQuery(d).val().replace(/[^0-9]/g,"");var g=/^[2-9][0-9][0-9][2-9][0-9]{6}$/;if(!g.test(jQuery(d).val())){this.isValid=false;this.invalidMessage=this.getFieldName(jQuery(d))+this.translate.validatePhone;this.invalidelement=jQuery(d);return false}}if(jQuery(d).hasClass("fmPassword")){var b=jQuery(d).val().length;if(b<6){this.isValid=false;this.invalidMessage=this.translate.validatePasswordLength;this.invalidelement=jQuery(d);return false}}if(jQuery(d).hasClass("fmPasswordConfirm")){var h=this.vForm.getElementsByTagName("input");for(var e=0;e<h.length;e++){var f=h[e];if(jQuery(f).hasClass("fmPassword")){if(jQuery(f).val()!=jQuery(d).val()){this.isValid=false;this.invalidMessage=this.translate.validatePasswordMatch;this.invalidelement=jQuery(d);return false}}}}if(jQuery(d).hasClass("fmEmail")){var g=/^([a-zA-Z0-9_\.\-\+])+\@(([a-zA-Z0-9\-\.])+\.)+([a-zA-Z0-9]{2,4})+$/;if(!g.test(jQuery(d).val())){this.isValid=false;this.invalidMessage=this.getFieldName(jQuery(d))+this.translate.validateEmail;this.invalidelement=jQuery(d);return false}if(jQuery(d).hasClass("checkUnique")){this.serverSideValidation.push({type:"UniqueEmail",element:d})}if(this.hasClass(jQuery(d),"confirm")){for(var e=0;e<this.confirmEmail.length;e++){if(this.confirmEmail[e]!=jQuery(d).val()){this.isValid=false;this.invalidMessage=this.translate.validateEmailMatch;this.invalidelement=jQuery(d);return false}}this.confirmEmail.push(jQuery(d).val())}}if(jQuery(d).hasClass("fmPostalcode")){jQuery(d).val()=jQuery(d).val().toUpperCase();var g=/^([A-Z][0-9][A-Z](-| )?[0-9][A-Z][0-9])$/;if(!g.test(jQuery(d).val())){this.isValid=false;this.invalidMessage=this.getFieldName(jQuery(d))+this.translate.validatePostalCode;this.invalidelement=jQuery(d);return false}}if(jQuery(d).hasClass("fmUsername")){jQuery(d).val(jQuery(d).val().toLowerCase());var g=/^[a-z][a-z0-9_]{5,}$/;if(!g.test(jQuery(d).val())){this.isValid=false;this.invalidMessage=this.translate.validateUsernameLength;this.invalidelement=jQuery(d);return false}else{if(jQuery(d).hasClass("checkUnique")){this.serverSideValidation.push({type:"UniqueUser",element:d})}}}if(this.hasClass(jQuery(d),"fmCaptcha")){this.serverSideValidation.push({type:"VerifyCaptcha",element:d})}return true};this.checkRequired=function(b){var c=jQuery(b).val();c=c.replace(/ /g,"");return(!jQuery(b).hasClass("required")||(c.length>0&&!this.hasClass(jQuery(b),"fmCheckBox"))||this.hasClass(jQuery(b),"fmCheckBox"))};this.hasClass=function(c,b){var d=new RegExp("(^| )"+b+"(jQuery| )");return(d.test(jQuery(c).className))};this.getFieldName=function(b){return jQuery(b).attr("name")};this.addValidationErrorListener=function(b){this.validationErrorListeners.push(b)};this.setValidationSuccessListener=function(b){this.validationSuccessListener=b};this.validateServerSide=function(){var d={};var b=this;b.uniqueFields=[];for(var c=0;c<this.serverSideValidation.length;c++){var e=this.serverSideValidation[c];switch(e.type){case"UniqueEmail":d.username="";d.email=e.element.val();fm.comments.proxyRequest("users.verifyUserEmail",d,function(f){b.uniqueFields.push(f)},false,false);break;case"UniqueUser":d.username=e.element.val();d.email="";fm.comments.proxyRequest("users.verifyUserEmail",d,function(f){b.uniqueFields.push(f)},false,false);break;default:console.log("Unknown server-side validation type: "+e.type);break}}return this.serverSideValidateResponse(b.uniqueFields)};this.serverSideValidateResponse=function(f){for(var d=0;d<f.length;d++){var e=f[d];var g=this.serverSideValidation[d];switch(g.type){case"UniqueEmail":if(e!=1){this.isValid=false;this.invalidelement=g.element;this.invalidMessage=this.translate.validateEmailUnique;if(jQuery("#fmErrorOverlay")){jQuery("#fmErrorOverlay").remove()}}break;case"UniqueUser":if(e!=1){this.isValid=false;this.invalidelement=g.element;this.invalidMessage=this.translate.validateUsernameUnique;if(jQuery("#fmErrorOverlay")){jQuery("#fmErrorOverlay").remove()}}break;case"VerifyCaptcha":if(e==false){this.isValid=false;this.invalidelement=g.element;this.invalidMessage="The captcha you entered was invalid, please try again";try{var b=document.getelementById(g.element.id+"_captcha").children()[0];b.src=b.src+"&anoth="+Math.random()}catch(c){console.log("We got an exception trying to refresh the captcha image: "+c)}}break;default:console.log("Unknown server-side validation type: "+g.type);return false}if(!this.isValid){break}}if(this.isValid){if(this.validationSuccessListener){this.validationSuccessListener();return false}else{return true}}else{this.handleInvalid();return false}}}fm.swfuploader={swf:null,fileMap:[],init:function(a){var b=new fm.flash.Object({src:"http://www.filemobile.com/static/widgets/swfupload.swf",width:jQuery("#uploadBtn").outerWidth()+"px",height:jQuery("#uploadBtn").height()+"px",wmode:"transparent",id:"uploaderSwf",flashVars:{buttonText:"",callbackObject:"fm.swfuploader",debugEnabled:"false",uploadURL:"http://www.filemobile.com/services/upload2",buttonImageURL:"",fileSizeLimit:"250 MB",fileQueueLimit:1,fileUploadLimit:1,httpSuccess:"",fileTypes:"*.eps; *.jpg; *.jpeg; *.bmp; *.gif; *.pdf; *.png; *.3g2; *.3gp; *.ac3; *.aac; *.aiff; *.amr; *.asf; *.au; *.avi; *.dirac; *.dv; *.flav; *.flv; *.mkv; *.mov; *.mp4; *.m4a; *.mj2; *.mp2; *.mp3; *.mpeg; *.mpg; *.ogg; *.wav; ",filePostName:"fmupload",cancelButtonId:"fmCancelUpload",movieName:"file",useQueryString:"false",requeueOnError:"false",assumeSuccessTimeout:0}});b.embed(jQuery(a)[0]);this.swf=jQuery(a).children()[0]},debug:function(a){console.log(a)},testExternalInterface:function(){return true},flashReady:function(){},fileDialogStart:function(){},fileDialogComplete:function(){},fileQueueError:function(c,a,b){alert(b)},fileQueued:function(a){jQuery("#fileList").html(jQuery("#fileList").html()+'<div id="uploadFile'+(this.fileMap.length)+'" class="queuedUploadItem"><img class="progressBar" src="http://filemobile.com/static/2/images/blank.gif" width="0px"  height="20px" /><div class="filename">'+a.name+'</div><div class="percHolder">(<span class="percCount">0</span>%)</div></div><div class="fmRemove" onclick="fm.swfuploader.removeFiles();">'+fm.comments.settings.translate.removeFromQueue+"</div>");this.fileMap[this.fileMap.length]=a},removeFiles:function(){var a=jQuery(this.swf).parents()[0];jQuery(this.swf).remove();jQuery("#fileList").html("");fm.swfuploader.init(a)},fetchFileElem:function(a){for(i=0;i<this.fileMap.length;i++){if(this.fileMap[i].name==a.name){return jQuery("#uploadFile"+i)}}},uploadStart:function(){this.swf.ReturnUploadStart(true)},updateProgressBar:function(b,a){if(a<1){jQuery(jQuery(b).children()[0]).css("width",0)}else{jQuery(jQuery(b).children()[0]).css("width",(Math.round(a))+"%")}},uploadProgress:function(b,a){elem=this.fetchFileElem(b);var c=(a/b.size*100);jQuery(jQuery(elem).children()[2]).html(Math.round(c,2)+"%");this.updateProgressBar(elem,c)},uploadComplete:function(a){elem=this.fetchFileElem(a);this.updateProgressBar(elem,100);jQuery(jQuery(elem).children()[0]).css({"background-image":"none"});if(this.swf.GetStats().files_queued>0){this.swf.StartUpload()}else{jQuery("#uploadForm textarea").each(function(){jQuery(this).attr("disabled","disabled")});jQuery(jQuery("#uploadForm").parents()[0]).prepend('<div id="fmFormOverlay"></div>');var c;if(jQuery("#fmAvatarId").val()!=0){if(fm.comments.settings.env=="dev"){c="http://fmdev.s3.amazonaws.com/storage/"+jQuery("#fmAvatarId").val()+"/12"}else{c="http://rstorage.filemobile.com/storage/"+jQuery("#fmAvatarId").val()+"/12"}}else{c=fm.comments.settings.defaultAvatar}jQuery("#fmFormOverlay").addClass("fmNoBackground");if(fm.comments.settings.moderation=="pre"){var b=fm.comments.settings.translate.moderationMessagePre}else{var b=fm.comments.settings.translate.moderationMessagePost+fm.comments.settings.translate.moderationMediaMessage}jQuery("#fmFormOverlay").html('<span class="fmSuccess">'+b+"</span>")}},startUpload:function(){this.swf.SetPostParams({sessiontoken:fm.cookies.getCookie("SABRE_ID"),vhost:fm.comments.settings.vhost,message:jQuery("#fmCommentText").val(),parentid:jQuery("#fmParent").val(),context:"comment",injector:fm.comments.settings.injector,privacy:"PUBLIC"});if(this.fileMap.length<1){if(!fm.comments.formValidator.submit(jQuery("#uploadForm"))){return false}else{if(fm.comments.formValidator.submit(jQuery("#uploadForm"))){jQuery(jQuery("#uploadForm").parents()[0]).prepend('<div id="fmFormOverlay"></div>');jQuery("#uploadForm textarea").each(function(c){c.disabled=true});var b=fm.comments.stripHTML(jQuery("#fmCommentText").val()).replace(/(\r\n|\r|\n)/g,"<br/>");var a={parentid:jQuery("#fmParent").val(),context:"comment",author:jQuery("#fmUsername").val(),sender:jQuery("#fmUserId").val(),message:b,injector:fm.comments.settings.injector};fm.comments.proxyRequest("media.insertTextFile",a,function(g){var e="";if(jQuery("#fmAvatarId").val()!=0){if(fm.comments.settings.env=="dev"){e="http://fmdev.s3.amazonaws.com/storage/"+jQuery("#fmAvatarId").val()+"/12"}else{e="http://rstorage.filemobile.com/storage/"+jQuery("#fmAvatarId").val()+"/12"}}else{e=fm.comments.settings.defaultAvatar}var c="";if(fm.comments.settings.showUsername!==true&&fm.comments.settings.showFirstName===true||fm.comments.settings.showLastName===true){if(fm.comments.settings.showFirstName===true){c+=jQuery("#fmFirstName").val()}if(fm.comments.settings.showFirstName===true&&fm.comments.settings.showLastName===true){c+=" "}if(fm.comments.settings.showLastName===true){c+=jQuery("#fmLastName").val()}}else{c+=jQuery("#fmUsername").val()}var h={username:fm.comments.stripHTML(c),userid:fm.comments.stripHTML(jQuery("#fmUserId").val()),avatar:e,comment:b,votecount:"0",upload:fm.comments.getDateTime(),uploadage:fm.comments.settings.translate.justNow,mid:g};var f='<div id="fmNewPost">'+jQuery.tmpl(fm.comments.commentBlock,h)+"</div>";if(fm.comments.settings.sort=="upload DESC"){jQuery("#fmComments").prepend(f)}else{jQuery("#fmComments").append(f)}jQuery("#fmFormOverlay").addClass("fmNoBackground");if(fm.comments.settings.moderation=="pre"){var d=fm.comments.settings.translate.moderationMessagePre}else{var d=fm.comments.settings.translate.moderationMessagePost}jQuery("#fmFormOverlay").html('<span class="fmSuccess">'+d+"</span>");fm.comments.updateCount()},function(c){jQuery("#fmFormOverlay").addClass("fmNoBackground");jQuery("#fmFormOverlay").html('<span class="fmError">'+fm.comments.settings.translate.error+'</span><a onclick="this.parents()[0].remove();" class="fmButton">'+fm.comments.settings.translate.close+"</a>");jQuery("#uploadForm textarea").each(function(d){d.disabled=false})},true);return false}}}if(!fm.comments.formValidator.submit(jQuery("#uploadForm"))){return false}else{if(fm.comments.formValidator.submit(jQuery("#uploadForm"))){this.swf.StartUpload()}}}};if(typeof fm=="undefined"){fm=function(){}}fm.util=function(){};fm.util.toJSON=function(d){var b=typeof d;switch(b){case"object":if(!d){return null}var c=[];if(d instanceof Array){for(var a=0;a<d.length;a++){c.push(fm.util.toJSON(d[a]))}return"["+c.join(",")+"]"}for(var e in d){c.push(fm.util.toJSON(e)+":"+fm.util.toJSON(d[e]))}return"{"+c.join(",")+"}";case"string":return'"'+d.replace(/([\\"\n\t\r\b\f])/g,function(f){switch(f){case"\n":return"\\n";case"\t":return"\\t";case"\r":return"\\r";case"\b":return"\\b";case"\f":return"\\f";case'"':case"\\":return"\\"+f;default:return f}})+'"';case"number":case"boolean":return new String(d)}};fm.util.getXMLHTTPObject=function(){try{var a=new XMLHttpRequest()}catch(b){try{var a=new ActiveXObject("Msxml2.XMLHTTP")}catch(b){try{var a=new ActiveXObject("Microsoft.XMLHTTP")}catch(b){fm.util.log("Fatal error, could not locate XMLHTTPObject");return null}}}return a};fm.util.log=function(a){if(console.log){console.log(a)}};fm.util.escapeHTML=function(a){if(typeof(a)!="string"){a=a.toString()}return a.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")};fm.util.toQueryString=function(a){var b=[];for(prop in a){b.push(escape(prop)+"="+escape(a[prop]))}return b.join("&")};fm.api=function(){};fm.api.Request=function(method,args){this.method=method;this.args=args;this.onResult=null;this.onError=null;this.endPoint="/services/json";this.currentRequest=null;this.invoke=function(){var request=fm.util.getXMLHTTPObject();this.currentRequest=request;request.open("POST",this.endPoint,true);request.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8");var self=this;request.onreadystatechange=function(){self.onreadystatechange()};request.send("method="+this.method+"&jsonArgs="+encodeURIComponent(fm.util.toJSON(args)))};this.onreadystatechange=function(){switch(this.currentRequest.readyState){case 4:var resultData=eval("("+this.currentRequest.responseText+")");if(resultData.status==true){if(this.onResult){this.onResult(resultData.result)}}else{if(this.onError){this.onError(resultData)}else{fm.util.log("Unhandled error from json api: "+resultData.result)}}break}}};fm.cookies=function(){};fm.cookies.addCookie=function(c,f,d){if(d){var b=new Date();b.setTime(b.getTime()+(d*1000));var e="; expires="+b.toGMTString()}else{var e=""}var a=c+"="+escape(f)+e+"; path=/";document.cookie=a};fm.cookies.getCookie=function(a){var b=document.cookie.match("(^|; )"+a+"=(.*?)(;|$)");if(b){return unescape(b[2])}else{return null}};fm.flash=function(){};fm.flash.getVersion=function(){var c=[0,0,0];if(navigator.plugins&&navigator.plugins.length&&navigator.plugins["Shockwave Flash"]){var b=navigator.plugins["Shockwave Flash"];var f=b.description.match(/Shockwave Flash ([\d]*).([\d]*) r([\d]*)/);c=[parseInt(f[1]),parseInt(f[2]),parseInt(f[3])]}if(window.ActiveXObject){try{var a=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");if(a){var f=a.GetVariable("$version").split(" ")[1].split(",");c=[parseInt(f[0]),parseInt(f[1]),parseInt(f[2])]}}catch(d){}}return c};fm.flash.Object=function(a){this.src=null;this.width=0;this.height=0;this.flashVars={};this.allowScriptAccess="always";this.backgroundColor=null;this.allowFullScreen=true;this.wmode=null;this.id=null;for(i in a){if(typeof(this[i])!="undefined"){this[i]=a[i]}}this.embed=function(b){if(typeof(b)=="string"){b=document.getElementById(b)}b.innerHTML=this.generateHTML()};this.write=function(){document.write(this.generateHTML())};this.generateHTML=function(){if(!this.src){throw"Url to swf was not set"}var b='<object type="application/x-shockwave-flash" data="'+fm.util.escapeHTML(this.src)+'" width="'+fm.util.escapeHTML(this.width)+'" height="'+fm.util.escapeHTML(this.height)+'" ';if(this.id){b+='id="'+fm.util.escapeHTML(this.id)+'"'}b+=">\n";b+='  <param name="movie" value="'+fm.util.escapeHTML(this.src)+'" />\n';if(this.allowScriptAccess){b+='  <param name="allowScriptAccess" value="'+fm.util.escapeHTML(this.allowScriptAccess)+'" />\n'}if(this.backgroundColor){b+='  <param name="bgcolor" value="'+fm.util.escapeHTML(this.backgroundColor)+'" />\n'}if(this.allowFullScreen){b+='  <param name="allowFullScreen" value="true" />\n'}if(this.flashVars){b+='  <param name="flashvars" value="'+fm.util.toQueryString(this.flashVars)+'" />\n'}if(this.wmode){b+='  <param name="wmode" value="'+fm.util.escapeHTML(this.wmode)+'" />\n'}b+="</object>";return b}};fm.geolocation=function(){};fm.geolocation.getCurrentPosition=function(d,c,b){if(false&&typeof navigator.geolocation!="undefined"){var e=navigator.geolocation}else{try{var e=google.gears.factory.create("beta.geolocation")}catch(a){c({code:0,message:"Could not find support for the geolocation api"});return}}e.getCurrentPosition(d,c,b)};jQuery.tmpl=function(c,d){var a,b;c=c||"";d=d||{};a=/#\{([^{}]*)}/g;b=function(f,e){return typeof d[e]==="string"||typeof d[e]==="number"?d[e]:f};return c.replace(a,b)};
