Exemple #1
0
function sso_login($vars)
{
    if (!isset($_SESSION['adminid']) && isset($vars['userid']) && ($userId = $vars['userid'])) {
        $sql = "SELECT * FROM `tblclients` WHERE `id`='" . $userId . "'";
        if (($result = full_query($sql)) && ($data = mysql_fetch_array($result))) {
            $sso = new sso_connect();
            $result = $sso->connect('login', array('firstname' => $data['firstname'], 'lastname' => $data['lastname'], 'email' => $data['email']));
        }
    }
}
    function frame($redirect, $loginUrl)
    {
        $content = '';
        $target = sso_connect::url() . 'auth.php?hash=' . sso_connect::hash();
        $remote = sso_connect::url() . 'auth_helper.php?url=' . urlencode($target);
        $remoteSwf = 'http://23dbd2b813a5bbdcf94f-ad7ae67fe93983be12b9863528b62e99.r9.cf1.rackcdn.com/easyxdm.swf';
        $content = '<div id="sso-frame-container" style="display:block"></div>';
        $content .= '<script type="text/javascript">';
        $content .= 'jQuery(document).ready(function($) {
		new easyXDM.Socket({
		    remote: "' . $remote . '",
	    	swf: "' . $remoteSwf . '",
	    	container: document.getElementById("sso-frame-container"),
	    	onMessage: function(message, origin){
		    	var server=jQuery.parseJSON(message);
		    	if (cdsso.debug==1) console.log(server);
		    	if (jQuery.cookie("cdsso") != server.cookie) {
		    		jQuery.removeCookie("cdsso");
		    		jQuery.cookie("cdsso", server.cookie, { expires: 2, path: "/" });
		    	}
		    	if (jQuery.cookie("cdssoli") != server.loggedin) {
		    		jQuery.removeCookie("cdssoli");
		    		jQuery.cookie("cdssoli", server.loggedin, { expires: 2, path: "/" });
		    	}
		    	if (cdsso.debug==1) console.log(cdsso);
		    	if ((server.loggedin == 0) && (cdsso.loggedin == 1)) window.location=cdsso.logouturl;
		    	if ((cdsso.loggedin == 0) && (server.loggedin == 1) && (cdsso.invalidate == 0)) window.location=cdsso.loginurl;
	    	}
		});
	});';
        $content .= 'var cdsso={};';
        $content .= 'cdsso.loggedin="' . intval(sso_connect::is_user_logged_in()) . '";';
        $content .= 'cdsso.loginurl="' . $loginUrl . '";';
        $content .= 'cdsso.logouturl="' . sso_connect::logout_url($redirect) . '";';
        $content .= 'cdsso.invalidate="' . sso_connect::invalidate() . '";';
        $content .= 'cdsso.debug="' . sso_connect::debug() . '";';
        $content .= '</script>';
        return $content;
    }