Compare commits
30 Commits
40 changed files with 1219 additions and 763 deletions
@ -0,0 +1,21 @@ |
|||||
|
# Site de tiquet de panne |
||||
|
|
||||
|
Le mdp référant est: **3.1415926535** |
||||
|
Le mdp prof est: **1NSI** |
||||
|
|
||||
|
C'est un site permettant de créer et gérer des tiquets de panne. Il est composé de **deux parties**: |
||||
|
- Une partie *formulaire*, accessible à **tous**. |
||||
|
- Une partie *gestion*, accessible seulement des référants. |
||||
|
|
||||
|
## Partie formulaire |
||||
|
|
||||
|
Il s'agit d'un simple formulaire demandant des informations précises à propos de la panne et du matériel défécteux |
||||
|
|
||||
|
## Partie gestion |
||||
|
|
||||
|
Cette partie est composée de 5 onglets: |
||||
|
- accueil |
||||
|
- recherche |
||||
|
- liste |
||||
|
- admin |
||||
|
- export |
@ -0,0 +1,337 @@ |
|||||
|
@font-face { |
||||
|
font-family: "monofonto"; |
||||
|
src: url("../font/raleway.ttf") format("truetype"); |
||||
|
} |
||||
|
body { |
||||
|
z-index: 1; |
||||
|
font-family: monofonto; |
||||
|
background-color: #e5e5e5; |
||||
|
margin: 143px 20px; |
||||
|
text-align: center; |
||||
|
} |
||||
|
body > a { |
||||
|
position: absolute; |
||||
|
left: 20px; |
||||
|
top: 20px; |
||||
|
margin: auto; |
||||
|
} |
||||
|
body .logo { |
||||
|
display: block; |
||||
|
} |
||||
|
body h1 { |
||||
|
margin: 40px; |
||||
|
font-weight: bold; |
||||
|
color: #454545; |
||||
|
} |
||||
|
body p { |
||||
|
font-weight: bold; |
||||
|
color: #ac2a8d; |
||||
|
font-size: 20px; |
||||
|
height: 20px; |
||||
|
} |
||||
|
|
||||
|
.nav { |
||||
|
width: 80%; |
||||
|
margin-left: 10%; |
||||
|
margin-bottom: 3%; |
||||
|
background-color: #84878C; |
||||
|
border-radius: 20px; |
||||
|
} |
||||
|
.nav ul { |
||||
|
margin: auto; |
||||
|
padding: 0; |
||||
|
width: 60%; |
||||
|
} |
||||
|
.nav ul::after { |
||||
|
content: ""; |
||||
|
display: block; |
||||
|
clear: both; |
||||
|
} |
||||
|
.nav__link { |
||||
|
width: 20%; |
||||
|
min-width: 100px; |
||||
|
float: left; |
||||
|
position: relative; |
||||
|
text-align: center; |
||||
|
list-style-type: none; |
||||
|
} |
||||
|
.nav__link:hover { |
||||
|
background-color: #59184E; |
||||
|
transition: 0.65s; |
||||
|
border-radius: 10px; |
||||
|
} |
||||
|
.nav__link a { |
||||
|
padding-top: 10px; |
||||
|
padding-bottom: 10px; |
||||
|
color: white; |
||||
|
font-weight: bold; |
||||
|
display: inline-block; |
||||
|
text-decoration: none; |
||||
|
} |
||||
|
.nav__link a:hover { |
||||
|
color: white; |
||||
|
} |
||||
|
|
||||
|
form { |
||||
|
width: 20%; |
||||
|
min-width: 300px; |
||||
|
background-color: white; |
||||
|
display: block; |
||||
|
position: relative; |
||||
|
margin: auto; |
||||
|
border-radius: 30px; |
||||
|
padding: 20px; |
||||
|
} |
||||
|
|
||||
|
.container-field { |
||||
|
position: relative; |
||||
|
} |
||||
|
.container-field small { |
||||
|
display: none; |
||||
|
color: red; |
||||
|
} |
||||
|
.container-field__img { |
||||
|
display: none; |
||||
|
position: relative; |
||||
|
float: right; |
||||
|
width: 20px; |
||||
|
top: 12px; |
||||
|
} |
||||
|
.container-field__field { |
||||
|
background-color: inherit; |
||||
|
position: relative; |
||||
|
display: block; |
||||
|
text-decoration-line: none; |
||||
|
appearance: none; |
||||
|
text-align: center; |
||||
|
color: #454444; |
||||
|
resize: none; |
||||
|
outline: none; |
||||
|
margin: 10px auto; |
||||
|
border: 4px solid #4e4d4d; |
||||
|
padding: 10px 10px; |
||||
|
border-radius: 30px; |
||||
|
width: 60%; |
||||
|
max-width: 300px; |
||||
|
transition: 0.25s; |
||||
|
} |
||||
|
.container-field__field:focus, .container-field__field:hover { |
||||
|
width: 70%; |
||||
|
border-color: #ac2a8d; |
||||
|
background-color: white; |
||||
|
} |
||||
|
.container-field__field--submit:hover { |
||||
|
width: 65%; |
||||
|
border-color: #2ecc71; |
||||
|
background-color: #82E6AC; |
||||
|
} |
||||
|
|
||||
|
.hint { |
||||
|
position: absolute; |
||||
|
width: 100%; |
||||
|
top: 0; |
||||
|
} |
||||
|
.hint__int { |
||||
|
position: relative; |
||||
|
left: 25%; |
||||
|
} |
||||
|
.hint__help { |
||||
|
display: none; |
||||
|
z-index: 2; |
||||
|
position: relative; |
||||
|
width: 170px; |
||||
|
left: 71%; |
||||
|
border-radius: 30px; |
||||
|
box-shadow: 0 0 10px black; |
||||
|
padding: 15px; |
||||
|
margin: 0; |
||||
|
background-color: #e5e5e5; |
||||
|
font-size: 14px; |
||||
|
} |
||||
|
.hint__help:hover { |
||||
|
display: block; |
||||
|
} |
||||
|
.hint__help p { |
||||
|
position: relative; |
||||
|
font-size: 14px; |
||||
|
} |
||||
|
.hint__help img { |
||||
|
border-radius: 15px; |
||||
|
width: 100%; |
||||
|
} |
||||
|
.hint__help code { |
||||
|
background-color: #aaa; |
||||
|
border-radius: 5px; |
||||
|
font-family: courier, monospace; |
||||
|
padding: 3px 5px; |
||||
|
font-size: 14px; |
||||
|
} |
||||
|
|
||||
|
.table { |
||||
|
width: 80%; |
||||
|
border-radius: 5px; |
||||
|
margin-left: 10%; |
||||
|
margin-top: 2%; |
||||
|
background-color: #84878C; |
||||
|
color: white; |
||||
|
border: 1px solid #84878C; |
||||
|
} |
||||
|
.table th { |
||||
|
width: 1%; |
||||
|
} |
||||
|
.table td { |
||||
|
background-color: #e5e5e5; |
||||
|
border: 1px solid #84878C; |
||||
|
width: 1%; |
||||
|
min-width: 20px; |
||||
|
border-radius: 5px; |
||||
|
text-align: center; |
||||
|
word-break: break-all; |
||||
|
color: #84878C; |
||||
|
} |
||||
|
.table td img { |
||||
|
width: 40%; |
||||
|
max-width: 40px; |
||||
|
} |
||||
|
.table td .input { |
||||
|
border: 2px solid #ac2a8d; |
||||
|
border-radius: 5px; |
||||
|
text-align: inherit; |
||||
|
outline: none; |
||||
|
color: #84878C; |
||||
|
transition: 0.05s; |
||||
|
} |
||||
|
.table td .input:hover { |
||||
|
font-weight: bold; |
||||
|
} |
||||
|
.table td .input:focus { |
||||
|
font-weight: bold; |
||||
|
border: 4px solid #ac2a8d; |
||||
|
} |
||||
|
.table__title td { |
||||
|
color: #ac2a8d; |
||||
|
font-weight: bold; |
||||
|
word-break: normal; |
||||
|
} |
||||
|
.table__switch { |
||||
|
position: relative; |
||||
|
display: inline-block; |
||||
|
width: 60px; |
||||
|
height: 34px; |
||||
|
} |
||||
|
.table__switch input { |
||||
|
opacity: 0; |
||||
|
width: 0; |
||||
|
height: 0; |
||||
|
} |
||||
|
.table__switch input:checked + .table__switch__slider { |
||||
|
background-color: #2ecc71; |
||||
|
} |
||||
|
.table__switch input:focus + .table__switch__slider { |
||||
|
box-shadow: 0 0 1px #2ecc71; |
||||
|
} |
||||
|
.table__switch input:checked + .table__switch__slider:before { |
||||
|
transform: translateX(26px); |
||||
|
} |
||||
|
.table__switch__slider { |
||||
|
position: absolute; |
||||
|
cursor: pointer; |
||||
|
top: 0; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
bottom: 0; |
||||
|
background-color: crimson; |
||||
|
border-radius: 34px; |
||||
|
transition: 0.4s; |
||||
|
} |
||||
|
.table__switch__slider:before { |
||||
|
position: absolute; |
||||
|
border-radius: 50%; |
||||
|
content: ""; |
||||
|
height: 26px; |
||||
|
width: 26px; |
||||
|
left: 4px; |
||||
|
bottom: 4px; |
||||
|
background-color: white; |
||||
|
transition: 0.4s; |
||||
|
} |
||||
|
|
||||
|
.container-popup { |
||||
|
z-index: 1; |
||||
|
position: fixed; |
||||
|
top: 0; |
||||
|
bottom: 0; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
background: rgba(0, 0, 0, 0.7); |
||||
|
transition: opacity 500ms; |
||||
|
visibility: hidden; |
||||
|
opacity: 0; |
||||
|
} |
||||
|
.container-popup:target { |
||||
|
visibility: visible; |
||||
|
opacity: 1; |
||||
|
} |
||||
|
.container-popup__popup { |
||||
|
margin: auto; |
||||
|
padding: 20px; |
||||
|
background: #fff; |
||||
|
top: 0; |
||||
|
bottom: 0; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
border-radius: 5px; |
||||
|
width: 30%; |
||||
|
height: 150px; |
||||
|
position: absolute; |
||||
|
transition: all 5s ease-in-out; |
||||
|
} |
||||
|
.container-popup__popup h2 { |
||||
|
margin-top: 0; |
||||
|
color: #333; |
||||
|
} |
||||
|
.container-popup__popup p { |
||||
|
max-height: 30%; |
||||
|
overflow: auto; |
||||
|
} |
||||
|
.container-popup__popup__close { |
||||
|
position: absolute; |
||||
|
top: 20px; |
||||
|
right: 30px; |
||||
|
transition: all 200ms; |
||||
|
font-size: 30px; |
||||
|
font-weight: bold; |
||||
|
text-decoration: none; |
||||
|
color: #333; |
||||
|
} |
||||
|
.container-popup__popup__close:hover { |
||||
|
color: #06D85F; |
||||
|
} |
||||
|
|
||||
|
.button { |
||||
|
border: 3px solid #ac2a8d; |
||||
|
background-color: #e5e5e5; |
||||
|
font-weight: bold; |
||||
|
text-decoration: none; |
||||
|
transition: 0.5s; |
||||
|
} |
||||
|
.button:hover { |
||||
|
color: #e5e5e5; |
||||
|
background-color: #ac2a8d; |
||||
|
} |
||||
|
.button--small { |
||||
|
width: 3rem; |
||||
|
border-width: medium; |
||||
|
border-radius: 5px; |
||||
|
margin: 5px; |
||||
|
color: #84878C; |
||||
|
} |
||||
|
.button--large { |
||||
|
color: #ac2a8d; |
||||
|
display: inline-block; |
||||
|
margin-bottom: 3%; |
||||
|
padding: 10px 40px; |
||||
|
border-radius: 20px; |
||||
|
} |
||||
|
|
||||
|
/*# sourceMappingURL=style.css.map */ |
@ -0,0 +1 @@ |
|||||
|
{"version":3,"sourceRoot":"","sources":["../sass/main.scss"],"names":[],"mappings":"AAMA;EACI;EACA;;AAGJ;EACI;EACA;EACA,kBAbS;EAcT;EACA;;AACA;EACI;EACA;EACA;EACA;;AAEJ;EACI;;AAEJ;EACI;EACA;EACA;;AAEJ;EACI;EACA,OA9BE;EA+BF;EACA;;;AAOR;EACI;EACA;EACA;EACA,kBA9CQ;EA+CR;;AACA;EACI;EACA;EACA;;AACA;EACI;EACA;EACA;;AAGR;EACI;EACA;EACA;EACA;EACA;EACA;;AACA;EACI,kBAhEG;EAiEH;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;;;AAUhB;EACI;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;;;AAGJ;EACI;;AACA;EACI;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA,cAlIF;EAmIE;;AAEJ;EACI;EACA;EACA;;;AASZ;EACI;EACA;EACA;;AACA;EACI;EACA;;AAEJ;EAII;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA,kBAxKK;EAyKL;;AAbA;EACI;;AAaJ;EACI;EACA;;AAEJ;EACI;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;;;AAWZ;EACI;EACA;EACA;EACA;EACA,kBAxMQ;EAyMR;EACA;;AACA;EACI;;AAEJ;EACI,kBA9MK;EAgNL;EACA;EACA;EACA;EAEA;EACA;EACA,OAxNI;;AAyNJ;EACI;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA,OAlOA;EAmOA;;AACA;EACI;;AAEJ;EACI;EACA;;AAIZ;EACI,OA3OE;EA4OF;EACA;;AAEJ;EACI;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;;AACA;EACI;;AAEJ;EACI;;AAEJ;EACI;;AAGR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAOhB;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;EACA;;AAEJ;EACI;EACA;;AAEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;;;AAOhB;EACI;EACA,kBArVS;EAsVT;EACA;EACA;;AACA;EACI,OA1VK;EA2VL,kBAzVE;;AA2VN;EACI;EACA;EACA;EACA;EACA,OAnWI;;AAqWR;EACI,OAnWE;EAoWF;EACA;EACA;EACA","file":"style.css"} |
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 51 KiB After Width: | Height: | Size: 25 KiB |
After Width: | Height: | Size: 87 KiB |
@ -0,0 +1,15 @@ |
|||||
|
{ |
||||
|
"name": "ticket_panne", |
||||
|
"version": "1.0.0", |
||||
|
"description": "", |
||||
|
"main": "index.js", |
||||
|
"scripts": { |
||||
|
"sass": "sass --watch ./sass/main.scss:./css/style.css" |
||||
|
}, |
||||
|
"repository": { |
||||
|
"type": "git", |
||||
|
"url": "https://paulconstans.ddns.info/gitea/barraux.a/ticket_panne.git" |
||||
|
}, |
||||
|
"author": "", |
||||
|
"license": "ISC" |
||||
|
} |
@ -1,22 +0,0 @@ |
|||||
<?php |
|
||||
|
|
||||
$bdd = new PDO('mysql:host=localhost;dbname=ticket;charset:utf8', 'root', ''); |
|
||||
|
|
||||
$req = $bdd->prepare('INSERT INTO pannes(dates, details, lieu, salle, pos, materiel, marque, model, nserie, demandeur, traitement) VALUES(:dates, :details, :lieu, :salle, :pos, :materiel, :marque, :model, :nserie, :demandeur, :traitement)'); |
|
||||
|
|
||||
$req->execute(array( |
|
||||
'dates' => $_POST['dates'], |
|
||||
'details' => $_POST['details'], |
|
||||
'lieu' => $_POST['lieu'], |
|
||||
'salle' => $_POST['salle'], |
|
||||
'pos' => $_POST['pos'], |
|
||||
'materiel' => $_POST['materiel'], |
|
||||
'marque' => $_POST['marque'], |
|
||||
'model' => $_POST['model'], |
|
||||
'nserie' => $_POST['nserie'], |
|
||||
'demandeur' => $_POST['demandeur'], |
|
||||
'traitement' => 0 |
|
||||
)); |
|
||||
|
|
||||
echo 'Votre ticket à bien été pris en compte'; |
|
||||
?> |
|
@ -0,0 +1,22 @@ |
|||||
|
<?php |
||||
|
|
||||
|
$bdd = new SQLite3('../../database/ticket_panne.db', SQLITE3_OPEN_READWRITE); |
||||
|
|
||||
|
$stmt = $bdd->prepare('INSERT INTO pannes(dates, details, lieu, salle, pos, materiel, marque, model, nserie, demandeur, traitement) VALUES(:dates, :details, :lieu, :salle, :pos, :materiel, :marque, :model, :nserie, :demandeur, :traitement)'); |
||||
|
|
||||
|
$stmt->bindValue(':dates', $_POST['dates']); |
||||
|
$stmt->bindValue(':details', $_POST['details']); |
||||
|
$stmt->bindValue(':lieu', $_POST['lieu']); |
||||
|
$stmt->bindValue(':salle', $_POST['salle']); |
||||
|
$stmt->bindValue(':pos', $_POST['pos']); |
||||
|
$stmt->bindValue(':materiel', $_POST['materiel']); |
||||
|
$stmt->bindValue(':marque', $_POST['marque']); |
||||
|
$stmt->bindValue(':model', $_POST['model']); |
||||
|
$stmt->bindValue(':nserie', $_POST['nserie']); |
||||
|
$stmt->bindValue(':demandeur', $_POST['demandeur']); |
||||
|
$stmt->bindValue(':traitement', 0); |
||||
|
|
||||
|
$stmt->execute(); |
||||
|
|
||||
|
echo 'Votre ticket à bien été pris en compte'; |
||||
|
?> |
@ -1,13 +1,7 @@ |
|||||
<?php |
<?php |
||||
echo '<p> ',$titre,' : '; |
echo '<p> ',$titre,' : </p> |
||||
if ($help) { |
<img class="container-field__img container-field__img--check" src="../img/check.png" alt="check"> |
||||
echo '<a class="int" href="#" onmouseover=displayHelp(',$sql_name,') onmouseout=hideHelp(',$sql_name,') ><img src="../img/int.png" alt="point_int" width=20px ></a>'; |
<img class="container-field__img container-field__img--excla" src="../img/excla.png" alt="exclamation"> |
||||
} |
<input class="container-field__field" type=',$type,' name=',$sql_name,'><br> |
||||
echo '</p> |
<small>',$error,'</small>'; |
||||
<div class="champ"> |
|
||||
<input class="entry" type=',$type,' name=',$sql_name,'><br> |
|
||||
<img class="check" src="../img/check.png" alt="check"> |
|
||||
<img class="excla" src="../img/excla.png" alt="exclamation"> |
|
||||
</div> |
|
||||
<small>Error: ',$error,'</small>'; |
|
||||
?> |
?> |
||||
|
@ -1,45 +1,41 @@ |
|||||
<?php |
<?php |
||||
include '../session_restraintes.php'; |
include '../sessions/session_restraintes.php'; |
||||
$bdd = new PDO('mysql:host=localhost;dbname=ticket;charset:utf8', 'root', ''); |
$bdd = new SQLite3('../database/ticket_panne.db', SQLITE3_OPEN_READWRITE); |
||||
$reponse = $bdd->query("SELECT * FROM logins"); |
$reponse = $bdd->query("SELECT * FROM logins"); |
||||
$arr = []; |
$arr = []; |
||||
while ($line = $reponse->fetch()) { |
while ($line = $reponse->fetchArray()) { |
||||
$arr[$line[0]] = $line[1]; |
$arr[$line[0]] = $line[1]; |
||||
} |
} |
||||
$reponse->closeCursor(); |
|
||||
?> |
?> |
||||
|
|
||||
<html> |
<html> |
||||
<head> |
<head> |
||||
<?php include 'include/menu.php'; ?> |
<?php include 'include/menu.html'; ?> |
||||
<script type="text/javascript" src="js/admin.js" defer></script> |
<script type="text/javascript" src="js/admin.js" defer></script> |
||||
</head> |
</head> |
||||
<body> |
<body> |
||||
<?php include 'include/nav.php'; ?> |
<?php include 'include/nav.php'; ?> |
||||
<table> |
<table class="table"> |
||||
<thead> |
<thead> |
||||
<tr> |
<tr> |
||||
<th colspan="3">Mot de passe</th> |
<th colspan="3">Mot de passe</th> |
||||
</tr> |
</tr> |
||||
</thead> |
</thead> |
||||
<tbody> |
<tbody> |
||||
<tr class='table-title'> |
<tr class='table__title'> |
||||
<td>Login</td> |
<td>Identifiant</td> |
||||
<td>Password</td> |
<td>Mot de passe</td> |
||||
</tr> |
</tr> |
||||
<tr> |
<?php |
||||
<?php |
foreach ($arr as $key => $value) { |
||||
foreach ($arr as $key => $value) { |
echo '<tr> |
||||
echo '<tr> |
<td class=',$key,' style="font-weight: bold;">', $key,'</td> |
||||
<td class=',$key,' style="font-weight: bold;">', $key,'</td> |
<td class=',$key,'>', $value,'</td> |
||||
<td class=',$key,'>', $value,'</td> |
<td class=',$key,'><input class="button button--small" type="button" value="edit" onclick="Edit(\'',$key,'\')"></td> |
||||
<td class=',$key,'><input class="edit" type="button" value="edit" onclick="Edit(\'',$key,'\')"></td> |
</tr>'; |
||||
</tr>'; |
} |
||||
} |
?> |
||||
?> |
|
||||
</tr> |
|
||||
|
|
||||
</tbody> |
</tbody> |
||||
</table> |
</table> |
||||
</body> |
</body> |
||||
</html> |
</html> |
||||
|
@ -1,8 +1,15 @@ |
|||||
<?php |
<?php |
||||
$decode = json_decode($_POST['value'], TRUE); |
$decode = json_decode($_POST['value'], TRUE); |
||||
$bdd = new PDO('mysql:host=localhost;dbname=ticket;charset:utf8', 'root', ''); |
$bdd = new SQLite3('../../database/ticket_panne.db', SQLITE3_OPEN_READWRITE); |
||||
$update = $bdd->query('UPDATE `logins` SET `pwd` = "' .$decode['pwd'] .'" WHERE `login` = "' .$decode['login'] .'"'); |
|
||||
|
|
||||
$traitement = $bdd->query("SELECT * FROM `logins` WHERE `login`= '" .$decode['login'] ."'"); |
$stmt = $bdd->prepare('UPDATE `logins` SET `pwd` = :pwd WHERE `login` = :login'); |
||||
print_r(json_encode($traitement->fetch())); |
$stmt->bindValue(':pwd', $decode['pwd']); |
||||
?> |
$stmt->bindValue(':login', $decode['login']); |
||||
|
|
||||
|
$stmt->execute(); |
||||
|
|
||||
|
$select = $bdd->prepare("SELECT * FROM `logins` WHERE `login` = :login"); |
||||
|
$select->bindValue(':login', $decode['login']); |
||||
|
$traitement = $select->execute(); |
||||
|
print_r(json_encode($traitement->fetchArray())); |
||||
|
?> |
||||
|
@ -0,0 +1,7 @@ |
|||||
|
<?php |
||||
|
$bdd = new SQLite3('../../database/ticket_panne.db', SQLITE3_OPEN_READWRITE); |
||||
|
|
||||
|
$request = $bdd->prepare('DELETE FROM pannes WHERE ID=:id'); |
||||
|
$request->bindValue(':id', $_POST['id']); |
||||
|
$request->execute(); |
||||
|
?> |
@ -1,21 +1,25 @@ |
|||||
<?php |
<?php |
||||
$decode = json_decode($_POST['value'], TRUE); |
$decode = json_decode($_POST['value'], TRUE); |
||||
$bdd = new PDO('mysql:host=localhost;dbname=ticket;charset:utf8', 'root', ''); |
$bdd = new SQLite3('../../database/ticket_panne.db', SQLITE3_OPEN_READWRITE); |
||||
$request = 'UPDATE pannes SET |
$stmt = $bdd->prepare('UPDATE pannes SET dates=:dates, details=:details, lieu=:lieu, salle=:salle, pos=:pos, materiel=:materiel, marque=:marque, model=:model, nserie=:nserie, demandeur=:demandeur, traitement=:traitement WHERE ID=:id'); |
||||
dates = "' .$decode["dates"] .'", |
|
||||
details = "' .$decode["details"] .'", |
|
||||
lieu = "' .$decode["lieu"] .'", |
|
||||
salle = "' .$decode["salle"] .'", |
|
||||
pos = "' .$decode["pos"] .'", |
|
||||
materiel = "' .$decode["materiel"] .'", |
|
||||
marque = "' .$decode["marque"] .'", |
|
||||
model = "' .$decode["model"] .'", |
|
||||
nserie = "' .$decode["nserie"] .'", |
|
||||
demandeur = "' .$decode["demandeur"] .'", |
|
||||
traitement = "' .$decode["traitement"] .'" |
|
||||
WHERE ID= "' .$decode['id'] .'"'; |
|
||||
$update = $bdd->query($request); |
|
||||
|
|
||||
$traitement = $bdd->query("SELECT * FROM pannes WHERE ID=" .$decode['id']); |
$stmt->bindValue(':id', $decode['id']); |
||||
print_r(json_encode($traitement->fetch())); |
$stmt->bindValue(':dates', $decode['dates']); |
||||
?> |
$stmt->bindValue(':details', $decode['details']); |
||||
|
$stmt->bindValue(':lieu', $decode['lieu']); |
||||
|
$stmt->bindValue(':salle', $decode['salle']); |
||||
|
$stmt->bindValue(':pos', $decode['pos']); |
||||
|
$stmt->bindValue(':materiel', $decode['materiel']); |
||||
|
$stmt->bindValue(':marque', $decode['marque']); |
||||
|
$stmt->bindValue(':model', $decode['model']); |
||||
|
$stmt->bindValue(':nserie', $decode['nserie']); |
||||
|
$stmt->bindValue(':demandeur', $decode['demandeur']); |
||||
|
$stmt->bindValue(':traitement', $decode['traitement']); |
||||
|
|
||||
|
$stmt->execute(); |
||||
|
|
||||
|
$traitement = $bdd->prepare("SELECT * FROM pannes WHERE ID=:id"); |
||||
|
$traitement->bindValue(':id', $decode['id']); |
||||
|
$res = $traitement->execute(); |
||||
|
print_r(json_encode($res->fetchArray())); |
||||
|
?> |
||||
|
@ -0,0 +1,18 @@ |
|||||
|
<?php |
||||
|
$bdd = new SQLite3('../../database/ticket_panne.db', SQLITE3_OPEN_READWRITE); |
||||
|
$res = $bdd->query('SELECT * FROM ' .$_POST['bdd']); |
||||
|
|
||||
|
header('Content-Type: text/csv; charset=utf-8'); |
||||
|
header('Content-Disposition: attachment; filename=' .$_POST['bdd'] .'.csv'); |
||||
|
$output = fopen("php://output", "w"); |
||||
|
|
||||
|
$title = $res->fetchArray(SQLITE3_ASSOC); |
||||
|
|
||||
|
fputcsv($output, array_keys($title)); |
||||
|
fputcsv($output, $title); |
||||
|
|
||||
|
while($row = $res->fetchArray(SQLITE3_ASSOC)) { |
||||
|
fputcsv($output, $row); |
||||
|
} |
||||
|
fclose($output); |
||||
|
?> |
@ -1,9 +1,9 @@ |
|||||
<?php |
<?php |
||||
$bdd = new PDO('mysql:host=localhost;dbname=ticket;charset:utf8', 'root', ''); |
$bdd = new SQLite3('../../database/ticket_panne.db', SQLITE3_OPEN_READWRITE); |
||||
|
|
||||
$update = $bdd->query("UPDATE pannes SET traitement = " .$_POST['is_checked'] ." WHERE ID = " .$_POST['id']); |
$update = $bdd->query("UPDATE pannes SET traitement = " .$_POST['is_checked'] ." WHERE ID = " .$_POST['id']); |
||||
|
|
||||
$traitement = $bdd->query("SELECT traitement FROM pannes WHERE ID=" .$_POST['id']); |
$traitement = $bdd->query("SELECT traitement FROM pannes WHERE ID=" .$_POST['id']); |
||||
$res = $traitement->fetch()['traitement']; |
$res = $traitement->fetchArray()['traitement']; |
||||
echo $res; |
echo $res; |
||||
?> |
?> |
@ -1,18 +1,33 @@ |
|||||
<?php |
<?php |
||||
include '../session_restraintes.php'; |
include '../sessions/session_restraintes.php'; |
||||
|
?> |
||||
|
|
||||
$bdd = new PDO('mysql:host=localhost;dbname=ticket;charset:utf8', 'root', ''); |
<!DOCTYPE html> |
||||
$reponse = $bdd->query("SELECT DISTINCT * FROM `pannes`"); |
<html lang="fr"> |
||||
$stream = fopen('export/ticket.csv', 'w'); |
<head> |
||||
|
<?php include 'include/menu.html'; ?> |
||||
|
</head> |
||||
|
|
||||
while($line = $reponse->fetch()) { |
<body> |
||||
print_r($line); |
<?php include 'include/nav.php'?> |
||||
echo '<br>'; |
<form id='form' action="cible/export.php" method="post"> |
||||
fputcsv( |
<div class="container-field"> |
||||
$stream, // file |
<p>Type:</p> |
||||
$line, // arr |
<select class="container-field__field" name="type"> |
||||
); |
<option value="csv" onclick="document.getElementById('base-choice').style.display = 'block'; document.getElementById('form').setAttribute('action','cible/export.php');">CSV</option> |
||||
} |
<option value="sqlite" onclick="document.getElementById('base-choice').style.display = 'none'; document.getElementById('form').setAttribute('action','../database/ticket_panne.db');">SQLite</option> |
||||
$reponse->closeCursor(); |
</select> |
||||
fclose($stream); |
</div> |
||||
?> |
<div id="base-choice" class="container-field"> |
||||
|
<p>Base:</p> |
||||
|
<select class="container-field__field" name="bdd"> |
||||
|
<option value="pannes">pannes</option> |
||||
|
<option value="logins">logins</option> |
||||
|
</select> |
||||
|
</div> |
||||
|
<div class="container-field"> |
||||
|
<input class="container-field__field container-field__field--submit" type="submit" value="Download"> |
||||
|
</div> |
||||
|
</form> |
||||
|
</body> |
||||
|
</html> |
||||
|
|
@ -1,23 +1,61 @@ |
|||||
<?php |
<?php |
||||
echo '<tr> |
if (isset($_POST['class'])) { |
||||
<td class=', $class , ' style="font-weight: bold;" >',$class,'</td> |
$class = $_POST['class']; |
||||
<td class=', $class , '>',$line[1],'</td> |
} |
||||
<td class=', $class , '>',$line[2],'</td> |
|
||||
<td class=', $class , '>',$line[3],'</td> |
if (isset($line)) { |
||||
<td class=', $class , '>',$line[4],'</td> |
echo '<tr> |
||||
<td class=', $class , '>',$line[5],'</td> |
<td class=', $class , ' style="font-weight: bold; font-size: 24px;" >',$class,'</td> |
||||
<td class=', $class , '>',$line[6],'</td> |
<td class=', $class , '>',$line[1],'</td> |
||||
<td class=', $class , '>',$line[7],'</td> |
<td class=', $class , '>',$line[2],'</td> |
||||
<td class=', $class , '>',$line[8],'</td> |
<td class=', $class , '>',$line[3],'</td> |
||||
<td class=', $class , '>',$line[9],'</td> |
<td class=', $class , '>',$line[4],'</td> |
||||
<td class=', $class , '>',$line[10],'</td> |
<td class=', $class , '>',$line[5],'</td> |
||||
<td class=', $class , '>',$line[11],'</td> |
<td class=', $class , '>',$line[6],'</td> |
||||
<td class=', $class , '> |
<td class=', $class , '>',$line[7],'</td> |
||||
<label class="switch"> |
<td class=', $class , '>',$line[8],'</td> |
||||
<input class="checkbox" type="checkbox" onchange="Slider(\'',$class,'\')"> |
<td class=', $class , '>',$line[9],'</td> |
||||
<span class="slider"></span> |
<td class=', $class , '>',$line[10],'</td>'; |
||||
</label> |
|
||||
</td> |
if ($line[11] == 1) { |
||||
<td class=',$class,'><input class="edit" type="button" value="edit" onclick="Edit(\'',$class,'\')"></td> |
echo '<td class=', $class , '><img src="../img/check.png"></td>'; |
||||
</tr>'; |
} |
||||
?> |
else { |
||||
|
echo '<td class=', $class , '><img src="../img/excla.png" ></td>'; |
||||
|
} |
||||
|
|
||||
|
echo ' <td class=', $class , '> |
||||
|
<label class="table__switch"> |
||||
|
<input class="checkbox" type="checkbox" onchange="Slider(\'',$class,'\')"> |
||||
|
<span class="table__switch__slider"></span> |
||||
|
</label> |
||||
|
</td> |
||||
|
<td class=',$class,'><input class="button button--small" type="button" value="edit" onclick="Edit(\'',$class,'\')"></td> |
||||
|
<td class=',$class,'><a href="#popup"><input class="button button--small" type="button" value="del" onclick="ModifPop(\'',$class,'\')"></a></td> |
||||
|
</tr>'; |
||||
|
} |
||||
|
else { |
||||
|
echo '<tr> |
||||
|
<td class=', $class , ' style="font-weight: bold; font-size: 24px;" ></td> |
||||
|
<td class=', $class , '></td> |
||||
|
<td class=', $class , '></td> |
||||
|
<td class=', $class , '></td> |
||||
|
<td class=', $class , '></td> |
||||
|
<td class=', $class , '></td> |
||||
|
<td class=', $class , '></td> |
||||
|
<td class=', $class , '></td> |
||||
|
<td class=', $class , '></td> |
||||
|
<td class=', $class , '></td> |
||||
|
<td class=', $class , '></td> |
||||
|
<td class=', $class , '><img src="../img/check.png"></td> |
||||
|
<td class=', $class , '> |
||||
|
<label class="table__switch"> |
||||
|
<input class="checkbox" type="checkbox" onchange="Slider(\'',$class,'\')"> |
||||
|
<span class="table__switch__slider"></span> |
||||
|
</label> |
||||
|
</td> |
||||
|
<td class=',$class,'><input class="button button--small" type="button" value="edit" onclick="Edit(\'',$class,'\')"></td> |
||||
|
<td class=',$class,'><a href="popup"><input class="button button--small" type="button" value="del" onclick="ModifPop(\'',$class,'\')"></a></td> |
||||
|
</tr>'; |
||||
|
} |
||||
|
?> |
||||
|
@ -0,0 +1,4 @@ |
|||||
|
<meta charset="utf-8"> |
||||
|
<title>Admin ticket</title> |
||||
|
<link href="../css/style.css" rel="stylesheet"> |
||||
|
<a href="index.php"><img class="logo" src="../img/logo_PC.png" alt="logo_PC"></a> |
@ -1,4 +0,0 @@ |
|||||
<meta charset="utf-8"> |
|
||||
<title>Admin ticket</title> |
|
||||
<link href="../stylepage.css" rel="stylesheet"> |
|
||||
<img class="logo" src="../img/logo_PC.png" alt="logo_PC" width="200px"> |
|
@ -1,11 +1,11 @@ |
|||||
<header> |
<header> |
||||
<nav> |
<nav class="nav"> |
||||
<ul> |
<ul> |
||||
<li class="menu"><a href="index.php">Accueil</a></li> |
<li class="nav__link"><a href="index.php">Accueil</a></li> |
||||
<li class="menu"><a href="search.php">Recherche</a></li> |
<li class="nav__link"><a href="search.php">Recherche</a></li> |
||||
<li class="menu"><a href="liste.php">Liste</a></li> |
<li class="nav__link"><a href="liste.php">Liste</a></li> |
||||
<li class="menu"><a href="admin.php">Admin</a></li> |
<li class="nav__link"><a href="admin.php">Admin</a></li> |
||||
<li class="menu"><a href="export.php">Export</a></li> |
<li class="nav__link"><a href="export.php">Export</a></li> |
||||
</ul> |
</ul> |
||||
</nav> |
</nav> |
||||
</header> |
</header> |
||||
|
@ -0,0 +1,8 @@ |
|||||
|
<div id="popup" class="container-popup"> |
||||
|
<div class="container-popup__popup"> |
||||
|
<h2>Attention!</h2> |
||||
|
<a class="container-popup__popup__close" href="#">X</a> |
||||
|
<p>Voulez-vous vraiment supprimer ce ticket?</p> |
||||
|
<a href="#"><input class="button button--large" type="button" value="supprimer"></a> |
||||
|
</div> |
||||
|
</div> |
@ -1,49 +1,60 @@ |
|||||
<?php |
<?php |
||||
include '../session_restraintes.php'; |
include '../sessions/session_restraintes.php'; |
||||
?> |
?> |
||||
|
|
||||
<!DOCTYPE html> |
<!DOCTYPE html> |
||||
<html> |
<html> |
||||
<head> |
<head> |
||||
<?php include 'include/menu.php';?> |
<?php include 'include/menu.html';?> |
||||
<script type="text/javascript" src="js/index.js" defer></script> |
<script type="text/javascript" src="js/edit.js" defer></script> |
||||
</head> |
</head> |
||||
<body id="corps"> |
<body id="corps"> |
||||
<?php include 'include/nav.php';?> |
<?php include 'include/nav.php';?> |
||||
<table> |
<?php include 'include/popup.html'; ?> |
||||
|
|
||||
|
</div> |
||||
|
<table class="table"> |
||||
<thead> |
<thead> |
||||
<tr> |
<tr> |
||||
<th colspan="14">Ticket</th> |
<th colspan="15">Ticket</th> |
||||
</tr> |
</tr> |
||||
</thead> |
</thead> |
||||
<tbody> |
<tbody> |
||||
<tr class='table-title'> |
<tr class='table__title'> |
||||
<td>ID</td> |
<td>ID</td> |
||||
<td>date</td> |
<td>date</td> |
||||
<td>details</td> |
<td>détails</td> |
||||
<td>lieu</td> |
<td>lieu</td> |
||||
<td>salle</td> |
<td>salle</td> |
||||
<td>pos</td> |
<td>pos</td> |
||||
<td>materiel</td> |
<td>matériel</td> |
||||
<td>marque</td> |
<td>marque</td> |
||||
<td>model</td> |
<td>modèle</td> |
||||
<td>nserie</td> |
<td>nserie</td> |
||||
<td>demandeur</td> |
<td>demandeur</td> |
||||
<td>traitement</td> |
<td>traitement</td> |
||||
<td>valider</td> |
<td>valider</td> |
||||
</tr> |
</tr> |
||||
<?php |
<?php |
||||
$bdd = new PDO('mysql:host=localhost;dbname=ticket;charset:utf8', 'root', ''); |
$bdd = new SQLite3('../database/ticket_panne.db', SQLITE3_OPEN_READWRITE); |
||||
|
|
||||
$reponse = $bdd->query("SELECT * FROM pannes ORDER BY ID"); |
$reponse = $bdd->query("SELECT * FROM pannes ORDER BY ID"); |
||||
|
$non_traite = 0; |
||||
while ($line = $reponse->fetch()) { |
while ($line = $reponse->fetchArray()) { |
||||
$class = $line[0]; |
if (isset($line['traitement'])) { |
||||
include 'include/line.php'; |
$non_traite ++; |
||||
|
$class = $line[0]; |
||||
|
include 'include/line.php'; |
||||
|
} |
||||
|
else { |
||||
|
break; |
||||
|
} |
||||
|
} |
||||
|
if ($non_traite == 0) { |
||||
|
echo "<h2>Aucun ticket dans la base</h2>"; |
||||
} |
} |
||||
$reponse->closeCursor(); |
|
||||
?> |
?> |
||||
</tbody> |
</tbody> |
||||
</table> |
</table> |
||||
</body> |
</body> |
||||
</html> |
</html> |
||||
|
@ -0,0 +1,365 @@ |
|||||
|
$dark-grey: #84878C; |
||||
|
$light-grey: #e5e5e5; |
||||
|
$dark-bordeau: #59184E; |
||||
|
$bordeau: #ac2a8d; |
||||
|
|
||||
|
|
||||
|
@font-face { |
||||
|
font-family: "monofonto"; |
||||
|
src: url('../font/raleway.ttf') format('truetype'); |
||||
|
} |
||||
|
|
||||
|
body { |
||||
|
z-index: 1; |
||||
|
font-family: monofonto; |
||||
|
background-color: $light-grey; |
||||
|
margin: 143px 20px; |
||||
|
text-align: center; |
||||
|
&>a { |
||||
|
position: absolute; |
||||
|
left: 20px; |
||||
|
top: 20px; |
||||
|
margin: auto; |
||||
|
} |
||||
|
.logo { |
||||
|
display: block; |
||||
|
} |
||||
|
h1 { |
||||
|
margin: 40px; |
||||
|
font-weight: bold; |
||||
|
color: #454545; |
||||
|
} |
||||
|
p { |
||||
|
font-weight: bold; |
||||
|
color: $bordeau; |
||||
|
font-size: 20px; |
||||
|
height: 20px; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
// nav |
||||
|
|
||||
|
|
||||
|
.nav { |
||||
|
width: 80%; |
||||
|
margin-left: 10%; |
||||
|
margin-bottom: 3%; |
||||
|
background-color: $dark-grey; |
||||
|
border-radius: 20px; |
||||
|
ul { |
||||
|
margin: auto; |
||||
|
padding: 0; |
||||
|
width: 60%; |
||||
|
&::after { |
||||
|
content: ""; |
||||
|
display: block; |
||||
|
clear: both; |
||||
|
} |
||||
|
} |
||||
|
&__link{ |
||||
|
width: 20%; |
||||
|
min-width: 100px; |
||||
|
float: left; |
||||
|
position: relative; |
||||
|
text-align: center; |
||||
|
list-style-type: none; |
||||
|
&:hover { |
||||
|
background-color: $dark-bordeau; |
||||
|
transition: .65s; |
||||
|
border-radius: 10px; |
||||
|
} |
||||
|
a { |
||||
|
padding-top: 10px; |
||||
|
padding-bottom: 10px; |
||||
|
color: white; |
||||
|
font-weight: bold; |
||||
|
display: inline-block; |
||||
|
text-decoration: none; |
||||
|
&:hover { |
||||
|
color: white; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
|
||||
|
// formulaire |
||||
|
|
||||
|
|
||||
|
form { |
||||
|
width: 20%; |
||||
|
min-width: 300px; |
||||
|
|
||||
|
background-color: white; |
||||
|
display: block; |
||||
|
|
||||
|
position: relative; |
||||
|
margin: auto; |
||||
|
border-radius: 30px; |
||||
|
padding: 20px; |
||||
|
} |
||||
|
|
||||
|
.container-field { |
||||
|
position: relative; |
||||
|
small { |
||||
|
display: none; |
||||
|
color: red; |
||||
|
} |
||||
|
&__img { |
||||
|
display: none; |
||||
|
position: relative; |
||||
|
float: right; |
||||
|
width: 20px; |
||||
|
top: 12px; |
||||
|
} |
||||
|
&__field { |
||||
|
background-color: inherit; |
||||
|
position: relative; |
||||
|
display: block; |
||||
|
text-decoration-line: none; |
||||
|
appearance: none; |
||||
|
text-align: center; |
||||
|
color: #454444; |
||||
|
resize: none; |
||||
|
outline: none; |
||||
|
margin: 10px auto; |
||||
|
border: 4px solid #4e4d4d; |
||||
|
padding: 10px 10px; |
||||
|
border-radius: 30px; |
||||
|
width: 60%; |
||||
|
max-width: 300px; |
||||
|
transition: .25s; |
||||
|
&:focus, &:hover { |
||||
|
width: 70%; |
||||
|
border-color: $bordeau; |
||||
|
background-color: white; |
||||
|
} |
||||
|
&--submit:hover { |
||||
|
width: 65%; |
||||
|
border-color: #2ecc71; |
||||
|
background-color: #82E6AC; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
|
||||
|
// help |
||||
|
|
||||
|
|
||||
|
.hint { |
||||
|
position: absolute; |
||||
|
width: 100%; |
||||
|
top: 0; |
||||
|
&__int { |
||||
|
position: relative; |
||||
|
left: 25%; |
||||
|
} |
||||
|
&__help { |
||||
|
&:hover { |
||||
|
display: block; |
||||
|
} |
||||
|
display: none; |
||||
|
z-index: 2; |
||||
|
position: relative; |
||||
|
width: 170px; |
||||
|
left: 71%; |
||||
|
border-radius: 30px; |
||||
|
box-shadow: 0 0 10px black; |
||||
|
padding: 15px; |
||||
|
margin: 0; |
||||
|
background-color: $light-grey; |
||||
|
font-size: 14px; |
||||
|
p { |
||||
|
position: relative; |
||||
|
font-size: 14px; |
||||
|
} |
||||
|
img { |
||||
|
border-radius: 15px; |
||||
|
width: 100%; |
||||
|
} |
||||
|
code { |
||||
|
background-color: #aaa; |
||||
|
border-radius: 5px; |
||||
|
font-family: courier, monospace; |
||||
|
padding: 3px 5px; |
||||
|
font-size: 14px; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
|
||||
|
|
||||
|
|
||||
|
// table |
||||
|
|
||||
|
|
||||
|
.table { |
||||
|
width: 80%; |
||||
|
border-radius: 5px; |
||||
|
margin-left: 10%; |
||||
|
margin-top: 2%; |
||||
|
background-color: $dark-grey; |
||||
|
color: white; |
||||
|
border: 1px solid $dark-grey; |
||||
|
th { |
||||
|
width: 1%; |
||||
|
} |
||||
|
td { |
||||
|
background-color: $light-grey; |
||||
|
|
||||
|
border: 1px solid $dark-grey; |
||||
|
width: 1%; |
||||
|
min-width: 20px; |
||||
|
border-radius: 5px; |
||||
|
|
||||
|
text-align: center; |
||||
|
word-break: break-all; |
||||
|
color: $dark-grey; |
||||
|
img { |
||||
|
width: 40%; |
||||
|
max-width: 40px; |
||||
|
} |
||||
|
.input { |
||||
|
border: 2px solid $bordeau; |
||||
|
border-radius: 5px; |
||||
|
text-align: inherit; |
||||
|
outline: none; |
||||
|
color: $dark-grey; |
||||
|
transition: .05s; |
||||
|
&:hover { |
||||
|
font-weight: bold; |
||||
|
} |
||||
|
&:focus { |
||||
|
font-weight: bold; |
||||
|
border: 4px solid $bordeau; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
&__title td{ |
||||
|
color: $bordeau; |
||||
|
font-weight: bold; |
||||
|
word-break: normal; |
||||
|
} |
||||
|
&__switch { |
||||
|
position: relative; |
||||
|
display: inline-block; |
||||
|
width: 60px; |
||||
|
height: 34px; |
||||
|
input { |
||||
|
opacity: 0; |
||||
|
width: 0; |
||||
|
height: 0; |
||||
|
&:checked + .table__switch__slider { |
||||
|
background-color: #2ecc71; |
||||
|
} |
||||
|
&:focus + .table__switch__slider { |
||||
|
box-shadow: 0 0 1px #2ecc71; |
||||
|
} |
||||
|
&:checked + .table__switch__slider:before { |
||||
|
transform: translateX(26px); |
||||
|
} |
||||
|
} |
||||
|
&__slider { |
||||
|
position: absolute; |
||||
|
cursor: pointer; |
||||
|
top: 0; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
bottom: 0; |
||||
|
background-color: crimson; |
||||
|
border-radius: 34px; |
||||
|
transition: .4s; |
||||
|
&:before { |
||||
|
position: absolute; |
||||
|
border-radius: 50%; |
||||
|
content: ""; |
||||
|
height: 26px; |
||||
|
width: 26px; |
||||
|
left: 4px; |
||||
|
bottom: 4px; |
||||
|
background-color: white; |
||||
|
transition: .4s; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
||||
|
.container-popup { |
||||
|
z-index: 1; |
||||
|
position: fixed; |
||||
|
top: 0; |
||||
|
bottom: 0; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
background: rgba(0,0,0,.7); |
||||
|
transition: opacity 500ms; |
||||
|
visibility: hidden; |
||||
|
opacity: 0; |
||||
|
&:target { |
||||
|
visibility: visible; |
||||
|
opacity: 1; |
||||
|
} |
||||
|
&__popup { |
||||
|
margin: auto; |
||||
|
padding: 20px; |
||||
|
background: #fff; |
||||
|
top: 0; |
||||
|
bottom: 0; |
||||
|
left: 0; |
||||
|
right: 0; |
||||
|
border-radius: 5px; |
||||
|
width: 30%; |
||||
|
height: 150px; |
||||
|
position: absolute; |
||||
|
transition: all 5s ease-in-out; |
||||
|
h2 { |
||||
|
margin-top: 0; |
||||
|
color: #333; |
||||
|
} |
||||
|
p { |
||||
|
max-height: 30%; |
||||
|
overflow: auto; |
||||
|
} |
||||
|
&__close { |
||||
|
position: absolute; |
||||
|
top: 20px; |
||||
|
right: 30px; |
||||
|
transition: all 200ms; |
||||
|
font-size: 30px; |
||||
|
font-weight: bold; |
||||
|
text-decoration: none; |
||||
|
color: #333; |
||||
|
&:hover { |
||||
|
color: #06D85F; |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
|
||||
|
.button { |
||||
|
border: 3px solid $bordeau; |
||||
|
background-color: $light-grey; |
||||
|
font-weight: bold; |
||||
|
text-decoration: none; |
||||
|
transition: .5s; |
||||
|
&:hover { |
||||
|
color: $light-grey; |
||||
|
background-color: $bordeau; |
||||
|
} |
||||
|
&--small { |
||||
|
width: 3rem; |
||||
|
border-width: medium; |
||||
|
border-radius: 5px; |
||||
|
margin: 5px; |
||||
|
color: $dark-grey; |
||||
|
} |
||||
|
&--large { |
||||
|
color: $bordeau; |
||||
|
display: inline-block; |
||||
|
margin-bottom: 3%; |
||||
|
padding: 10px 40px; |
||||
|
border-radius: 20px; |
||||
|
} |
||||
|
} |
@ -1,6 +1,6 @@ |
|||||
<?php |
<?php |
||||
session_start(); |
session_start(); |
||||
if (!isset($_SESSION['login']) || !isset($_SESSION['pwd'])) { |
if (!isset($_SESSION['login']) || !isset($_SESSION['pwd'])) { |
||||
header('location: ../index.php'); |
header('location: ../login/index.php'); |
||||
} |
} |
||||
?> |
?> |
@ -1,6 +1,6 @@ |
|||||
<?php |
<?php |
||||
session_start(); |
session_start(); |
||||
if ( !(isset($_SESSION['login']) && isset($_SESSION['pwd'])) && !($_SESSION['login'] == 'referant')) { |
if ( !(isset($_SESSION['login']) && isset($_SESSION['pwd'])) && !($_SESSION['login'] == 'referant')) { |
||||
header('location: ../index.php'); |
header('location: ../login/index.php'); |
||||
} |
} |
||||
?> |
?> |
@ -1,297 +0,0 @@ |
|||||
body{ |
|
||||
z-index: 1; |
|
||||
background-color: #e5e5e5; |
|
||||
margin: 20px; |
|
||||
text-align: center; |
|
||||
} |
|
||||
|
|
||||
.logo{ |
|
||||
display: block; |
|
||||
} |
|
||||
|
|
||||
h1{ |
|
||||
margin: 40px; |
|
||||
font-weight: bold; |
|
||||
color: #454545; |
|
||||
} |
|
||||
|
|
||||
p{ |
|
||||
font-weight: bold; |
|
||||
color: #454444; |
|
||||
font-size: 20px; |
|
||||
height: 20px; |
|
||||
} |
|
||||
|
|
||||
|
|
||||
/* Form */ |
|
||||
|
|
||||
|
|
||||
form{ |
|
||||
width: 400px; |
|
||||
position: relative; |
|
||||
background-color: #ffffff; |
|
||||
display: block; |
|
||||
margin: auto; |
|
||||
border-radius: 30px; |
|
||||
padding: 20px; |
|
||||
} |
|
||||
|
|
||||
.container-champ{ |
|
||||
position: relative; |
|
||||
} |
|
||||
|
|
||||
.container-champ small{ |
|
||||
display: none; |
|
||||
color: red; |
|
||||
} |
|
||||
|
|
||||
.champ{ |
|
||||
background-color: inherit; |
|
||||
position: relative; |
|
||||
display: block; |
|
||||
|
|
||||
text-decoration-line: none; |
|
||||
text-align: center; |
|
||||
color: #454444; |
|
||||
|
|
||||
margin: 10px auto; |
|
||||
border: 4px solid #4e4d4d; |
|
||||
padding: 10px 10px; |
|
||||
border-radius: 30px; |
|
||||
|
|
||||
width: 200px; |
|
||||
|
|
||||
transition: 0.25s; |
|
||||
} |
|
||||
|
|
||||
.champ:focus, .champ:hover{ |
|
||||
width: 300px; |
|
||||
border-color: #ac2a8d; |
|
||||
background-color: #dddddd; |
|
||||
} |
|
||||
|
|
||||
.champ img{ |
|
||||
display: none; |
|
||||
position: relative; |
|
||||
float: right; |
|
||||
width: 20px; |
|
||||
bottom: 20px; |
|
||||
right: 20px; |
|
||||
} |
|
||||
|
|
||||
.entry{ |
|
||||
border: none; |
|
||||
resize: none; |
|
||||
outline: none; |
|
||||
width: 100%; |
|
||||
text-align: inherit; |
|
||||
background-color: inherit; |
|
||||
-webkit-appearance: none; |
|
||||
-moz-appearance: none; |
|
||||
appearance: none; |
|
||||
} |
|
||||
|
|
||||
.submit{ |
|
||||
background-color: inherit; |
|
||||
position: relative; |
|
||||
display: block; |
|
||||
|
|
||||
text-align: center; |
|
||||
color: #454444; |
|
||||
|
|
||||
margin: 10px auto; |
|
||||
border: 4px solid #4e4d4d; |
|
||||
padding: 10px 10px; |
|
||||
border-radius: 30px; |
|
||||
|
|
||||
width: 200px; |
|
||||
|
|
||||
transition: 0.25s; |
|
||||
} |
|
||||
|
|
||||
.submit:hover{ |
|
||||
width: 250px; |
|
||||
background-color: #82E6AC; |
|
||||
border-color: #2ecc71; |
|
||||
} |
|
||||
|
|
||||
|
|
||||
/* Indice */ |
|
||||
|
|
||||
|
|
||||
.help{ |
|
||||
display: none; |
|
||||
z-index: 2; |
|
||||
position: absolute; |
|
||||
width: 170px; |
|
||||
right: 0; |
|
||||
top: 30%; |
|
||||
border-radius: 30px; |
|
||||
padding: 15px; |
|
||||
margin: 0; |
|
||||
background-color: #dddddd; |
|
||||
|
|
||||
} |
|
||||
|
|
||||
.help * { |
|
||||
font-size: 14px; |
|
||||
width: 100%; |
|
||||
} |
|
||||
|
|
||||
.help p{ |
|
||||
position: relative; |
|
||||
} |
|
||||
|
|
||||
code { |
|
||||
background-color: #aaa; |
|
||||
border-radius: 5px; |
|
||||
font-family: courier, monospace; |
|
||||
padding: 3px 5px; |
|
||||
} |
|
||||
|
|
||||
|
|
||||
/* Nav */ |
|
||||
|
|
||||
|
|
||||
nav{ |
|
||||
width: 80%; |
|
||||
margin-left: 10%; |
|
||||
background-color: #84878C; /*couleur nav entière*/ |
|
||||
border-radius: 20px; |
|
||||
} |
|
||||
|
|
||||
nav > ul{ |
|
||||
margin-left: auto; |
|
||||
margin-right: auto; |
|
||||
padding: 0px; |
|
||||
width: 60%; |
|
||||
} |
|
||||
|
|
||||
nav > ul::after{ |
|
||||
content: ""; |
|
||||
display: block; |
|
||||
clear: both; |
|
||||
} |
|
||||
|
|
||||
nav > ul > li{ |
|
||||
width: 20%; |
|
||||
float: left; |
|
||||
position: relative; |
|
||||
text-align: center; |
|
||||
list-style-type: none; |
|
||||
} |
|
||||
|
|
||||
nav> ul > li > a{ |
|
||||
font-size: 100%; |
|
||||
padding-top: 10px; |
|
||||
padding-bottom: 10px; |
|
||||
color: #eee; |
|
||||
display: inline-block; |
|
||||
text-decoration: none; |
|
||||
} |
|
||||
|
|
||||
.menu:hover{ |
|
||||
background-color: #59184E; |
|
||||
transition: 1s; |
|
||||
border-radius: 10px; |
|
||||
} |
|
||||
|
|
||||
.menu:hover > a{ |
|
||||
color: #fff; |
|
||||
font-weight: bold; |
|
||||
} |
|
||||
|
|
||||
|
|
||||
/* Table */ |
|
||||
|
|
||||
|
|
||||
#table-search{ |
|
||||
display: none; |
|
||||
} |
|
||||
|
|
||||
.table-title td{ |
|
||||
color: #ac2a8d; |
|
||||
font-weight: bold; |
|
||||
} |
|
||||
|
|
||||
table{ |
|
||||
width: 80%; |
|
||||
border-radius: 5px; |
|
||||
margin-left: 10%; |
|
||||
background-color: #84878C; |
|
||||
color: #fff; |
|
||||
border: 1px solid #84878C; |
|
||||
} |
|
||||
|
|
||||
td { |
|
||||
background-color: #e5e5e5; |
|
||||
|
|
||||
border: 1px solid #84878C; |
|
||||
border-radius: 5px; |
|
||||
|
|
||||
text-align: center; |
|
||||
color: #84878C; |
|
||||
|
|
||||
width: 7%; |
|
||||
} |
|
||||
|
|
||||
th{ |
|
||||
width: 100%; |
|
||||
} |
|
||||
|
|
||||
|
|
||||
/* SWITCH */ |
|
||||
|
|
||||
|
|
||||
.switch { |
|
||||
position: relative; |
|
||||
display: inline-block; |
|
||||
width: 60px; |
|
||||
height: 34px; |
|
||||
} |
|
||||
|
|
||||
.switch input { |
|
||||
opacity: 0; |
|
||||
width: 0; |
|
||||
height: 0; |
|
||||
} |
|
||||
|
|
||||
.slider { |
|
||||
position: absolute; |
|
||||
cursor: pointer; |
|
||||
top: 0; |
|
||||
left: 0; |
|
||||
right: 0; |
|
||||
bottom: 0; |
|
||||
background-color: crimson; |
|
||||
border-radius: 34px; |
|
||||
-webkit-transition: .4s; |
|
||||
transition: .4s; |
|
||||
} |
|
||||
|
|
||||
.slider:before { |
|
||||
position: absolute; |
|
||||
border-radius: 50%; |
|
||||
content: ""; |
|
||||
height: 26px; |
|
||||
width: 26px; |
|
||||
left: 4px; |
|
||||
bottom: 4px; |
|
||||
background-color: white; |
|
||||
-webkit-transition: .4s; |
|
||||
transition: .4s; |
|
||||
} |
|
||||
|
|
||||
input:checked + .slider { |
|
||||
background-color:#2ecc71; |
|
||||
} |
|
||||
|
|
||||
input:focus + .slider { |
|
||||
box-shadow: 0 0 1px #2ecc71; |
|
||||
} |
|
||||
|
|
||||
input:checked + .slider:before { |
|
||||
-webkit-transform: translateX(26px); |
|
||||
-ms-transform: translateX(26px); |
|
||||
transform: translateX(26px); |
|
||||
} |
|
@ -1,98 +0,0 @@ |
|||||
-- phpMyAdmin SQL Dump |
|
||||
-- version 5.1.1 |
|
||||
-- https://www.phpmyadmin.net/ |
|
||||
-- |
|
||||
-- Host: localhost |
|
||||
-- Generation Time: Oct 30, 2021 at 07:45 PM |
|
||||
-- Server version: 10.4.21-MariaDB |
|
||||
-- PHP Version: 8.0.10 |
|
||||
|
|
||||
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 */; |
|
||||
|
|
||||
-- |
|
||||
-- Database: `ticket` |
|
||||
-- |
|
||||
|
|
||||
-- -------------------------------------------------------- |
|
||||
|
|
||||
-- |
|
||||
-- Table structure for table `logins` |
|
||||
-- |
|
||||
|
|
||||
CREATE TABLE `logins` ( |
|
||||
`login` varchar(255) NOT NULL, |
|
||||
`pwd` varchar(255) NOT NULL |
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; |
|
||||
|
|
||||
-- |
|
||||
-- Dumping data for table `logins` |
|
||||
-- |
|
||||
|
|
||||
INSERT INTO `logins` (`login`, `pwd`) VALUES |
|
||||
('prof', 'arthur'), |
|
||||
('referant', 'azerty'); |
|
||||
|
|
||||
-- -------------------------------------------------------- |
|
||||
|
|
||||
-- |
|
||||
-- Table structure for table `pannes` |
|
||||
-- |
|
||||
|
|
||||
CREATE TABLE `pannes` ( |
|
||||
`ID` int(11) NOT NULL, |
|
||||
`dates` date NOT NULL, |
|
||||
`details` text NOT NULL, |
|
||||
`lieu` text NOT NULL, |
|
||||
`salle` varchar(255) NOT NULL, |
|
||||
`pos` text NOT NULL, |
|
||||
`materiel` varchar(255) NOT NULL, |
|
||||
`marque` varchar(255) NOT NULL, |
|
||||
`model` varchar(255) NOT NULL, |
|
||||
`nserie` text NOT NULL, |
|
||||
`demandeur` text NOT NULL, |
|
||||
`traitement` tinyint(1) NOT NULL |
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; |
|
||||
|
|
||||
-- |
|
||||
-- Dumping data for table `pannes` |
|
||||
-- |
|
||||
|
|
||||
INSERT INTO `pannes` (`ID`, `dates`, `details`, `lieu`, `salle`, `pos`, `materiel`, `marque`, `model`, `nserie`, `demandeur`, `traitement`) VALUES |
|
||||
(1, '2021-10-22', 'Bonjour de Bretagne', 'Bâtiment A', '42', 'au fond a gauche', 'pc', 'alienware', 'lattitude E6410', 'sefv-45-gd1', 'barraux', 0), |
|
||||
(4, '2021-10-23', 'sq@', 'FE', 'ds', 'QDGFDQ', 'UC', 'QGDF', 'FQG', 'QGZet', 'qgqre', 0), |
|
||||
(5, '2021-10-23', 'sq@', 'FE', 'ds', 'QDGFDQ', 'UC', 'QGDF', 'FQG', 'sgf', 'sef', 0), |
|
||||
(6, '2021-10-25', 'manque la dernière carte graphique', 'Locquirec', 'Ma chambre', 'Sur le lit', 'UC', 'Dell', 'LATITTUDE E6410', 'chai pas', 'BARRAUX', 0), |
|
||||
(7, '2021-10-28', 'pas d\'inspi', 'Locquirec', 'chambre 6', 'pas bougé', 'UC', 'Dell', 'flemme', 'je sais pas', 'Le Cocotier des mers', 0); |
|
||||
|
|
||||
-- |
|
||||
-- Indexes for dumped tables |
|
||||
-- |
|
||||
|
|
||||
-- |
|
||||
-- Indexes for table `pannes` |
|
||||
-- |
|
||||
ALTER TABLE `pannes` |
|
||||
ADD PRIMARY KEY (`ID`); |
|
||||
|
|
||||
-- |
|
||||
-- AUTO_INCREMENT for dumped tables |
|
||||
-- |
|
||||
|
|
||||
-- |
|
||||
-- AUTO_INCREMENT for table `pannes` |
|
||||
-- |
|
||||
ALTER TABLE `pannes` |
|
||||
MODIFY `ID` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=9; |
|
||||
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 */; |
|
Loading…
Reference in new issue