LDAP login erstellt
This commit is contained in:
parent
62b8152e16
commit
959b3b0e82
86
config/ldap.php
Normal file
86
config/ldap.php
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
<?php
|
||||||
|
// config/ldap.php
|
||||||
|
|
||||||
|
$LDAP_HOST = "ITFA-PROJ-SRV.ITFA-PROJ-DOM.local";
|
||||||
|
$LDAP_PORT = 389;
|
||||||
|
$LDAP_BASE_DN = "DC=ITFA-PROJ-DOM,DC=local";
|
||||||
|
$LDAP_UPN_SUFFIX = "@ITFA-PROJ-DOM.local";
|
||||||
|
$LDAP_NETBIOS_NAME = "ITFA-PROJ-DOM"; // falls man mal DOMAIN\user nutzen will
|
||||||
|
|
||||||
|
// einfacher Logger für LDAP
|
||||||
|
function ldap_log($message)
|
||||||
|
{
|
||||||
|
$logDir = dirname(__DIR__) . '/logs';
|
||||||
|
$logFile = $logDir . '/ldap.log';
|
||||||
|
|
||||||
|
if (!is_dir($logDir)) {
|
||||||
|
mkdir($logDir, 0770, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
$line = date('c') . " [LDAP] " . $message . PHP_EOL;
|
||||||
|
// KEIN Passwort loggen!
|
||||||
|
file_put_contents($logFile, $line, FILE_APPEND);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* LDAP-Login
|
||||||
|
* @param string $username SAM-Accountname ohne Domain
|
||||||
|
* @param string $password Klartext-Passwort (nicht loggen!)
|
||||||
|
* @param string|null $errorDetail wird mit technischem Fehlertext gefüllt
|
||||||
|
* @return resource|false LDAP-Verbindung bei Erfolg, sonst false
|
||||||
|
*/
|
||||||
|
function ldap_authenticate($username, $password, ?string &$errorDetail = null)
|
||||||
|
{
|
||||||
|
global $LDAP_HOST, $LDAP_PORT, $LDAP_UPN_SUFFIX;
|
||||||
|
|
||||||
|
$errorDetail = "";
|
||||||
|
|
||||||
|
if ($username === "" || $password === "") {
|
||||||
|
$errorDetail = "Username oder Passwort leer.";
|
||||||
|
ldap_log($errorDetail);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
$connection = @ldap_connect($LDAP_HOST, $LDAP_PORT);
|
||||||
|
|
||||||
|
if ($connection === false) {
|
||||||
|
$errorDetail = "Verbindung zu LDAP-Host '$LDAP_HOST:$LDAP_PORT' fehlgeschlagen.";
|
||||||
|
ldap_log($errorDetail);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Optionen setzen
|
||||||
|
ldap_set_option($connection, LDAP_OPT_PROTOCOL_VERSION, 3);
|
||||||
|
ldap_set_option($connection, LDAP_OPT_REFERRALS, 0);
|
||||||
|
|
||||||
|
//StartTLS
|
||||||
|
if (!@ldap_start_tls($connection)) {
|
||||||
|
$errNo = ldap_errno($connection);
|
||||||
|
$errStr = ldap_error($connection);
|
||||||
|
|
||||||
|
$errorDetail = "ldap_start_tls fehlgeschlagen (Fehler {$errNo}: {$errStr}).";
|
||||||
|
ldap_log($errorDetail);
|
||||||
|
|
||||||
|
ldap_unbind($connection);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// UPN-Login: user@domain
|
||||||
|
$bindRdn = $username . $LDAP_UPN_SUFFIX;
|
||||||
|
|
||||||
|
$bind = @ldap_bind($connection, $bindRdn, $password);
|
||||||
|
|
||||||
|
if ($bind === false) {
|
||||||
|
$errNo = ldap_errno($connection);
|
||||||
|
$errStr = ldap_error($connection);
|
||||||
|
|
||||||
|
$errorDetail = "Bind fehlgeschlagen für '$bindRdn' (Fehler $errNo: $errStr).";
|
||||||
|
ldap_log($errorDetail);
|
||||||
|
|
||||||
|
ldap_unbind($connection);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
ldap_log("Login erfolgreich für '$bindRdn'.");
|
||||||
|
return $connection;
|
||||||
|
}
|
||||||
@ -111,7 +111,7 @@
|
|||||||
data-parent="#accordionSidebar">
|
data-parent="#accordionSidebar">
|
||||||
<div class="bg-white py-2 collapse-inner rounded">
|
<div class="bg-white py-2 collapse-inner rounded">
|
||||||
<h6 class="collapse-header">Login Screens:</h6>
|
<h6 class="collapse-header">Login Screens:</h6>
|
||||||
<a class="collapse-item" href="login.html">Login</a>
|
<a class="collapse-item" href="login.php">Login</a>
|
||||||
<a class="collapse-item" href="register.html">Register</a>
|
<a class="collapse-item" href="register.html">Register</a>
|
||||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||||
<div class="collapse-divider"></div>
|
<div class="collapse-divider"></div>
|
||||||
@ -409,7 +409,7 @@
|
|||||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
<a class="btn btn-primary" href="login.php">Logout</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -110,7 +110,7 @@
|
|||||||
data-parent="#accordionSidebar">
|
data-parent="#accordionSidebar">
|
||||||
<div class="bg-white py-2 collapse-inner rounded">
|
<div class="bg-white py-2 collapse-inner rounded">
|
||||||
<h6 class="collapse-header">Login Screens:</h6>
|
<h6 class="collapse-header">Login Screens:</h6>
|
||||||
<a class="collapse-item" href="login.html">Login</a>
|
<a class="collapse-item" href="login.php">Login</a>
|
||||||
<a class="collapse-item" href="register.html">Register</a>
|
<a class="collapse-item" href="register.html">Register</a>
|
||||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||||
<div class="collapse-divider"></div>
|
<div class="collapse-divider"></div>
|
||||||
@ -403,7 +403,7 @@
|
|||||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
<a class="btn btn-primary" href="login.php">Logout</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -110,7 +110,7 @@
|
|||||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||||
<div class="bg-white py-2 collapse-inner rounded">
|
<div class="bg-white py-2 collapse-inner rounded">
|
||||||
<h6 class="collapse-header">Login Screens:</h6>
|
<h6 class="collapse-header">Login Screens:</h6>
|
||||||
<a class="collapse-item" href="login.html">Login</a>
|
<a class="collapse-item" href="login.php">Login</a>
|
||||||
<a class="collapse-item" href="register.html">Register</a>
|
<a class="collapse-item" href="register.html">Register</a>
|
||||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||||
<div class="collapse-divider"></div>
|
<div class="collapse-divider"></div>
|
||||||
@ -578,7 +578,7 @@
|
|||||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
<a class="btn btn-primary" href="login.php">Logout</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -110,7 +110,7 @@
|
|||||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||||
<div class="bg-white py-2 collapse-inner rounded">
|
<div class="bg-white py-2 collapse-inner rounded">
|
||||||
<h6 class="collapse-header">Login Screens:</h6>
|
<h6 class="collapse-header">Login Screens:</h6>
|
||||||
<a class="collapse-item" href="login.html">Login</a>
|
<a class="collapse-item" href="login.php">Login</a>
|
||||||
<a class="collapse-item" href="register.html">Register</a>
|
<a class="collapse-item" href="register.html">Register</a>
|
||||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||||
<div class="collapse-divider"></div>
|
<div class="collapse-divider"></div>
|
||||||
@ -572,7 +572,7 @@
|
|||||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
<a class="btn btn-primary" href="login.php">Logout</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -109,7 +109,7 @@
|
|||||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||||
<div class="bg-white py-2 collapse-inner rounded">
|
<div class="bg-white py-2 collapse-inner rounded">
|
||||||
<h6 class="collapse-header">Login Screens:</h6>
|
<h6 class="collapse-header">Login Screens:</h6>
|
||||||
<a class="collapse-item" href="login.html">Login</a>
|
<a class="collapse-item" href="login.php">Login</a>
|
||||||
<a class="collapse-item" href="register.html">Register</a>
|
<a class="collapse-item" href="register.html">Register</a>
|
||||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||||
<div class="collapse-divider"></div>
|
<div class="collapse-divider"></div>
|
||||||
@ -463,7 +463,7 @@
|
|||||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
<a class="btn btn-primary" href="login.php">Logout</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -49,7 +49,7 @@
|
|||||||
id="exampleInputEmail" aria-describedby="emailHelp"
|
id="exampleInputEmail" aria-describedby="emailHelp"
|
||||||
placeholder="Enter Email Address...">
|
placeholder="Enter Email Address...">
|
||||||
</div>
|
</div>
|
||||||
<a href="login.html" class="btn btn-primary btn-user btn-block">
|
<a href="login.php" class="btn btn-primary btn-user btn-block">
|
||||||
Reset Password
|
Reset Password
|
||||||
</a>
|
</a>
|
||||||
</form>
|
</form>
|
||||||
@ -58,7 +58,7 @@
|
|||||||
<a class="small" href="register.html">Create an Account!</a>
|
<a class="small" href="register.html">Create an Account!</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
<a class="small" href="login.html">Already have an account? Login!</a>
|
<a class="small" href="login.php">Already have an account? Login!</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -109,7 +109,7 @@
|
|||||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||||
<div class="bg-white py-2 collapse-inner rounded">
|
<div class="bg-white py-2 collapse-inner rounded">
|
||||||
<h6 class="collapse-header">Login Screens:</h6>
|
<h6 class="collapse-header">Login Screens:</h6>
|
||||||
<a class="collapse-item" href="login.html">Login</a>
|
<a class="collapse-item" href="login.php">Login</a>
|
||||||
<a class="collapse-item" href="register.html">Register</a>
|
<a class="collapse-item" href="register.html">Register</a>
|
||||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||||
<div class="collapse-divider"></div>
|
<div class="collapse-divider"></div>
|
||||||
@ -731,7 +731,7 @@
|
|||||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
<a class="btn btn-primary" href="login.php">Logout</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -1,3 +1,35 @@
|
|||||||
|
<?php
|
||||||
|
session_start();
|
||||||
|
require_once __DIR__ . '/../config/ldap.php';
|
||||||
|
|
||||||
|
$error = "";
|
||||||
|
|
||||||
|
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
|
||||||
|
var_dump($_POST);
|
||||||
|
$username = isset($_POST['username']) ? trim($_POST['username']) : "";
|
||||||
|
$password = isset($_POST['password']) ? $_POST['password'] : "";
|
||||||
|
|
||||||
|
$ldapConn = ldap_authenticate($username, $password);
|
||||||
|
|
||||||
|
if ($ldapConn === false) {
|
||||||
|
$error = "Anmeldung fehlgeschlagen. Benutzername oder Passwort falsch.";
|
||||||
|
} else {
|
||||||
|
// Optional: User-Infos aus AD lesen, z. B. displayName
|
||||||
|
// $result = ldap_search($ldapConn, $LDAP_BASE_DN, "(sAMAccountName=$username)", ["displayName"]);
|
||||||
|
// $entries = ldap_get_entries($ldapConn, $result);
|
||||||
|
|
||||||
|
$_SESSION['logged_in'] = true;
|
||||||
|
$_SESSION['username'] = $username;
|
||||||
|
// $_SESSION['displayName'] = $entries[0]['displayname'][0] ?? $username;
|
||||||
|
|
||||||
|
ldap_unbind($ldapConn);
|
||||||
|
|
||||||
|
header("Location: dashboard.php");
|
||||||
|
exit();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
?>
|
||||||
|
|
||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html lang="en">
|
<html lang="en">
|
||||||
|
|
||||||
@ -41,15 +73,20 @@
|
|||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
<h1 class="h4 text-gray-900 mb-4">Welcome Back!</h1>
|
<h1 class="h4 text-gray-900 mb-4">Welcome Back!</h1>
|
||||||
</div>
|
</div>
|
||||||
<form class="user">
|
<?php if ($error !== ""): ?>
|
||||||
|
<div class="alert alert-danger" role="alert">
|
||||||
|
<?php echo htmlspecialchars($error); ?>
|
||||||
|
</div>
|
||||||
|
<?php endif; ?>
|
||||||
|
<form class="user" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<input type="email" class="form-control form-control-user"
|
<input type="text" name="username" class="form-control form-control-user"
|
||||||
id="exampleInputEmail" aria-describedby="emailHelp"
|
id="username" aria-describedby="usernameHelp"
|
||||||
placeholder="Enter Email Address...">
|
placeholder="Enter Username...">
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<input type="password" class="form-control form-control-user"
|
<input type="password" name="password" class="form-control form-control-user"
|
||||||
id="exampleInputPassword" placeholder="Password">
|
id="password" placeholder="Password">
|
||||||
</div>
|
</div>
|
||||||
<div class="form-group">
|
<div class="form-group">
|
||||||
<div class="custom-control custom-checkbox small">
|
<div class="custom-control custom-checkbox small">
|
||||||
@ -58,16 +95,9 @@
|
|||||||
Me</label>
|
Me</label>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<a href="index.html" class="btn btn-primary btn-user btn-block">
|
<button type="submit" class="btn btn-primary btn-user btn-block">
|
||||||
Login
|
Anmelden
|
||||||
</a>
|
</button>
|
||||||
<hr>
|
|
||||||
<a href="index.html" class="btn btn-google btn-user btn-block">
|
|
||||||
<i class="fab fa-google fa-fw"></i> Login with Google
|
|
||||||
</a>
|
|
||||||
<a href="index.html" class="btn btn-facebook btn-user btn-block">
|
|
||||||
<i class="fab fa-facebook-f fa-fw"></i> Login with Facebook
|
|
||||||
</a>
|
|
||||||
</form>
|
</form>
|
||||||
<hr>
|
<hr>
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
@ -61,7 +61,7 @@
|
|||||||
id="exampleRepeatPassword" placeholder="Repeat Password">
|
id="exampleRepeatPassword" placeholder="Repeat Password">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<a href="login.html" class="btn btn-primary btn-user btn-block">
|
<a href="login.php" class="btn btn-primary btn-user btn-block">
|
||||||
Register Account
|
Register Account
|
||||||
</a>
|
</a>
|
||||||
<hr>
|
<hr>
|
||||||
@ -77,7 +77,7 @@
|
|||||||
<a class="small" href="forgot-password.html">Forgot Password?</a>
|
<a class="small" href="forgot-password.html">Forgot Password?</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
<a class="small" href="login.html">Already have an account? Login!</a>
|
<a class="small" href="login.php">Already have an account? Login!</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -112,7 +112,7 @@
|
|||||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||||
<div class="bg-white py-2 collapse-inner rounded">
|
<div class="bg-white py-2 collapse-inner rounded">
|
||||||
<h6 class="collapse-header">Login Screens:</h6>
|
<h6 class="collapse-header">Login Screens:</h6>
|
||||||
<a class="collapse-item" href="login.html">Login</a>
|
<a class="collapse-item" href="login.php">Login</a>
|
||||||
<a class="collapse-item" href="register.html">Register</a>
|
<a class="collapse-item" href="register.html">Register</a>
|
||||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||||
<div class="collapse-divider"></div>
|
<div class="collapse-divider"></div>
|
||||||
@ -901,7 +901,7 @@
|
|||||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
<a class="btn btn-primary" href="login.php">Logout</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -109,7 +109,7 @@
|
|||||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||||
<div class="bg-white py-2 collapse-inner rounded">
|
<div class="bg-white py-2 collapse-inner rounded">
|
||||||
<h6 class="collapse-header">Login Screens:</h6>
|
<h6 class="collapse-header">Login Screens:</h6>
|
||||||
<a class="collapse-item" href="login.html">Login</a>
|
<a class="collapse-item" href="login.php">Login</a>
|
||||||
<a class="collapse-item" href="register.html">Register</a>
|
<a class="collapse-item" href="register.html">Register</a>
|
||||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||||
<div class="collapse-divider"></div>
|
<div class="collapse-divider"></div>
|
||||||
@ -503,7 +503,7 @@
|
|||||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
<a class="btn btn-primary" href="login.php">Logout</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -109,7 +109,7 @@
|
|||||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||||
<div class="bg-white py-2 collapse-inner rounded">
|
<div class="bg-white py-2 collapse-inner rounded">
|
||||||
<h6 class="collapse-header">Login Screens:</h6>
|
<h6 class="collapse-header">Login Screens:</h6>
|
||||||
<a class="collapse-item" href="login.html">Login</a>
|
<a class="collapse-item" href="login.php">Login</a>
|
||||||
<a class="collapse-item" href="register.html">Register</a>
|
<a class="collapse-item" href="register.html">Register</a>
|
||||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||||
<div class="collapse-divider"></div>
|
<div class="collapse-divider"></div>
|
||||||
@ -505,7 +505,7 @@
|
|||||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
<a class="btn btn-primary" href="login.php">Logout</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -109,7 +109,7 @@
|
|||||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||||
<div class="bg-white py-2 collapse-inner rounded">
|
<div class="bg-white py-2 collapse-inner rounded">
|
||||||
<h6 class="collapse-header">Login Screens:</h6>
|
<h6 class="collapse-header">Login Screens:</h6>
|
||||||
<a class="collapse-item" href="login.html">Login</a>
|
<a class="collapse-item" href="login.php">Login</a>
|
||||||
<a class="collapse-item" href="register.html">Register</a>
|
<a class="collapse-item" href="register.html">Register</a>
|
||||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||||
<div class="collapse-divider"></div>
|
<div class="collapse-divider"></div>
|
||||||
@ -491,7 +491,7 @@
|
|||||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
<a class="btn btn-primary" href="login.php">Logout</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@ -109,7 +109,7 @@
|
|||||||
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
<div id="collapsePages" class="collapse" aria-labelledby="headingPages" data-parent="#accordionSidebar">
|
||||||
<div class="bg-white py-2 collapse-inner rounded">
|
<div class="bg-white py-2 collapse-inner rounded">
|
||||||
<h6 class="collapse-header">Login Screens:</h6>
|
<h6 class="collapse-header">Login Screens:</h6>
|
||||||
<a class="collapse-item" href="login.html">Login</a>
|
<a class="collapse-item" href="login.php">Login</a>
|
||||||
<a class="collapse-item" href="register.html">Register</a>
|
<a class="collapse-item" href="register.html">Register</a>
|
||||||
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
<a class="collapse-item" href="forgot-password.html">Forgot Password</a>
|
||||||
<div class="collapse-divider"></div>
|
<div class="collapse-divider"></div>
|
||||||
@ -485,7 +485,7 @@
|
|||||||
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
<div class="modal-body">Select "Logout" below if you are ready to end your current session.</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
<button class="btn btn-secondary" type="button" data-dismiss="modal">Cancel</button>
|
||||||
<a class="btn btn-primary" href="login.html">Logout</a>
|
<a class="btn btn-primary" href="login.php">Logout</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user