Beispiel #1
0
<?php

ini_set('error_reporting', 'E_ALL');
ini_set('display_errors', 1);
require dirname(__FILE__) . '/server.class.php';
$server = new Sso_Server();
$hash = md5($_REQUEST['key']);
$cookie = $_REQUEST['cookie'];
$action = $_REQUEST['action'];
$results = array();
switch ($action) {
    case 'login':
        //a user logs in
        $email = isset($_REQUEST['email']) ? $_REQUEST['email'] : null;
        $account = $server->updateAccount($hash, $cookie, 1, $email);
        break;
    case 'logout':
        //a user logs out
        $email = isset($_REQUEST['email']) ? $_REQUEST['email'] : null;
        $account = $server->updateAccount($hash, $cookie, 0, $email);
        break;
    case 'loggedin':
        //check if user is logged in
        $account = $server->getAccount($hash, $cookie);
        if ($account === false) {
            $results['loggedin'] = false;
        } else {
            $results['loggedin'] = $account['loggedin'];
            $results['email'] = $account['email'];
        }
        break;
Beispiel #2
0
<?php

require dirname(__FILE__) . '/server.class.php';
$server = new Sso_Server();
$loggedin = 0;
$hash = $_REQUEST['hash'];
if (isset($_COOKIE['cdsso'])) {
    $cookie = $_COOKIE['cdsso'];
    $account = $server->getAccount($hash, $cookie);
    if ($account === false) {
        $server->createAccount($hash, $cookie);
    } else {
        $loggedin = $account['loggedin'];
    }
} else {
    $cookie = md5(__FILE__ . $hash . microtime()) . date('YmdHis');
    $server->createAccount($hash, $cookie);
    setcookie('cdsso', $cookie, time() + 3600 * 2);
}
$message = json_encode(array('cookie' => $cookie, 'loggedin' => $loggedin));
?>
<html>
<head>
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<script type="text/javascript">
	if ( window.self !== window.top ) {
            window.onload = function(){
                parent.socket.postMessage('<?php 
echo $message;
?>
');