ProcessWire - User Login / Logout: Unterschied zwischen den Versionen

Aus Wikizone
Wechseln zu: Navigation, Suche
Zeile 26: Zeile 26:
 
?>
 
?>
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 +
== Frontend passwortgeschützter interner Bereich für Besucher ==
 +
Du benötigst
 +
* mindestens eine Usergruppe mit User
 +
* die Loginseite redirectet User ohne Backendberechtigungen immer auf das Frontend.
 +
* Dateien vor direktem Download schützen. ProcessWire bietet hierfür eine integrierte Funktionalität: [[Web_-_Protecting_Files#ProcessWire_-_Dateien_sch.C3.BCtzen|https://wiki.stephanschlegel.de/index.php?title=Web_-_Protecting_Files#ProcessWire_-_Dateien_sch.C3.BCtzen]]
 +
 +
== PageProtector Module ==
 +
Von Adrian
 +
https://processwire.com/modules/page-protector/

Version vom 30. September 2022, 12:56 Uhr

Beispiel: Einfacher Logout In _main.php

// Handle Logout Parameter (before any output)
if($input->get->logout == 1) {
  $session->logout();
  $session->redirect("./"); // start them on a fresh page, or redirect to another
}
//... 

<?php
  if($user->isLoggedin()) { // user is logged in
    //echo "<a href='{$config->urls->admin}login/logout/'>Logout ($user->name)</a>"; // logout and go to normal pw backend login page
    echo "<a href='{$homepage->url}?logout=1'>Logout ($user->name)</a>"; // logout and go to homepage (needs handling of logout parameter see top)
  } else {
    // if user not logged in, show a login link
    //echo "<a href='{$config->urls->admin}'>∆</a>";
      echo "&nbsp;";
  }
  // output an "Edit" link if this page happens to be editable by the current user
  if($page->editable()) echo "&nbsp;<span class='edit'><a href='$page->editUrl'>Seite bearbeiten</a></span>";
?>

Frontend passwortgeschützter interner Bereich für Besucher

Du benötigst

PageProtector Module

Von Adrian

https://processwire.com/modules/page-protector/