Angemeldet bleiben

This commit is contained in:
aschwarz 2023-03-29 16:22:45 +02:00
parent a675b295e7
commit 670599777b
62 changed files with 1668 additions and 14210 deletions

View File

@ -4,18 +4,16 @@ require_once("config/datenbankanbindung.php"); // fügt die Datenbankanb
header('Content-Type: text/html; charset=utf-8');
$db = dbconnect();
$uid = $_SESSION["global_uid"];
$uid = $_SESSION["userid"];
#$login_dateiname = basename($_SERVER['PHP_SELF']);
$login_dateiname = basename($_SERVER['PHP_SELF']);
if($uid == "" AND $login_dateiname !='index.php'){
echo"<script type='text/javascript'>window.top.location.href = \"index.php\";</script>";
exit;
if(!isset($_SESSION['userid'])) {
header("location:../controller/admin_login.php");
}
$template = "modern";
function rechte($curpage, $uid){

View File

@ -1,12 +1,105 @@
<?php
# https://www.php-einfach.de/experte/php-codebeispiele/loginscript/angemeldet-bleiben/
require_once("../config/datenbankanbindung.php");
$db = dbconnect();
$function = $_POST['function'];
if(!isset($_SESSION)) { session_start(); }
if ($function == 'logout') {
if($_SESSION['angemeldet_bleiben'] == 1){
$identifier = $_COOKIE['identifier'];
$securitytoken = $_COOKIE['securitytoken'];
$token_neu = sha1($securitytoken);
$update = $db->query("DELETE FROM jumi_securitytokens
WHERE securitytoken ='$token_neu'
AND identifier = '$identifier'
");
}
//Cookies entfernen
session_destroy();
setcookie("identifier","",time()-(3600*24*365));
setcookie("securitytoken","",time()-(3600*24*365));
header("location:../dashboard/login.php");
}
function random_string() {
if(function_exists('random_bytes')) {
$bytes = random_bytes(16);
$str = bin2hex($bytes);
} else if(function_exists('openssl_random_pseudo_bytes')) {
$bytes = openssl_random_pseudo_bytes(16);
$str = bin2hex($bytes);
} else if(function_exists('mcrypt_create_iv')) {
$bytes = mcrypt_create_iv(16, MCRYPT_DEV_URANDOM);
$str = bin2hex($bytes);
} else {
//Bitte euer_geheim_string durch einen zufälligen String mit >12 Zeichen austauschen
$str = md5(uniqid('#!af445bsvjke34vas', true));
}
return $str;
}
//Automatischer Login
#if ($function != 'login') {
if ($function == '') {
if(!isset($_SESSION['userid']) && isset($_COOKIE['identifier']) && isset($_COOKIE['securitytoken'])) {
$identifier = $_COOKIE['identifier'];
$securitytoken = $_COOKIE['securitytoken'];
$result = $db->query("SELECT * FROM jumi_securitytokens WHERE identifier ='$identifier'");
$securitytoken_row = $result->fetch_array();
## $statement = $pdo->prepare("SELECT * FROM jumi_securitytokens WHERE identifier = ?");
## $result = $statement->execute(array($identifier));
## $securitytoken_row = $statement->fetch();
if(sha1($securitytoken) !== $securitytoken_row['securitytoken']) {
# die('Ein vermutlich gestohlener Security Token wurde identifiziert');
header("location:../dashboard/login.php");
} else { //Token war korrekt
//Setze neuen Token
$neuer_securitytoken = random_string();
# $insert = $pdo->prepare("UPDATE jumi_securitytokens SET securitytoken = :securitytoken WHERE identifier = :identifier");
# $insert->execute(array('securitytoken' => sha1($neuer_securitytoken), 'identifier' => $identifier));
$token_neu = sha1($neuer_securitytoken);
$update = $db->query("UPDATE jumi_securitytokens
SET securitytoken ='$token_neu'
WHERE identifier = '$identifier'
");
setcookie("identifier",$identifier,time()+(3600*24*365)); //1 Jahr Gültigkeit
setcookie("securitytoken",$neuer_securitytoken,time()+(3600*24*365)); //1 Jahr Gültigkeit
$_SESSION['angemeldet_bleiben'] = 1;
//Logge den Benutzer ein
$_SESSION['userid'] = $securitytoken_row['uid'];
$redirect = $_SESSION['cur_page'];
if($redirect != ''){
header("location:$redirect");
}else{
header("location:../dashboard/index.php");
}
}
}else{
if(!isset($_SESSION['userid'])){
header("location:../dashboard/login.php");
}
}
}
if ($function == 'login') {
$mail=strtoupper($_POST["mail"]); //remove case sensitivity on the mail
$password=$_POST["password"];
if($_POST["mail"] != ""){
$_SESSION["global_mail"]=$mail;
}
@ -17,7 +110,6 @@ if ($function == 'login') {
}else{
$db = dbconnect();
$result = $db->query("SELECT uid, mail, passwort, aktiv FROM jumi_admin WHERE UPPER(mail)='$mail'");
$row = $result->fetch_array();
@ -28,15 +120,31 @@ if ($function == 'login') {
echo '<div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Bitte prüfen Sie Ihre Zugangsdaten</div>|***|error';
exit;
}else{
$uid = $row['uid'];
//Möchte der Nutzer angemeldet beleiben?
if($_POST['angemeldet_bleiben'] == 1) {
$identifier = random_string();
$securitytoken = random_string();
# $insert = $pdo->prepare("INSERT INTO jumi_securitytokens (user_id, identifier, securitytoken) VALUES (:user_id, :identifier, :securitytoken)");
# $insert->execute(array('user_id' => $user['id'], 'identifier' => $identifier, 'securitytoken' => sha1($securitytoken)));
$token_neu = sha1($securitytoken);
$result_1 = $db->query("INSERT INTO jumi_securitytokens (uid, identifier, securitytoken) VALUES ('$uid', '$identifier', '$token_neu')");
setcookie("identifier",$identifier,time()+(3600*24*365)); //1 Jahr Gültigkeit
setcookie("securitytoken",$securitytoken,time()+(3600*24*365)); //1 Jahr Gültigkeit
$_SESSION['angemeldet_bleiben'] = 1;
}else{
$_SESSION['angemeldet_bleiben'] = 0;
}
$db = dbconnect();
$datum=date("Y-m-d H:i:s");
$ip=getenv("REMOTE_ADDR");
$agent=getenv("HTTP_USER_AGENT");
$user_admin = $row['uid'];
$_SESSION["global_uid"] = $user_admin;
$_SESSION['userid'] = $uid;
$_SESSION["global_mail"] = $row['mail'];
$result_1 = $db->query("INSERT INTO jumi_adminlog (Datum, IP, user_agent, uid) VALUES ('$datum', '$ip', '$agent', '$user_admin')");
$result_1 = $db->query("INSERT INTO jumi_adminlog (Datum, IP, user_agent, uid) VALUES ('$datum', '$ip', '$agent', '$uid')");
echo '<div class="alert alert-success"><i class="fa fa-fw fa-thumbs-up"></i> Login wird durchgef&uuml;hrt</div>|***|success';
}
}

View File

@ -1,4 +1,7 @@
<?php
if (!isset($_SESSION)) {
session_start();
}
/*
# Fuer debugging
error_reporting(E_ALL);
@ -9,6 +12,7 @@ ini_set('display_errors', 1);
include_once '../classes/TestProjektSmarty.class_subdir.php';
require_once("../config.inc.php");
$_SESSION['cur_page'] = $_SERVER['PHP_SELF']; // Fals man Seite direkt aufruft und Autologin funktioniert
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
$smarty = new SmartyAdmin();
if(!rechte('__noright__', $uid)){
@ -18,8 +22,6 @@ if(!rechte('__noright__', $uid)){
require_once "../language/german.inc.php";
session_start();
#require_once "func_genUser.php";
// Rechteüberprüfung

View File

@ -1,4 +1,7 @@
<?php
if (!isset($_SESSION)) {
session_start();
}
/*
# Fuer debugging
error_reporting(E_ALL);
@ -8,6 +11,7 @@ ini_set('display_errors', 1);
include_once '../classes/TestProjektSmarty.class_subdir.php';
$_SESSION['cur_page'] = $_SERVER['PHP_SELF']; // Fals man Seite direkt aufruft und Autologin funktioniert
require_once("../config.inc.php");
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
$smarty = new SmartyAdmin();
@ -18,7 +22,6 @@ if(!rechte(basename(__FILE__), $uid)){
require_once "../language/german.inc.php";
session_start();
#require_once "func_genUser.php";

View File

@ -1,13 +1,15 @@
<?php
if (!isset($_SESSION)) {
session_start();
}
/*
# Fuer debugging
error_reporting(E_ALL);
ini_set('display_errors', 1);
#echo __LINE__."<br>";
*/
include_once '../classes/TestProjektSmarty.class_subdir.php';
$_SESSION['cur_page'] = $_SERVER['PHP_SELF']; // Fals man Seite direkt aufruft und Autologin funktioniert
require_once("../config.inc.php");
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
$smarty = new SmartyAdmin();
@ -18,7 +20,7 @@ if(!rechte(basename(__FILE__), $uid)){
require_once "../language/german.inc.php";
session_start();
#require_once "func_genUser.php";

View File

@ -5,7 +5,7 @@ if (!isset($_SESSION)) {
}
#$_SESSION['sessionid'] = session_id();
include_once '../classes/TestProjektSmarty.class_subdir.php';
require_once("../config.inc.php");
#require_once("../config.inc.php");
$smarty = new SmartyAdmin();
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
require_once "../language/german.inc.php";

View File

@ -1,22 +1,26 @@
<?php
## INDEX gegen DB
if(!isset($_SESSION)) { session_start(); }
if (!isset($_SESSION)) {
session_start();
}
#$_SESSION['sessionid'] = session_id();
include_once '../classes/TestProjektSmarty.class_subdir.php';
#require_once("../config.inc.php");
require_once("../config/datenbankanbindung.php");
$smarty = new SmartyAdmin();
$templatename = substr(basename($_SERVER['PHP_SELF']),0,-3)."html";
require_once("../config.inc.php");
$smarty = new SmartyAdmin();
if(!rechte(basename(__FILE__), $uid)){
echo "<meta http-equiv=\"refresh\" content=\"0; URL=error.php\">";
exit;
}
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
require_once "../language/german.inc.php";
$action = $_GET['action'];
if($action == ''){
}
$result_name = $db->query("SELECT vorname, nachname, mail FROM jumi_admin WHERE uid='$uid'");
$row_name = $result_name->fetch_array();
$smarty->assign('startseite_name', "$row_name[vorname] $row_name[nachname]");
$smarty->assign('action', "$action");
$smarty->display("modern/dashboard/$templatename");
?>
?>

21
dashboard/login.php Normal file
View File

@ -0,0 +1,21 @@
<?php
## INDEX gegen DB
if(!isset($_SESSION)) { session_start(); }
include_once '../classes/TestProjektSmarty.class_subdir.php';
#require_once("../config.inc.php");
require_once("../config/datenbankanbindung.php");
$smarty = new SmartyAdmin();
$templatename = substr(basename($_SERVER['PHP_SELF']),0,-3)."html";
require_once "../language/german.inc.php";
$action = $_GET['action'];
if($action == ''){
}
$smarty->assign('action', "$action");
$smarty->display("modern/dashboard/$templatename");
?>

View File

@ -1,6 +1,11 @@
<?php
session_start(); //to ensure you are using same session
session_destroy(); //destroy the session
header("location:index.php"); //to redirect back to "index.php" after logging out
echo "
<form name='logout' action='../controller/admin_login.php' method='POST'>
<input type='hidden' name='function' value='logout'>
</form>
<script type='text/javascript'>
document.logout.submit();
</script>";
exit();
?>

View File

@ -7,12 +7,18 @@ if (!isset($_SESSION)) {
include_once '../classes/TestProjektSmarty.class_subdir.php';
require_once("../config.inc.php");
require_once("../config/datenbankanbindung.php");
# config.inc.php kann hier nicht eingebunden werden, sonst ruft er in jeder Seite 2x die config auf, da das NAV in jeder Seite geladen wird
$smarty = new SmartyAdmin();
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
require_once "../language/german.inc.php";
##############################################################################
$db = dbconnect();
$uid = $_SESSION["userid"];
$query = "SELECT mhid, headline, visible
FROM jumi_menu_headline
WHERE mhid IN (SELECT DISTINCT mhid

View File

@ -2,6 +2,7 @@
if(!isset($_SESSION)) { session_start(); }
include_once '../classes/TestProjektSmarty.class_subdir.php';
$_SESSION['cur_page'] = $_SERVER['PHP_SELF']; // Fals man Seite direkt aufruft und Autologin funktioniert
require_once("../config.inc.php");
$smarty = new SmartyAdmin();
if(!rechte(basename(__FILE__), $uid)){

View File

@ -3,6 +3,7 @@ if (!isset($_SESSION)) {
session_start();
}
include_once '../classes/TestProjektSmarty.class_subdir.php';
$_SESSION['cur_page'] = $_SERVER['PHP_SELF']; // Fals man Seite direkt aufruft und Autologin funktioniert
require_once("../config.inc.php");
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
$smarty = new SmartyAdmin();

View File

@ -1,26 +0,0 @@
<?php
## INDEX gegen DB
if (!isset($_SESSION)) {
session_start();
}
#$_SESSION['sessionid'] = session_id();
include_once '../classes/TestProjektSmarty.class_subdir.php';
require_once("../config.inc.php");
$smarty = new SmartyAdmin();
if(!rechte(basename(__FILE__), $uid)){
echo "<meta http-equiv=\"refresh\" content=\"0; URL=error.php\">";
exit;
}
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
require_once "../language/german.inc.php";
$result_name = $db->query("SELECT vorname, nachname, mail FROM jumi_admin WHERE uid='$uid'");
$row_name = $result_name->fetch_array();
$smarty->assign('startseite_name', "$row_name[vorname] $row_name[nachname]");
$smarty->assign('action', "$action");
$smarty->display("modern/dashboard/$templatename");
?>

View File

@ -3,6 +3,7 @@ if (!isset($_SESSION)) {
session_start();
}
include_once '../classes/TestProjektSmarty.class_subdir.php';
$_SESSION['cur_page'] = $_SERVER['PHP_SELF']; // Fals man Seite direkt aufruft und Autologin funktioniert
require_once("../config.inc.php");
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
$smarty = new SmartyAdmin();

View File

@ -3,6 +3,7 @@ if (!isset($_SESSION)) {
session_start();
}
include_once '../classes/TestProjektSmarty.class_subdir.php';
$_SESSION['cur_page'] = $_SERVER['PHP_SELF']; // Fals man Seite direkt aufruft und Autologin funktioniert
require_once("../config.inc.php");
$templatename = substr(basename($_SERVER['PHP_SELF']), 0, -3) . "html";
$smarty = new SmartyAdmin();
@ -141,13 +142,13 @@ if ($action == 'fragen') {
$result = $db->query("SELECT count(*) Anz FROM jumi_umfragen_fragen WHERE umid='$umid'");
$row = $result->fetch_array();
# Wenn man bei mehreren Fragen eine Frage löscht ist Anz nicht 0 und der Focus sitzt bei Antwort
# if ($umid == '' or $_GET['tabufid'] == "neuefrage" or $row['Anz'] == '0') {
# $smarty->assign('umfrageerf_focus', "frage");
if ($umid == '' or $_GET['tabufid'] == "neuefrage" or $row['Anz'] == '0') {
$smarty->assign('umfrageerf_focus', "frage");
# unset($_SESSION["umfrageerf_ufid"]);
# unset($_SESSION["umfrageerf_uaid"]);
# } else {
# $smarty->assign('umfrageerf_focus', "antwort");
# }
} else {
$smarty->assign('umfrageerf_focus', "antwort");
}
if (isset($_POST['datumvon']) and $_POST['datumvon'] != '') {

View File

@ -1,52 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>404 Error - SB Admin</title>
<link href="css/styles.css" rel="stylesheet" />
<script src="https://use.fontawesome.com/releases/v6.3.0/js/all.js" crossorigin="anonymous"></script>
</head>
<body>
<div id="layoutError">
<div id="layoutError_content">
<main>
<div class="container">
<div class="row justify-content-center">
<div class="col-lg-6">
<div class="text-center mt-4">
<h1 class="display-1">401</h1>
<p class="lead">Unauthorized</p>
<p>Access to this resource is denied.</p>
<a href="index.html">
<i class="fas fa-arrow-left me-1"></i>
Return to Dashboard
</a>
</div>
</div>
</div>
</div>
</main>
</div>
<div id="layoutError_footer">
<footer class="py-4 bg-light mt-auto">
<div class="container-fluid px-4">
<div class="d-flex align-items-center justify-content-between small">
<div class="text-muted">Copyright &copy; Your Website 2023</div>
<div>
<a href="#">Privacy Policy</a>
&middot;
<a href="#">Terms &amp; Conditions</a>
</div>
</div>
</div>
</footer>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
<script src="js/scripts.js"></script>
</body>
</html>

View File

@ -1,51 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>404 Error - SB Admin</title>
<link href="css/styles.css" rel="stylesheet" />
<script src="https://use.fontawesome.com/releases/v6.3.0/js/all.js" crossorigin="anonymous"></script>
</head>
<body>
<div id="layoutError">
<div id="layoutError_content">
<main>
<div class="container">
<div class="row justify-content-center">
<div class="col-lg-6">
<div class="text-center mt-4">
<img class="mb-4 img-error" src="assets/img/error-404-monochrome.svg" />
<p class="lead">This requested URL was not found on this server.</p>
<a href="index.html">
<i class="fas fa-arrow-left me-1"></i>
Return to Dashboard
</a>
</div>
</div>
</div>
</div>
</main>
</div>
<div id="layoutError_footer">
<footer class="py-4 bg-light mt-auto">
<div class="container-fluid px-4">
<div class="d-flex align-items-center justify-content-between small">
<div class="text-muted">Copyright &copy; Your Website 2023</div>
<div>
<a href="#">Privacy Policy</a>
&middot;
<a href="#">Terms &amp; Conditions</a>
</div>
</div>
</div>
</footer>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
<script src="js/scripts.js"></script>
</body>
</html>

View File

@ -1,51 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>404 Error - SB Admin</title>
<link href="css/styles.css" rel="stylesheet" />
<script src="https://use.fontawesome.com/releases/v6.3.0/js/all.js" crossorigin="anonymous"></script>
</head>
<body>
<div id="layoutError">
<div id="layoutError_content">
<main>
<div class="container">
<div class="row justify-content-center">
<div class="col-lg-6">
<div class="text-center mt-4">
<h1 class="display-1">500</h1>
<p class="lead">Internal Server Error</p>
<a href="index.html">
<i class="fas fa-arrow-left me-1"></i>
Return to Dashboard
</a>
</div>
</div>
</div>
</div>
</main>
</div>
<div id="layoutError_footer">
<footer class="py-4 bg-light mt-auto">
<div class="container-fluid px-4">
<div class="d-flex align-items-center justify-content-between small">
<div class="text-muted">Copyright &copy; Your Website 2023</div>
<div>
<a href="#">Privacy Policy</a>
&middot;
<a href="#">Terms &amp; Conditions</a>
</div>
</div>
</div>
</footer>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
<script src="js/scripts.js"></script>
</body>
</html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,54 +0,0 @@
// Set new default font family and font color to mimic Bootstrap's default styling
Chart.defaults.global.defaultFontFamily = '-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif';
Chart.defaults.global.defaultFontColor = '#292b2c';
// Area Chart Example
var ctx = document.getElementById("myAreaChart");
var myLineChart = new Chart(ctx, {
type: 'line',
data: {
labels: ["Mar 1", "Mar 2", "Mar 3", "Mar 4", "Mar 5", "Mar 6", "Mar 7", "Mar 8", "Mar 9", "Mar 10", "Mar 11", "Mar 12", "Mar 13"],
datasets: [{
label: "Sessions",
lineTension: 0.3,
backgroundColor: "rgba(2,117,216,0.2)",
borderColor: "rgba(2,117,216,1)",
pointRadius: 5,
pointBackgroundColor: "rgba(2,117,216,1)",
pointBorderColor: "rgba(255,255,255,0.8)",
pointHoverRadius: 5,
pointHoverBackgroundColor: "rgba(2,117,216,1)",
pointHitRadius: 50,
pointBorderWidth: 2,
data: [10000, 30162, 26263, 18394, 18287, 28682, 31274, 33259, 25849, 24159, 32651, 31984, 38451],
}],
},
options: {
scales: {
xAxes: [{
time: {
unit: 'date'
},
gridLines: {
display: false
},
ticks: {
maxTicksLimit: 7
}
}],
yAxes: [{
ticks: {
min: 0,
max: 40000,
maxTicksLimit: 5
},
gridLines: {
color: "rgba(0, 0, 0, .125)",
}
}],
},
legend: {
display: false
}
}
});

View File

@ -1,46 +0,0 @@
// Set new default font family and font color to mimic Bootstrap's default styling
Chart.defaults.global.defaultFontFamily = '-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif';
Chart.defaults.global.defaultFontColor = '#292b2c';
// Bar Chart Example
var ctx = document.getElementById("myBarChart");
var myLineChart = new Chart(ctx, {
type: 'bar',
data: {
labels: ["January", "February", "March", "April", "May", "June"],
datasets: [{
label: "Revenue",
backgroundColor: "rgba(2,117,216,1)",
borderColor: "rgba(2,117,216,1)",
data: [4215, 5312, 6251, 7841, 9821, 14984],
}],
},
options: {
scales: {
xAxes: [{
time: {
unit: 'month'
},
gridLines: {
display: false
},
ticks: {
maxTicksLimit: 6
}
}],
yAxes: [{
ticks: {
min: 0,
max: 15000,
maxTicksLimit: 5
},
gridLines: {
display: true
}
}],
},
legend: {
display: false
}
}
});

View File

@ -1,16 +0,0 @@
// Set new default font family and font color to mimic Bootstrap's default styling
Chart.defaults.global.defaultFontFamily = '-apple-system,system-ui,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif';
Chart.defaults.global.defaultFontColor = '#292b2c';
// Pie Chart Example
var ctx = document.getElementById("myPieChart");
var myPieChart = new Chart(ctx, {
type: 'pie',
data: {
labels: ["Blue", "Red", "Yellow", "Green"],
datasets: [{
data: [12.21, 15.58, 11.25, 8.32],
backgroundColor: ['#007bff', '#dc3545', '#ffc107', '#28a745'],
}],
},
});

View File

@ -1,4 +0,0 @@
// Call the dataTables jQuery plugin
$(document).ready(function() {
$('#dataTable').DataTable();
});

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 6.0 KiB

View File

@ -1,177 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>Charts - SB Admin</title>
<link href="css/styles.css" rel="stylesheet" />
<script src="https://use.fontawesome.com/releases/v6.3.0/js/all.js" crossorigin="anonymous"></script>
</head>
<body class="sb-nav-fixed">
<nav class="sb-topnav navbar navbar-expand navbar-dark bg-dark">
<!-- Navbar Brand-->
<a class="navbar-brand ps-3" href="index.html">Start Bootstrap</a>
<!-- Sidebar Toggle-->
<button class="btn btn-link btn-sm order-1 order-lg-0 me-4 me-lg-0" id="sidebarToggle" href="#!"><i class="fas fa-bars"></i></button>
<!-- Navbar Search-->
<form class="d-none d-md-inline-block form-inline ms-auto me-0 me-md-3 my-2 my-md-0">
<div class="input-group">
<input class="form-control" type="text" placeholder="Search for..." aria-label="Search for..." aria-describedby="btnNavbarSearch" />
<button class="btn btn-primary" id="btnNavbarSearch" type="button"><i class="fas fa-search"></i></button>
</div>
</form>
<!-- Navbar-->
<ul class="navbar-nav ms-auto ms-md-0 me-3 me-lg-4">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" id="navbarDropdown" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false"><i class="fas fa-user fa-fw"></i></a>
<ul class="dropdown-menu dropdown-menu-end" aria-labelledby="navbarDropdown">
<li><a class="dropdown-item" href="#!">Settings</a></li>
<li><a class="dropdown-item" href="#!">Activity Log</a></li>
<li><hr class="dropdown-divider" /></li>
<li><a class="dropdown-item" href="#!">Logout</a></li>
</ul>
</li>
</ul>
</nav>
<div id="layoutSidenav">
<div id="layoutSidenav_nav">
<nav class="sb-sidenav accordion sb-sidenav-dark" id="sidenavAccordion">
<div class="sb-sidenav-menu">
<div class="nav">
<div class="sb-sidenav-menu-heading">Core</div>
<a class="nav-link" href="index.html">
<div class="sb-nav-link-icon"><i class="fas fa-tachometer-alt"></i></div>
Dashboard
</a>
<div class="sb-sidenav-menu-heading">Interface</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#collapseLayouts" aria-expanded="false" aria-controls="collapseLayouts">
<div class="sb-nav-link-icon"><i class="fas fa-columns"></i></div>
Layouts
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="collapseLayouts" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordion">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="layout-static.html">Static Navigation</a>
<a class="nav-link" href="layout-sidenav-light.html">Light Sidenav</a>
</nav>
</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#collapsePages" aria-expanded="false" aria-controls="collapsePages">
<div class="sb-nav-link-icon"><i class="fas fa-book-open"></i></div>
Pages
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="collapsePages" aria-labelledby="headingTwo" data-bs-parent="#sidenavAccordion">
<nav class="sb-sidenav-menu-nested nav accordion" id="sidenavAccordionPages">
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#pagesCollapseAuth" aria-expanded="false" aria-controls="pagesCollapseAuth">
Authentication
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="pagesCollapseAuth" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordionPages">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="login.html">Login</a>
<a class="nav-link" href="register.html">Register</a>
<a class="nav-link" href="password.html">Forgot Password</a>
</nav>
</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#pagesCollapseError" aria-expanded="false" aria-controls="pagesCollapseError">
Error
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="pagesCollapseError" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordionPages">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="401.html">401 Page</a>
<a class="nav-link" href="404.html">404 Page</a>
<a class="nav-link" href="500.html">500 Page</a>
</nav>
</div>
</nav>
</div>
<div class="sb-sidenav-menu-heading">Addons</div>
<a class="nav-link" href="charts.html">
<div class="sb-nav-link-icon"><i class="fas fa-chart-area"></i></div>
Charts
</a>
<a class="nav-link" href="tables.html">
<div class="sb-nav-link-icon"><i class="fas fa-table"></i></div>
Tables
</a>
</div>
</div>
<div class="sb-sidenav-footer">
<div class="small">Logged in as:</div>
Start Bootstrap
</div>
</nav>
</div>
<div id="layoutSidenav_content">
<main>
<div class="container-fluid px-4">
<h1 class="mt-4">Charts</h1>
<ol class="breadcrumb mb-4">
<li class="breadcrumb-item"><a href="index.html">Dashboard</a></li>
<li class="breadcrumb-item active">Charts</li>
</ol>
<div class="card mb-4">
<div class="card-body">
Chart.js is a third party plugin that is used to generate the charts in this template. The charts below have been customized - for further customization options, please visit the official
<a target="_blank" href="https://www.chartjs.org/docs/latest/">Chart.js documentation</a>
.
</div>
</div>
<div class="card mb-4">
<div class="card-header">
<i class="fas fa-chart-area me-1"></i>
Area Chart Example
</div>
<div class="card-body"><canvas id="myAreaChart" width="100%" height="30"></canvas></div>
<div class="card-footer small text-muted">Updated yesterday at 11:59 PM</div>
</div>
<div class="row">
<div class="col-lg-6">
<div class="card mb-4">
<div class="card-header">
<i class="fas fa-chart-bar me-1"></i>
Bar Chart Example
</div>
<div class="card-body"><canvas id="myBarChart" width="100%" height="50"></canvas></div>
<div class="card-footer small text-muted">Updated yesterday at 11:59 PM</div>
</div>
</div>
<div class="col-lg-6">
<div class="card mb-4">
<div class="card-header">
<i class="fas fa-chart-pie me-1"></i>
Pie Chart Example
</div>
<div class="card-body"><canvas id="myPieChart" width="100%" height="50"></canvas></div>
<div class="card-footer small text-muted">Updated yesterday at 11:59 PM</div>
</div>
</div>
</div>
</div>
</main>
<footer class="py-4 bg-light mt-auto">
<div class="container-fluid px-4">
<div class="d-flex align-items-center justify-content-between small">
<div class="text-muted">Copyright &copy; Your Website 2023</div>
<div>
<a href="#">Privacy Policy</a>
&middot;
<a href="#">Terms &amp; Conditions</a>
</div>
</div>
</div>
</footer>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
<script src="js/scripts.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Chart.js/2.8.0/Chart.min.js" crossorigin="anonymous"></script>
<script src="assets/demo/chart-area-demo.js"></script>
<script src="assets/demo/chart-bar-demo.js"></script>
<script src="assets/demo/chart-pie-demo.js"></script>
</body>
</html>

File diff suppressed because it is too large Load Diff

View File

@ -1,688 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>Dashboard - SB Admin</title>
<link href="css/styles.css" rel="stylesheet" />
<script src="all.js" crossorigin="anonymous"></script>
</head>
<body class="sb-nav-fixed">
<nav class="sb-topnav navbar navbar-expand navbar-dark bg-dark">
<!-- Navbar Brand-->
<a class="navbar-brand ps-3" href="index.html">Start Bootstrap</a>
<!-- Sidebar Toggle-->
<button class="btn btn-link btn-sm order-1 order-lg-0 me-4 me-lg-0" id="sidebarToggle" href="#!"><i class="fas fa-bars"></i></button>
<!-- Navbar Search-->
<form class="d-none d-md-inline-block form-inline ms-auto me-0 me-md-3 my-2 my-md-0">
<div class="input-group">
<input class="form-control" type="text" placeholder="Search for..." aria-label="Search for..." aria-describedby="btnNavbarSearch" />
<button class="btn btn-primary" id="btnNavbarSearch" type="button"><i class="fas fa-search"></i></button>
</div>
</form>
<!-- Navbar-->
<ul class="navbar-nav ms-auto ms-md-0 me-3 me-lg-4">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" id="navbarDropdown" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false"><i class="fas fa-user fa-fw"></i></a>
<ul class="dropdown-menu dropdown-menu-end" aria-labelledby="navbarDropdown">
<li><a class="dropdown-item" href="#!">Settings</a></li>
<li><a class="dropdown-item" href="#!">Activity Log</a></li>
<li><hr class="dropdown-divider" /></li>
<li><a class="dropdown-item" href="#!">Logout</a></li>
</ul>
</li>
</ul>
</nav>
<div id="layoutSidenav">
<div id="layoutSidenav_nav">
<nav class="sb-sidenav accordion sb-sidenav-dark" id="sidenavAccordion">
<div class="sb-sidenav-menu">
<div class="nav">
<div class="sb-sidenav-menu-heading">Core</div>
<a class="nav-link" href="index.html">
<div class="sb-nav-link-icon"><i class="fas fa-tachometer-alt"></i></div>
Dashboard1
</a>
<div class="sb-sidenav-menu-heading">Interface</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#collapseLayouts" aria-expanded="false" aria-controls="collapseLayouts">
<div class="sb-nav-link-icon"><i class="fas fa-columns"></i></div>
Layouts
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="collapseLayouts" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordion">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="layout-static.html">Static Navigation</a>
<a class="nav-link" href="layout-sidenav-light.html">Light Sidenav</a>
</nav>
</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#collapsePages" aria-expanded="false" aria-controls="collapsePages">
<div class="sb-nav-link-icon"><i class="fas fa-book-open"></i></div>
Pages
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="collapsePages" aria-labelledby="headingTwo" data-bs-parent="#sidenavAccordion">
<nav class="sb-sidenav-menu-nested nav accordion" id="sidenavAccordionPages">
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#pagesCollapseAuth" aria-expanded="false" aria-controls="pagesCollapseAuth">
Authentication
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="pagesCollapseAuth" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordionPages">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="login.html">Login</a>
<a class="nav-link" href="register.html">Register</a>
<a class="nav-link" href="password.html">Forgot Password</a>
</nav>
</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#pagesCollapseError" aria-expanded="false" aria-controls="pagesCollapseError">
Error
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="pagesCollapseError" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordionPages">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="401.html">401 Page</a>
<a class="nav-link" href="404.html">404 Page</a>
<a class="nav-link" href="500.html">500 Page</a>
</nav>
</div>
</nav>
</div>
<div class="sb-sidenav-menu-heading">Addons</div>
<a class="nav-link" href="charts.html">
<div class="sb-nav-link-icon"><i class="fas fa-chart-area"></i></div>
Charts
</a>
<a class="nav-link" href="tables.html">
<div class="sb-nav-link-icon"><i class="fas fa-table"></i></div>
Tables
</a>
</div>
</div>
<div class="sb-sidenav-footer">
<div class="small">Logged in as:</div>
Start Bootstrap
</div>
</nav>
</div>
<div id="layoutSidenav_content">
<main>
<div class="container-fluid px-4">
<h1 class="mt-4">Dashboard</h1>
<ol class="breadcrumb mb-4">
<li class="breadcrumb-item active">Dashboard</li>
</ol>
<div class="row">
<div class="col-xl-3 col-md-6">
<div class="card bg-primary text-white mb-4">
<div class="card-body">Primary Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
</div>
</div>
<div class="col-xl-3 col-md-6">
<div class="card bg-warning text-white mb-4">
<div class="card-body">Warning Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
</div>
</div>
<div class="col-xl-3 col-md-6">
<div class="card bg-success text-white mb-4">
<div class="card-body">Success Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
</div>
</div>
<div class="col-xl-3 col-md-6">
<div class="card bg-danger text-white mb-4">
<div class="card-body">Danger Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-xl-6">
<div class="card mb-4">
<div class="card-header">
<i class="fas fa-chart-area me-1"></i>
Area Chart Example
</div>
<div class="card-body"><canvas id="myAreaChart" width="100%" height="40"></canvas></div>
</div>
</div>
<div class="col-xl-6">
<div class="card mb-4">
<div class="card-header">
<i class="fas fa-chart-bar me-1"></i>
Bar Chart Example
</div>
<div class="card-body"><canvas id="myBarChart" width="100%" height="40"></canvas></div>
</div>
</div>
</div>
<div class="card mb-4">
<div class="card-header">
<i class="fas fa-table me-1"></i>
DataTable Example
</div>
<div class="card-body">
<table id="datatablesSimple">
<thead>
<tr>
<th>Name</th>
<th>Position</th>
<th>Office</th>
<th>Age</th>
<th>Start date</th>
<th>Salary</th>
</tr>
</thead>
<tfoot>
<tr>
<th>Name</th>
<th>Position</th>
<th>Office</th>
<th>Age</th>
<th>Start date</th>
<th>Salary</th>
</tr>
</tfoot>
<tbody>
<tr>
<td>Tiger Nixon</td>
<td>System Architect</td>
<td>Edinburgh</td>
<td>61</td>
<td>2011/04/25</td>
<td>$320,800</td>
</tr>
<tr>
<td>Garrett Winters</td>
<td>Accountant</td>
<td>Tokyo</td>
<td>63</td>
<td>2011/07/25</td>
<td>$170,750</td>
</tr>
<tr>
<td>Ashton Cox</td>
<td>Junior Technical Author</td>
<td>San Francisco</td>
<td>66</td>
<td>2009/01/12</td>
<td>$86,000</td>
</tr>
<tr>
<td>Cedric Kelly</td>
<td>Senior Javascript Developer</td>
<td>Edinburgh</td>
<td>22</td>
<td>2012/03/29</td>
<td>$433,060</td>
</tr>
<tr>
<td>Airi Satou</td>
<td>Accountant</td>
<td>Tokyo</td>
<td>33</td>
<td>2008/11/28</td>
<td>$162,700</td>
</tr>
<tr>
<td>Brielle Williamson</td>
<td>Integration Specialist</td>
<td>New York</td>
<td>61</td>
<td>2012/12/02</td>
<td>$372,000</td>
</tr>
<tr>
<td>Herrod Chandler</td>
<td>Sales Assistant</td>
<td>San Francisco</td>
<td>59</td>
<td>2012/08/06</td>
<td>$137,500</td>
</tr>
<tr>
<td>Rhona Davidson</td>
<td>Integration Specialist</td>
<td>Tokyo</td>
<td>55</td>
<td>2010/10/14</td>
<td>$327,900</td>
</tr>
<tr>
<td>Colleen Hurst</td>
<td>Javascript Developer</td>
<td>San Francisco</td>
<td>39</td>
<td>2009/09/15</td>
<td>$205,500</td>
</tr>
<tr>
<td>Sonya Frost</td>
<td>Software Engineer</td>
<td>Edinburgh</td>
<td>23</td>
<td>2008/12/13</td>
<td>$103,600</td>
</tr>
<tr>
<td>Jena Gaines</td>
<td>Office Manager</td>
<td>London</td>
<td>30</td>
<td>2008/12/19</td>
<td>$90,560</td>
</tr>
<tr>
<td>Quinn Flynn</td>
<td>Support Lead</td>
<td>Edinburgh</td>
<td>22</td>
<td>2013/03/03</td>
<td>$342,000</td>
</tr>
<tr>
<td>Charde Marshall</td>
<td>Regional Director</td>
<td>San Francisco</td>
<td>36</td>
<td>2008/10/16</td>
<td>$470,600</td>
</tr>
<tr>
<td>Haley Kennedy</td>
<td>Senior Marketing Designer</td>
<td>London</td>
<td>43</td>
<td>2012/12/18</td>
<td>$313,500</td>
</tr>
<tr>
<td>Tatyana Fitzpatrick</td>
<td>Regional Director</td>
<td>London</td>
<td>19</td>
<td>2010/03/17</td>
<td>$385,750</td>
</tr>
<tr>
<td>Michael Silva</td>
<td>Marketing Designer</td>
<td>London</td>
<td>66</td>
<td>2012/11/27</td>
<td>$198,500</td>
</tr>
<tr>
<td>Paul Byrd</td>
<td>Chief Financial Officer (CFO)</td>
<td>New York</td>
<td>64</td>
<td>2010/06/09</td>
<td>$725,000</td>
</tr>
<tr>
<td>Gloria Little</td>
<td>Systems Administrator</td>
<td>New York</td>
<td>59</td>
<td>2009/04/10</td>
<td>$237,500</td>
</tr>
<tr>
<td>Bradley Greer</td>
<td>Software Engineer</td>
<td>London</td>
<td>41</td>
<td>2012/10/13</td>
<td>$132,000</td>
</tr>
<tr>
<td>Dai Rios</td>
<td>Personnel Lead</td>
<td>Edinburgh</td>
<td>35</td>
<td>2012/09/26</td>
<td>$217,500</td>
</tr>
<tr>
<td>Jenette Caldwell</td>
<td>Development Lead</td>
<td>New York</td>
<td>30</td>
<td>2011/09/03</td>
<td>$345,000</td>
</tr>
<tr>
<td>Yuri Berry</td>
<td>Chief Marketing Officer (CMO)</td>
<td>New York</td>
<td>40</td>
<td>2009/06/25</td>
<td>$675,000</td>
</tr>
<tr>
<td>Caesar Vance</td>
<td>Pre-Sales Support</td>
<td>New York</td>
<td>21</td>
<td>2011/12/12</td>
<td>$106,450</td>
</tr>
<tr>
<td>Doris Wilder</td>
<td>Sales Assistant</td>
<td>Sidney</td>
<td>23</td>
<td>2010/09/20</td>
<td>$85,600</td>
</tr>
<tr>
<td>Angelica Ramos</td>
<td>Chief Executive Officer (CEO)</td>
<td>London</td>
<td>47</td>
<td>2009/10/09</td>
<td>$1,200,000</td>
</tr>
<tr>
<td>Gavin Joyce</td>
<td>Developer</td>
<td>Edinburgh</td>
<td>42</td>
<td>2010/12/22</td>
<td>$92,575</td>
</tr>
<tr>
<td>Jennifer Chang</td>
<td>Regional Director</td>
<td>Singapore</td>
<td>28</td>
<td>2010/11/14</td>
<td>$357,650</td>
</tr>
<tr>
<td>Brenden Wagner</td>
<td>Software Engineer</td>
<td>San Francisco</td>
<td>28</td>
<td>2011/06/07</td>
<td>$206,850</td>
</tr>
<tr>
<td>Fiona Green</td>
<td>Chief Operating Officer (COO)</td>
<td>San Francisco</td>
<td>48</td>
<td>2010/03/11</td>
<td>$850,000</td>
</tr>
<tr>
<td>Shou Itou</td>
<td>Regional Marketing</td>
<td>Tokyo</td>
<td>20</td>
<td>2011/08/14</td>
<td>$163,000</td>
</tr>
<tr>
<td>Michelle House</td>
<td>Integration Specialist</td>
<td>Sidney</td>
<td>37</td>
<td>2011/06/02</td>
<td>$95,400</td>
</tr>
<tr>
<td>Suki Burks</td>
<td>Developer</td>
<td>London</td>
<td>53</td>
<td>2009/10/22</td>
<td>$114,500</td>
</tr>
<tr>
<td>Prescott Bartlett</td>
<td>Technical Author</td>
<td>London</td>
<td>27</td>
<td>2011/05/07</td>
<td>$145,000</td>
</tr>
<tr>
<td>Gavin Cortez</td>
<td>Team Leader</td>
<td>San Francisco</td>
<td>22</td>
<td>2008/10/26</td>
<td>$235,500</td>
</tr>
<tr>
<td>Martena Mccray</td>
<td>Post-Sales support</td>
<td>Edinburgh</td>
<td>46</td>
<td>2011/03/09</td>
<td>$324,050</td>
</tr>
<tr>
<td>Unity Butler</td>
<td>Marketing Designer</td>
<td>San Francisco</td>
<td>47</td>
<td>2009/12/09</td>
<td>$85,675</td>
</tr>
<tr>
<td>Howard Hatfield</td>
<td>Office Manager</td>
<td>San Francisco</td>
<td>51</td>
<td>2008/12/16</td>
<td>$164,500</td>
</tr>
<tr>
<td>Hope Fuentes</td>
<td>Secretary</td>
<td>San Francisco</td>
<td>41</td>
<td>2010/02/12</td>
<td>$109,850</td>
</tr>
<tr>
<td>Vivian Harrell</td>
<td>Financial Controller</td>
<td>San Francisco</td>
<td>62</td>
<td>2009/02/14</td>
<td>$452,500</td>
</tr>
<tr>
<td>Timothy Mooney</td>
<td>Office Manager</td>
<td>London</td>
<td>37</td>
<td>2008/12/11</td>
<td>$136,200</td>
</tr>
<tr>
<td>Jackson Bradshaw</td>
<td>Director</td>
<td>New York</td>
<td>65</td>
<td>2008/09/26</td>
<td>$645,750</td>
</tr>
<tr>
<td>Olivia Liang</td>
<td>Support Engineer</td>
<td>Singapore</td>
<td>64</td>
<td>2011/02/03</td>
<td>$234,500</td>
</tr>
<tr>
<td>Bruno Nash</td>
<td>Software Engineer</td>
<td>London</td>
<td>38</td>
<td>2011/05/03</td>
<td>$163,500</td>
</tr>
<tr>
<td>Sakura Yamamoto</td>
<td>Support Engineer</td>
<td>Tokyo</td>
<td>37</td>
<td>2009/08/19</td>
<td>$139,575</td>
</tr>
<tr>
<td>Thor Walton</td>
<td>Developer</td>
<td>New York</td>
<td>61</td>
<td>2013/08/11</td>
<td>$98,540</td>
</tr>
<tr>
<td>Finn Camacho</td>
<td>Support Engineer</td>
<td>San Francisco</td>
<td>47</td>
<td>2009/07/07</td>
<td>$87,500</td>
</tr>
<tr>
<td>Serge Baldwin</td>
<td>Data Coordinator</td>
<td>Singapore</td>
<td>64</td>
<td>2012/04/09</td>
<td>$138,575</td>
</tr>
<tr>
<td>Zenaida Frank</td>
<td>Software Engineer</td>
<td>New York</td>
<td>63</td>
<td>2010/01/04</td>
<td>$125,250</td>
</tr>
<tr>
<td>Zorita Serrano</td>
<td>Software Engineer</td>
<td>San Francisco</td>
<td>56</td>
<td>2012/06/01</td>
<td>$115,000</td>
</tr>
<tr>
<td>Jennifer Acosta</td>
<td>Junior Javascript Developer</td>
<td>Edinburgh</td>
<td>43</td>
<td>2013/02/01</td>
<td>$75,650</td>
</tr>
<tr>
<td>Cara Stevens</td>
<td>Sales Assistant</td>
<td>New York</td>
<td>46</td>
<td>2011/12/06</td>
<td>$145,600</td>
</tr>
<tr>
<td>Hermione Butler</td>
<td>Regional Director</td>
<td>London</td>
<td>47</td>
<td>2011/03/21</td>
<td>$356,250</td>
</tr>
<tr>
<td>Lael Greer</td>
<td>Systems Administrator</td>
<td>London</td>
<td>21</td>
<td>2009/02/27</td>
<td>$103,500</td>
</tr>
<tr>
<td>Jonas Alexander</td>
<td>Developer</td>
<td>San Francisco</td>
<td>30</td>
<td>2010/07/14</td>
<td>$86,500</td>
</tr>
<tr>
<td>Shad Decker</td>
<td>Regional Director</td>
<td>Edinburgh</td>
<td>51</td>
<td>2008/11/13</td>
<td>$183,000</td>
</tr>
<tr>
<td>Michael Bruce</td>
<td>Javascript Developer</td>
<td>Singapore</td>
<td>29</td>
<td>2011/06/27</td>
<td>$183,000</td>
</tr>
<tr>
<td>Donna Snider</td>
<td>Customer Support</td>
<td>New York</td>
<td>27</td>
<td>2011/01/25</td>
<td>$112,000</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</main>
<footer class="py-4 bg-light mt-auto">
<div class="container-fluid px-4">
<div class="d-flex align-items-center justify-content-between small">
<div class="text-muted">Copyright &copy; Your Website 2023</div>
<div>
<a href="#">Privacy Policy</a>
&middot;
<a href="#">Terms &amp; Conditions</a>
</div>
</div>
</div>
</footer>
</div>
</div>
<script src="../bootstrap/node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
<script src="js/scripts.js"></script>
<script src="Chart.min.js" crossorigin="anonymous"></script>
<script src="assets/demo/chart-area-demo.js"></script>
<script src="assets/demo/chart-bar-demo.js"></script>
<script src="simple-datatables.min.js" crossorigin="anonymous"></script>
<script src="js/datatables-simple-demo.js"></script>
</body>
</html>

View File

@ -1,9 +0,0 @@
window.addEventListener('DOMContentLoaded', event => {
// Simple-DataTables
// https://github.com/fiduswriter/Simple-DataTables/wiki
const datatablesSimple = document.getElementById('datatablesSimple');
if (datatablesSimple) {
new simpleDatatables.DataTable(datatablesSimple);
}
});

View File

@ -1,26 +0,0 @@
/*!
* Start Bootstrap - SB Admin v7.0.6 (https://startbootstrap.com/template/sb-admin)
* Copyright 2013-2023 Start Bootstrap
* Licensed under MIT (https://github.com/StartBootstrap/startbootstrap-sb-admin/blob/master/LICENSE)
*/
//
// Scripts
//
window.addEventListener('DOMContentLoaded', event => {
// Toggle the side navigation
const sidebarToggle = document.body.querySelector('#sidebarToggle');
if (sidebarToggle) {
// Uncomment Below to persist sidebar toggle between refreshes
// if (localStorage.getItem('sb|sidebar-toggle') === 'true') {
// document.body.classList.toggle('sb-sidenav-toggled');
// }
sidebarToggle.addEventListener('click', event => {
event.preventDefault();
document.body.classList.toggle('sb-sidenav-toggled');
localStorage.setItem('sb|sidebar-toggle', document.body.classList.contains('sb-sidenav-toggled'));
});
}
});

View File

@ -1,147 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>Sidenav Light - SB Admin</title>
<link href="css/styles.css" rel="stylesheet" />
<script src="https://use.fontawesome.com/releases/v6.3.0/js/all.js" crossorigin="anonymous"></script>
</head>
<body class="sb-nav-fixed">
<nav class="sb-topnav navbar navbar-expand navbar-dark bg-dark">
<!-- Navbar Brand-->
<a class="navbar-brand ps-3" href="index.html">Start Bootstrap</a>
<!-- Sidebar Toggle-->
<button class="btn btn-link btn-sm order-1 order-lg-0 me-4 me-lg-0" id="sidebarToggle" href="#!"><i class="fas fa-bars"></i></button>
<!-- Navbar Search-->
<form class="d-none d-md-inline-block form-inline ms-auto me-0 me-md-3 my-2 my-md-0">
<div class="input-group">
<input class="form-control" type="text" placeholder="Search for..." aria-label="Search for..." aria-describedby="btnNavbarSearch" />
<button class="btn btn-primary" id="btnNavbarSearch" type="button"><i class="fas fa-search"></i></button>
</div>
</form>
<!-- Navbar-->
<ul class="navbar-nav ms-auto ms-md-0 me-3 me-lg-4">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" id="navbarDropdown" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false"><i class="fas fa-user fa-fw"></i></a>
<ul class="dropdown-menu dropdown-menu-end" aria-labelledby="navbarDropdown">
<li><a class="dropdown-item" href="#!">Settings</a></li>
<li><a class="dropdown-item" href="#!">Activity Log</a></li>
<li><hr class="dropdown-divider" /></li>
<li><a class="dropdown-item" href="#!">Logout</a></li>
</ul>
</li>
</ul>
</nav>
<div id="layoutSidenav">
<div id="layoutSidenav_nav">
<nav class="sb-sidenav accordion sb-sidenav-light" id="sidenavAccordion">
<div class="sb-sidenav-menu">
<div class="nav">
<div class="sb-sidenav-menu-heading">Core</div>
<a class="nav-link" href="index.html">
<div class="sb-nav-link-icon"><i class="fas fa-tachometer-alt"></i></div>
Dashboard
</a>
<div class="sb-sidenav-menu-heading">Interface</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#collapseLayouts" aria-expanded="false" aria-controls="collapseLayouts">
<div class="sb-nav-link-icon"><i class="fas fa-columns"></i></div>
Layouts
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="collapseLayouts" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordion">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="layout-static.html">Static Navigation</a>
<a class="nav-link" href="layout-sidenav-light.html">Light Sidenav</a>
</nav>
</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#collapsePages" aria-expanded="false" aria-controls="collapsePages">
<div class="sb-nav-link-icon"><i class="fas fa-book-open"></i></div>
Pages
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="collapsePages" aria-labelledby="headingTwo" data-bs-parent="#sidenavAccordion">
<nav class="sb-sidenav-menu-nested nav accordion" id="sidenavAccordionPages">
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#pagesCollapseAuth" aria-expanded="false" aria-controls="pagesCollapseAuth">
Authentication
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="pagesCollapseAuth" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordionPages">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="login.html">Login</a>
<a class="nav-link" href="register.html">Register</a>
<a class="nav-link" href="password.html">Forgot Password</a>
</nav>
</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#pagesCollapseError" aria-expanded="false" aria-controls="pagesCollapseError">
Error
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="pagesCollapseError" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordionPages">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="401.html">401 Page</a>
<a class="nav-link" href="404.html">404 Page</a>
<a class="nav-link" href="500.html">500 Page</a>
</nav>
</div>
</nav>
</div>
<div class="sb-sidenav-menu-heading">Addons</div>
<a class="nav-link" href="charts.html">
<div class="sb-nav-link-icon"><i class="fas fa-chart-area"></i></div>
Charts
</a>
<a class="nav-link" href="tables.html">
<div class="sb-nav-link-icon"><i class="fas fa-table"></i></div>
Tables
</a>
</div>
</div>
<div class="sb-sidenav-footer">
<div class="small">Logged in as:</div>
Start Bootstrap
</div>
</nav>
</div>
<div id="layoutSidenav_content">
<main>
<div class="container-fluid px-4">
<h1 class="mt-4">Sidenav Light</h1>
<ol class="breadcrumb mb-4">
<li class="breadcrumb-item"><a href="index.html">Dashboard</a></li>
<li class="breadcrumb-item active">Sidenav Light</li>
</ol>
<div class="card mb-4">
<div class="card-body">
This page is an example of using the light side navigation option. By appending the
<code>.sb-sidenav-light</code>
class to the
<code>.sb-sidenav</code>
class, the side navigation will take on a light color scheme. The
<code>.sb-sidenav-dark</code>
is also available for a darker option.
</div>
</div>
</div>
</main>
<footer class="py-4 bg-light mt-auto">
<div class="container-fluid px-4">
<div class="d-flex align-items-center justify-content-between small">
<div class="text-muted">Copyright &copy; Your Website 2023</div>
<div>
<a href="#">Privacy Policy</a>
&middot;
<a href="#">Terms &amp; Conditions</a>
</div>
</div>
</div>
</footer>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
<script src="js/scripts.js"></script>
</body>
</html>

View File

@ -1,149 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>Static Navigation - SB Admin</title>
<link href="css/styles.css" rel="stylesheet" />
<script src="https://use.fontawesome.com/releases/v6.3.0/js/all.js" crossorigin="anonymous"></script>
</head>
<body>
<nav class="sb-topnav navbar navbar-expand navbar-dark bg-dark">
<!-- Navbar Brand-->
<a class="navbar-brand ps-3" href="index.html">Start Bootstrap</a>
<!-- Sidebar Toggle-->
<button class="btn btn-link btn-sm order-1 order-lg-0 me-4 me-lg-0" id="sidebarToggle" href="#!"><i class="fas fa-bars"></i></button>
<!-- Navbar Search-->
<form class="d-none d-md-inline-block form-inline ms-auto me-0 me-md-3 my-2 my-md-0">
<div class="input-group">
<input class="form-control" type="text" placeholder="Search for..." aria-label="Search for..." aria-describedby="btnNavbarSearch" />
<button class="btn btn-primary" id="btnNavbarSearch" type="button"><i class="fas fa-search"></i></button>
</div>
</form>
<!-- Navbar-->
<ul class="navbar-nav ms-auto ms-md-0 me-3 me-lg-4">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" id="navbarDropdown" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false"><i class="fas fa-user fa-fw"></i></a>
<ul class="dropdown-menu dropdown-menu-end" aria-labelledby="navbarDropdown">
<li><a class="dropdown-item" href="#!">Settings</a></li>
<li><a class="dropdown-item" href="#!">Activity Log</a></li>
<li><hr class="dropdown-divider" /></li>
<li><a class="dropdown-item" href="#!">Logout</a></li>
</ul>
</li>
</ul>
</nav>
<div id="layoutSidenav">
<div id="layoutSidenav_nav">
<nav class="sb-sidenav accordion sb-sidenav-dark" id="sidenavAccordion">
<div class="sb-sidenav-menu">
<div class="nav">
<div class="sb-sidenav-menu-heading">Core</div>
<a class="nav-link" href="index.html">
<div class="sb-nav-link-icon"><i class="fas fa-tachometer-alt"></i></div>
Dashboard
</a>
<div class="sb-sidenav-menu-heading">Interface</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#collapseLayouts" aria-expanded="false" aria-controls="collapseLayouts">
<div class="sb-nav-link-icon"><i class="fas fa-columns"></i></div>
Layouts
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="collapseLayouts" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordion">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="layout-static.html">Static Navigation</a>
<a class="nav-link" href="layout-sidenav-light.html">Light Sidenav</a>
</nav>
</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#collapsePages" aria-expanded="false" aria-controls="collapsePages">
<div class="sb-nav-link-icon"><i class="fas fa-book-open"></i></div>
Pages
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="collapsePages" aria-labelledby="headingTwo" data-bs-parent="#sidenavAccordion">
<nav class="sb-sidenav-menu-nested nav accordion" id="sidenavAccordionPages">
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#pagesCollapseAuth" aria-expanded="false" aria-controls="pagesCollapseAuth">
Authentication
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="pagesCollapseAuth" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordionPages">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="login.html">Login</a>
<a class="nav-link" href="register.html">Register</a>
<a class="nav-link" href="password.html">Forgot Password</a>
</nav>
</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#pagesCollapseError" aria-expanded="false" aria-controls="pagesCollapseError">
Error
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="pagesCollapseError" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordionPages">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="401.html">401 Page</a>
<a class="nav-link" href="404.html">404 Page</a>
<a class="nav-link" href="500.html">500 Page</a>
</nav>
</div>
</nav>
</div>
<div class="sb-sidenav-menu-heading">Addons</div>
<a class="nav-link" href="charts.html">
<div class="sb-nav-link-icon"><i class="fas fa-chart-area"></i></div>
Charts
</a>
<a class="nav-link" href="tables.html">
<div class="sb-nav-link-icon"><i class="fas fa-table"></i></div>
Tables
</a>
</div>
</div>
<div class="sb-sidenav-footer">
<div class="small">Logged in as:</div>
Start Bootstrap
</div>
</nav>
</div>
<div id="layoutSidenav_content">
<main>
<div class="container-fluid px-4">
<h1 class="mt-4">Static Navigation</h1>
<ol class="breadcrumb mb-4">
<li class="breadcrumb-item"><a href="index.html">Dashboard</a></li>
<li class="breadcrumb-item active">Static Navigation</li>
</ol>
<div class="card mb-4">
<div class="card-body">
<p class="mb-0">
This page is an example of using static navigation. By removing the
<code>.sb-nav-fixed</code>
class from the
<code>body</code>
, the top navigation and side navigation will become static on scroll. Scroll down this page to see an example.
</p>
</div>
</div>
<div style="height: 100vh"></div>
<div class="card mb-4"><div class="card-body">When scrolling, the navigation stays at the top of the page. This is the end of the static navigation demo.</div></div>
</div>
</main>
<footer class="py-4 bg-light mt-auto">
<div class="container-fluid px-4">
<div class="d-flex align-items-center justify-content-between small">
<div class="text-muted">Copyright &copy; Your Website 2023</div>
<div>
<a href="#">Privacy Policy</a>
&middot;
<a href="#">Terms &amp; Conditions</a>
</div>
</div>
</div>
</footer>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
<script src="js/scripts.js"></script>
</body>
</html>

View File

@ -1,69 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>Login - SB Admin</title>
<link href="css/styles.css" rel="stylesheet" />
<script src="https://use.fontawesome.com/releases/v6.3.0/js/all.js" crossorigin="anonymous"></script>
</head>
<body class="bg-primary">
<div id="layoutAuthentication">
<div id="layoutAuthentication_content">
<main>
<div class="container">
<div class="row justify-content-center">
<div class="col-lg-5">
<div class="card shadow-lg border-0 rounded-lg mt-5">
<div class="card-header"><h3 class="text-center font-weight-light my-4">Login</h3></div>
<div class="card-body">
<form>
<div class="form-floating mb-3">
<input class="form-control" id="inputEmail" type="email" placeholder="name@example.com" />
<label for="inputEmail">Email address</label>
</div>
<div class="form-floating mb-3">
<input class="form-control" id="inputPassword" type="password" placeholder="Password" />
<label for="inputPassword">Password</label>
</div>
<div class="form-check mb-3">
<input class="form-check-input" id="inputRememberPassword" type="checkbox" value="" />
<label class="form-check-label" for="inputRememberPassword">Remember Password</label>
</div>
<div class="d-flex align-items-center justify-content-between mt-4 mb-0">
<a class="small" href="password.html">Forgot Password?</a>
<a class="btn btn-primary" href="index.html">Login</a>
</div>
</form>
</div>
<div class="card-footer text-center py-3">
<div class="small"><a href="register.html">Need an account? Sign up!</a></div>
</div>
</div>
</div>
</div>
</div>
</main>
</div>
<div id="layoutAuthentication_footer">
<footer class="py-4 bg-light mt-auto">
<div class="container-fluid px-4">
<div class="d-flex align-items-center justify-content-between small">
<div class="text-muted">Copyright &copy; Your Website 2023</div>
<div>
<a href="#">Privacy Policy</a>
&middot;
<a href="#">Terms &amp; Conditions</a>
</div>
</div>
</div>
</footer>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
<script src="js/scripts.js"></script>
</body>
</html>

View File

@ -1,62 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>Password Reset - SB Admin</title>
<link href="css/styles.css" rel="stylesheet" />
<script src="https://use.fontawesome.com/releases/v6.3.0/js/all.js" crossorigin="anonymous"></script>
</head>
<body class="bg-primary">
<div id="layoutAuthentication">
<div id="layoutAuthentication_content">
<main>
<div class="container">
<div class="row justify-content-center">
<div class="col-lg-5">
<div class="card shadow-lg border-0 rounded-lg mt-5">
<div class="card-header"><h3 class="text-center font-weight-light my-4">Password Recovery</h3></div>
<div class="card-body">
<div class="small mb-3 text-muted">Enter your email address and we will send you a link to reset your password.</div>
<form>
<div class="form-floating mb-3">
<input class="form-control" id="inputEmail" type="email" placeholder="name@example.com" />
<label for="inputEmail">Email address</label>
</div>
<div class="d-flex align-items-center justify-content-between mt-4 mb-0">
<a class="small" href="login.html">Return to login</a>
<a class="btn btn-primary" href="login.html">Reset Password</a>
</div>
</form>
</div>
<div class="card-footer text-center py-3">
<div class="small"><a href="register.html">Need an account? Sign up!</a></div>
</div>
</div>
</div>
</div>
</div>
</main>
</div>
<div id="layoutAuthentication_footer">
<footer class="py-4 bg-light mt-auto">
<div class="container-fluid px-4">
<div class="d-flex align-items-center justify-content-between small">
<div class="text-muted">Copyright &copy; Your Website 2023</div>
<div>
<a href="#">Privacy Policy</a>
&middot;
<a href="#">Terms &amp; Conditions</a>
</div>
</div>
</div>
</footer>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
<script src="js/scripts.js"></script>
</body>
</html>

View File

@ -1,88 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>Register - SB Admin</title>
<link href="css/styles.css" rel="stylesheet" />
<script src="https://use.fontawesome.com/releases/v6.3.0/js/all.js" crossorigin="anonymous"></script>
</head>
<body class="bg-primary">
<div id="layoutAuthentication">
<div id="layoutAuthentication_content">
<main>
<div class="container">
<div class="row justify-content-center">
<div class="col-lg-7">
<div class="card shadow-lg border-0 rounded-lg mt-5">
<div class="card-header"><h3 class="text-center font-weight-light my-4">Create Account</h3></div>
<div class="card-body">
<form>
<div class="row mb-3">
<div class="col-md-6">
<div class="form-floating mb-3 mb-md-0">
<input class="form-control" id="inputFirstName" type="text" placeholder="Enter your first name" />
<label for="inputFirstName">First name</label>
</div>
</div>
<div class="col-md-6">
<div class="form-floating">
<input class="form-control" id="inputLastName" type="text" placeholder="Enter your last name" />
<label for="inputLastName">Last name</label>
</div>
</div>
</div>
<div class="form-floating mb-3">
<input class="form-control" id="inputEmail" type="email" placeholder="name@example.com" />
<label for="inputEmail">Email address</label>
</div>
<div class="row mb-3">
<div class="col-md-6">
<div class="form-floating mb-3 mb-md-0">
<input class="form-control" id="inputPassword" type="password" placeholder="Create a password" />
<label for="inputPassword">Password</label>
</div>
</div>
<div class="col-md-6">
<div class="form-floating mb-3 mb-md-0">
<input class="form-control" id="inputPasswordConfirm" type="password" placeholder="Confirm password" />
<label for="inputPasswordConfirm">Confirm Password</label>
</div>
</div>
</div>
<div class="mt-4 mb-0">
<div class="d-grid"><a class="btn btn-primary btn-block" href="login.html">Create Account</a></div>
</div>
</form>
</div>
<div class="card-footer text-center py-3">
<div class="small"><a href="login.html">Have an account? Go to login</a></div>
</div>
</div>
</div>
</div>
</div>
</main>
</div>
<div id="layoutAuthentication_footer">
<footer class="py-4 bg-light mt-auto">
<div class="container-fluid px-4">
<div class="d-flex align-items-center justify-content-between small">
<div class="text-muted">Copyright &copy; Your Website 2023</div>
<div>
<a href="#">Privacy Policy</a>
&middot;
<a href="#">Terms &amp; Conditions</a>
</div>
</div>
</div>
</footer>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
<script src="js/scripts.js"></script>
</body>
</html>

File diff suppressed because one or more lines are too long

View File

@ -1,8 +0,0 @@
/**
* Minified by jsDelivr using clean-css v5.3.1.
* Original file: /npm/simple-datatables@7.1.2/dist/style.css
*
* Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files
*/
.datatable-wrapper.no-header .datatable-container{border-top:1px solid #d9d9d9}.datatable-wrapper.no-footer .datatable-container{border-bottom:1px solid #d9d9d9}.datatable-bottom,.datatable-top{padding:8px 10px}.datatable-bottom>div:first-child,.datatable-bottom>nav:first-child,.datatable-top>div:first-child,.datatable-top>nav:first-child{float:left}.datatable-bottom>div:last-child,.datatable-bottom>nav:last-child,.datatable-top>div:last-child,.datatable-top>nav:last-child{float:right}.datatable-selector{padding:6px}.datatable-input{padding:6px 12px}.datatable-info{margin:7px 0}.datatable-pagination ul{margin:0;padding-left:0}.datatable-pagination li{list-style:none;float:left}.datatable-pagination li.datatable-hidden{visibility:hidden}.datatable-pagination a{border:1px solid transparent;float:left;margin-left:2px;padding:6px 12px;position:relative;text-decoration:none;color:#333;cursor:pointer}.datatable-pagination a:hover{background-color:#d9d9d9}.datatable-pagination .datatable-active a,.datatable-pagination .datatable-active a:focus,.datatable-pagination .datatable-active a:hover{background-color:#d9d9d9;cursor:default}.datatable-pagination .datatable-disabled a,.datatable-pagination .datatable-disabled a:focus,.datatable-pagination .datatable-disabled a:hover,.datatable-pagination .datatable-ellipsis a{pointer-events:none;cursor:default}.datatable-pagination .datatable-disabled a,.datatable-pagination .datatable-disabled a:focus,.datatable-pagination .datatable-disabled a:hover{cursor:not-allowed;opacity:.4}.datatable-pagination .datatable-pagination a{font-weight:700}.datatable-table{max-width:100%;width:100%;border-spacing:0;border-collapse:separate}.datatable-table>tbody>tr>td,.datatable-table>tbody>tr>th,.datatable-table>tfoot>tr>td,.datatable-table>tfoot>tr>th,.datatable-table>thead>tr>td,.datatable-table>thead>tr>th{vertical-align:top;padding:8px 10px}.datatable-table>thead>tr>th{vertical-align:bottom;text-align:left;border-bottom:1px solid #d9d9d9}.datatable-table>tfoot>tr>th{vertical-align:bottom;text-align:left;border-top:1px solid #d9d9d9}.datatable-table th{vertical-align:bottom;text-align:left}.datatable-table th a{text-decoration:none;color:inherit}.datatable-filter,.datatable-sorter{display:inline-block;height:100%;position:relative;width:100%}.datatable-sorter::after,.datatable-sorter::before{content:"";height:0;width:0;position:absolute;right:4px;border-left:4px solid transparent;border-right:4px solid transparent;opacity:.2}.datatable-sorter::before{border-top:4px solid #000;bottom:0}.datatable-sorter::after{border-bottom:4px solid #000;border-top:4px solid transparent;top:0}.datatable-ascending .datatable-filter::after,.datatable-ascending .datatable-sorter::after,.datatable-descending .datatable-filter::before,.datatable-descending .datatable-sorter::before{opacity:.6}.datatable-filter::before{content:"";position:absolute;right:4px;opacity:.2;width:0;height:0;border-left:7px solid transparent;border-right:7px solid transparent;border-radius:50%;border-top:10px solid #000;top:25%}.datatable-filter-active .datatable-filter::before{opacity:.6}.datatable-empty{text-align:center}.datatable-bottom::after,.datatable-top::after{clear:both;content:" ";display:table}table.datatable-table:focus tr.datatable-cursor>td:first-child{border-left:3px #00f solid}table.datatable-table:focus{outline:solid 1px black;outline-offset:-1px}
/*# sourceMappingURL=/sm/7faebb93ab083e20bf71c693c970b2206a78620f4a20eb890eeaee129d14cd66.map */

View File

@ -1,634 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>Tables - SB Admin</title>
<link href="https://cdn.jsdelivr.net/npm/simple-datatables@7.1.2/dist/style.min.css" rel="stylesheet" />
<link href="css/styles.css" rel="stylesheet" />
<script src="https://use.fontawesome.com/releases/v6.3.0/js/all.js" crossorigin="anonymous"></script>
</head>
<body class="sb-nav-fixed">
<nav class="sb-topnav navbar navbar-expand navbar-dark bg-dark">
<!-- Navbar Brand-->
<a class="navbar-brand ps-3" href="index.html">Start Bootstrap</a>
<!-- Sidebar Toggle-->
<button class="btn btn-link btn-sm order-1 order-lg-0 me-4 me-lg-0" id="sidebarToggle" href="#!"><i class="fas fa-bars"></i></button>
<!-- Navbar Search-->
<form class="d-none d-md-inline-block form-inline ms-auto me-0 me-md-3 my-2 my-md-0">
<div class="input-group">
<input class="form-control" type="text" placeholder="Search for..." aria-label="Search for..." aria-describedby="btnNavbarSearch" />
<button class="btn btn-primary" id="btnNavbarSearch" type="button"><i class="fas fa-search"></i></button>
</div>
</form>
<!-- Navbar-->
<ul class="navbar-nav ms-auto ms-md-0 me-3 me-lg-4">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" id="navbarDropdown" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false"><i class="fas fa-user fa-fw"></i></a>
<ul class="dropdown-menu dropdown-menu-end" aria-labelledby="navbarDropdown">
<li><a class="dropdown-item" href="#!">Settings</a></li>
<li><a class="dropdown-item" href="#!">Activity Log</a></li>
<li><hr class="dropdown-divider" /></li>
<li><a class="dropdown-item" href="#!">Logout</a></li>
</ul>
</li>
</ul>
</nav>
<div id="layoutSidenav">
<div id="layoutSidenav_nav">
<nav class="sb-sidenav accordion sb-sidenav-dark" id="sidenavAccordion">
<div class="sb-sidenav-menu">
<div class="nav">
<div class="sb-sidenav-menu-heading">Core</div>
<a class="nav-link" href="index.html">
<div class="sb-nav-link-icon"><i class="fas fa-tachometer-alt"></i></div>
Dashboard
</a>
<div class="sb-sidenav-menu-heading">Interface</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#collapseLayouts" aria-expanded="false" aria-controls="collapseLayouts">
<div class="sb-nav-link-icon"><i class="fas fa-columns"></i></div>
Layouts
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="collapseLayouts" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordion">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="layout-static.html">Static Navigation</a>
<a class="nav-link" href="layout-sidenav-light.html">Light Sidenav</a>
</nav>
</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#collapsePages" aria-expanded="false" aria-controls="collapsePages">
<div class="sb-nav-link-icon"><i class="fas fa-book-open"></i></div>
Pages
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="collapsePages" aria-labelledby="headingTwo" data-bs-parent="#sidenavAccordion">
<nav class="sb-sidenav-menu-nested nav accordion" id="sidenavAccordionPages">
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#pagesCollapseAuth" aria-expanded="false" aria-controls="pagesCollapseAuth">
Authentication
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="pagesCollapseAuth" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordionPages">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="login.html">Login</a>
<a class="nav-link" href="register.html">Register</a>
<a class="nav-link" href="password.html">Forgot Password</a>
</nav>
</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#pagesCollapseError" aria-expanded="false" aria-controls="pagesCollapseError">
Error
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="pagesCollapseError" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordionPages">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="401.html">401 Page</a>
<a class="nav-link" href="404.html">404 Page</a>
<a class="nav-link" href="500.html">500 Page</a>
</nav>
</div>
</nav>
</div>
<div class="sb-sidenav-menu-heading">Addons</div>
<a class="nav-link" href="charts.html">
<div class="sb-nav-link-icon"><i class="fas fa-chart-area"></i></div>
Charts
</a>
<a class="nav-link" href="tables.html">
<div class="sb-nav-link-icon"><i class="fas fa-table"></i></div>
Tables
</a>
</div>
</div>
<div class="sb-sidenav-footer">
<div class="small">Logged in as:</div>
Start Bootstrap
</div>
</nav>
</div>
<div id="layoutSidenav_content">
<main>
<div class="container-fluid px-4">
<h1 class="mt-4">Tables</h1>
<ol class="breadcrumb mb-4">
<li class="breadcrumb-item"><a href="index.html">Dashboard</a></li>
<li class="breadcrumb-item active">Tables</li>
</ol>
<div class="card mb-4">
<div class="card-body">
DataTables is a third party plugin that is used to generate the demo table below. For more information about DataTables, please visit the
<a target="_blank" href="https://datatables.net/">official DataTables documentation</a>
.
</div>
</div>
<div class="card mb-4">
<div class="card-header">
<i class="fas fa-table me-1"></i>
DataTable Example
</div>
<div class="card-body">
<table id="datatablesSimple">
<thead>
<tr>
<th>Name</th>
<th>Position</th>
<th>Office</th>
<th>Age</th>
<th>Start date</th>
<th>Salary</th>
</tr>
</thead>
<tfoot>
<tr>
<th>Name</th>
<th>Position</th>
<th>Office</th>
<th>Age</th>
<th>Start date</th>
<th>Salary</th>
</tr>
</tfoot>
<tbody>
<tr>
<td>Tiger Nixon</td>
<td>System Architect</td>
<td>Edinburgh</td>
<td>61</td>
<td>2011/04/25</td>
<td>$320,800</td>
</tr>
<tr>
<td>Garrett Winters</td>
<td>Accountant</td>
<td>Tokyo</td>
<td>63</td>
<td>2011/07/25</td>
<td>$170,750</td>
</tr>
<tr>
<td>Ashton Cox</td>
<td>Junior Technical Author</td>
<td>San Francisco</td>
<td>66</td>
<td>2009/01/12</td>
<td>$86,000</td>
</tr>
<tr>
<td>Cedric Kelly</td>
<td>Senior Javascript Developer</td>
<td>Edinburgh</td>
<td>22</td>
<td>2012/03/29</td>
<td>$433,060</td>
</tr>
<tr>
<td>Airi Satou</td>
<td>Accountant</td>
<td>Tokyo</td>
<td>33</td>
<td>2008/11/28</td>
<td>$162,700</td>
</tr>
<tr>
<td>Brielle Williamson</td>
<td>Integration Specialist</td>
<td>New York</td>
<td>61</td>
<td>2012/12/02</td>
<td>$372,000</td>
</tr>
<tr>
<td>Herrod Chandler</td>
<td>Sales Assistant</td>
<td>San Francisco</td>
<td>59</td>
<td>2012/08/06</td>
<td>$137,500</td>
</tr>
<tr>
<td>Rhona Davidson</td>
<td>Integration Specialist</td>
<td>Tokyo</td>
<td>55</td>
<td>2010/10/14</td>
<td>$327,900</td>
</tr>
<tr>
<td>Colleen Hurst</td>
<td>Javascript Developer</td>
<td>San Francisco</td>
<td>39</td>
<td>2009/09/15</td>
<td>$205,500</td>
</tr>
<tr>
<td>Sonya Frost</td>
<td>Software Engineer</td>
<td>Edinburgh</td>
<td>23</td>
<td>2008/12/13</td>
<td>$103,600</td>
</tr>
<tr>
<td>Jena Gaines</td>
<td>Office Manager</td>
<td>London</td>
<td>30</td>
<td>2008/12/19</td>
<td>$90,560</td>
</tr>
<tr>
<td>Quinn Flynn</td>
<td>Support Lead</td>
<td>Edinburgh</td>
<td>22</td>
<td>2013/03/03</td>
<td>$342,000</td>
</tr>
<tr>
<td>Charde Marshall</td>
<td>Regional Director</td>
<td>San Francisco</td>
<td>36</td>
<td>2008/10/16</td>
<td>$470,600</td>
</tr>
<tr>
<td>Haley Kennedy</td>
<td>Senior Marketing Designer</td>
<td>London</td>
<td>43</td>
<td>2012/12/18</td>
<td>$313,500</td>
</tr>
<tr>
<td>Tatyana Fitzpatrick</td>
<td>Regional Director</td>
<td>London</td>
<td>19</td>
<td>2010/03/17</td>
<td>$385,750</td>
</tr>
<tr>
<td>Michael Silva</td>
<td>Marketing Designer</td>
<td>London</td>
<td>66</td>
<td>2012/11/27</td>
<td>$198,500</td>
</tr>
<tr>
<td>Paul Byrd</td>
<td>Chief Financial Officer (CFO)</td>
<td>New York</td>
<td>64</td>
<td>2010/06/09</td>
<td>$725,000</td>
</tr>
<tr>
<td>Gloria Little</td>
<td>Systems Administrator</td>
<td>New York</td>
<td>59</td>
<td>2009/04/10</td>
<td>$237,500</td>
</tr>
<tr>
<td>Bradley Greer</td>
<td>Software Engineer</td>
<td>London</td>
<td>41</td>
<td>2012/10/13</td>
<td>$132,000</td>
</tr>
<tr>
<td>Dai Rios</td>
<td>Personnel Lead</td>
<td>Edinburgh</td>
<td>35</td>
<td>2012/09/26</td>
<td>$217,500</td>
</tr>
<tr>
<td>Jenette Caldwell</td>
<td>Development Lead</td>
<td>New York</td>
<td>30</td>
<td>2011/09/03</td>
<td>$345,000</td>
</tr>
<tr>
<td>Yuri Berry</td>
<td>Chief Marketing Officer (CMO)</td>
<td>New York</td>
<td>40</td>
<td>2009/06/25</td>
<td>$675,000</td>
</tr>
<tr>
<td>Caesar Vance</td>
<td>Pre-Sales Support</td>
<td>New York</td>
<td>21</td>
<td>2011/12/12</td>
<td>$106,450</td>
</tr>
<tr>
<td>Doris Wilder</td>
<td>Sales Assistant</td>
<td>Sidney</td>
<td>23</td>
<td>2010/09/20</td>
<td>$85,600</td>
</tr>
<tr>
<td>Angelica Ramos</td>
<td>Chief Executive Officer (CEO)</td>
<td>London</td>
<td>47</td>
<td>2009/10/09</td>
<td>$1,200,000</td>
</tr>
<tr>
<td>Gavin Joyce</td>
<td>Developer</td>
<td>Edinburgh</td>
<td>42</td>
<td>2010/12/22</td>
<td>$92,575</td>
</tr>
<tr>
<td>Jennifer Chang</td>
<td>Regional Director</td>
<td>Singapore</td>
<td>28</td>
<td>2010/11/14</td>
<td>$357,650</td>
</tr>
<tr>
<td>Brenden Wagner</td>
<td>Software Engineer</td>
<td>San Francisco</td>
<td>28</td>
<td>2011/06/07</td>
<td>$206,850</td>
</tr>
<tr>
<td>Fiona Green</td>
<td>Chief Operating Officer (COO)</td>
<td>San Francisco</td>
<td>48</td>
<td>2010/03/11</td>
<td>$850,000</td>
</tr>
<tr>
<td>Shou Itou</td>
<td>Regional Marketing</td>
<td>Tokyo</td>
<td>20</td>
<td>2011/08/14</td>
<td>$163,000</td>
</tr>
<tr>
<td>Michelle House</td>
<td>Integration Specialist</td>
<td>Sidney</td>
<td>37</td>
<td>2011/06/02</td>
<td>$95,400</td>
</tr>
<tr>
<td>Suki Burks</td>
<td>Developer</td>
<td>London</td>
<td>53</td>
<td>2009/10/22</td>
<td>$114,500</td>
</tr>
<tr>
<td>Prescott Bartlett</td>
<td>Technical Author</td>
<td>London</td>
<td>27</td>
<td>2011/05/07</td>
<td>$145,000</td>
</tr>
<tr>
<td>Gavin Cortez</td>
<td>Team Leader</td>
<td>San Francisco</td>
<td>22</td>
<td>2008/10/26</td>
<td>$235,500</td>
</tr>
<tr>
<td>Martena Mccray</td>
<td>Post-Sales support</td>
<td>Edinburgh</td>
<td>46</td>
<td>2011/03/09</td>
<td>$324,050</td>
</tr>
<tr>
<td>Unity Butler</td>
<td>Marketing Designer</td>
<td>San Francisco</td>
<td>47</td>
<td>2009/12/09</td>
<td>$85,675</td>
</tr>
<tr>
<td>Howard Hatfield</td>
<td>Office Manager</td>
<td>San Francisco</td>
<td>51</td>
<td>2008/12/16</td>
<td>$164,500</td>
</tr>
<tr>
<td>Hope Fuentes</td>
<td>Secretary</td>
<td>San Francisco</td>
<td>41</td>
<td>2010/02/12</td>
<td>$109,850</td>
</tr>
<tr>
<td>Vivian Harrell</td>
<td>Financial Controller</td>
<td>San Francisco</td>
<td>62</td>
<td>2009/02/14</td>
<td>$452,500</td>
</tr>
<tr>
<td>Timothy Mooney</td>
<td>Office Manager</td>
<td>London</td>
<td>37</td>
<td>2008/12/11</td>
<td>$136,200</td>
</tr>
<tr>
<td>Jackson Bradshaw</td>
<td>Director</td>
<td>New York</td>
<td>65</td>
<td>2008/09/26</td>
<td>$645,750</td>
</tr>
<tr>
<td>Olivia Liang</td>
<td>Support Engineer</td>
<td>Singapore</td>
<td>64</td>
<td>2011/02/03</td>
<td>$234,500</td>
</tr>
<tr>
<td>Bruno Nash</td>
<td>Software Engineer</td>
<td>London</td>
<td>38</td>
<td>2011/05/03</td>
<td>$163,500</td>
</tr>
<tr>
<td>Sakura Yamamoto</td>
<td>Support Engineer</td>
<td>Tokyo</td>
<td>37</td>
<td>2009/08/19</td>
<td>$139,575</td>
</tr>
<tr>
<td>Thor Walton</td>
<td>Developer</td>
<td>New York</td>
<td>61</td>
<td>2013/08/11</td>
<td>$98,540</td>
</tr>
<tr>
<td>Finn Camacho</td>
<td>Support Engineer</td>
<td>San Francisco</td>
<td>47</td>
<td>2009/07/07</td>
<td>$87,500</td>
</tr>
<tr>
<td>Serge Baldwin</td>
<td>Data Coordinator</td>
<td>Singapore</td>
<td>64</td>
<td>2012/04/09</td>
<td>$138,575</td>
</tr>
<tr>
<td>Zenaida Frank</td>
<td>Software Engineer</td>
<td>New York</td>
<td>63</td>
<td>2010/01/04</td>
<td>$125,250</td>
</tr>
<tr>
<td>Zorita Serrano</td>
<td>Software Engineer</td>
<td>San Francisco</td>
<td>56</td>
<td>2012/06/01</td>
<td>$115,000</td>
</tr>
<tr>
<td>Jennifer Acosta</td>
<td>Junior Javascript Developer</td>
<td>Edinburgh</td>
<td>43</td>
<td>2013/02/01</td>
<td>$75,650</td>
</tr>
<tr>
<td>Cara Stevens</td>
<td>Sales Assistant</td>
<td>New York</td>
<td>46</td>
<td>2011/12/06</td>
<td>$145,600</td>
</tr>
<tr>
<td>Hermione Butler</td>
<td>Regional Director</td>
<td>London</td>
<td>47</td>
<td>2011/03/21</td>
<td>$356,250</td>
</tr>
<tr>
<td>Lael Greer</td>
<td>Systems Administrator</td>
<td>London</td>
<td>21</td>
<td>2009/02/27</td>
<td>$103,500</td>
</tr>
<tr>
<td>Jonas Alexander</td>
<td>Developer</td>
<td>San Francisco</td>
<td>30</td>
<td>2010/07/14</td>
<td>$86,500</td>
</tr>
<tr>
<td>Shad Decker</td>
<td>Regional Director</td>
<td>Edinburgh</td>
<td>51</td>
<td>2008/11/13</td>
<td>$183,000</td>
</tr>
<tr>
<td>Michael Bruce</td>
<td>Javascript Developer</td>
<td>Singapore</td>
<td>29</td>
<td>2011/06/27</td>
<td>$183,000</td>
</tr>
<tr>
<td>Donna Snider</td>
<td>Customer Support</td>
<td>New York</td>
<td>27</td>
<td>2011/01/25</td>
<td>$112,000</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</main>
<footer class="py-4 bg-light mt-auto">
<div class="container-fluid px-4">
<div class="d-flex align-items-center justify-content-between small">
<div class="text-muted">Copyright &copy; Your Website 2023</div>
<div>
<a href="#">Privacy Policy</a>
&middot;
<a href="#">Terms &amp; Conditions</a>
</div>
</div>
</div>
</footer>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
<script src="js/scripts.js"></script>
<script src="https://cdn.jsdelivr.net/npm/simple-datatables@7.1.2/dist/umd/simple-datatables.min.js" crossorigin="anonymous"></script>
<script src="js/datatables-simple-demo.js"></script>
</body>
</html>

View File

@ -1,6 +1,13 @@
function login(){
var mail = document.getElementById("mail").value;
var password = document.getElementById("password").value;
var angemeldet_bleiben = document.getElementById("angemeldet_bleiben");
if(angemeldet_bleiben.checked == true){
var angemeldet_bleiben = 1;
}else{
var angemeldet_bleiben = 0;
}
$.ajax({
type: 'POST',
@ -8,7 +15,8 @@ function login(){
data: {
'function': 'login',
'mail': mail,
'password': password
'password': password,
'angemeldet_bleiben': angemeldet_bleiben
},
success: function(result) { //we got the response
if(result!=''){
@ -19,7 +27,7 @@ function login(){
$('#msg').show().delay(1000).fadeOut(500);
$('#msg').html(a[0]);
$(document).ajaxStop(function(){
setTimeout(() => { window.location = "startseite.php"; }, 1000);
setTimeout(() => { window.location = "index.php"; }, 1000);
});
}else{

View File

@ -1,23 +0,0 @@
var ShowPasswordToggle = document.querySelector("[type='password']");
ShowPasswordToggle.onclick = function () {
document.querySelector("[type='password']").classList.add("input-password");
document.getElementById("toggle-password").classList.remove("d-none");
const passwordInput = document.querySelector("[type='password']");
const togglePasswordButton = document.getElementById("toggle-password");
togglePasswordButton.addEventListener("click", togglePassword);
function togglePassword() {
if (passwordInput.type === "password") {
passwordInput.type = "text";
togglePasswordButton.setAttribute("aria-label", "Hide password.");
} else {
passwordInput.type = "password";
togglePasswordButton.setAttribute(
"aria-label",
"Show password as plain text. " +
"Warning: this will display your password on the screen."
);
}
}
};

View File

@ -0,0 +1,61 @@
-- phpMyAdmin SQL Dump
-- version 5.1.1
-- https://www.phpmyadmin.net/
--
-- Host: 127.0.0.1
-- Erstellungszeit: 29. Mrz 2023 um 16:08
-- Server-Version: 10.4.20-MariaDB
-- PHP-Version: 8.0.9
SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8mb4 */;
--
-- Datenbank: `survey`
--
-- --------------------------------------------------------
--
-- Tabellenstruktur für Tabelle `jumi_securitytokens`
--
CREATE TABLE `jumi_securitytokens` (
`id` int(10) UNSIGNED NOT NULL,
`uid` int(11) NOT NULL,
`identifier` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`securitytoken` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
`created_at` timestamp NOT NULL DEFAULT current_timestamp()
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
--
-- Indizes der exportierten Tabellen
--
--
-- Indizes für die Tabelle `jumi_securitytokens`
--
ALTER TABLE `jumi_securitytokens`
ADD PRIMARY KEY (`id`);
--
-- AUTO_INCREMENT für exportierte Tabellen
--
--
-- AUTO_INCREMENT für Tabelle `jumi_securitytokens`
--
ALTER TABLE `jumi_securitytokens`
MODIFY `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT;
COMMIT;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;

View File

@ -14,48 +14,14 @@
<script src="js/all.js" crossorigin="anonymous"></script>
<script src="../jquery/jquery-3.4.1.min.js"></script>
<link rel="stylesheet" href="../bootstrap/node_modules/bootstrap-icons/font/bootstrap-icons.css">
<style>
<script>
function keysave(ele) {
if(event.key === 'Enter') {
changepwd();
}
}
</script>
::-ms-reveal {
display: none;
}
button#toggle-password {
position: absolute;
top: 3px;
right: 4px;
z-index: 9;
width: 28px;
height: 30px;
background: 0;
border: 0;
}
button#toggle-password:active,
button#toggle-password:focus,
button#toggle-password:hover {
cursor: pointer;
}
button#toggle-password:focus {
outline: none !important;
}
.input-password {
padding-right: calc(1.5em + 0.75rem);
background-repeat: no-repeat;
background-position: right calc(0.375em + 0.1875rem) center;
background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.input-password[type=text]:valid {
background-image: url("data:image/svg+xml,%3Csvg width='1em' height='1em' viewBox='0 0 16 16' fill='currentColor' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.359 11.238C15.06 9.72 16 8 16 8s-3-5.5-8-5.5a7.028 7.028 0 0 0-2.79.588l.77.771A5.944 5.944 0 0 1 8 3.5c2.12 0 3.879 1.168 5.168 2.457A13.134 13.134 0 0 1 14.828 8c-.058.087-.122.183-.195.288-.335.48-.83 1.12-1.465 1.755-.165.165-.337.328-.517.486l.708.709z'/%3E%3Cpath d='M11.297 9.176a3.5 3.5 0 0 0-4.474-4.474l.823.823a2.5 2.5 0 0 1 2.829 2.829l.822.822zm-2.943 1.299l.822.822a3.5 3.5 0 0 1-4.474-4.474l.823.823a2.5 2.5 0 0 0 2.829 2.829z'/%3E%3Cpath d='M3.35 5.47c-.18.16-.353.322-.518.487A13.134 13.134 0 0 0 1.172 8l.195.288c.335.48.83 1.12 1.465 1.755C4.121 11.332 5.881 12.5 8 12.5c.716 0 1.39-.133 2.02-.36l.77.772A7.029 7.029 0 0 1 8 13.5C3 13.5 0 8 0 8s.939-1.721 2.641-3.238l.708.709z'/%3E%3Cpath fill-rule='evenodd' d='M13.646 14.354l-12-12 .708-.708 12 12-.708.708z'/%3E%3C/svg%3E") !important;
}
.input-password[type=password]:valid {
background-image: url("data:image/svg+xml,%3Csvg width='1em' height='1em' viewBox='0 0 16 16' fill='currentColor' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' d='M16 8s-3-5.5-8-5.5S0 8 0 8s3 5.5 8 5.5S16 8 16 8zM1.173 8a13.134 13.134 0 0 0 1.66 2.043C4.12 11.332 5.88 12.5 8 12.5c2.12 0 3.879-1.168 5.168-2.457A13.134 13.134 0 0 0 14.828 8a13.133 13.133 0 0 0-1.66-2.043C11.879 4.668 10.119 3.5 8 3.5c-2.12 0-3.879 1.168-5.168 2.457A13.133 13.133 0 0 0 1.172 8z'/%3E%3Cpath fill-rule='evenodd' d='M8 5.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5zM4.5 8a3.5 3.5 0 1 1 7 0 3.5 3.5 0 0 1-7 0z'/%3E%3C/svg%3E") !important;
}
</style>
</head>
<body class="sb-nav-fixed">
<div id="navtop"></div>
@ -88,36 +54,20 @@ button#toggle-password:focus {
<div class="row mt-0 mt-sm-4 mb-0 mb-sm-4">
<div class="col-12 col-md-4">Altes Passwort:</div>
<div class="col-12 col-md-8">
<div class="input-group">
<input type="password" id="password" class="form-control rounded-right" required>
<button id="toggle-password" type="button" class="d-none"
aria-label="Show password as plain text. Warning: this will display your password on the screen.">
</button>
</div>
<input type="password" id="password" class="form-control rounded-right" required onkeydown="keysave(this)">
</div>
</div>
<div class="row mt-0 mt-sm-4 mb-0 mb-sm-4">
<div class="col-12 col-md-4">Neues Passwort:</div>
<div class="col-12 col-md-8">
<div class="input-group">
<input type="password" id="password_new1" class="form-control rounded-right" required>
<button id="toggle-password" type="button" class="d-none"
aria-label="Show password as plain text. Warning: this will display your password on the screen.">
</button>
</div>
<input type="password" id="password_new1" class="form-control rounded-right" required onkeydown="keysave(this)">
</div>
</div>
<div class="row mt-0 mt-sm-4 mb-0 mb-sm-4">
<div class="col-12 col-md-4">Passwortwiederholung:</div>
<div class="col-12 col-md-8">
<div class="input-group">
<input type="password" id="password_new2" class="form-control rounded-right" required>
<button id="toggle-password" type="button" class="d-none"
aria-label="Show password as plain text. Warning: this will display your password on the screen.">
</button>
</div>
<input type="password" id="password_new2" class="form-control rounded-right" required onkeydown="keysave(this)">
</div>
</div>
</div>
@ -128,7 +78,6 @@ button#toggle-password:focus {
</div>
</div>
<div id="msg"></div>
<script src="../js/show-password-toggle.js" async></script>
</main>
<!-- footer -->
<div id="footer"></div>

View File

@ -1,111 +1,93 @@
{if $action == ''}
<!DOCTYPE html>
<html lang="en">
<head>
<head>
<title>JU & MI Startseite</title>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>JU & MI Administration</title>
<link href="../bootstrap/node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<!-- nochmals bootstrap.css mit Erweiterungen vom Dashboard -->
<link href="css/styles.css" rel="stylesheet" />
<!-- icons in nav-->
<script src="js/all.js" crossorigin="anonymous"></script>
<script src="../jquery/jquery-3.4.1.min.js"></script>
<script src="../js/lottie_bodymovin/lottie.min.js"></script>
<style type="text/css">
.lottie-container {
justify-content: center;
top: 40px;
left: 0;
right: 0;
bottom: 20px;
height: 180px;
pointer-events: none;
}
</style>
</head>
<body>
<body class="sb-nav-fixed">
<div id="navtop"></div>
{literal}
<script>
$(function() {
$("#mail").focus();
});
$(function(){
// im Navbar muss der toggle in der Callbackfunktion definiert werden. Sonst findet jquery getelementbyID nicht
$("#navtop").load('navtop.php', null, function(){$.getScript('js/scripts.js');});
$("#navleft").load("nav.php");
$("#footer").load("footer.php");
});
</script>
{/literal}
<div id="layoutAuthentication">
<div id="layoutAuthentication_content">
<div id="layoutSidenav">
<!-- Navigation left -->
<div id="navleft"></div>
<div id="layoutSidenav_content">
<main>
<!--Anwendung-->
<script src="../js/components/admin_login.js"></script>
<div class="lottie-container" id="lottie-container"></div>
<div class="container">
<div class="row justify-content-center">
<div class="col-lg-5">
<div class="card shadow-lg border-0 rounded-lg mt-5">
<div class="card-header">
<h3 class="text-center font-weight-light my-4">Login</h3>
</div>
<div class="card-body">
<div class="form-floating mb-3">
<input class="form-control" name="mail" id="mail" type="email" onkeydown="keysave(this)" placeholder="Mailadresse" />
<label for="inputEmail">Mailadresse</label>
</div>
<div class="form-floating mb-3">
<input class="form-control" name="password" id="password" type="password" onkeydown="keysave(this)" placeholder="Passwort" />
<label for="inputPassword">Passwort</label>
</div>
<!--<div class="form-check mb-3">
<input class="form-check-input" id="inputRememberPassword" type="checkbox" value="" />
<label class="form-check-label" for="inputRememberPassword">Remember Password</label>
<div class="container-fluid">
<div class="card">
<div class="card-header">
<i class="fas fa-user me-1"></i>
Herzlich willkommen {$startseite_name}
</div>
<div class="card-body">
<p class="card-text">Herzlich willkommen zur Administration von Jugendchor & Miteinander.<br><br>
</p>
<!--
<div class="row">
<div class="col-xl-3 col-md-6">
<div class="card bg-primary text-white mb-4">
<div class="card-body">Primary Card</div>
</div>
</div>
<div class="col-xl-3 col-md-6">
<div class="card bg-warning text-white mb-4">
<div class="card-body">Warning Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
-->
<div class="d-flex align-items-center justify-content-between mt-4 mb-0">
<!--<a class="small" href="password.html">Forgot Password?</a>-->
&nbsp;
<input type='submit' class="btn btn-primary" onclick="login();" name='senden' value="Login">
</div>
</div>
<div class="card-footer text-center py-3">
<!--<div class="small"><a href="register.html">Need an account? Sign up!</a></div>-->
</div>
</div>
</div>
<div class="col-xl-3 col-md-6">
<div class="card bg-success text-white mb-4">
<div class="card-body">Success Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
</div>
</div>
<div class="col-xl-3 col-md-6">
<div class="card bg-danger text-white mb-4">
<div class="card-body">Danger Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
</div>
</div>
</div>
<div id="msg"></div>
-->
</div>
</div>
</div>
<div class="lottie-container" id="lottie-container"></div>
<script type="text/javascript">
var item = bodymovin.loadAnimation({
wrapper: document.getElementById('lottie-container'),
animType: 'svg',
loop: true,
autoplay: true,
path: '../media/data.json'
});
</script>
</main>
{literal}
<script type="text/javascript">
function keysave(ele) {
if(event.key === 'Enter') {
login();
}
}
</script>
{/literal}
</div>
<div id="layoutAuthentication_footer">
<!-- footer -->
<div id="footer"></div>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"></script>
<script src="js/scripts.js"></script>
<script src="../bootstrap/node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
</body>
</html>
{/if}
</html>

View File

@ -0,0 +1,131 @@
{if $action == ''}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>JU & MI Administration</title>
<link href="css/styles.css" rel="stylesheet" />
<script src="js/all.js" crossorigin="anonymous"></script>
<script src="../jquery/jquery-3.4.1.min.js"></script>
<link href="../bootstrap/node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<script src="../bootstrap/node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
<script src="../js/lottie_bodymovin/lottie.min.js"></script>
<style type="text/css">
.lottie-container {
justify-content: center;
top: 40px;
left: 0;
right: 0;
bottom: 20px;
height: 180px;
pointer-events: none;
}
</style>
<script>
$(document).ready(function(){
$('[data-toggle="popover"]').popover();
});
</script>
</head>
<body>
<div id="navtop"></div>
{literal}
<script>
$(function() {
$("#mail").focus();
});
$(function(){
$("#footer").load("footer.php");
});
</script>
{/literal}
<div id="layoutAuthentication">
<div id="layoutAuthentication_content">
<main>
<!--Anwendung-->
<script src="../js/components/admin_login.js"></script>
<div class="lottie-container" id="lottie-container"></div>
<div class="container">
<div class="row justify-content-center">
<div class="col-lg-5">
<div class="card shadow-lg border-0 rounded-lg mt-5">
<div class="card-header">
<h3 class="text-center font-weight-light my-4">Login</h3>
</div>
<div class="card-body">
<div class="form-floating mb-3">
<input class="form-control" name="mail" id="mail" type="email" onkeydown="keysave(this)" placeholder="Mailadresse" />
<label for="inputEmail">Mailadresse</label>
</div>
<div class="form-floating mb-3">
<input class="form-control" name="password" id="password" type="password" onkeydown="keysave(this)" placeholder="Passwort" />
<label for="inputPassword">Passwort</label>
</div>
<!--<div class="form-check mb-3">
<input class="form-check-input" id="inputRememberPassword" type="checkbox" value="" />
<label class="form-check-label" for="inputRememberPassword">Remember Password</label>
</div>
-->
<div class="d-flex align-items-center justify-content-between mt-4 mb-0">
<!--<a class="small" href="password.html">Forgot Password?</a>-->
<label><input type="checkbox" name="angemeldet_bleiben" id="angemeldet_bleiben" value="1"> Angemeldet bleiben
<button type="button" class="btn btn-info btn-sm" data-bs-toggle="popover" data-bs-html="true" data-bs-trigger="hover"
title="Angemeldet bleiben"
data-bs-content="Durch das Markieren dieses Feldes wird beim n&auml;chsten Besuch die Anmeldemaske nicht erscheinen.<br>
<b>Die Anwendung speichert lokal Cookies in Ihrem Browser.</b><br>
Sobald Sie in der Anwendung einen Logout machen, werden die Cookies gel&ouml;scht und ein Login ist wieder erforderlich.">
<i class="fas fa fa-info"></i>
</button>
</label><br>
&nbsp;
<input type='submit' class="btn btn-primary" onclick="login();" name='senden' value="Login">
</div>
</div>
<div class="card-footer text-center py-3">
<!--<div class="small"><a href="register.html">Need an account? Sign up!</a></div>-->
</div>
</div>
<div id="msg"></div>
</div>
</div>
</div>
<div class="lottie-container" id="lottie-container"></div>
<script type="text/javascript">
var item = bodymovin.loadAnimation({
wrapper: document.getElementById('lottie-container'),
animType: 'svg',
loop: true,
autoplay: true,
path: '../media/data.json'
});
</script>
</main>
{literal}
<script type="text/javascript">
function keysave(ele) {
if(event.key === 'Enter') {
login();
}
}
</script>
{/literal}
</div>
<div id="layoutAuthentication_footer">
<!-- footer -->
<div id="footer"></div>
</div>
</div>
<script>
var popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="popover"]'))
var popoverList = popoverTriggerList.map(function (popoverTriggerEl) {
return new bootstrap.Popover(popoverTriggerEl)
})
</script>
</body>
</html>
{/if}

View File

@ -1,92 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<title>JU & MI Startseite</title>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<link href="../bootstrap/node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<!-- nochmals bootstrap.css mit Erweiterungen vom Dashboard -->
<link href="css/styles.css" rel="stylesheet" />
<!-- icons in nav-->
<script src="js/all.js" crossorigin="anonymous"></script>
<script src="../jquery/jquery-3.4.1.min.js"></script>
</head>
<body class="sb-nav-fixed">
<div id="navtop"></div>
{literal}
<script>
$(function(){
// im Navbar muss der toggle in der Callbackfunktion definiert werden. Sonst findet jquery getelementbyID nicht
$("#navtop").load('navtop.php', null, function(){$.getScript('js/scripts.js');});
$("#navleft").load("nav.php");
$("#footer").load("footer.php");
});
</script>
{/literal}
<div id="layoutSidenav">
<!-- Navigation left -->
<div id="navleft"></div>
<div id="layoutSidenav_content">
<main>
<div class="container-fluid">
<div class="card">
<div class="card-header">
<i class="fas fa-user me-1"></i>
Herzlich willkommen {$startseite_name}
</div>
<div class="card-body">
<p class="card-text">Herzlich willkommen zur Administration von Jugendchor & Miteinander.<br><br>
</p>
<!--
<div class="row">
<div class="col-xl-3 col-md-6">
<div class="card bg-primary text-white mb-4">
<div class="card-body">Primary Card</div>
</div>
</div>
<div class="col-xl-3 col-md-6">
<div class="card bg-warning text-white mb-4">
<div class="card-body">Warning Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
</div>
</div>
<div class="col-xl-3 col-md-6">
<div class="card bg-success text-white mb-4">
<div class="card-body">Success Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
</div>
</div>
<div class="col-xl-3 col-md-6">
<div class="card bg-danger text-white mb-4">
<div class="card-body">Danger Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
</div>
</div>
</div>
-->
</div>
</div>
</div>
</main>
<!-- footer -->
<div id="footer"></div>
</div>
</div>
<script src="../bootstrap/node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"></script>
</body>
</html>

View File

@ -277,6 +277,12 @@
</style>
</head>
<!--<body onload="if(document.erfassen)document.erfassen.{$umfrageerf_focus}.focus();return false;">-->
<script type="text/javascript">
$(function() {
$("#{$umfrageerf_focus}").focus();
})
</script>
<body class="sb-nav-fixed">
<div id="navtop"></div>
{literal}

View File

@ -0,0 +1,74 @@
<?php
/* Smarty version 3.1.39, created on 2023-03-29 07:51:08
from 'C:\xampp_8.0.9\htdocs\survey\templates\modern\dashboard\error.html' */
/* @var Smarty_Internal_Template $_smarty_tpl */
if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
'version' => '3.1.39',
'unifunc' => 'content_6423d1cc31fec2_36900291',
'has_nocache_code' => false,
'file_dependency' =>
array (
'1eab88de3a8f7e0713e4fc445f180dd3b5f4785e' =>
array (
0 => 'C:\\xampp_8.0.9\\htdocs\\survey\\templates\\modern\\dashboard\\error.html',
1 => 1680067901,
2 => 'file',
),
),
'includes' =>
array (
),
),false)) {
function content_6423d1cc31fec2_36900291 (Smarty_Internal_Template $_smarty_tpl) {
?><!DOCTYPE html>
<html lang="en">
<head>
<title>JU & MI Startseite</title>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<link href="../bootstrap/node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<!-- nochmals bootstrap.css mit Erweiterungen vom Dashboard -->
<link href="css/styles.css" rel="stylesheet" />
<!-- icons in nav-->
<?php echo '<script'; ?>
src="js/all.js" crossorigin="anonymous"><?php echo '</script'; ?>
>
<?php echo '<script'; ?>
src="../jquery/jquery-3.4.1.min.js"><?php echo '</script'; ?>
>
</head>
<body class="sb-nav-fixed">
<div id="navtop"></div>
<?php echo '<script'; ?>
>
$(function(){
// im Navbar muss der toggle in der Callbackfunktion definiert werden. Sonst findet jquery getelementbyID nicht
$("#navtop").load('navtop.php', null, function(){$.getScript('js/scripts.js');});
$("#navleft").load("nav.php");
$("#footer").load("footer.php");
});
<?php echo '</script'; ?>
>
<div id="layoutSidenav">
<!-- Navigation left -->
<div id="navleft"></div>
<div id="layoutSidenav_content">
<main>
<div id="global_rechte"><div class="alert alert-danger"><i class="fa fa-fw fa-thumbs-down"></i> Sie haben keinen Zugriff auf diese Seite</div></div>
</main>
<!-- footer -->
<div id="footer"></div>
</div>
</div>
<?php echo '<script'; ?>
src="../bootstrap/node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"><?php echo '</script'; ?>
>
</body>
</html><?php }
}

View File

@ -0,0 +1,176 @@
<?php
/* Smarty version 3.1.39, created on 2023-03-29 16:02:35
from 'C:\xampp_8.0.9\htdocs\survey\templates\modern\dashboard\login.html' */
/* @var Smarty_Internal_Template $_smarty_tpl */
if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
'version' => '3.1.39',
'unifunc' => 'content_642444fb108e38_88581849',
'has_nocache_code' => false,
'file_dependency' =>
array (
'2c7573aca5bcffa232f4e19fd56675ada4969120' =>
array (
0 => 'C:\\xampp_8.0.9\\htdocs\\survey\\templates\\modern\\dashboard\\login.html',
1 => 1680098552,
2 => 'file',
),
),
'includes' =>
array (
),
),false)) {
function content_642444fb108e38_88581849 (Smarty_Internal_Template $_smarty_tpl) {
if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>JU & MI Administration</title>
<link href="css/styles.css" rel="stylesheet" />
<?php echo '<script'; ?>
src="js/all.js" crossorigin="anonymous"><?php echo '</script'; ?>
>
<?php echo '<script'; ?>
src="../jquery/jquery-3.4.1.min.js"><?php echo '</script'; ?>
>
<link href="../bootstrap/node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<?php echo '<script'; ?>
src="../bootstrap/node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"><?php echo '</script'; ?>
>
<?php echo '<script'; ?>
src="../js/lottie_bodymovin/lottie.min.js"><?php echo '</script'; ?>
>
<style type="text/css">
.lottie-container {
justify-content: center;
top: 40px;
left: 0;
right: 0;
bottom: 20px;
height: 180px;
pointer-events: none;
}
</style>
<?php echo '<script'; ?>
>
$(document).ready(function(){
$('[data-toggle="popover"]').popover();
});
<?php echo '</script'; ?>
>
</head>
<body>
<div id="navtop"></div>
<?php echo '<script'; ?>
>
$(function() {
$("#mail").focus();
});
$(function(){
$("#footer").load("footer.php");
});
<?php echo '</script'; ?>
>
<div id="layoutAuthentication">
<div id="layoutAuthentication_content">
<main>
<!--Anwendung-->
<?php echo '<script'; ?>
src="../js/components/admin_login.js"><?php echo '</script'; ?>
>
<div class="lottie-container" id="lottie-container"></div>
<div class="container">
<div class="row justify-content-center">
<div class="col-lg-5">
<div class="card shadow-lg border-0 rounded-lg mt-5">
<div class="card-header">
<h3 class="text-center font-weight-light my-4">Login</h3>
</div>
<div class="card-body">
<div class="form-floating mb-3">
<input class="form-control" name="mail" id="mail" type="email" onkeydown="keysave(this)" placeholder="Mailadresse" />
<label for="inputEmail">Mailadresse</label>
</div>
<div class="form-floating mb-3">
<input class="form-control" name="password" id="password" type="password" onkeydown="keysave(this)" placeholder="Passwort" />
<label for="inputPassword">Passwort</label>
</div>
<!--<div class="form-check mb-3">
<input class="form-check-input" id="inputRememberPassword" type="checkbox" value="" />
<label class="form-check-label" for="inputRememberPassword">Remember Password</label>
</div>
-->
<div class="d-flex align-items-center justify-content-between mt-4 mb-0">
<!--<a class="small" href="password.html">Forgot Password?</a>-->
<label><input type="checkbox" name="angemeldet_bleiben" id="angemeldet_bleiben" value="1"> Angemeldet bleiben
<button type="button" class="btn btn-info btn-sm" data-bs-toggle="popover" data-bs-html="true" data-bs-trigger="hover"
title="Angemeldet bleiben"
data-bs-content="Durch das Markieren dieses Feldes wird beim n&auml;chsten Besuch die Anmeldemaske nicht erscheinen.<br>
<b>Die Anwendung speichert lokal Cookies in Ihrem Browser.</b><br>
Sobald Sie in der Anwendung einen Logout machen, werden die Cookies gel&ouml;scht und ein Login ist wieder erforderlich.">
<i class="fas fa fa-info"></i>
</button>
</label><br>
&nbsp;
<input type='submit' class="btn btn-primary" onclick="login();" name='senden' value="Login">
</div>
</div>
<div class="card-footer text-center py-3">
<!--<div class="small"><a href="register.html">Need an account? Sign up!</a></div>-->
</div>
</div>
<div id="msg"></div>
</div>
</div>
</div>
<div class="lottie-container" id="lottie-container"></div>
<?php echo '<script'; ?>
type="text/javascript">
var item = bodymovin.loadAnimation({
wrapper: document.getElementById('lottie-container'),
animType: 'svg',
loop: true,
autoplay: true,
path: '../media/data.json'
});
<?php echo '</script'; ?>
>
</main>
<?php echo '<script'; ?>
type="text/javascript">
function keysave(ele) {
if(event.key === 'Enter') {
login();
}
}
<?php echo '</script'; ?>
>
</div>
<div id="layoutAuthentication_footer">
<!-- footer -->
<div id="footer"></div>
</div>
</div>
<?php echo '<script'; ?>
>
var popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="popover"]'))
var popoverList = popoverTriggerList.map(function (popoverTriggerEl) {
return new bootstrap.Popover(popoverTriggerEl)
})
<?php echo '</script'; ?>
>
</body>
</html>
<?php }
}
}

View File

@ -0,0 +1,197 @@
<?php
/* Smarty version 3.1.39, created on 2023-03-29 08:26:07
from 'C:\xampp_8.0.9\htdocs\survey\templates\modern\dashboard\edit_user.html' */
/* @var Smarty_Internal_Template $_smarty_tpl */
if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
'version' => '3.1.39',
'unifunc' => 'content_6423d9ff130713_79890602',
'has_nocache_code' => false,
'file_dependency' =>
array (
'53fa4cc610a7b23725efdc6cd814773eca7ba82c' =>
array (
0 => 'C:\\xampp_8.0.9\\htdocs\\survey\\templates\\modern\\dashboard\\edit_user.html',
1 => 1680067901,
2 => 'file',
),
),
'includes' =>
array (
),
),false)) {
function content_6423d9ff130713_79890602 (Smarty_Internal_Template $_smarty_tpl) {
if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<!DOCTYPE html>
<html lang="de">
<head>
<title>JU & MI Benutzer bearbeiten</title>
<link rel="stylesheet" href="../jquery/jquery-ui.css">
<link rel="stylesheet" href="../jquery/jquery.timepicker.min.css">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="../bootstrap/node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<?php echo '<script'; ?>
src="../bootstrap/node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"><?php echo '</script'; ?>
>
<!-- nochmals bootstrap.css mit Erweiterungen vom Dashboard -->
<link href="css/styles.css" rel="stylesheet" />
<!-- icons in nav-->
<!-- data Table: https://datatables.net/ -->
<?php echo '<script'; ?>
src="../bootstrap/data-table/jquery.min.js"><?php echo '</script'; ?>
>
<link rel="stylesheet" href="../bootstrap/data-table/dataTables.bootstrap5.min.css"></style>
<link rel="stylesheet" href="../bootstrap/data-table/rowReorder.dataTables.min.css"></style>
<?php echo '<script'; ?>
type="text/javascript" src="../bootstrap/data-table/jquery.dataTables.min.js"><?php echo '</script'; ?>
>
<?php echo '<script'; ?>
type="text/javascript" src="../bootstrap/data-table/dataTables.rowReorder.min.js"><?php echo '</script'; ?>
>
<?php echo '<script'; ?>
type="text/javascript" src="../bootstrap/data-table/dataTables.bootstrap5.min.js"><?php echo '</script'; ?>
>
<link rel="stylesheet" href="../bootstrap/data-table/jumistyle.css"></style>
<?php echo '<script'; ?>
src="js/all.js" crossorigin="anonymous"><?php echo '</script'; ?>
>
<?php echo '<script'; ?>
src="../jquery/jquery-3.4.1.min.js"><?php echo '</script'; ?>
>
<link rel="stylesheet" href="../bootstrap/node_modules/bootstrap-icons/font/bootstrap-icons.css">
</head>
<body class="sb-nav-fixed">
<div id="navtop"></div>
<?php echo '<script'; ?>
>
$(function(){
// im Navbar muss der toggle in der Callbackfunktion definiert werden. Sonst findet jquery getelementbyID nicht
$("#navtop").load('navtop.php', null, function(){$.getScript('js/scripts.js');});
$("#navleft").load("nav.php");
$("#footer").load("footer.php");
});
<?php echo '</script'; ?>
>
<div id="layoutSidenav">
<!-- Navigation left -->
<div id="navleft"></div>
<div id="layoutSidenav_content">
<main>
<!--Anwendung-->
<?php echo '<script'; ?>
src="../js/components/admin_create_user.js"><?php echo '</script'; ?>
>
<div class="container-fluid">
<div class="card">
<div class="card-header">
<i class="fas fa-edit me-1"></i>
Benutzer bearbeiten
</div>
<div class="card-body">
<!-- https://datatables.net/download/release -->
<table id="myTable" class="table table-striped table-bordered table-responsive table-hover" >
<thead>
<tr>
<th>Vorname</th>
<th>Nachname</th>
<th class="d-none d-lg-table-cell"> Mail</th>
<th class="d-none d-lg-table-cell">Letzter Login</th>
<th class="d-none d-lg-table-cell">Status</th>
<th>Aktion</th>
</tr>
</thead>
<tbody>
<?php
$__section_table_data_0_loop = (is_array(@$_loop=$_smarty_tpl->tpl_vars['table_data']->value) ? count($_loop) : max(0, (int) $_loop));
$__section_table_data_0_total = $__section_table_data_0_loop;
$_smarty_tpl->tpl_vars['__smarty_section_table_data'] = new Smarty_Variable(array());
if ($__section_table_data_0_total !== 0) {
for ($__section_table_data_0_iteration = 1, $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] = 0; $__section_table_data_0_iteration <= $__section_table_data_0_total; $__section_table_data_0_iteration++, $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']++){
?>
<tr>
<td><?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['vorname'];?>
</td>
<td><?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['nachname'];?>
</td>
<td class="d-none d-lg-table-cell"><?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['mail'];?>
</td>
<td class="d-none d-lg-table-cell"><?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['last_login'];?>
</td>
<td class="d-none d-lg-table-cell">
<!--
# 4 Neu
# 3 Deaktiviert
# 2 Inaktiv
# 1 Aktiv
-->
<?php if ($_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['status'] == '4') {?>
<span class="status text-secondary">&bull;</span> Neu
<?php }?>
<?php if ($_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['status'] == '3') {?>
<span class="status text-danger">&bull;</span> Deaktiviert
<?php }?>
<?php if ($_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['status'] == '2') {?>
<span class="status text-danger">&bull;</span> Inaktiv
<?php }?>
<?php if ($_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['status'] == '1') {?>
<span class="status text-success">&bull;</span> Aktiv
<?php }?>
</td>
<td>
<a href="create_user.php?edituid=<?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['uid'];?>
" class="settings" title="Edit User" data-toggle="tooltip"><i class="fas fa fa-cog"></i></a>
&nbsp;
<?php if ($_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['aktiv'] == 1) {?>
<a href="#" class="settings text-danger" id="disable" onclick="disableuser(<?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['uid'];?>
);" title="Lock User" data-toggle="tooltip"><i class="fas fa fa-lock"></i></a>
<?php } else { ?>
<a href="#" class="settings text-success" id="enable" onclick="enableuser(<?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['uid'];?>
);" title="Unlock User" data-toggle="tooltip"><i class="fas fa fa-unlock"></i></a>
<?php }?>
</td>
</tr>
<?php
}
}
?>
</tbody>
</table>
</div>
</div>
</div>
<div id="msg"></div>
</main>
<!-- footer -->
<div id="footer"></div>
</div>
</div>
</body>
<?php echo '<script'; ?>
>
$(document).ready(function(){
var table = new DataTable('#myTable', {
rowReorder: true,
pageLength: 5,
language: {
url: '//cdn.datatables.net/plug-ins/1.13.4/i18n/de-DE.json',
search: "",
lengthMenu: "_MENU_ Zeilen",
},
});
});
<?php echo '</script'; ?>
>
</html>
<?php }
}
}

View File

@ -1,18 +1,18 @@
<?php
/* Smarty version 3.1.39, created on 2023-03-24 07:26:23
/* Smarty version 3.1.39, created on 2023-03-29 12:13:17
from 'C:\xampp_8.0.9\htdocs\survey\templates\modern\dashboard\survey_edit.html' */
/* @var Smarty_Internal_Template $_smarty_tpl */
if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
'version' => '3.1.39',
'unifunc' => 'content_641d428fde7110_72373996',
'unifunc' => 'content_64240f3dba78e4_01027232',
'has_nocache_code' => false,
'file_dependency' =>
array (
'5473cec3045fdc71e0e4856581f2d1efb812d964' =>
array (
0 => 'C:\\xampp_8.0.9\\htdocs\\survey\\templates\\modern\\dashboard\\survey_edit.html',
1 => 1679639182,
1 => 1680067902,
2 => 'file',
),
),
@ -20,7 +20,7 @@ if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
array (
),
),false)) {
function content_641d428fde7110_72373996 (Smarty_Internal_Template $_smarty_tpl) {
function content_64240f3dba78e4_01027232 (Smarty_Internal_Template $_smarty_tpl) {
if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<!DOCTYPE html>
<html lang="de">
@ -40,7 +40,7 @@ if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<link href="css/styles.css" rel="stylesheet" />
<!-- icons in nav-->
<?php echo '<script'; ?>
src="all.js" crossorigin="anonymous"><?php echo '</script'; ?>
src="js/all.js" crossorigin="anonymous"><?php echo '</script'; ?>
>
<link rel="stylesheet" href="../bootstrap/node_modules/bootstrap-icons/font/bootstrap-icons.css">
@ -138,7 +138,6 @@ $_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['rownum'] = $__sec
</div>
</div>
</div>
<hr>
<!-- Lösen Sie das Modal mit einem Button aus -->

View File

@ -1,18 +1,18 @@
<?php
/* Smarty version 3.1.39, created on 2023-03-24 07:25:15
/* Smarty version 3.1.39, created on 2023-03-29 08:26:02
from 'C:\xampp_8.0.9\htdocs\survey\templates\modern\dashboard\parameter.html' */
/* @var Smarty_Internal_Template $_smarty_tpl */
if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
'version' => '3.1.39',
'unifunc' => 'content_641d424b5e7026_88417519',
'unifunc' => 'content_6423d9faf1a394_28187497',
'has_nocache_code' => false,
'file_dependency' =>
array (
'60770e4a66f5636533d9cacf91dcf9d3cb1e51bf' =>
array (
0 => 'C:\\xampp_8.0.9\\htdocs\\survey\\templates\\modern\\dashboard\\parameter.html',
1 => 1679639113,
1 => 1680067901,
2 => 'file',
),
),
@ -20,7 +20,7 @@ if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
array (
),
),false)) {
function content_641d424b5e7026_88417519 (Smarty_Internal_Template $_smarty_tpl) {
function content_6423d9faf1a394_28187497 (Smarty_Internal_Template $_smarty_tpl) {
if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<!DOCTYPE html>
<html lang="en">
@ -35,7 +35,7 @@ if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<link href="css/styles.css" rel="stylesheet" />
<!-- icons in nav-->
<?php echo '<script'; ?>
src="all.js" crossorigin="anonymous"><?php echo '</script'; ?>
src="js/all.js" crossorigin="anonymous"><?php echo '</script'; ?>
>
<?php echo '<script'; ?>
src="../jquery/jquery-3.4.1.min.js"><?php echo '</script'; ?>
@ -83,7 +83,8 @@ for ($__section_table_data1_0_iteration = 1, $_smarty_tpl->tpl_vars['__smarty_se
<div class="row mt-0 mt-sm-4 mb-0 mb-sm-4">
<div class="col-12 col-md-4"><?php echo $_smarty_tpl->tpl_vars['table_data1']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index'] : null)]['beschreibung'];?>
</div>
<div class="col-12 col-md-8"><input type="text" class="form-control" name="parameter[]" value="<?php echo $_smarty_tpl->tpl_vars['table_data1']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index'] : null)]['wert'];?>
<div class="col-12 col-md-8"><input type="text" class="form-control" name="<?php echo $_smarty_tpl->tpl_vars['table_data1']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index'] : null)]['pid'];?>
" value="<?php echo $_smarty_tpl->tpl_vars['table_data1']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index'] : null)]['wert'];?>
"></div>
</div>
<?php
@ -94,7 +95,9 @@ for ($__section_table_data1_0_iteration = 1, $_smarty_tpl->tpl_vars['__smarty_se
</div>
</div>
<div class="col-12 btn-group">
<a class="btn btn-primary mt-3" onclick="onClickSaveParameter()"><i class="fa fa-save" style="width:18px;"></i></a>
<a class="btn btn-primary mt-3" onclick="onClickSaveParameter()"><i class="fa fa-save" style="width:18px;"></i></a>
</div>
<div id="msg"></div>
</main>
<!-- footer -->
<div id="footer"></div>

View File

@ -1,18 +1,18 @@
<?php
/* Smarty version 3.1.39, created on 2023-03-24 07:23:18
/* Smarty version 3.1.39, created on 2023-03-29 13:34:44
from 'C:\xampp_8.0.9\htdocs\survey\templates\modern\dashboard\index.html' */
/* @var Smarty_Internal_Template $_smarty_tpl */
if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
'version' => '3.1.39',
'unifunc' => 'content_641d41d6339c56_97883781',
'unifunc' => 'content_64242254290e23_08078591',
'has_nocache_code' => false,
'file_dependency' =>
array (
'61084ee676a3c91a4b41c7e50fa536cf9cd1daac' =>
array (
0 => 'C:\\xampp_8.0.9\\htdocs\\survey\\templates\\modern\\dashboard\\index.html',
1 => 1679638068,
1 => 1680089585,
2 => 'file',
),
),
@ -20,128 +20,107 @@ if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
array (
),
),false)) {
function content_641d41d6339c56_97883781 (Smarty_Internal_Template $_smarty_tpl) {
if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<!DOCTYPE html>
<html lang="de">
<head>
function content_64242254290e23_08078591 (Smarty_Internal_Template $_smarty_tpl) {
?><!DOCTYPE html>
<html lang="en">
<head>
<title>JU & MI Startseite</title>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no" />
<meta name="description" content="" />
<meta name="author" content="" />
<title>JU & MI Administration</title>
<link href="../bootstrap/node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<!-- nochmals bootstrap.css mit Erweiterungen vom Dashboard -->
<link href="css/styles.css" rel="stylesheet" />
<!-- icons in nav-->
<?php echo '<script'; ?>
src="all.js" crossorigin="anonymous"><?php echo '</script'; ?>
src="js/all.js" crossorigin="anonymous"><?php echo '</script'; ?>
>
<?php echo '<script'; ?>
src="../jquery/jquery-3.4.1.min.js"><?php echo '</script'; ?>
>
<?php echo '<script'; ?>
src="../js/lottie_bodymovin/lottie.min.js"><?php echo '</script'; ?>
>
<style type="text/css">
.lottie-container {
justify-content: center;
top: 40px;
left: 0;
right: 0;
bottom: 20px;
height: 180px;
pointer-events: none;
}
</style>
</head>
<body>
<body class="sb-nav-fixed">
<div id="navtop"></div>
<?php echo '<script'; ?>
>
$(function(){
// im Navbar muss der toggle in der Callbackfunktion definiert werden. Sonst findet jquery getelementbyID nicht
$("#navtop").load('navtop.php', null, function(){$.getScript('js/scripts.js');});
$("#navleft").load("nav.php");
$("#footer").load("footer.php");
});
<?php echo '</script'; ?>
>
<div id="layoutAuthentication">
<div id="layoutAuthentication_content">
<div id="layoutSidenav">
<!-- Navigation left -->
<div id="navleft"></div>
<div id="layoutSidenav_content">
<main>
<?php if ($_smarty_tpl->tpl_vars['index_error']->value == '1') {?>
<div class="alert alert-warning" role="alert">
<?php echo $_smarty_tpl->tpl_vars['index_error_text']->value;?>
<div class="container-fluid">
<div class="card">
<div class="card-header">
<i class="fas fa-user me-1"></i>
Herzlich willkommen <?php echo $_smarty_tpl->tpl_vars['startseite_name']->value;?>
</div>
<?php }?>
<div class="lottie-container" id="lottie-container"></div>
<div class="container">
<div class="row justify-content-center">
<div class="col-lg-5">
<div class="card shadow-lg border-0 rounded-lg mt-5">
<div class="card-header">
<h3 class="text-center font-weight-light my-4">Login</h3>
</div>
<div class="card-body">
<form action=?action=anmeld method="POST" name="login">
<div class="form-floating mb-3">
<input class="form-control" id="inputEmail" name="mail" type="email" placeholder="Mailadresse" />
<label for="inputEmail">Mailadresse</label>
</div>
<div class="form-floating mb-3">
<input class="form-control" id="inputPassword" name="password" type="password" placeholder="Passwort" />
<label for="inputPassword">Passwort</label>
</div>
<!--<div class="form-check mb-3">
<input class="form-check-input" id="inputRememberPassword" type="checkbox" value="" />
<label class="form-check-label" for="inputRememberPassword">Remember Password</label>
</div>
<div class="card-body">
<p class="card-text">Herzlich willkommen zur Administration von Jugendchor & Miteinander.<br><br>
</p>
<!--
<div class="row">
<div class="col-xl-3 col-md-6">
<div class="card bg-primary text-white mb-4">
<div class="card-body">Primary Card</div>
</div>
</div>
<div class="col-xl-3 col-md-6">
<div class="card bg-warning text-white mb-4">
<div class="card-body">Warning Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
-->
<div class="d-flex align-items-center justify-content-between mt-4 mb-0">
<!--<a class="small" href="password.html">Forgot Password?</a>-->
&nbsp;
<input type='submit' class="btn btn-primary" name='senden' value="Login">
</div>
</form>
</div>
<div class="card-footer text-center py-3">
<!--<div class="small"><a href="register.html">Need an account? Sign up!</a></div>-->
</div>
</div>
</div>
<div class="col-xl-3 col-md-6">
<div class="card bg-success text-white mb-4">
<div class="card-body">Success Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
</div>
</div>
<div class="col-xl-3 col-md-6">
<div class="card bg-danger text-white mb-4">
<div class="card-body">Danger Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
</div>
</div>
</div>
-->
</div>
</div>
</div>
<div class="lottie-container" id="lottie-container"></div>
<?php echo '<script'; ?>
type="text/javascript">
var item = bodymovin.loadAnimation({
wrapper: document.getElementById('lottie-container'),
animType: 'svg',
loop: true,
autoplay: true,
path: '../media/data.json'
});
<?php echo '</script'; ?>
>
</main>
</div>
<div id="layoutAuthentication_footer">
<!-- footer -->
<div id="footer"></div>
</div>
</div>
<?php echo '<script'; ?>
src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js" crossorigin="anonymous"><?php echo '</script'; ?>
>
<?php echo '<script'; ?>
src="js/scripts.js"><?php echo '</script'; ?>
src="../bootstrap/node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"><?php echo '</script'; ?>
>
</body>
</html>
<?php }
if ($_smarty_tpl->tpl_vars['action']->value == 'anmeld') {?>
<?php if ($_smarty_tpl->tpl_vars['index_login']->value == '1') {?>
<meta http-equiv="refresh" content="0; URL=startseite.php">
<?php }
}
}
</html><?php }
}

View File

@ -1,18 +1,18 @@
<?php
/* Smarty version 3.1.39, created on 2023-03-24 13:04:30
/* Smarty version 3.1.39, created on 2023-03-29 08:48:53
from 'C:\xampp_8.0.9\htdocs\survey\templates\modern\dashboard\changepwd.html' */
/* @var Smarty_Internal_Template $_smarty_tpl */
if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
'version' => '3.1.39',
'unifunc' => 'content_641d91ce46b972_67242621',
'unifunc' => 'content_6423df554708f9_79056658',
'has_nocache_code' => false,
'file_dependency' =>
array (
'6db6f41f0bc02f7e26e3e95225e982b8df03345b' =>
array (
0 => 'C:\\xampp_8.0.9\\htdocs\\survey\\templates\\modern\\dashboard\\changepwd.html',
1 => 1679659219,
1 => 1680072531,
2 => 'file',
),
),
@ -20,12 +20,12 @@ if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
array (
),
),false)) {
function content_641d91ce46b972_67242621 (Smarty_Internal_Template $_smarty_tpl) {
function content_6423df554708f9_79056658 (Smarty_Internal_Template $_smarty_tpl) {
if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<!DOCTYPE html>
<html lang="de">
<head>
<title>JU & MI Benutzer erstellen</title>
<title>JU & MI Passwort</title>
<link rel="stylesheet" href="../jquery/jquery-ui.css">
<link rel="stylesheet" href="../jquery/jquery.timepicker.min.css">
<meta name="viewport" content="width=device-width, initial-scale=1">
@ -37,54 +37,22 @@ if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<link href="css/styles.css" rel="stylesheet" />
<!-- icons in nav-->
<?php echo '<script'; ?>
src="all.js" crossorigin="anonymous"><?php echo '</script'; ?>
src="js/all.js" crossorigin="anonymous"><?php echo '</script'; ?>
>
<?php echo '<script'; ?>
src="../jquery/jquery-3.4.1.min.js"><?php echo '</script'; ?>
>
<link rel="stylesheet" href="../bootstrap/node_modules/bootstrap-icons/font/bootstrap-icons.css">
<style>
<?php echo '<script'; ?>
>
function keysave(ele) {
if(event.key === 'Enter') {
changepwd();
}
}
<?php echo '</script'; ?>
>
::-ms-reveal {
display: none;
}
button#toggle-password {
position: absolute;
top: 3px;
right: 4px;
z-index: 9;
width: 28px;
height: 30px;
background: 0;
border: 0;
}
button#toggle-password:active,
button#toggle-password:focus,
button#toggle-password:hover {
cursor: pointer;
}
button#toggle-password:focus {
outline: none !important;
}
.input-password {
padding-right: calc(1.5em + 0.75rem);
background-repeat: no-repeat;
background-position: right calc(0.375em + 0.1875rem) center;
background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}
.input-password[type=text]:valid {
background-image: url("data:image/svg+xml,%3Csvg width='1em' height='1em' viewBox='0 0 16 16' fill='currentColor' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M13.359 11.238C15.06 9.72 16 8 16 8s-3-5.5-8-5.5a7.028 7.028 0 0 0-2.79.588l.77.771A5.944 5.944 0 0 1 8 3.5c2.12 0 3.879 1.168 5.168 2.457A13.134 13.134 0 0 1 14.828 8c-.058.087-.122.183-.195.288-.335.48-.83 1.12-1.465 1.755-.165.165-.337.328-.517.486l.708.709z'/%3E%3Cpath d='M11.297 9.176a3.5 3.5 0 0 0-4.474-4.474l.823.823a2.5 2.5 0 0 1 2.829 2.829l.822.822zm-2.943 1.299l.822.822a3.5 3.5 0 0 1-4.474-4.474l.823.823a2.5 2.5 0 0 0 2.829 2.829z'/%3E%3Cpath d='M3.35 5.47c-.18.16-.353.322-.518.487A13.134 13.134 0 0 0 1.172 8l.195.288c.335.48.83 1.12 1.465 1.755C4.121 11.332 5.881 12.5 8 12.5c.716 0 1.39-.133 2.02-.36l.77.772A7.029 7.029 0 0 1 8 13.5C3 13.5 0 8 0 8s.939-1.721 2.641-3.238l.708.709z'/%3E%3Cpath fill-rule='evenodd' d='M13.646 14.354l-12-12 .708-.708 12 12-.708.708z'/%3E%3C/svg%3E") !important;
}
.input-password[type=password]:valid {
background-image: url("data:image/svg+xml,%3Csvg width='1em' height='1em' viewBox='0 0 16 16' fill='currentColor' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' d='M16 8s-3-5.5-8-5.5S0 8 0 8s3 5.5 8 5.5S16 8 16 8zM1.173 8a13.134 13.134 0 0 0 1.66 2.043C4.12 11.332 5.88 12.5 8 12.5c2.12 0 3.879-1.168 5.168-2.457A13.134 13.134 0 0 0 14.828 8a13.133 13.133 0 0 0-1.66-2.043C11.879 4.668 10.119 3.5 8 3.5c-2.12 0-3.879 1.168-5.168 2.457A13.133 13.133 0 0 0 1.172 8z'/%3E%3Cpath fill-rule='evenodd' d='M8 5.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5zM4.5 8a3.5 3.5 0 1 1 7 0 3.5 3.5 0 0 1-7 0z'/%3E%3C/svg%3E") !important;
}
</style>
</head>
<body class="sb-nav-fixed">
<div id="navtop"></div>
@ -121,36 +89,20 @@ button#toggle-password:focus {
<div class="row mt-0 mt-sm-4 mb-0 mb-sm-4">
<div class="col-12 col-md-4">Altes Passwort:</div>
<div class="col-12 col-md-8">
<div class="input-group">
<input type="password" id="password" class="form-control rounded-right" required>
<button id="toggle-password" type="button" class="d-none"
aria-label="Show password as plain text. Warning: this will display your password on the screen.">
</button>
</div>
<input type="password" id="password" class="form-control rounded-right" required onkeydown="keysave(this)">
</div>
</div>
<div class="row mt-0 mt-sm-4 mb-0 mb-sm-4">
<div class="col-12 col-md-4">Neues Passwort:</div>
<div class="col-12 col-md-8">
<div class="input-group">
<input type="password" id="password_new1" class="form-control rounded-right" required>
<button id="toggle-password" type="button" class="d-none"
aria-label="Show password as plain text. Warning: this will display your password on the screen.">
</button>
</div>
<input type="password" id="password_new1" class="form-control rounded-right" required onkeydown="keysave(this)">
</div>
</div>
<div class="row mt-0 mt-sm-4 mb-0 mb-sm-4">
<div class="col-12 col-md-4">Passwortwiederholung:</div>
<div class="col-12 col-md-8">
<div class="input-group">
<input type="password" id="password_new2" class="form-control rounded-right" required>
<button id="toggle-password" type="button" class="d-none"
aria-label="Show password as plain text. Warning: this will display your password on the screen.">
</button>
</div>
<input type="password" id="password_new2" class="form-control rounded-right" required onkeydown="keysave(this)">
</div>
</div>
</div>
@ -161,9 +113,6 @@ button#toggle-password:focus {
</div>
</div>
<div id="msg"></div>
<?php echo '<script'; ?>
src="../js/show-password-toggle.js" async><?php echo '</script'; ?>
>
</main>
<!-- footer -->
<div id="footer"></div>

View File

@ -1,18 +1,18 @@
<?php
/* Smarty version 3.1.39, created on 2023-03-24 07:44:53
/* Smarty version 3.1.39, created on 2023-03-29 07:50:59
from 'C:\xampp_8.0.9\htdocs\survey\templates\modern\dashboard\nav.html' */
/* @var Smarty_Internal_Template $_smarty_tpl */
if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
'version' => '3.1.39',
'unifunc' => 'content_641d46e5766180_99358598',
'unifunc' => 'content_6423d1c386cc23_65117232',
'has_nocache_code' => false,
'file_dependency' =>
array (
'81c00a8c5d0bbd7d154ad2d8777ef2d3d8c3a749' =>
array (
0 => 'C:\\xampp_8.0.9\\htdocs\\survey\\templates\\modern\\dashboard\\nav.html',
1 => 1679640055,
1 => 1680067901,
2 => 'file',
),
),
@ -20,94 +20,79 @@ if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
array (
),
),false)) {
function content_641d46e5766180_99358598 (Smarty_Internal_Template $_smarty_tpl) {
function content_6423d1c386cc23_65117232 (Smarty_Internal_Template $_smarty_tpl) {
?><div id="layoutSidenav_nav">
<nav class="bg-juandmi sb-sidenav accordion sb-sidenav-dark" id="sidenavAccordion">
<div class="sb-sidenav-menu">
<div class="nav">
<!--<div class="sb-sidenav-menu-heading">Core</div>-->
<a class="nav-link" href="startseite.php">
<div class="sb-nav-link-icon"><i class="fas fa-house"></i></div>
Home
</a>
<div class="sb-sidenav-menu-heading">Umfrage</div>
<a class="nav-link" href="survey_erfassen.php?new=1">
<div class="sb-nav-link-icon"><i class="fas fa-pie-chart"></i></div>
Erstellen
</a>
<a class="nav-link" href="survey_edit.php?new=1">
<div class="sb-nav-link-icon"><i class="fas fa-edit"></i></div>
Bearbeiten
</a>
<!--
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#collapseLayouts" aria-expanded="false" aria-controls="collapseLayouts">
<div class="sb-nav-link-icon"><i class="fas fa-columns"></i></div>
Erstellen
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="collapseLayouts" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordion">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="layout-static.html">Static Navigation</a>
<a class="nav-link" href="layout-sidenav-light.html">Light Sidenav</a>
</nav>
</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#collapsePages" aria-expanded="false" aria-controls="collapsePages">
<div class="sb-nav-link-icon"><i class="fas fa-book-open"></i></div>
Pages
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="collapsePages" aria-labelledby="headingTwo" data-bs-parent="#sidenavAccordion">
<nav class="sb-sidenav-menu-nested nav accordion" id="sidenavAccordionPages">
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#pagesCollapseAuth" aria-expanded="false" aria-controls="pagesCollapseAuth">
Authentication
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="pagesCollapseAuth" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordionPages">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="login.html">Login</a>
<a class="nav-link" href="register.html">Register</a>
<a class="nav-link" href="password.html">Forgot Password</a>
</nav>
</div>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#pagesCollapseError" aria-expanded="false" aria-controls="pagesCollapseError">
Error
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="pagesCollapseError" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordionPages">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="401.html">401 Page</a>
<a class="nav-link" href="404.html">404 Page</a>
<a class="nav-link" href="500.html">500 Page</a>
</nav>
</div>
</nav>
</div>
-->
<div class="sb-sidenav-menu-heading">Administration</div>
<a class="nav-link" href="parameter.php">
<div class="sb-nav-link-icon"><i class="fas fa-cog"></i></div>
Systemparameter
</a>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#collapseLayouts" aria-expanded="false" aria-controls="collapseLayouts">
<div class="sb-nav-link-icon"><i class="fas fa-user"></i></div>
Benutzerverwaltung
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
</a>
<div class="collapse" id="collapseLayouts" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordion">
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="create_user.php">Benutzer erstellen</a>
<!--<a class="nav-link" href="layout-sidenav-light.html">Light Sidenav</a>-->
</nav>
</div>
<?php
$__section_table_data_0_loop = (is_array(@$_loop=$_smarty_tpl->tpl_vars['table_data']->value) ? count($_loop) : max(0, (int) $_loop));
$__section_table_data_0_total = $__section_table_data_0_loop;
$_smarty_tpl->tpl_vars['__smarty_section_table_data'] = new Smarty_Variable(array());
if ($__section_table_data_0_total !== 0) {
for ($__section_table_data_0_iteration = 1, $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] = 0; $__section_table_data_0_iteration <= $__section_table_data_0_total; $__section_table_data_0_iteration++, $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']++){
?>
<?php if ($_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['visible'] > 0) {?>
<div class="sb-sidenav-menu-heading"><?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['headline'];?>
</div>
<?php }?>
<?php
$__section_inner_1_loop = (is_array(@$_loop=$_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['inner']) ? count($_loop) : max(0, (int) $_loop));
$__section_inner_1_total = $__section_inner_1_loop;
$_smarty_tpl->tpl_vars['__smarty_section_inner'] = new Smarty_Variable(array());
if ($__section_inner_1_total !== 0) {
for ($__section_inner_1_iteration = 1, $_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index'] = 0; $__section_inner_1_iteration <= $__section_inner_1_total; $__section_inner_1_iteration++, $_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index']++){
$_smarty_tpl->tpl_vars['__smarty_section_inner']->value['rownum'] = $__section_inner_1_iteration;
?>
<?php if ($_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['inner'][(isset($_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index'] : null)]['link'] == '#') {?>
<a class="nav-link collapsed" href="#" data-bs-toggle="collapse" data-bs-target="#collapse<?php echo (isset($_smarty_tpl->tpl_vars['__smarty_section_inner']->value['rownum']) ? $_smarty_tpl->tpl_vars['__smarty_section_inner']->value['rownum'] : null);?>
" aria-expanded="false" aria-controls="collapse<?php echo (isset($_smarty_tpl->tpl_vars['__smarty_section_inner']->value['rownum']) ? $_smarty_tpl->tpl_vars['__smarty_section_inner']->value['rownum'] : null);?>
">
<?php } else { ?>
<a class="nav-link" href="<?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['inner'][(isset($_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index'] : null)]['link'];?>
">
<?php }?>
<div class="sb-nav-link-icon"><i class="<?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['inner'][(isset($_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index'] : null)]['fontawesome'];?>
"></i></div>
<?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['inner'][(isset($_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index'] : null)]['headline'];?>
<!--
<a class="nav-link" href="tables.html">
<div class="sb-nav-link-icon"><i class="fas fa-table"></i></div>
Tables
</a>
-->
<?php if ($_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['inner'][(isset($_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index'] : null)]['link'] == '#') {?>
<div class="sb-sidenav-collapse-arrow"><i class="fas fa-angle-down"></i></div>
<?php }?>
</a>
<?php
$__section_inner2_2_loop = (is_array(@$_loop=$_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['inner'][(isset($_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index'] : null)]['inner2']) ? count($_loop) : max(0, (int) $_loop));
$__section_inner2_2_total = $__section_inner2_2_loop;
$_smarty_tpl->tpl_vars['__smarty_section_inner2'] = new Smarty_Variable(array());
if ($__section_inner2_2_total !== 0) {
for ($__section_inner2_2_iteration = 1, $_smarty_tpl->tpl_vars['__smarty_section_inner2']->value['index'] = 0; $__section_inner2_2_iteration <= $__section_inner2_2_total; $__section_inner2_2_iteration++, $_smarty_tpl->tpl_vars['__smarty_section_inner2']->value['index']++){
$_smarty_tpl->tpl_vars['__smarty_section_inner2']->value['rownum'] = $__section_inner2_2_iteration;
$_smarty_tpl->tpl_vars['__smarty_section_inner2']->value['last'] = ($__section_inner2_2_iteration === $__section_inner2_2_total);
?>
<?php if ((isset($_smarty_tpl->tpl_vars['__smarty_section_inner2']->value['rownum']) ? $_smarty_tpl->tpl_vars['__smarty_section_inner2']->value['rownum'] : null) == 1) {?>
<div class="collapse" id="collapse<?php echo (isset($_smarty_tpl->tpl_vars['__smarty_section_inner']->value['rownum']) ? $_smarty_tpl->tpl_vars['__smarty_section_inner']->value['rownum'] : null);?>
" aria-labelledby="headingOne" data-bs-parent="#sidenavAccordion">
<?php }?>
<nav class="sb-sidenav-menu-nested nav">
<a class="nav-link" href="<?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['inner'][(isset($_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index'] : null)]['inner2'][(isset($_smarty_tpl->tpl_vars['__smarty_section_inner2']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_inner2']->value['index'] : null)]['link'];?>
"><?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['inner'][(isset($_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_inner']->value['index'] : null)]['inner2'][(isset($_smarty_tpl->tpl_vars['__smarty_section_inner2']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_inner2']->value['index'] : null)]['headline'];?>
</a>
</nav>
<?php if ((isset($_smarty_tpl->tpl_vars['__smarty_section_inner2']->value['last']) ? $_smarty_tpl->tpl_vars['__smarty_section_inner2']->value['last'] : null)) {?>
</div>
<?php }?>
<?php
}
}
?>
<?php
}
}
?>
<?php
}
}
?>
</div>
</div>
<div class="bg-juandmi sb-sidenav-footer">

View File

@ -1,18 +1,18 @@
<?php
/* Smarty version 3.1.39, created on 2023-03-24 12:01:27
/* Smarty version 3.1.39, created on 2023-03-29 08:26:04
from 'C:\xampp_8.0.9\htdocs\survey\templates\modern\dashboard\create_user.html' */
/* @var Smarty_Internal_Template $_smarty_tpl */
if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
'version' => '3.1.39',
'unifunc' => 'content_641d83072c7a20_98229386',
'unifunc' => 'content_6423d9fccd0fb7_29452305',
'has_nocache_code' => false,
'file_dependency' =>
array (
'b24e1617a419553123f2d87b2d94e4b5ba1c4358' =>
array (
0 => 'C:\\xampp_8.0.9\\htdocs\\survey\\templates\\modern\\dashboard\\create_user.html',
1 => 1679655638,
1 => 1680067901,
2 => 'file',
),
),
@ -20,7 +20,7 @@ if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
array (
),
),false)) {
function content_641d83072c7a20_98229386 (Smarty_Internal_Template $_smarty_tpl) {
function content_6423d9fccd0fb7_29452305 (Smarty_Internal_Template $_smarty_tpl) {
if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<!DOCTYPE html>
<html lang="de">
@ -37,7 +37,7 @@ if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<link href="css/styles.css" rel="stylesheet" />
<!-- icons in nav-->
<?php echo '<script'; ?>
src="all.js" crossorigin="anonymous"><?php echo '</script'; ?>
src="js/all.js" crossorigin="anonymous"><?php echo '</script'; ?>
>
<?php echo '<script'; ?>
src="../jquery/jquery-3.4.1.min.js"><?php echo '</script'; ?>
@ -197,7 +197,11 @@ if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<div class="card">
<div class="card-header">
<i class="fas fa-edit me-1"></i>
Benutzer erstellen
<?php if ($_smarty_tpl->tpl_vars['create_edit']->value == '') {?>
Benutzer erstellen
<?php } else { ?>
Benutzer bearbeiten
<?php }?>
</div>
<div class="card-body">
<div class="row">
@ -228,7 +232,7 @@ if ($__section_table_data_0_total !== 0) {
for ($__section_table_data_0_iteration = 1, $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] = 0; $__section_table_data_0_iteration <= $__section_table_data_0_total; $__section_table_data_0_iteration++, $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']++){
?>
<option value="<?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['rid'];?>
"><?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['bezeichnung'];?>
" <?php if ($_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['selected'] == 1) {?> selected <?php }?>><?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['bezeichnung'];?>
</option>
<?php
}
@ -236,9 +240,22 @@ for ($__section_table_data_0_iteration = 1, $_smarty_tpl->tpl_vars['__smarty_sec
?>
</select>
</div>
<?php if ($_smarty_tpl->tpl_vars['create_edit']->value != '') {?>
<div class="row mt-0 mt-sm-4 mb-0 mb-sm-4">
<div class="col-12 col-md-4">Passwort zur&uuml;cksetzen:</div>
<div class="col-12 col-md-8">
<input class="form-check-input" type="checkbox" name="pwdback" id="pwdback" value="1">
</div>
</div>
<?php }?>
</div>
<p align='center'>
<?php if ($_smarty_tpl->tpl_vars['create_edit']->value == '') {?>
<button class="col-6 btn btn-primary btn-sm mt-3" id="save" onclick="usersave();">Speichern</button>
<?php } else { ?>
<button class="col-6 btn btn-primary btn-sm mt-3" id="save" onclick="userupdate(<?php echo $_smarty_tpl->tpl_vars['create_edit']->value;?>
);">Update</button>
<?php }?>
</p>
</div>
</div>

View File

@ -1,18 +1,18 @@
<?php
/* Smarty version 3.1.39, created on 2023-03-24 09:07:50
/* Smarty version 3.1.39, created on 2023-03-29 08:34:22
from 'C:\xampp_8.0.9\htdocs\survey\templates\modern\dashboard\survey_erfassen.html' */
/* @var Smarty_Internal_Template $_smarty_tpl */
if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
'version' => '3.1.39',
'unifunc' => 'content_641d5a563f9774_23770210',
'unifunc' => 'content_6423dbee61a9f0_40086453',
'has_nocache_code' => false,
'file_dependency' =>
array (
'b3a308ee2af3bf7c7926a28ad9259929ec1e5ab1' =>
array (
0 => 'C:\\xampp_8.0.9\\htdocs\\survey\\templates\\modern\\dashboard\\survey_erfassen.html',
1 => 1679645265,
1 => 1680071657,
2 => 'file',
),
),
@ -20,7 +20,7 @@ if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
array (
),
),false)) {
function content_641d5a563f9774_23770210 (Smarty_Internal_Template $_smarty_tpl) {
function content_6423dbee61a9f0_40086453 (Smarty_Internal_Template $_smarty_tpl) {
if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<!DOCTYPE html>
<html lang="de">
@ -55,7 +55,7 @@ if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<link href="css/styles.css" rel="stylesheet" />
<!-- icons in nav-->
<?php echo '<script'; ?>
src="all.js" crossorigin="anonymous"><?php echo '</script'; ?>
src="js/all.js" crossorigin="anonymous"><?php echo '</script'; ?>
>
<link rel="stylesheet" href="../bootstrap/node_modules/bootstrap-icons/font/bootstrap-icons.css">
<style type="text/css">
@ -252,7 +252,7 @@ if ($_smarty_tpl->tpl_vars['action']->value == 'fragen') {?>
<link href="css/styles.css" rel="stylesheet" />
<!-- icons in nav-->
<?php echo '<script'; ?>
src="all.js" crossorigin="anonymous"><?php echo '</script'; ?>
src="js/all.js" crossorigin="anonymous"><?php echo '</script'; ?>
>
<link rel="stylesheet" href="../bootstrap/node_modules/bootstrap-icons/font/bootstrap-icons.css">
<?php echo '<script'; ?>
@ -310,7 +310,7 @@ if ($_smarty_tpl->tpl_vars['action']->value == 'fragen') {?>
function(data){
var a = data.split('|***|');
if(a[1]=="update"){
$('#msg').show().delay(5000).fadeOut(500);
$('#msg').show().delay(1000).fadeOut(500);
$('#msg').html(a[0]);
}
}
@ -344,6 +344,15 @@ if ($_smarty_tpl->tpl_vars['action']->value == 'fragen') {?>
</head>
<!--<body onload="if(document.erfassen)document.erfassen.<?php echo $_smarty_tpl->tpl_vars['umfrageerf_focus']->value;?>
.focus();return false;">-->
<?php echo '<script'; ?>
type="text/javascript">
$(function() {
$("#<?php echo $_smarty_tpl->tpl_vars['umfrageerf_focus']->value;?>
").focus();
})
<?php echo '</script'; ?>
>
<body class="sb-nav-fixed">
<div id="navtop"></div>

View File

@ -0,0 +1,229 @@
<?php
/* Smarty version 3.1.39, created on 2023-03-29 15:57:03
from 'C:\xampp_8.0.9\htdocs\survey\templates\modern\dashboard\rollen.html' */
/* @var Smarty_Internal_Template $_smarty_tpl */
if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
'version' => '3.1.39',
'unifunc' => 'content_642443af4711e5_78506409',
'has_nocache_code' => false,
'file_dependency' =>
array (
'bd5096a73e573183754922867cfe39b849c92a94' =>
array (
0 => 'C:\\xampp_8.0.9\\htdocs\\survey\\templates\\modern\\dashboard\\rollen.html',
1 => 1680098220,
2 => 'file',
),
),
'includes' =>
array (
),
),false)) {
function content_642443af4711e5_78506409 (Smarty_Internal_Template $_smarty_tpl) {
if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<!doctype html>
<html lang="de">
<head>
<meta charset="utf-8">
<meta name="description" content="Scrollable tab for Bootstrap 5">
<meta name="keywords" content="Bootstrap, Bootstrap 5, Tabs">
<meta name="author" content="Federico Navarrete">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="../bootstrap/node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<?php echo '<script'; ?>
src="../bootstrap/node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"><?php echo '</script'; ?>
>
<!-- nochmals bootstrap.css mit Erweiterungen vom Dashboard -->
<link href="css/styles.css" rel="stylesheet" />
<!-- icons in nav-->
<?php echo '<script'; ?>
src="js/all.js" crossorigin="anonymous"><?php echo '</script'; ?>
>
<link rel="stylesheet" href="../bootstrap/node_modules/bootstrap-icons/font/bootstrap-icons.css">
<?php echo '<script'; ?>
src="../jquery/jquery-3.4.1.min.js"><?php echo '</script'; ?>
>
<!-- jQuery UI CSS
<?php echo '<script'; ?>
src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js"><?php echo '</script'; ?>
>
-->
<?php echo '<script'; ?>
src="../jquery/jquery-ui.js"><?php echo '</script'; ?>
>
<style>
.btn-group > .btn{
margin-bottom:20px;
border-radius:20px !important;
}
</style>
<?php echo '<script'; ?>
type="text/javascript">
function keysave(ele) {
if(event.key === 'Enter') {
rollesave();
}
}
<?php echo '</script'; ?>
>
<style type="text/css">
.ui-sortable tr {
cursor:pointer;
}
.ui-sortable tr:hover {
background:rgba(244,251,17,0.45);
}
</style>
<?php echo '<script'; ?>
>
$(document).ready(function(){
$('[data-toggle="popover"]').popover();
});
<?php echo '</script'; ?>
>
</head>
<!--<body onload="if(document.erfassen)document.erfassen.<?php echo $_smarty_tpl->tpl_vars['umfrageerf_focus']->value;?>
.focus();return false;">-->
<body class="sb-nav-fixed">
<div id="navtop"></div>
<?php echo '<script'; ?>
>
$(function(){
// im Navbar muss der toggle in der Callbackfunktion definiert werden. Sonst findet jquery getelementbyID nicht
$("#navtop").load('navtop.php', null, function(){$.getScript('js/scripts.js');});
$("#navleft").load("nav.php");
$("#footer").load("footer.php");
});
<?php echo '</script'; ?>
>
<div id="layoutSidenav">
<!-- Navigation left -->
<div id="navleft"></div>
<div id="layoutSidenav_content">
<main>
<!--Anwendung-->
<?php echo '<script'; ?>
src="../js/components/admin_rollen.js"><?php echo '</script'; ?>
>
<div class="container-fluid">
<div class="card">
<div class="card-header">
<i class="fas fa-table me-1"></i>
Rollen erfassen
</div>
<div class="row mt-1 mt-sm-1 mb-1 mb-sm-1">
<div class="col-4 col-md-4">Rollenname:</div>
<div class="col-8 col-md-8"><input class="form-control" type="text" name="rollenname" id="rollenname" value="<?php echo $_smarty_tpl->tpl_vars['umfrageerf_value_frage']->value;?>
" size="60" onkeydown="keysave(this)"></div>
</div>
</div>
<div class="row">
<div class="row col-3"></div>
<div class="row col-6"><button class="btn btn-primary btn-sm mt-3" id="save" onclick="rollesave();">Speichern</button></div>
<div class="row col-3"></div>
</div>
<br>
<div class="card">
<div class="card-header">
<i class="fas fa-table me-1"></i>
Vorhandene Rollen
</div>
<div class="card-body">
<div class="row mt-0 mt-sm-1 mb-0 mb-sm-1">
<div class="row mt-0 mb-0">
<div class="d-none col-md-10 d-md-block"><b>Rolle</b></div>
<div class="d-none col-md-2 d-md-block"><b>Aktion</b></div>
</div>
<?php
$__section_table_data_0_loop = (is_array(@$_loop=$_smarty_tpl->tpl_vars['table_data']->value) ? count($_loop) : max(0, (int) $_loop));
$__section_table_data_0_total = $__section_table_data_0_loop;
$_smarty_tpl->tpl_vars['__smarty_section_table_data'] = new Smarty_Variable(array());
if ($__section_table_data_0_total !== 0) {
for ($__section_table_data_0_iteration = 1, $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] = 0; $__section_table_data_0_iteration <= $__section_table_data_0_total; $__section_table_data_0_iteration++, $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']++){
?>
<div class="row mt-0 mt-sm-1 mb-0 mb-sm-1">
<div class="col-6 col-md-10"><?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['bezeichnung'];?>
</div>
<div class="col-6 col-md-2">
<a class="btn btn-success btn-rounded btn-icon btn-sm" data-bs-toggle="modal" value="<?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['rid'];?>
|rollenzuordnung.php" onclick="ShowZuordnung(this)" data-bs-target="#ZuordnungModal"><i class="fa fa-eye" style="width:18px;"></i></a>
<a class="btn btn-success btn-rounded btn-icon btn-sm" data-bs-toggle="modal" value="<?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['rid'];?>
|userzuordnung.php" onclick="ShowZuordnung(this)" data-bs-target="#ZuordnungModal"><i class="fa fa-user" style="width:18px;"></i></a>
<a class="btn btn-danger btn-rounded btn-icon btn-sm" onclick="delRole(<?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['rid'];?>
)"><i class="fa fa-trash" style="width:18px;"></i></a>
</div>
</div>
<?php
}
}
?>
<!-- Modal -->
<div class="modal" id="ZuordnungModal" tabindex="-1" aria-labelledby="ZuordnungModalLabel" aria-hidden="true">
<div class="modal-dialog modal-xl">
<div class="modal-content">
<div class="modal-header">
<!--<h5 class="modal-title" id="ZuordnungModalLabel">Rollenübersicht</h5>-->
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body">
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-bs-dismiss="modal">Close</button>
<!--<button type="button" class="btn btn-primary">Save changes</button>-->
</div>
</div>
</div>
</div>
<!-- Lösen Sie das Modal mit einem Button aus -->
<?php echo '<script'; ?>
>
function ShowZuordnung(a){
let receive = a.getAttribute("value");
var a = receive.split('|');
var value = a[0];
var file = a[1];
$( '.modal-body' ).load( file+'?edit='+value , function () {
$( '#ZuordnungModal' ).modal({show: true });
});
}
<?php echo '</script'; ?>
>
</div>
</div>
</div>
<div id="msg"></div>
</main>
<!--
<button type="button" class="btn btn-primary" data-bs-toggle="popover" title="Popover Header" data-bs-content="Some content inside the popover">
Toggle popover
</button>
-->
<!-- footer -->
<div id="footer"></div>
</div>
</div>
<!--
<?php echo '<script'; ?>
>
var popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle="popover"]'))
var popoverList = popoverTriggerList.map(function (popoverTriggerEl) {
return new bootstrap.Popover(popoverTriggerEl)
})
<?php echo '</script'; ?>
>
-->
</body>
</html>
<?php }?>
<?php }
}

View File

@ -0,0 +1,232 @@
<?php
/* Smarty version 3.1.39, created on 2023-03-29 07:51:04
from 'C:\xampp_8.0.9\htdocs\survey\templates\modern\dashboard\userzuordnung.html' */
/* @var Smarty_Internal_Template $_smarty_tpl */
if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
'version' => '3.1.39',
'unifunc' => 'content_6423d1c8cb73b7_95154832',
'has_nocache_code' => false,
'file_dependency' =>
array (
'e890b780b2ea3c1806623c4b8afdbf6ddb585671' =>
array (
0 => 'C:\\xampp_8.0.9\\htdocs\\survey\\templates\\modern\\dashboard\\userzuordnung.html',
1 => 1680067903,
2 => 'file',
),
),
'includes' =>
array (
),
),false)) {
function content_6423d1c8cb73b7_95154832 (Smarty_Internal_Template $_smarty_tpl) {
if ($_smarty_tpl->tpl_vars['action']->value == '') {?>
<!doctype html>
<html lang="de">
<head>
<meta charset="utf-8">
<meta name="description" content="Scrollable tab for Bootstrap 5">
<meta name="keywords" content="Bootstrap, Bootstrap 5, Tabs">
<meta name="author" content="Federico Navarrete">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="../bootstrap/node_modules/bootstrap/dist/css/bootstrap.min.css" rel="stylesheet">
<?php echo '<script'; ?>
src="../bootstrap/node_modules/bootstrap/dist/js/bootstrap.bundle.min.js"><?php echo '</script'; ?>
>
<!-- nochmals bootstrap.css mit Erweiterungen vom Dashboard -->
<link href="css/styles.css" rel="stylesheet" />
<!-- icons in nav-->
<?php echo '<script'; ?>
src="js/all.js" crossorigin="anonymous"><?php echo '</script'; ?>
>
<!-- data Table: https://datatables.net/ -->
<?php echo '<script'; ?>
src="../bootstrap/data-table/jquery.min.js"><?php echo '</script'; ?>
>
<link rel="stylesheet" href="../bootstrap/data-table/dataTables.bootstrap5.min.css"></style>
<link rel="stylesheet" href="../bootstrap/data-table/rowReorder.dataTables.min.css"></style>
<?php echo '<script'; ?>
type="text/javascript" src="../bootstrap/data-table/jquery.dataTables.min.js"><?php echo '</script'; ?>
>
<?php echo '<script'; ?>
type="text/javascript" src="../bootstrap/data-table/dataTables.rowReorder.min.js"><?php echo '</script'; ?>
>
<?php echo '<script'; ?>
type="text/javascript" src="../bootstrap/data-table/dataTables.bootstrap5.min.js"><?php echo '</script'; ?>
>
<link rel="stylesheet" href="../bootstrap/node_modules/bootstrap-icons/font/bootstrap-icons.css">
<?php echo '<script'; ?>
src="../jquery/jquery-3.4.1.min.js"><?php echo '</script'; ?>
>
<!-- jQuery UI CSS
<?php echo '<script'; ?>
src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.11.2/jquery-ui.min.js"><?php echo '</script'; ?>
>
-->
<?php echo '<script'; ?>
src="../jquery/jquery-ui.js"><?php echo '</script'; ?>
>
<style>
.btn-group > .btn{
margin-bottom:20px;
border-radius:20px !important;
}
.ui-sortable tr {
cursor:pointer;
}
.ui-sortable tr:hover {
background:rgba(244,251,17,0.45);
}
.table>:not(caption)>*>* {
padding: 0.1rem 0.1rem;
}
p {
margin: 0;
}
</style>
</head>
<!--<body onload="if(document.erfassen)document.erfassen.<?php echo $_smarty_tpl->tpl_vars['umfrageerf_focus']->value;?>
.focus();return false;">-->
<body class="sb-nav-fixed">
<main>
<!--Anwendung-->
<?php echo '<script'; ?>
src="../js/components/admin_rollen.js"><?php echo '</script'; ?>
>
<p class="text-center"><b><?php echo $_smarty_tpl->tpl_vars['rollenzuordnung_bezeichnung']->value;?>
</b></p>
<div class="container-fluid">
<div class="card">
<div class="card-header">
<i class="fas fa-table me-1"></i>
Nicht zugewiesene Benutzer
</div>
<div class="card-body">
<table id="notassigned" class="table table-striped table-bordered table-responsive table-hover" >
<thead class="d-none">
<tr>
<th>Vorname</th>
<th>Nachname</th>
<th>Aktion</th>
</tr>
</thead>
<tbody>
<?php
$__section_table_data_0_loop = (is_array(@$_loop=$_smarty_tpl->tpl_vars['table_data']->value) ? count($_loop) : max(0, (int) $_loop));
$__section_table_data_0_total = $__section_table_data_0_loop;
$_smarty_tpl->tpl_vars['__smarty_section_table_data'] = new Smarty_Variable(array());
if ($__section_table_data_0_total !== 0) {
for ($__section_table_data_0_iteration = 1, $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] = 0; $__section_table_data_0_iteration <= $__section_table_data_0_total; $__section_table_data_0_iteration++, $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']++){
?>
<tr>
<td><?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['vorname'];?>
</td>
<td><?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['nachname'];?>
</td>
<td>
<p class="text-center">
<a class="btn btn-success btn-rounded btn-icon btn-sm" onclick="erfuser('<?php echo $_smarty_tpl->tpl_vars['table_data']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data']->value['index'] : null)]['uid'];?>
|<?php echo $_smarty_tpl->tpl_vars['rollen_edit']->value;?>
')"><i class="fa-solid fa-plus" style="width:18px;"></i></a>
</p>
</td>
</tr>
<?php
}
}
?>
</tbody>
</table>
</div>
</div>
<br>
<div class="card">
<div class="card-header">
<i class="fas fa-table me-1"></i>
Zugewiesene Benutzer
</div>
<div class="card-body">
<table id="assigned" class="table table-striped table-bordered table-responsive table-hover" >
<thead class="d-none">
<tr>
<th>Vorname</th>
<th>Nachname</th>
<th>Aktion</th>
</tr>
</thead>
<tbody>
<?php
$__section_table_data1_1_loop = (is_array(@$_loop=$_smarty_tpl->tpl_vars['table_data1']->value) ? count($_loop) : max(0, (int) $_loop));
$__section_table_data1_1_total = $__section_table_data1_1_loop;
$_smarty_tpl->tpl_vars['__smarty_section_table_data1'] = new Smarty_Variable(array());
if ($__section_table_data1_1_total !== 0) {
for ($__section_table_data1_1_iteration = 1, $_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index'] = 0; $__section_table_data1_1_iteration <= $__section_table_data1_1_total; $__section_table_data1_1_iteration++, $_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index']++){
?>
<tr>
<td><?php echo $_smarty_tpl->tpl_vars['table_data1']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index'] : null)]['vorname'];?>
</td>
<td><?php echo $_smarty_tpl->tpl_vars['table_data1']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index'] : null)]['nachname'];?>
</td>
<td>
<p class="text-center">
<a class="btn btn-danger btn-rounded btn-icon btn-sm" onclick="deluser('<?php echo $_smarty_tpl->tpl_vars['table_data1']->value[(isset($_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index']) ? $_smarty_tpl->tpl_vars['__smarty_section_table_data1']->value['index'] : null)]['uid'];?>
|<?php echo $_smarty_tpl->tpl_vars['rollen_edit']->value;?>
')"><i class="fa-solid fa-minus" style="width:18px;"></i></a>
</p>
</td>
</tr>
<?php
}
}
?>
</tbody>
</table>
</div>
</div>
<div id="msg"></div>
</main>
</div>
<?php echo '<script'; ?>
src="../bootstrap/node_modules/move-js/move.js"><?php echo '</script'; ?>
>
<link href="../bootstrap/dist/scrollable-tabs.min.css" rel="stylesheet">
<?php echo '<script'; ?>
src="../bootstrap/dist/scrollable-tabs.min.js"><?php echo '</script'; ?>
>
</body>
<?php echo '<script'; ?>
>
$(document).ready(function(){
var table = new DataTable('#notassigned', {
rowReorder: true,
pageLength: 5,
language: {
url: '//cdn.datatables.net/plug-ins/1.13.4/i18n/de-DE.json',
search: "",
lengthMenu: "_MENU_ Zeilen",
},
});
var table2 = new DataTable('#assigned', {
rowReorder: true,
pageLength: 5,
language: {
url: '//cdn.datatables.net/plug-ins/1.13.4/i18n/de-DE.json',
search: "",
lengthMenu: "_MENU_ Zeilen",
},
});
});
<?php echo '</script'; ?>
>
</html>
<?php }
}
}

View File

@ -1,18 +1,18 @@
<?php
/* Smarty version 3.1.39, created on 2023-03-24 07:23:23
/* Smarty version 3.1.39, created on 2023-03-29 07:50:59
from 'C:\xampp_8.0.9\htdocs\survey\templates\modern\dashboard\startseite.html' */
/* @var Smarty_Internal_Template $_smarty_tpl */
if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
'version' => '3.1.39',
'unifunc' => 'content_641d41db4693a5_86181476',
'unifunc' => 'content_6423d1c34fde15_77685382',
'has_nocache_code' => false,
'file_dependency' =>
array (
'eefbc054a71eb9a54ff5facb15ab71dc63db3dcc' =>
array (
0 => 'C:\\xampp_8.0.9\\htdocs\\survey\\templates\\modern\\dashboard\\startseite.html',
1 => 1679638069,
1 => 1680067902,
2 => 'file',
),
),
@ -20,10 +20,10 @@ if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
array (
),
),false)) {
function content_641d41db4693a5_86181476 (Smarty_Internal_Template $_smarty_tpl) {
function content_6423d1c34fde15_77685382 (Smarty_Internal_Template $_smarty_tpl) {
?><!DOCTYPE html>
<html lang="en">
<head>
<head>
<title>JU & MI Startseite</title>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
@ -35,7 +35,7 @@ function content_641d41db4693a5_86181476 (Smarty_Internal_Template $_smarty_tpl)
<link href="css/styles.css" rel="stylesheet" />
<!-- icons in nav-->
<?php echo '<script'; ?>
src="all.js" crossorigin="anonymous"><?php echo '</script'; ?>
src="js/all.js" crossorigin="anonymous"><?php echo '</script'; ?>
>
<?php echo '<script'; ?>
src="../jquery/jquery-3.4.1.min.js"><?php echo '</script'; ?>
@ -60,7 +60,6 @@ function content_641d41db4693a5_86181476 (Smarty_Internal_Template $_smarty_tpl)
<div id="navleft"></div>
<div id="layoutSidenav_content">
<main>
<br>
<div class="container-fluid">
<div class="card">
<div class="card-header">
@ -70,8 +69,46 @@ function content_641d41db4693a5_86181476 (Smarty_Internal_Template $_smarty_tpl)
</div>
<div class="card-body">
<p class="card-text">Herzlich willkommen zur Administration von Jugendchor & Miteinander.<br><br>
Bitte Treffen Sie im Menü eine Auswahl!
</p>
<!--
<div class="row">
<div class="col-xl-3 col-md-6">
<div class="card bg-primary text-white mb-4">
<div class="card-body">Primary Card</div>
</div>
</div>
<div class="col-xl-3 col-md-6">
<div class="card bg-warning text-white mb-4">
<div class="card-body">Warning Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
</div>
</div>
<div class="col-xl-3 col-md-6">
<div class="card bg-success text-white mb-4">
<div class="card-body">Success Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
</div>
</div>
<div class="col-xl-3 col-md-6">
<div class="card bg-danger text-white mb-4">
<div class="card-body">Danger Card</div>
<div class="card-footer d-flex align-items-center justify-content-between">
<a class="small text-white stretched-link" href="#">View Details</a>
<div class="small text-white"><i class="fas fa-angle-right"></i></div>
</div>
</div>
</div>
</div>
-->
</div>
</div>
</div>

View File

@ -1,18 +1,18 @@
<?php
/* Smarty version 3.1.39, created on 2023-03-24 12:24:07
/* Smarty version 3.1.39, created on 2023-03-29 07:50:59
from 'C:\xampp_8.0.9\htdocs\survey\templates\modern\dashboard\navtop.html' */
/* @var Smarty_Internal_Template $_smarty_tpl */
if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
'version' => '3.1.39',
'unifunc' => 'content_641d88573d5123_95321232',
'unifunc' => 'content_6423d1c372b676_57439701',
'has_nocache_code' => false,
'file_dependency' =>
array (
'fbe82feaa632818ff9ecad86ba177b47f9b345b0' =>
array (
0 => 'C:\\xampp_8.0.9\\htdocs\\survey\\templates\\modern\\dashboard\\navtop.html',
1 => 1679657038,
1 => 1680067901,
2 => 'file',
),
),
@ -20,8 +20,25 @@ if ($_smarty_tpl->_decodeProperties($_smarty_tpl, array (
array (
),
),false)) {
function content_641d88573d5123_95321232 (Smarty_Internal_Template $_smarty_tpl) {
function content_6423d1c372b676_57439701 (Smarty_Internal_Template $_smarty_tpl) {
?><!--Navigation top-->
<style>
<!-- abweichend von original styles.css -->
.sb-sidenav-dark .sb-sidenav-menu .nav-link {
color: rgba(255, 255, 255, 0.8);
}
.sb-sidenav-dark .sb-sidenav-menu .nav-link .sb-nav-link-icon {
color: rgba(255, 255, 255, 0.8);
}
.sb-sidenav-dark {
background-color: #212529;
color: rgba(255, 255, 255, 0.8);
}
.navbar-dark {
--bs-navbar-color: rgba(255, 255, 255, 0.8)
}
</style>
<nav class="bg-juandmi sb-topnav navbar navbar-expand navbar-dark">
<!-- Navbar Brand-->
<a class="navbar-brand ps-3" href="startseite.php">Administration JU & MI</a>
@ -51,5 +68,6 @@ function content_641d88573d5123_95321232 (Smarty_Internal_Template $_smarty_tpl)
</ul>
</li>
</ul>
</nav><?php }
</nav>
<br><?php }
}

@ -0,0 +1 @@
Subproject commit 9065e4be0e7550c1f6b856dd3fc0391649d441b9

View File

@ -8,10 +8,10 @@ todo
-- Rechteverwaltung
-- Bezeichnungen DataTable Suchen etc
-- Bearbeiten 12 Uhr statt 24 Uhr
-- Focus beim Frage erfassen
|Rolle löschen Erfolgstext zu schnell -> geht nicht
|Kacheln Startseite -> vertragt
|Passwortvorschau - vertagt
Rolle löschen Erfolgstext zu schnell
Kacheln Startseite
Passwortvorschau
Fragen erfassen Probleme
Focus beim Frage erfassen
Direkte Seite anspringen und nach Login wieder dahin zurück