PageSourceSearch

https://joomlabliss.com/media/mod_pwebcontact/js/mootools.pwebcontact.js

js joomlabliss.com collected 2026-10-07 00:34:29 UTC 12,245 bytes, 13 lines download raw bytes

1
2/**
3* @version 2.3.2
4* @package PWebContact
5* @copyright © 2012 Majestic Media sp. z o.o., All rights reserved. http://www.perfect-web.co
6* @license GNU General Public Licence http://www.gnu.org/licenses/gpl-3.0.html
7* @author Piotr Moćko
8*
9* Mootools 1.3.2+, 1.4.5+
10*/
11(function(a){pwebContact=new Class({Implements:[Options,Events],options:{id:"",prefix:"pwebcontact",debug:false,basePath:"",baseUrl:"",rootPath:false,ssl:false,reloadToken:false,openFormOnStart:false,resetAfterSend:false,reposition:true,charsLimit:0,redirectURL:"",redirectTimeout:500,layout:"default",bgOpacity:0,modal:{x:580,y:320,overlayOpacity:0.7,classWindow:""},onEmailSuccess:Class.empty,uploader:false,allowedExtensions:[],sizeLimit:0,showSizeLimit:true,fileLimit:0},status:0,modal:false,attachments:[],fileCount:0,initialize:function(b){this.setOptions(b);this.options.prefix=this.options.prefix+this.options.id;if(!this.options.baseUrl){this.options.baseUrl=(this.options.ssl?"https:":document.location.protocol)+"//"+document.location.host+this.options.basePath+"/"}this.Msg=a(this.options.prefix+"_msg");this.Form=a(this.options.prefix+"_form");this.CharsLeft=a(this.options.prefix+"_charsleft");this.ButtonNew=a(this.options.prefix+"_new");this.Toggler=a(this.options.prefix+"_toggler");this.Msg.set("html","");this.Form.reset();this.Form.addEvent('keydown',function(e){if(typeof e!='undefined'&&e.key=='enter'){e.preventDefault();return false}});$$('#'+this.options.prefix+'_form input[name=title]').set('value',document.title);if(this.options.reloadToken){this.getToken()}if(this.options.uploader){var d={};d.mid=this.options.id;d[a(this.options.prefix+"_token").get("name")]=1;this.uploader=new qq.FileUploaderPWebContact({debug:this.options.debug,element:a(this.options.prefix+"_uploader"),action:this.options.baseUrl+(this.options.rootPath?"mod_pwebcontact_":"modules/mod_pwebcontact/")+"ajax.php",autoUpload:false,allowedExtensions:this.options.allowedExtensions,sizeLimit:this.options.sizeLimit,showSizeLimit:this.options.showSizeLimit,messages:{typeError:pwebContactJText.typeError,sizeError:pwebContactJText.sizeError,minSizeError:pwebContactJText.minSizeError,emptyError:pwebContactJText.emptyError,noFilesError:pwebContactJText.noFilesError,onLeave:pwebContactJText.onLeave,browse:pwebContactJText.browse,cancel:pwebContactJText.cancel,retry:pwebContactJText.retry,dropFiles:pwebContactJText.dropFiles,sizeLimit:pwebContactJText.sizeLimit,failed:pwebContactJText.failed,formatProgress:pwebContactJText.formatProgress},failedUploadTextDisplay:{mode:"custom"},params:d,onListChange:function(){if(this.options.layout=="default"){var e=this.BoxSize.y;this.BoxSize=a(this.options.prefix+"_container").getSize();if(e!=this.BoxSize.y){a(this.options.prefix+"_box").setStyles({width:this.BoxSize.x,height:this.BoxSize.y});a(this.options.prefix+"_bg").setStyles({width:this.BoxSize.x-20,height:this.BoxSize.y-20});if(this.options.reposition){this.reposition()}}}this.validateUploader()}.bind(this),onSubmit:function(f,e){this.fileCount++;if(this.options.fileLimit>0){if(this.fileCount==this.options.fileLimit){$$("#"+this.options.prefix+"_uploader .qq-upload-button")[0].setStyle("visibility","hidden")}else{if(this.fileCount>this.options.fileLimit){this.fileCount=this.options.fileLimit;alert(pwebContactJText.fileLimitError+": "+this.options.fileLimit);return false}}}}.bind(this),onCancel:function(f,e){this.fileCount--;if(this.options.fileLimit>0&&this.fileCount==this.options.fileLimit-1){$$("#"+this.options.prefix+"_uploader .qq-upload-button")[0].setStyle("visibility","visible")}if(this.fileCount<0){this.fileCount=0}}.bind(this),onComplete:function(g,f,e){if(e.success){this.attachments.push(e.file);if(this.uploader.getInProgress()==0){this.sendEmail()}}else{this.status=3;if(e.debug){this.debugMsg(e.debug)}}}.bind(this),showMessage:function(e){alert(e)}.bind(this)})}if(this.options.layout=="default"){var c=a(this.options.prefix+"_box");c.setStyle("display","block");this.BoxMorph=new Fx.Morph(c);this.BoxSize=a(this.options.prefix+"_container").getSize();a(this.options.prefix+"_bg").setStyles({width:this.BoxSize.x-20,height:this.BoxSize.y-20});this.BoxMorph.set({width:0,height:0,opacity:0}
11);if(this.options.reposition){this.reposition();window.addEvent("resize",function(){this.reposition()}.bind(this))}if(this.options.bgOpacity>0&&a(this.options.prefix+"_bg")){a(this.options.prefix+"_bg").setStyle("opacity",this.options.bgOpacity)}this.fixCalendar()}else{if(this.options.layout=="modal"){this.modal=SqueezeBox;this.modal.initialize({});if(!this.Form.hasClass("modal-static")&&this.Toggler){this.BoxSize=this.Toggler.getSize();if(this.options.reposition){this.reposition();window.addEvent("resize",function(){this.reposition()}.bind(this))}}}}if(this.options.layout!="static"){a(this.options.prefix).inject($$("body")[0]);$$("."+this.options.prefix+"_toggler").each(function(e){e.addEvent("click",function(f){f.stop();this.toggleForm()}.bind(this))}.bind(this))}if($$("#"+this.options.prefix+"_agree span.pwebcontact_label")){$$("#"+this.options.prefix+"_agree span.pwebcontact_label").addEvent("click",function(){a(this.options.prefix+"_agree0").checked=!a(this.options.prefix+"_agree0").checked}.bind(this))}a(this.options.prefix+"_submit").addEvent("click",this.submitForm.bind(this));if(this.CharsLeft){a(this.options.prefix+"_message").addEvent("keyup",function(h){h.stop();var g=a(this.options.prefix+"_message");var f=g.value.length;if(f>=this.options.charsLimit){g.value=g.value.substring(0,this.options.charsLimit)}this.CharsLeft.set("text",this.options.charsLimit-f)}.bind(this))}if(this.ButtonNew){this.ButtonNew.setStyle("display","none").addEvent("click",function(f){f.stop();this.resetForm()}.bind(this))}if(this.options.openFormOnStart){this.toggleForm()}},toggleForm:function(e){if(typeof e!="undefined"){var d=a(this.options.prefix+"_mailto");if(d){d.selectedIndex=parseInt(e)}}if(this.options.layout=="default"){if(this.Toggler){if(this.Toggler.hasClass("active")){this.Toggler.removeClass("active");this.BoxMorph.start({width:0,height:0,opacity:0});this.resetForm()}else{this.Toggler.addClass("active");this.BoxMorph.start({width:this.BoxSize.x,height:this.BoxSize.y,opacity:1})}}}else{if(this.options.layout=="modal"){var c=window.getSize().y-40;var b=this.options.modal.y?(this.options.modal.y>c?c:this.options.modal.y):c;this.modal.fromElement(a(this.options.prefix+"_modal_clone"),{handler:"clone",size:{x:this.options.modal.x,y:b},overlayOpacity:this.options.modal.overlayOpacity,classWindow:"pwebContactWindow "+this.options.prefix+"Window "+this.options.modal.classWindow,onOpen:function(){var f=this.modal.element.get("id");if(f&&f.indexOf(this.options.prefix)!=-1){if(this.Toggler){this.Toggler.addClass("active")}a(this.options.prefix+"_modal").inject(a("sbox-content")).setStyle("display","block")}}.bind(this),onClose:function(){var f=this.modal.element.get("id");if(f&&f.indexOf(this.options.prefix)!=-1){if(this.Toggler){this.Toggler.removeClass("active")}a(this.options.prefix+"_modal").setStyle("display","none").inject(a(this.options.prefix));this.resetForm()}}.bind(this)})}}},resetForm:function(){if(this.status==2){this.status=0;if(this.ButtonNew){this.ButtonNew.setStyle("display","none")}if(this.CharsLeft){this.CharsLeft.set("text",this.options.charsLimit)}this.Msg.set("html","").removeClass("success").removeClass("error");this.Form.reset();$$("#"+this.options.prefix+"_form .invalid").each(function(b){b.removeClass("invalid")});if(this.options.uploader){this.uploader.clearStoredFiles();this.attachments=[]}}},reposition:function(){var c=a(this.options.prefix).getTop();if(c>0){var b=window.getHeight();var d=b-c-this.BoxSize.y;if(d<0){d=Math.abs(d);if(d<=c){c-=d}else{c=-10}a(this.options.prefix).setStyle("top",c)}}},getToken:function(){this.a=new Request({url:this.options.baseUrl+(this.options.rootPath?"mod_pwebcontact_":"modules/mod_pwebcontact/")+"ajax.php",method:"get",data:{getToken:1},onComplete:function(b){try{b=JSON.decode(b)}catch(c){}if(typeof b.token!="undefined"){a(this.options.prefix+"_token").setProperty("name",b.token)}else{this.Msg.set("html",pwebContactJText.token).addClass("error");
11if(b){this.debugMsg(b)}}}.bind(this),onFailure:function(b){this.Msg.set("html","Request error: "+b.status+" "+b.statusText).addClass("error");this.debugMsg(b.responseText)}.bind(this),onException:function(c,b){this.Msg.set("html","Failed setting request header: "+c+": "+b).addClass("error")}.bind(this)}).send()},validateUploader:function(){var b=a(this.options.prefix+"_uploader-lbl");if(b.hasClass("required")){if(this.fileCount==0){b.addClass("invalid-files");return false}else{b.removeClass("invalid-files")}}return true},submitForm:function(c){c.stop();var b=true;if(this.options.uploader){b=this.validateUploader()}if(!document.formvalidator.isValid(this.Form)){b=false}if(!b){return false}if(this.status==1||this.status==3){return}else{if(this.status==2){this.resetForm();this.Msg.addClass("success").set("html",pwebContactJText.sent);return}}this.status=1;if(this.options.uploader&&this.fileCount){var d={};d.mid=this.options.id;d[a(this.options.prefix+"_token").get("name")]=1;this.uploader.setParams(d);this.uploader.uploadStoredFiles();return true}this.sendEmail()},sendEmail:function(){var b=a(this.options.prefix+"_form").toQueryString();if(this.attachments.length){b=b+"&attachments="+escape(this.attachments.join(","))}this.a=new Request({url:this.options.baseUrl+(this.options.rootPath?"mod_pwebcontact_":"modules/mod_pwebcontact/")+"ajax.php",method:"post",data:b,onRequest:function(){this.Msg.removeClass("success").removeClass("error").set("html",pwebContactJText.sending);new Element("img",{src:this.options.baseUrl+"media/mod_pwebcontact/images/loading.gif",width:16,height:16,border:0}).inject(this.Msg,"top")}.bind(this),onComplete:function(c){if(c!=null){var e=null;try{e=JSON.decode(c)}catch(d){var e=c.match(/{"status":[0-9]+,"msg":".+".*}/i);if(e&&e.length){c=c.replace(e,"");e=e[0];e=JSON.decode(e)}this.debugMsg(c)}if(e&&e.status==1){this.status=2;if(this.options.resetAfterSend){this.resetForm()}else{if(this.ButtonNew){this.ButtonNew.setStyle("display","")}}this.Msg.set("html",e.msg).addClass("success");this.fireEvent("onEmailSuccess");if(this.options.redirectURL){this.redirectOnSuccess()}}else{if(e&&e.status>2&&this.ButtonNew){this.status=2;this.ButtonNew.setStyle("display","")}if(e&&e.debug){this.debugMsg(e.debug)}this.Msg.set("html",e&&e.msg?e.msg:"Turn on debug and see logs!").addClass("error")}}}.bind(this),onFailure:function(c){this.Msg.set("html","Request error: "+c.status+" "+c.statusText).addClass("error");this.debugMsg(c.responseText);this.status=0}.bind(this),onException:function(d,c){this.Msg.set("html","Failed setting request header: "+d+": "+c).addClass("error");this.status=0}.bind(this)}).send()},redirectOnSuccess:function(){setTimeout("document.location='"+this.options.redirectURL+"'",this.options.redirectTimeout)},fixCalendar:function(){$$("#"+this.options.prefix+"_form img.calendar").each(function(b){b.addEvent("click",function(c){c.stop();if(!Browser.ie6){(function(){var d=$$("div.calendar");d[d.length-1].setStyle("position","fixed")}).delay(100)}})})},debugMsg:function(b){if(!this.options.debug){return}if(!this.logger){if(!(this.logger=a("pweb_logger"))){this.logger=new Element("div",{id:"pweb_logger"}).inject($$("body")[0]);new Element("a",{href:"#",text:"Close",events:{click:function(c){c.stop();a("pweb_logger").setStyle("display","none")}}}).inject(this.logger);this.logger.list=new Element("ul").inject(this.logger)}}this.logger.setStyle("display","");new Element("li").set("html",b.replace(new RegExp("\r\n","gi"),"<br/>")).inject(this.logger.list)}})})(document.id);
12JFormValidator.implement({isValid:function(e){var d=true;var f=e.getElements("fieldset").concat(Array.from(e.elements));for(var c=0;c<f.length;c++){if(this.validate(f[c])==false){d=false}}var a=[];for(var b in this.custom){if(this.custom.hasOwnProperty(b)){a.push(this.custom[b])}}a.each(function(g){if(g.exec()!=true){d=false}});return d}});
13Object.append(Browser.Features,{inputemail:(function(){var i=document.createElement("input");i.setAttribute("type","email");return i.type!=="text"&&!(Browser.ie&&Browser.version<9)})()});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.