var AdjustFontSize=new Class({Implements:[Options],options:{upButton:null,downButton:null,sizes:[".9em","1em","1.1em","","1.4em","1.6em","1.8em"]},initialize:function(a,b){this.element=(document.id||$)(a),this.setOptions(b),this.index=this.options.sizes.indexOf(""),this.bindEvents()},bindEvents:function(){this.options.upButton&&this.options.upButton.addEvent("click",this.sizeUp.bind(this)),this.options.downButton&&this.options.downButton.addEvent("click",this.sizeDown.bind(this))},sizeUp:function(a){a&&a.stop();this.index+1>=this.options.sizes.length||this.element.setStyle("font-size",this.options.sizes[++this.index])},sizeDown:function(a){a&&a.stop();this.index-1<0||this.element.setStyle("font-size",this.options.sizes[--this.index])}}),CommentPreview=new Class({Implements:[Options,Events],options:{template:"",onStart:function(){},onComplete:function(){},placeholder:[null,"inside"]},initialize:function(a,b){this.element=(document.id||$)(a),this.setOptions(b)},preview:function(a){a&&a.stop(),this.fireEvent("onStart");var b=this.getComment();if(b=="")return this.fireEvent("onComplete");this.template&&document.id(this.template).destroy();var c=new Date;this.template=(new Elements.from(this.options.template.substitute({author:this.author,avatar:this.avatar,comment:b,dateISO:c.format("iso8601"),date:c.format("%A %d %B %Y "+Locale.get("Article.at")+" %H:%M"),profile:this.profile})))[0],this.template=this.template.inject(this.options.placeholder[0],this.options.placeholder[1]),this.fireEvent("onComplete")},getComment:function(){var a=this.element.get("value").stripScripts().stripTags().replace("<","&lt;").replace(">","&gt;").split("\n"),b="";a.forEach(function(a){a.clean()!=""&&(a=a.replace(/(http:\/\/){0,1}(www.[-a-zA-Z0-9@:%_\+.~#?&//=]+)/,'<a href="http://$2" rel="nofollow">$2</a>'),b+="<p>"+a+"</p>")});return b.trim()}});document.addEvent("domready",function(){new AdjustFontSize(document.getElement(".entry-content"),{upButton:document.getElement("#tools .sizeup a"),downButton:document.getElement("#tools .sizedown a")}),document.getElement("#tools .print a").addEvent("click",function(a){a.stop(),window.print()});var a=document.getElement("#article-comment .validate");if(a){var b=document.getElement("#article-comment .submit"),c=(new Elements.from('<p id="article-comment-preview">'+Locale.get("Article.Click-on-preview")+"</p>"))[0].inject(b,"after"),d=(new Elements.from("<h6>"+Locale.get("Article.Preview")+"</h6>"))[0].inject(b,"after"),e=new CommentPreview(document.id("comment"),{placeholder:[d,"after"],template:'<ul id="article-comment-preview" class="list"><li><div class="entry-content">{comment}</div><div class="infos"><address class="vcard"><img class="photo" src="'+document.id("account").getElement(".photo").get("src")+'" alt="'+Locale.get("Article.Avatar-of")+" "+document.getElement("#account .fn").get("text")+'" /><span class="fn">'+document.getElement("#account .fn").get("text")+"</span></address>"+' - <span><abbr title="{dateISO}" class="published">{date}</abbr></span>'+"</div>"+"</li>"+"</ul>",onStart:function(){c.destroy()}});(new Elements.from('<button class="preview">'+Locale.get("Article.Preview")+"</button>"))[0].addEvent("click",e.preview.bind(e)).inject(a,"after");var f=new ErrorManager({placeholder:[document.getElement("#article-comment fieldset"),"top"],template:'<div id="article-comment-error" class="error"><p>'+Locale.get("Article.Error(s)")+" :</p><ul>{error}</ul></div>"});document.getElement("#article-comment form").addEvent("submit",function(a){f.reset(),e.getComment()==""&&f.add("Vous devez saisir une réaction.");if(f.length()==0)return!0;a.stop(),f.display();return!1})}document.getElements("#article-comment .tools li:empty").forEach(function(a){(new Element("a",{"class":"abuse",href:"#",text:"Signaler un abus"})).addEvent("click",function(a){var a=document.id(a.stop().target),b=a.getParent("li[id]").get("id").replace(/([^0-9]*)/,"");(new Request({method:"get",url:"/transaction/alertComment.php",onRequest:function(){a.removeEvents("click").removeProperty("href").addClass("disabled")},onSuccess:function(a,c){switch(a){case"ok":var d="message",e="Merci, ce message a été signalé à un modérateur.";break;case"not logged in":var d="error",e="Vous devez être identifié pour signaler un message.";break;default:var d="error",e="Une erreur est survenue lors du signalement du message."}(new Element("div",{"class":d,text:e})).inject(document.id("comm-"+b))}})).send("comId="+b)}).inject(a)})})
