UI - Navbar Verbesserung
Dieser Commit ist enthalten in:
1
backups/backup_v2docker_20250608_205427_encrypted.sql.gz.enc
Normale Datei
1
backups/backup_v2docker_20250608_205427_encrypted.sql.gz.enc
Normale Datei
@@ -0,0 +1 @@
|
|||||||
|
gAAAAABoRdxjzYyCvIeUaYc9K1vaykwB7TPKSrBtn0XTGFnjRN8Apb0oHxrcK0H7Kzc9OnsK-XgNLeABneIJytDoP_pd3B-omvJ9MHgmrFMSUUya7EkZPzV_DYQ_hepekkKe-zWR153orrwCZiPyWevymn7WkxtqPVcm_tSzhyKsbwWiEkECcsgUMV5TxEzPlJ369ZkMh0KJjcPSKLn5hD8pB03u8oPtbysDaGPRqIuXxzfG280yLpa5RUaix-QfvoD87BbrffW2d6S04816f0C9LR8UkJ4TjHVlslJH9O8Hbw9EhnNVwHeHa1O3trF-dAUqNzzE75v4ZRD4DgmvXlwovTa3GvSMINwBUrCg_uFjkEgMt4Jm9WbOoBGLrUMAUkRGmXDqB-H1mWuMejbS2BoGh-pFsDjmDAo6wRj2VeH2xckjZoMbrUS7oTs2nWJaj8edMRTftpsM419E0GUHK4nl03-Hn_ccZ4Azq_lsR92lioWh_YnG0N6EsmFfyW2nbMEwXTsL-0TuwwCkZXrzhMjhyuFDgwoPR26Z2sqeX8dX6oPNo7zp1JdGfGMc-wiacgmYwjHRuMLq5Oh8KpI9qn_BVhZIn8rYE64afRQYqqSjQUYwssninzfP3H9y_Hxvoq_xc7ryQNvfSCsvuqstMrCNyhKRVOktRAJ9n5VB_TRdSOryswgJzkyRI_BVZZH3ZZpF_QmC6C5OU4ArJ3l_lHbsDR5f6VRzBP-HN1uidi8AlWj3GQREMBbgnmNI25r_5OICZnSBjtAmF-gAwI7V8pv2LGjY_YpXIRoi-HAD7NLGUhS1_Y_l-k1kF-qw4MClFEaVPBuLSYOWI7gxg81stNsqWnRpdBkdQ6-OxBi8yg1Crkyf8Gsd_k_VRO9trIyyj5em3XJTxCrE6NeKX2Zbjd2cNKsQBotXan_pASwvxSXN7RJ9SxcLTB7KUgDhQZPx8oLRhs_c-zG1DnrJBE2xGClzEy1rlHhfL0VLkuwiyS5sL0jS6sxqNfN20-j7qhQG2SZjyNffZF3UaWtYeRvxpYFDosyQCmj49VvN5Sci70TTOl_tFJ4KttjDHY0npt7ZiypcX-Uvx-8gkoMoWBjMS_StndgibhQtuq4Annuj8O-JMP48x2BHIeC6yme34aPWKNu8Fj-ZOrOTWiXrIrroqXEh4B4SMtp4O1Pi7QiXJm39o-cceYwhwzA5WOXrlQ0hyGtKezP2zW4x5okMnAPVu2bLouIGvl05Tc_8X_Y3j_i9ffeo8YWYs66prEDr7fXX_4mi2fWrCdeNRErN08Hl7lvyV3x_nO5Ax_oEk8CWLcYA4GJ2-WDui0qJGiPKv345WZwi8ePUfd45wJmuWFXGjQ1ZCLl0ZXMeg4eT04x3IKuHNAbKIlvyd8kFHnEykGV-zAyiqPK4TVwtgZNZBecyxmmWfW7hP62v0ySTuvViQQS6Cy0X8DeChB7UrcsY7_ST7XmVFjM6iVlCZUfzKeU9UbMzLL6JGRXDudE1vyRdCJdwDg5IYWzSAd21Ibtqof6xfCVMPlFWK0YHt2Y79Pqk-aEsHg7PJlT-Kpr5N2dGvYkBrENt9WLGdzokVDANSGG_BFkTWgA-DZ-nUnjCxcBE3Yf58opcqGli_b7cDuTx_ZwUOXm6Rwm2KmxUNtX5InExKO_J_E1X4-_wDnOaS8330bbS-a1al83SntifM2Gv71yrxQE4y52buIDD4h9KJdnoGQE68CLjjI0oecdg2DGH5y74Jp7ZIJ3P3EOg4ITn7AXr53liXalmKP0m8JkHkJNvduDAtpCItHd9RAIPaZFi7xIRjIzbhif3rSx0UMW87v4tdX8lKa0RVGYKwpo7wU31F6EDx5L-bOWxr0BpSgpa_qNnc17e6yswGyLKlmqPWh07I08IwzflXV3l_td7-M8OLHIh3shMHngUorC04pz4FTtONkLBjZbKvLtNOorvjIVPezvdOvn_3Ii1CburGKiXkBH3c8Hrr2OotD1Ycgq2sqt50CvzmFS1asyA-jnPlBBlx5RJUWcU9TWX_QsvcDuFwNljPakN7phf2aR7QRFi8pUAIahJN1SQ6zsXKDRpv9l0hKmIt-wNRPx4ZBaZCZGiQrTycbKdfXvX_xSz7SRM7B4Tfhev0Iel0GZd-gAnQmJ5uwXhMYzQmRHjX_tfZf-FFV8YpVJ3d2uv9VBBIczKn9Epra-g97C1tKMfoLGzQ12dniH5u9vq0x7V58myxICuOmu2FIKXw0L0DN7IDpoxW5s9Tht8kA85wGpiANqf_BqLCILfmAPjX_jH6xfstqVDfu7aF5lrFcLYpyaqB-g2k4g8pPGMlUuowCZnVyo4sGcoSN_mt8vwgVNntWwzrcb6S727-tA8LXT6pnEm6ShURCTJiSOV3MXrqDoHvapvtCPYhRla2a8kS9Y3Fx654BwUbUloGXCgHlg5BCAbgjiJPYbn9-0FrjLIK9eqFPcs_dipokOF-z-__hgZNC-h_2oqlAyTVFrr_zfYIgHfsDdiDriUcXV4WTn4NGitIfa_P_hybFqR7TXgR9Ih5nQKBdOVpvJmlUGFvimhlga07UrSBd2hGjB6N6TBqJzzeZBsO1XfaXbVc0la2MrmsjRgr4sKLsfeJQi6VnYZHeBh3f9ra1Zq9Qqz80X4N0i6L6uF1DvfKgms7xkFLyy0sgjcnmKau5ZhgKlNh9CqJsO54vFciKyyOdFazuT7EGobXFHZhRcu1P0RE0grtGJ9cv8At-wgp72pmP_srNOVdje5Q1gVr0HcL3i3ywz0jT7eO8O30iB6aXFYdD2SF4DsdXNX3wzzZfuqSd2ii6L_Av2gLjRjW_TZXZgrZ0-PE0CSTf70cAL7W6D6k8hYz7HwPeJRFkjfQgtqXXfaB3gIX07olOBVxiPNN_5JMLMknp7S3Ij9W1Z0ZHE42aalqe_8L5Vh3S717P5IlvlCIZqzmyGxZF_i3ARCJV9sZ065xmR6-cAflP-48Q2Voemo99d2AH-2x8jgyu-7Vg5J3Bz19rC05wGkjzQSGoRqwyVpOm-RUERf5SOspVhrdh5Jxpkq_ydPlmGEpSjOShK3xBcy-HGqKVf3wnNVp1Tu3_PzbYn-4I2phJbUK14Cf5tdmj4SqZAjPoOcnK_tu5-Xxy2Js81kByi7VS6hIvAINhdcdi4ifgOPFkN03t5pX0pLppiroUJ8iybkLR4HtJL5RHJq0FjMxyUwAsfFGQx19v6QHJp2jxIW7Z-ZWPmPXz5_wTtZPs_UubJBiJxXD_2JWyW3lHu-Dldj1yWe9EEjqxivm71v5MUT0jQYfeDwf0esXYfQ6tJ2ZAhVUkPZHtlV4zgv34h8mp5k8GsZlqFAHaw6-aQqmjDFPTNZ9gYzP2MIhiv6GAjWcxevXwLXbQgSm6HSBNqHztRItNw_b6McCfbU91AYBp-fkJrenXLRFURuoC__YdTcxlg9CNW7lJh3v0RULw0JwfX93BBwrvrEXS93DoNw2AIJssIV0cfvgglHrmGMnK3xiQXU5hpGyp7T7rz09XzOB_10mdAAJCLVaJT42IZAeI__QHnV0L4mSuaiXBgzTSd5BokeU2QR3FtZw_axrAIwGqXVn3sMlzylFE7cNp1K49Fk_FfbeeKFPHmD-nSXZW-tO4WIUgPyQtzLFRNpxxPulZ3t_tK4RtgniDsb78aSMV32P4zxeG0Y8-2XkXb3rXaIgSidh8H_o1oV_5_cdnBNSp8eR8uE3mRZw3cKC891OQuC5V2t1MOKNIYNIhMJBHF2WYcMQgw-q0McqmzkUVBKv2fb6bGNzxldE_dz6830slVpaqu3SRKsMqKMZT4=
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
{% extends "base.html" %}
|
{% extends "base.html" %}
|
||||||
|
|
||||||
{% block title %}Audit-Log{% endblock %}
|
{% block title %}Log{% endblock %}
|
||||||
|
|
||||||
{% block extra_css %}
|
{% block extra_css %}
|
||||||
<style>
|
<style>
|
||||||
@@ -34,7 +34,7 @@
|
|||||||
{% block content %}
|
{% block content %}
|
||||||
<div class="container py-5">
|
<div class="container py-5">
|
||||||
<div class="d-flex justify-content-between align-items-center mb-4">
|
<div class="d-flex justify-content-between align-items-center mb-4">
|
||||||
<h2>📋 Audit-Log</h2>
|
<h2>📝 Log</h2>
|
||||||
<div>
|
<div>
|
||||||
<a href="/" class="btn btn-secondary">📊 Dashboard</a>
|
<a href="/" class="btn btn-secondary">📊 Dashboard</a>
|
||||||
<a href="/licenses" class="btn btn-secondary">📋 Lizenzen</a>
|
<a href="/licenses" class="btn btn-secondary">📋 Lizenzen</a>
|
||||||
|
|||||||
@@ -17,10 +17,6 @@
|
|||||||
<h2>💾 Backup-Verwaltung</h2>
|
<h2>💾 Backup-Verwaltung</h2>
|
||||||
<div>
|
<div>
|
||||||
<a href="/" class="btn btn-secondary">📊 Dashboard</a>
|
<a href="/" class="btn btn-secondary">📊 Dashboard</a>
|
||||||
<a href="/licenses" class="btn btn-secondary">📋 Lizenzen</a>
|
|
||||||
<a href="/customers" class="btn btn-secondary">👥 Kunden</a>
|
|
||||||
<a href="/sessions" class="btn btn-secondary">🟢 Sessions</a>
|
|
||||||
<a href="/audit" class="btn btn-secondary">📋 Audit</a>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -63,7 +63,7 @@
|
|||||||
<body class="bg-light">
|
<body class="bg-light">
|
||||||
<nav class="navbar navbar-dark bg-dark">
|
<nav class="navbar navbar-dark bg-dark">
|
||||||
<div class="container-fluid">
|
<div class="container-fluid">
|
||||||
<span class="navbar-brand">🎛️ Lizenzverwaltung</span>
|
<a href="/" class="navbar-brand text-decoration-none">🎛️ AccountForger - Admin Panel</a>
|
||||||
<div class="d-flex align-items-center">
|
<div class="d-flex align-items-center">
|
||||||
<div id="session-timer" class="timer-normal me-3">
|
<div id="session-timer" class="timer-normal me-3">
|
||||||
⏱️ <span id="timer-display">5:00</span>
|
⏱️ <span id="timer-display">5:00</span>
|
||||||
|
|||||||
@@ -7,8 +7,7 @@
|
|||||||
<div class="d-flex justify-content-between align-items-center mb-4">
|
<div class="d-flex justify-content-between align-items-center mb-4">
|
||||||
<h1>🔒 Gesperrte IPs</h1>
|
<h1>🔒 Gesperrte IPs</h1>
|
||||||
<div>
|
<div>
|
||||||
<a href="/" class="btn btn-secondary">← Dashboard</a>
|
<a href="/" class="btn btn-secondary">📊 Dashboard</a>
|
||||||
<a href="/audit" class="btn btn-secondary">📋 Audit-Log</a>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -9,10 +9,7 @@
|
|||||||
<div>
|
<div>
|
||||||
<a href="/" class="btn btn-secondary">📊 Dashboard</a>
|
<a href="/" class="btn btn-secondary">📊 Dashboard</a>
|
||||||
<a href="/create" class="btn btn-primary">➕ Neue Lizenz</a>
|
<a href="/create" class="btn btn-primary">➕ Neue Lizenz</a>
|
||||||
<a href="/licenses" class="btn btn-secondary">📋 Lizenzen</a>
|
<a href="/batch" class="btn btn-primary">🔑 Batch-Lizenzen</a>
|
||||||
<a href="/sessions" class="btn btn-secondary">🟢 Sessions</a>
|
|
||||||
<a href="/audit" class="btn btn-secondary">📋 Audit</a>
|
|
||||||
<a href="/backups" class="btn btn-secondary">💾 Backups</a>
|
|
||||||
<div class="btn-group">
|
<div class="btn-group">
|
||||||
<button type="button" class="btn btn-info dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
|
<button type="button" class="btn btn-info dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
|
||||||
📥 Export
|
📥 Export
|
||||||
|
|||||||
@@ -6,9 +6,18 @@
|
|||||||
<style>
|
<style>
|
||||||
.stat-card {
|
.stat-card {
|
||||||
transition: transform 0.2s;
|
transition: transform 0.2s;
|
||||||
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
.stat-card:hover {
|
.stat-card:hover {
|
||||||
transform: translateY(-5px);
|
transform: translateY(-5px);
|
||||||
|
box-shadow: 0 4px 8px rgba(0,0,0,0.15);
|
||||||
|
}
|
||||||
|
a:hover .stat-card {
|
||||||
|
transform: translateY(-5px);
|
||||||
|
box-shadow: 0 4px 8px rgba(0,0,0,0.15);
|
||||||
|
}
|
||||||
|
.text-decoration-none:hover {
|
||||||
|
text-decoration: none !important;
|
||||||
}
|
}
|
||||||
.status-aktiv { color: #28a745; }
|
.status-aktiv { color: #28a745; }
|
||||||
.status-ablaufend { color: #ffc107; }
|
.status-ablaufend { color: #ffc107; }
|
||||||
@@ -24,42 +33,44 @@
|
|||||||
<div>
|
<div>
|
||||||
<a href="/create" class="btn btn-primary">➕ Neue Lizenz</a>
|
<a href="/create" class="btn btn-primary">➕ Neue Lizenz</a>
|
||||||
<a href="/batch" class="btn btn-primary">🔑 Batch-Lizenzen</a>
|
<a href="/batch" class="btn btn-primary">🔑 Batch-Lizenzen</a>
|
||||||
<a href="/licenses" class="btn btn-secondary">📋 Lizenzen</a>
|
<a href="/audit" class="btn btn-secondary">📝 Log</a>
|
||||||
<a href="/customers" class="btn btn-secondary">👥 Kunden</a>
|
|
||||||
<a href="/sessions" class="btn btn-secondary">🟢 Sessions</a>
|
|
||||||
<a href="/audit" class="btn btn-secondary">📋 Audit</a>
|
|
||||||
<a href="/backups" class="btn btn-secondary">💾 Backups</a>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- Statistik-Karten -->
|
<!-- Statistik-Karten -->
|
||||||
<div class="row g-3 mb-4">
|
<div class="row g-3 mb-4">
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<div class="card stat-card h-100">
|
<a href="/customers" class="text-decoration-none">
|
||||||
<div class="card-body text-center">
|
<div class="card stat-card h-100">
|
||||||
<h5 class="card-title">👥 Kunden</h5>
|
<div class="card-body text-center">
|
||||||
<h2 class="text-primary">{{ stats.total_customers }}</h2>
|
<h5 class="card-title">👥 Kunden</h5>
|
||||||
<p class="text-muted mb-0">Gesamt</p>
|
<h2 class="text-primary">{{ stats.total_customers }}</h2>
|
||||||
|
<p class="text-muted mb-0">Gesamt</p>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<div class="card stat-card h-100">
|
<a href="/licenses" class="text-decoration-none">
|
||||||
<div class="card-body text-center">
|
<div class="card stat-card h-100">
|
||||||
<h5 class="card-title">📋 Lizenzen</h5>
|
<div class="card-body text-center">
|
||||||
<h2 class="text-info">{{ stats.total_licenses }}</h2>
|
<h5 class="card-title">📋 Lizenzen</h5>
|
||||||
<p class="text-muted mb-0">Gesamt</p>
|
<h2 class="text-info">{{ stats.total_licenses }}</h2>
|
||||||
|
<p class="text-muted mb-0">Gesamt</p>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-md-4">
|
<div class="col-md-4">
|
||||||
<div class="card stat-card h-100">
|
<a href="/sessions" class="text-decoration-none">
|
||||||
<div class="card-body text-center">
|
<div class="card stat-card h-100">
|
||||||
<h5 class="card-title">🟢 Sessions</h5>
|
<div class="card-body text-center">
|
||||||
<h2 class="text-success">{{ stats.active_sessions }}</h2>
|
<h5 class="card-title">🟢 Sessions</h5>
|
||||||
<p class="text-muted mb-0">Aktive Nutzer</p>
|
<h2 class="text-success">{{ stats.active_sessions }}</h2>
|
||||||
|
<p class="text-muted mb-0">Aktive Nutzer</p>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -7,13 +7,8 @@
|
|||||||
<div class="d-flex justify-content-between align-items-center mb-4">
|
<div class="d-flex justify-content-between align-items-center mb-4">
|
||||||
<h2>Kunde bearbeiten</h2>
|
<h2>Kunde bearbeiten</h2>
|
||||||
<div>
|
<div>
|
||||||
<a href="/" class="btn btn-secondary">📈 Dashboard</a>
|
<a href="/" class="btn btn-secondary">📊 Dashboard</a>
|
||||||
<a href="/create" class="btn btn-primary">➕ Neue Lizenz</a>
|
<a href="/customers" class="btn btn-secondary">👥 Zurück zur Übersicht</a>
|
||||||
<a href="/licenses" class="btn btn-secondary">📋 Lizenzen</a>
|
|
||||||
<a href="/customers" class="btn btn-secondary">👥 Kunden</a>
|
|
||||||
<a href="/sessions" class="btn btn-secondary">🟢 Sessions</a>
|
|
||||||
<a href="/audit" class="btn btn-secondary">📋 Audit</a>
|
|
||||||
<a href="/backups" class="btn btn-secondary">💾 Backups</a>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -7,13 +7,8 @@
|
|||||||
<div class="d-flex justify-content-between align-items-center mb-4">
|
<div class="d-flex justify-content-between align-items-center mb-4">
|
||||||
<h2>Lizenz bearbeiten</h2>
|
<h2>Lizenz bearbeiten</h2>
|
||||||
<div>
|
<div>
|
||||||
<a href="/" class="btn btn-secondary">📈 Dashboard</a>
|
<a href="/" class="btn btn-secondary">📊 Dashboard</a>
|
||||||
<a href="/create" class="btn btn-primary">➕ Neue Lizenz</a>
|
<a href="/licenses" class="btn btn-secondary">📋 Zurück zur Übersicht</a>
|
||||||
<a href="/licenses" class="btn btn-secondary">📋 Lizenzen</a>
|
|
||||||
<a href="/customers" class="btn btn-secondary">👥 Kunden</a>
|
|
||||||
<a href="/sessions" class="btn btn-secondary">🟢 Sessions</a>
|
|
||||||
<a href="/audit" class="btn btn-secondary">📋 Audit</a>
|
|
||||||
<a href="/backups" class="btn btn-secondary">💾 Backups</a>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
@@ -12,7 +12,6 @@
|
|||||||
<a href="/licenses" class="btn btn-secondary">📋 Lizenzen</a>
|
<a href="/licenses" class="btn btn-secondary">📋 Lizenzen</a>
|
||||||
<a href="/customers" class="btn btn-secondary">👥 Kunden</a>
|
<a href="/customers" class="btn btn-secondary">👥 Kunden</a>
|
||||||
<a href="/sessions" class="btn btn-secondary">🟢 Sessions</a>
|
<a href="/sessions" class="btn btn-secondary">🟢 Sessions</a>
|
||||||
<a href="/audit" class="btn btn-secondary">📋 Audit</a>
|
|
||||||
<a href="/backups" class="btn btn-secondary">💾 Backups</a>
|
<a href="/backups" class="btn btn-secondary">💾 Backups</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -17,10 +17,7 @@
|
|||||||
<div>
|
<div>
|
||||||
<a href="/" class="btn btn-secondary">📊 Dashboard</a>
|
<a href="/" class="btn btn-secondary">📊 Dashboard</a>
|
||||||
<a href="/create" class="btn btn-primary">➕ Neue Lizenz</a>
|
<a href="/create" class="btn btn-primary">➕ Neue Lizenz</a>
|
||||||
<a href="/customers" class="btn btn-secondary">👥 Kunden</a>
|
<a href="/batch" class="btn btn-primary">🔑 Batch-Lizenzen</a>
|
||||||
<a href="/sessions" class="btn btn-secondary">🟢 Sessions</a>
|
|
||||||
<a href="/audit" class="btn btn-secondary">📋 Audit</a>
|
|
||||||
<a href="/backups" class="btn btn-secondary">💾 Backups</a>
|
|
||||||
<div class="btn-group">
|
<div class="btn-group">
|
||||||
<button type="button" class="btn btn-info dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
|
<button type="button" class="btn btn-info dropdown-toggle" data-bs-toggle="dropdown" aria-expanded="false">
|
||||||
📥 Export
|
📥 Export
|
||||||
|
|||||||
@@ -16,10 +16,6 @@
|
|||||||
<h2>Session-Tracking</h2>
|
<h2>Session-Tracking</h2>
|
||||||
<div>
|
<div>
|
||||||
<a href="/" class="btn btn-secondary">📊 Dashboard</a>
|
<a href="/" class="btn btn-secondary">📊 Dashboard</a>
|
||||||
<a href="/licenses" class="btn btn-secondary">📋 Lizenzen</a>
|
|
||||||
<a href="/customers" class="btn btn-secondary">👥 Kunden</a>
|
|
||||||
<a href="/audit" class="btn btn-secondary">📋 Audit</a>
|
|
||||||
<a href="/backups" class="btn btn-secondary">💾 Backups</a>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|||||||
In neuem Issue referenzieren
Einen Benutzer sperren