<%@language = "javascript" %>
<% /*
     $Revision$
     $Id$

    File:           prs_perslid_clear_sessions.asp
    Description:    Wis alle bewaarde sessies voor de huidige gebruiker
    Parameters:
    Context:        Iemand is zijn mobieltje verloren en wil inloggen onmogelijk maken
    Note:           We maken geen onderscheid naar 'Onthoud mij' in het inlogscherm
                    of PDA's die de QR-code hebben gescanned. Alles wissen.
                    Let op: als een browser nog open staat blijft die sessie wel geldig
                            maar die wordt wel ongeldig na een nachtelijke recycle
*/
var JSON_Result = true;
%>

<!--#include file="../Shared/common.inc"-->
<!--#include file="../Shared/json2.js" -->
<%
protectRequest.validateToken();

var theUser_key = getQParamInt("prs_key", user_key);

if (theUser_key != user_key)
{
    var xfunc = user.func_enabled("FAC", null, null, theUser_key, null, true); // laatste true: isOptional
    user.auth_required_or_abort(xfunc.canWrite("WEB_PRSSYS") || xfunc.canWrite("WEB_FACMGT"))
}

var sql = "DELETE FROM fac_session"
        + " WHERE prs_perslid_key = " + theUser_key
        + "   AND fac_session_sessionid_hash <> fac.makehash(" + safe.quoted_sql(Session("FACSESSIONID")) + ")";
Oracle.Execute(sql);
// Deze ook weg
var sql = "DELETE FROM fac_bookmark"
        + " WHERE fac_bookmark_naam IN ('PRS password reset', 'PRS QR code indentificatie')"
        + "   AND prs_perslid_key = " + user_key;
Oracle.Execute(sql);

// if (theUser_key == user_key)
//  doLogin(user_key); is dit logisch? Neen, je ASPFIX verandert dan en Logoff werkt niet meer

var result = { success: true, message: L("lcl_qrc_auth_cleared") };

Response.Write(JSON.stringify(result));
Response.End;
%>