function auth($cmd = 'auth', $username = '', $password = '')
{
    if (XOX_DEBUG_MODE) {
        echo "auth({$cmd},{$username},{$password})<br>\n";
    }
    $authenticated = false;
    if ($cmd == 'logout') {
        $authenticated = false;
    } elseif ($cmd == 'login') {
        // arrive from login form
        $GLOBALS['user'] = new cUser($username);
        $authenticated = $GLOBALS['user']->validatePassword($password);
    } elseif ($cmd == 'lost') {
        // forgot password
        $tmp_user = new cUser($username);
        if (!empty($tmp_user->email)) {
            return array('email' => $tmp_user->email, 'password' => $tmp_user->generatePassword(), 'displayname' => isset($tmp_user->displayname) ? $tmp_user->displayname : '');
        } else {
            return false;
        }
        $authenticated = false;
    } elseif (isset($_SESSION['user'])) {
        $GLOBALS['user'] = $_SESSION['user'];
        if (is_obj($GLOBALS['user'], 'cUser')) {
            if ($username == $GLOBALS['user']->getUsername() && !empty($password)) {
                $authenticated = $GLOBALS['user']->validatePassword($password);
            } else {
                $authenticated = true;
            }
        }
    }
    if ($authenticated) {
        $_SESSION['user'] = $GLOBALS['user'];
        $GLOBALS['user_name'] = !empty($GLOBALS['user']->displayname) ? $GLOBALS['user']->displayname : $GLOBALS['user']->username;
        $GLOBALS['user_email'] = $GLOBALS['user']->email;
        $GLOBALS['user_rights'] = $GLOBALS['user']->getRights();
    } else {
        unset($_SESSION['user']);
        $GLOBALS['user'] = '';
        $GLOBALS['user_name'] = '';
        $GLOBALS['user_email'] = '';
        $GLOBALS['user_rights'] = array();
    }
    // return authentication succeeded flag
    return is_obj($GLOBALS['user'], 'cUser') && $GLOBALS['user']->isAuthenticated();
}
function amr_show_in_events_timezones(&$e)
{
    // only change at last minute before display,
    //else you may mess up ordering and recurring calculations
    global $amr_options;
    var_dump($amr_options);
    if (!empty($e['timezone'])) {
        // do we have an event timezone stored ?
        if (is_obj($e['timezone'])) {
            //$e[] //*** amr
        }
    }
    return $e;
}