Files
hesk-docker/hesk/theme/hesk3/customer/js/hesk_functions.min.js
Luke Tainton 39782c53ef Initial commit
Signed-off-by: Luke Tainton <luke@tainton.uk>
2020-02-26 12:23:50 +00:00

9 lines
3.4 KiB
JavaScript

var HESK_FUNCTIONS;if(!HESK_FUNCTIONS){HESK_FUNCTIONS={}}
var heskKBfailed=!1;var heskKBquery='';HESK_FUNCTIONS.getKbSearchSuggestions=function($input,callback){var d=document.form1;var s=$input.val();if(s!==''&&(heskKBquery!==s||heskKBfailed===!0))
{var params="q="+encodeURIComponent(s);heskKBquery=s;$.ajax({url:'suggest_articles.php',method:'POST',dataType:'json',contentType:'application/x-www-form-urlencoded',data:params,success:function(data){heskKBfailed=!1;callback(data)},error:function(jqXHR,status,err){console.error(err);heskKBfailed=!0}})}
setTimeout(function(){HESK_FUNCTIONS.getKbSearchSuggestions($input,callback)},2000)};HESK_FUNCTIONS.getKbTicketSuggestions=function($subject,$message,callback){var d=document.form1;var s=$subject.val();var m=$message.val();var query=s+" "+m;if(s!==''&&m!==''&&(heskKBquery!==query||heskKBfailed===!0))
{var params="q="+encodeURIComponent(query);heskKBquery=query;$.ajax({url:'suggest_articles.php',method:'POST',dataType:'json',contentType:'application/x-www-form-urlencoded',data:params,success:function(data){heskKBfailed=!1;callback(data)},error:function(jqXHR,status,err){console.error(err);heskKBfailed=!0}})}
setTimeout(function(){HESK_FUNCTIONS.getKbTicketSuggestions($subject,$message,callback)},2000)};HESK_FUNCTIONS.openWindow=function(PAGE,HGT,WDT){var heskWin=window.open(PAGE,"Hesk_window","height="+HGT+",width="+WDT+",menubar=0,location=0,toolbar=0,status=0,resizable=1,scrollbars=1");heskWin.focus()};HESK_FUNCTIONS.suggestEmail=function(emailField,displayDiv,isAdmin,allowMultiple){var email=document.getElementById(emailField).value;var element=document.getElementById(displayDiv);var path=isAdmin?'../suggest_email.php':'suggest_email.php';if(email!==''){var params="e="+encodeURIComponent(email)+"&ef="+encodeURIComponent(emailField)+"&dd="+encodeURIComponent(displayDiv);if(allowMultiple){params+="&am=1"}
var responseFormat='<div class="alert warning" id="{0}" style="display: block">'+'<div class="alert__inner">'+'<p>'+'<p>{1}</p>'+'<a class="link" href="javascript:" onclick="HESK_FUNCTIONS.applyEmailSuggestion(\'{0}\', \''+emailField+'\', \'{2}\', \'{3}\')">'+'{4}'+'</a> | '+'<a class="link" href="javascript:void(0);" onclick="document.getElementById(\'{0}\').style.display=\'none\';">'+'{5}'+'</a>'+'</p>'+'</div>'+'</div>';$.ajax({url:path,method:'POST',dataType:'json',contentType:'application/x-www-form-urlencoded',data:params,success:function(data){var $displayDiv=$('#'+displayDiv);$displayDiv.html('');if(!data.length){$displayDiv.hide()}else{$displayDiv.show()}
$.each(data,function(){$displayDiv.append(responseFormat.replace(/\{0}/g,this.id).replace(/\{1}/g,this.suggestText).replace(/\{2}/g,this.originalAddress).replace(/\{3}/g,this.formattedSuggestedEmail).replace(/\{4}/g,this.yesResponseText).replace(/\{5}/g,this.noResponseText))})},error:function(jqXHR,status,err){console.error(err)}})}};HESK_FUNCTIONS.applyEmailSuggestion=function(emailTypoId,emailField,originalEmail,formattedSuggestedEmail){var eml=document.getElementById(emailField).value;var regex=new RegExp(originalEmail,"gi");document.getElementById(emailField).value=eml.replace(regex,formattedSuggestedEmail);document.getElementById(emailTypoId).style.display='none'};HESK_FUNCTIONS.rate=function(url,elementId){if(url.length===0){return!1}
var element=document.getElementById(elementId);$.ajax({url:url,method:'GET',dataType:'text',success:function(resp){element.innerHTML=resp},error:function(jqXHR,statusText,err){console.error(err)}})}