if ($sessionRenewId && $forceAuthn) {
        $query['renewId'] = $sessionRenewId;
    }
    if (isset($_REQUEST['service'])) {
        $query['service'] = $_REQUEST['service'];
    }
    if (isset($_REQUEST['renew'])) {
        $query['renew'] = $_REQUEST['renew'];
    }
    if (isset($_REQUEST['gateway'])) {
        $query['gateway'] = $_REQUEST['gateway'];
    }
    if (array_key_exists('language', $_GET)) {
        $query['language'] = is_string($_GET['language']) ? $_GET['language'] : null;
    }
    $returnUrl = SimpleSAML\Utils\HTTP::getSelfURLNoQuery() . '?' . http_build_query($query);
    $params = array('ForceAuthn' => $forceAuthn, 'isPassive' => $isPassive, 'ReturnTo' => $returnUrl);
    if (isset($_GET['entityId'])) {
        $params['saml:idp'] = $_GET['entityId'];
    }
    if (isset($idpList)) {
        if (sizeof($idpList) > 1) {
            $params['saml:IDPList'] = $idpList;
        } else {
            $params['saml:idp'] = $idpList[0];
        }
    }
    $as->login($params);
}
$sessionExpiry = $as->getAuthData('Expire');
if (!is_array($sessionTicket) || $forceAuthn) {