Ajout statut traité

This commit is contained in:
Caribana
2017-06-04 01:54:10 +02:00
parent 28032ee53a
commit 3be4c739d5
6 changed files with 59 additions and 13 deletions

View File

@@ -97,14 +97,19 @@ if($_POST['btnunfinalise']) {
$status = '1';
$updateStatus = true;
}
if($_POST['btnprocess'] && $isAdmin) {
$status = '3';
$updateStatus = true;
}
// Escape string, mostly in case of quotes
$d = $mysqli->real_escape_string(serialize($_POST));
if(!$aid) {
$query = "INSERT INTO submissions (uid, status, name, created, formdata,modified) values('$userid',$status,'$username',null,'".serialize($_POST)."',NOW())";
$query = "INSERT INTO submissions (uid, status, name, created, formdata,modified) values('$userid',$status,'$username',null,'".$d."',NOW())";
syslog(LOG_INFO, "Create entry by uid: $userid / $uname from: {$_SERVER['REMOTE_ADDR']} ({$_SERVER['HTTP_USER_AGENT']})");
}
else {
$query = "UPDATE submissions set modifieduid=$userid,formdata='".serialize($_POST)."'";
$query = "UPDATE submissions set modifieduid=$userid,formdata='".$d."'";
if($updateStatus) {
$query .= ",status=$status ";
}
@@ -113,7 +118,7 @@ else {
$query .= " AND uid=$userid";
}
syslog(LOG_INFO, "Update entry aid:$aid by uid: $userid / $uname from: {$_SERVER['REMOTE_ADDR']} ({$_SERVER['HTTP_USER_AGENT']})");
$logquery = "INSERT INTO log (uid,aid,name,isadmin,operation,new,prev) SELECT '$userid',$aid,'$username', $isAdmin, 'update','".serialize($_POST)."', formdata FROM submissions WHERE ID=$aid";
$logquery = "INSERT INTO log (uid,aid,name,isadmin,operation,new,prev) SELECT '$userid',$aid,'$username', $isAdmin, 'update','".$d."', formdata FROM submissions WHERE ID=$aid";
}
$mysqli->query($logquery);
if (!$mysqli->query($query) ) {
@@ -145,7 +150,7 @@ die();
syslog(LOG_INFO, "Load entry aid:$aid by uid: $userid / $uname from: {$_SERVER['REMOTE_ADDR']} ({$_SERVER['HTTP_USER_AGENT']})");
$ar = unserialize($row['formdata']);
// Return to list if we are not admin and trying to edit a finalised form. Shame on us
if(!$isAdmin && $row['status']==0) {
if(!$isAdmin && $row['status']!=1) {
header("location: accred_list");
die();
}
@@ -407,8 +412,12 @@ die();
if($row['status']==1) {
$form->add('submit', 'btnfinalise', 'Enregistrer et Finaliser');
}
if($row['status']==0 && $isAdmin) {
$form->add('submit', 'btnprocess', 'Marquer comme traité');
}
// Admins can un-finalise
if($isAdmin && $row['status']==0) {
if($isAdmin && $row['status']==0 && $aid) {
$form->add('submit', 'btnunfinalise', 'Enregistrer et rendre éditable');
}
// $form->add('submit', 'btncancel', 'Annuler');