
(function($j){Code.registerNamespace('Website.Components');Website.Components.EmailAFriend=Code.Class.extend({_clientId:null,_serverControlId:null,_jUIDialogContent:null,_jUIDialog:null,_jLoader:null,_isLoaderVisible:false,_jFriendName:null,_jFriendEmail:null,_jYourName:null,_jYourEmail:null,init:function(){var self=this;},onSubmit:function(){var self=this;self._jFriendName=self._jUIDialog.find('input.friend-name');self._jFriendEmail=self._jUIDialog.find('input.friend-email');self._jYourName=self._jUIDialog.find('input.your-name');self._jYourEmail=self._jUIDialog.find('input.your-email');var passedValidation=true;if(!self._validateIsNotEmpty(self._jFriendName)){passedValidation=false;}
if(!self._validateIsEmail(self._jFriendEmail)){passedValidation=false;}
if(!self._validateIsNotEmpty(self._jYourName)){passedValidation=false;}
if(!self._validateIsEmail(self._jYourEmail)){passedValidation=false;}
if(!passedValidation){return false;}
self._showLoader();setTimeout(function(){self._sendDetails();},500);return true;},_showDialog:function(anchorEl){var self=this;if(self._jUIDialog.length<1)
return false;self._jUIDialog.show();self._jUIDialog.dialog('open');return false;},_showLoader:function(){var self=this;if(self._jLoader==null){var uiDialog=$j('div.ui-dialog');var loaderImage=Code.resolveUrl("~/_Client/Images/Global/AjaxLoaderLrg.gif");var ajaxLoader=$j('<div><img src="'+loaderImage+'" alt="" /></div>');self._jLoader=ajaxLoader;self._jLoader.css({opacity:0.65,position:'absolute',top:'85px',left:'220px',padding:'2px',width:uiDialog.width()+'px',height:uiDialog.height()+'px'});}
$j('.js-inputfields',uiDialog).fadeOut('fast',function(){self._jLoader.fadeIn('fast');});self._jUIDialog.dialog('option','resizable',false);self._jLoader.appendTo(self._jUIDialog);self._jLoader.unbind('click').click(function(){return false;});self._isLoaderVisible=true;},_hideLoader:function(){var self=this;if(self._jLoader!=null){self._jUIDialog.dialog('option','resizable',true);self._jLoader.remove();}
self._isLoaderVisible=false;},_sendDetails:function(){var self=this;var postBackVals=self._jFriendName[0].id.replace(/_/g,'$')+'='+escape(self._jFriendName.val())+'&'+
self._jFriendEmail[0].id.replace(/_/g,'$')+'='+escape(self._jFriendEmail.val())+'&'+
self._jYourName[0].id.replace(/_/g,'$')+'='+escape(self._jYourName.val())+'&'+
self._jYourEmail[0].id.replace(/_/g,'$')+'='+escape(self._jYourEmail.val());ajaxAide.raisePageCallBack('aspnetForm','DoEmail',postBackVals,function(response){self._onAjaxResponse(response);},self._serverControlId);},_onAjaxResponse:function(response){var self=this;var jMessageBox=$j('<div class="message"><div>'+response.value+'</div></div>');jMessageBox.css({position:'absolute',top:'50px',left:'0px',width:self._jUIDialog.width()+'px',height:self._jUIDialog.height()+'px'});jMessageBox.appendTo(self._jUIDialog);self._jUIDialogContent.remove();self._jUIDialog.dialog('option','buttons',{"Close":function(){$(this).dialog("close");}});self._hideLoader();},_validateIsNotEmpty:function(jInput){jInput.val(Code.String.trim(jInput.val()));if(jInput.val().length<1){jInput.addClass('validation-failed');return false;}
else{jInput.removeClass('validation-failed');return true;}},_validateIsEmail:function(jInput){jInput.val(Code.String.trim(jInput.val()));if(jInput.val().length<1){jInput.addClass('validation-failed');return false;}
else{if(/\w{1,}[@][\w\-]{1,}([.]([\w\-]{1,})){1,3}$/.test(jInput.val())){jInput.removeClass('validation-failed');return true;}
else{jInput.addClass('validation-failed');return false;}}},setControlIds:function(clientId,serverControlId){var self=this;self._clientId=clientId;self._serverControlId=serverControlId;},_buildDialog:function(){var self=this;self._jUIDialog=$j('<div id="js-UIDialog" class="dialog-email-a-friend"></div>');self._jUIDialogContent=$j('div.email-a-friend div.js-inputfields');self._jUIDialogContent.appendTo(self._jUIDialog);self._jUIDialog.appendTo('body');},onReady:function(){var self=this;var jContainer=$j('div.email-a-friend');if(jContainer.length<1){return;}
var jLinks=$j('li a.js-email-friend');if(jLinks.length<1){return;}
jLinks.unbind('click').click(function(){return self._showDialog(this);});self._buildDialog();jContainer.remove();var uiTitle=jContainer.find('h3').text();self._jUIDialog.dialog({autoOpen:false,width:460,height:210,resizable:false,modal:true,title:uiTitle,buttons:{'Submit':function(){self.onSubmit();},'Cancel':function(){$j(this).dialog('close');}}});}});Website.Components.EmailAFriend=new Website.Components.EmailAFriend();$j().ready(function(){Website.Components.EmailAFriend.onReady();});})(jQuery);