3 require_once "../common.php";
6 $redirect = (isset($_GET['redirect'])) ? $_GET['redirect'] : BASE_URL
;
8 if (!empty($_GET['logout']))
10 if (!isset($_SESSION['id']))
11 $failmsg = "Nothing to logout from";
19 if ($_POST['username'] && $_POST['password'])
24 $user = new PanelUser($_POST['username']);
26 /* not being too informative with the login error in case of attackers */
29 $failmsg = "Incorrect login";
31 else if ($user->password_verify($_POST['password']))
33 $_SESSION['id'] = $user->id
;
34 header('Location: ' . $redirect);
35 $user->add_meta("last_login", date("Y-m-d m:i:s"));
39 $failmsg = "Incorrect login";
44 $failmsg = "Couldn't log you in: Missing credentials";
49 <!-- Latest compiled
and minified CSS
-->
50 <link rel
="stylesheet" href
="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/css/bootstrap.min.css">
52 <!-- jQuery library
-->
53 <script src
="https://cdn.jsdelivr.net/npm/jquery@3.6.1/dist/jquery.slim.min.js"></script
>
56 <script src
="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js"></script
>
58 <!-- Latest compiled JavaScript
-->
59 <script src
="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.bundle.min.js"></script
>
61 <!-- Font Awesome icons
-->
62 <link rel
="stylesheet" href
="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.2.1/css/all.min.css">
64 <script src
="<?php echo BASE_URL; ?>js/unrealircd-admin.js"></script
>
65 <title
>UnrealIRCd Panel
</title
>
66 <link rel
="icon" type
="image/x-icon" href
="<?php echo BASE_URL; ?>img/favicon.ico">
67 <link href
="<?php echo BASE_URL; ?>css/unrealircd-admin.css" rel
="stylesheet">
70 $
(document
).ready(function(){
71 $
("#loginModal").modal({backdrop
: 'static', keyboard
: false}, 'show');
75 <body role
="document">
76 <div
class="container-fluid">
77 <form method
="post" action
="index.php?redirect=<?php echo $redirect; ?>">
78 <div
class="modal" id
="loginModal" data
-backdrop
="static" data
-keyboard
="false" tabindex
="-1" aria
-labelledby
="loginModal" aria
-hidden
="false"></a
>
79 <div
class="modal-dialog modal-dialog-centered">
80 <div
class="modal-content">
81 <div
class="modal-header" style
="margin: 0 auto;">
82 <h3
class="modal-title" id
="loginModaltitle"><img src
="<?php echo BASE_URL; ?>img/favicon.ico"> Log in to
use Admin Panel
</h3
>
84 <div
class="modal-body">
85 <div
class="form-group">
87 if (isset($failmsg)) Message
::Fail($failmsg);
89 Message
::Success("You have been logged out");
92 <div
class="input-group mb-3">
93 <div
class="input-group-prepend">
94 <span
class="input-group-text" id
="basic-addon1"><i
class="fa-solid fa-user"></i
></span
>
95 </div
><input type
="text" class="form-control" name
="username" id
="username" placeholder
="Username" aria
-label
="Username" aria
-describedby
="basic-addon1">
99 <div
class="form-group">
100 <div
class="input-group mb-3">
101 <div
class="input-group-prepend">
102 <span
class="input-group-text" id
="basic-addon1"><i
class="fa-solid fa-key"></i
></span
>
103 </div
><input type
="password" class="form-control" name
="password" id
="password" placeholder
="Password">
108 <div
class="modal-footer">
109 <a
class="btn btn-secondary" href
="#">Cancel
</a
>
110 <button type
="submit" class="btn btn-primary">Log
-In
</button
>
116 <?php
require_once "../footer.php";