[Frage] Passwort-Abfrage als Click-Action

  • 0 x
    18 Beiträge
    0 Hilfreiche Beiträge
    23. 06. 2021, 11:03

    Hallo zusammen,

    ich möchte gerne im Frontend eine Passwort-Abfrage erzwingen.

    Ich habe einen Button und wenn ich diesen anklicke, soll er mich nach dem Passwort des eingeloggten Benutzers fragen. Dies kann ich ja mit dem "Password Hashing" und dem in der Datenbank gesetzten Passwort des FE_Users vergleichen. Stimmt der Hashwert überein, soll er mir jQuery Code ausführen.

    Weiß allerdings nicht so recht, was ich im Controller meiner Extension und im Frontend genau eintragen muss, damit dies wie gewünscht funktioniert.

    Vielleicht könnt ihr mir helfen.

    Besten Dank.

    Tags: Extbase

  • 1
  • 0 x
    3231 Beiträge
    151 Hilfreiche Beiträge
    23. 06. 2021, 14:34

    Grobe Herangehensweise:
    - Klick fordert zur Passworteingabe auf (z.B. via JS einblenden)
    - Absenden des Passwortes startet Ajax-request zur Überprüfung
    - Je nach Response entsprechenden JS-Code ausführen.

    Ist IMO weniger was im Controller, sondern vielmehr im Template bzw. JavaScript.

  • 0 x
    18 Beiträge
    0 Hilfreiche Beiträge
    23. 06. 2021, 16:10

    Moin,

    dank dir schonmal.

    Punkt 1 und 3 ist im Moment schon umgesetzt. Sehr rudimentär wie folgt:
    [code]jQuery(function($){
    $('.actionButton').click(function(){
    var pass = 'Test';
    password=prompt('Bitte Adminpasswort eingeben')

    if (password==pass) {
    //do this
    } else {
    //do this
    }
    });
    });
    [/code]
    Wie bekomme ich es von dort aus nun hin, dass er nach dem in der DB gespeicherten Passwort des eingeloggten FE_Users nachguckt und eben nicht das fest hinterlegte Passwort im jQuery?

    Viele Grüße

  • 0 x
    3231 Beiträge
    151 Hilfreiche Beiträge
    23. 06. 2021, 16:37

    Bin mehr im Backend zuhause,w eniger im Frontend... :-/

    Das Passwort müsste via Ajax an den Server gesendet werden:
    https://api.jquery.com/jquery.ajax/
    ...und dann je nach response eben weiteres Javascript ausgeführt werden.

  • 1