Skip to content

Instantly share code, notes, and snippets.

@AlLoud
AlLoud / sso_login_freshdesk.php
Last active September 5, 2018 10:13 — forked from thanashyam/sso_login_freshdesk.php
SSO Login for Freshdesk support portal - PHP Sample Code (Updated)
<?php
define('FRESHDESK_SHARED_SECRET','____Place your Single Sign On Shared Secret here_____');
define('FRESHDESK_LOGIN_URL','http://{{your-account}}.freshdesk.com/login/sso/');
function getSSOUrl($strName, $strEmail) {
$timestamp = time();
$str_to_be_hashed = $strName . FRESHDESK_SHARED_SECRET . $strEmail . $timestamp;
return FRESHDESK_LOGIN_URL . '?' .
http_build_query([ // parameters urlencoded by default - www.faqs.org/rfcs/rfc1738.html
Identifiers.has(n)?this.replaceScopeCachedIdentifiers(e,n,r):this.replaceScopeIdentifiers(n,r),e)}},{key:"storeFunctionName",value:function(e,t,r){t?this.identifierObfuscatingReplacer.storeGlobalName(e.id.name,r):this.identifierObfuscatingReplacer.storeLocalName(e.id.name,r)}},{key:"replaceScopeCachedIdentifiers",value:function(e,t,r){var n=this.replaceableIdentifiers.get(t);if(n){var o=n.get(e.id.name);if(o)for(var a=o.length,i=0;i<a;i++){var s=o[i],c=this.identifierObfuscatingReplacer.replace(s.name,r);s.name=c.name}}}},{key:"replaceScopeIdentifiers",value:function(e,t){var r=this,n=new Map;l.replace(e,{enter:function(e,o){if(o&&y.NodeGuards.isReplaceableIdentifierNode(e,o)){var a=r.identifierObfuscatingReplacer.replace(e.name,t),i=a.name;if(e.name!==i)e.name=i;else{var s=n.get(e.name)||[];s.push(e),n.set(e.name,s)}}}}),this.replaceableIdentifiers.set(e,n)}}]),t}(m.AbstractNodeTransformer);g=s.__decorate([c.injectable(),s.__param(0,c.inject(u.ServiceIdentifiers.Factory__IIdentifierObfuscatingReplacer)),s.__