Delete of security event keep add a delete event
This commit is contained in:
parent
4496665177
commit
ab1d4b335a
@ -20,16 +20,17 @@
|
|||||||
* \file htdocs/admin/events.php
|
* \file htdocs/admin/events.php
|
||||||
* \ingroup core
|
* \ingroup core
|
||||||
* \brief Log event setup page
|
* \brief Log event setup page
|
||||||
* \version $Id$
|
* \version $Id: events.php,v 1.20 2011/07/18 23:30:56 eldy Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require("../main.inc.php");
|
require("../main.inc.php");
|
||||||
require_once(DOL_DOCUMENT_ROOT."/lib/admin.lib.php");
|
require_once(DOL_DOCUMENT_ROOT."/lib/admin.lib.php");
|
||||||
require_once(DOL_DOCUMENT_ROOT."/lib/agenda.lib.php");
|
require_once(DOL_DOCUMENT_ROOT."/lib/agenda.lib.php");
|
||||||
|
require_once(DOL_DOCUMENT_ROOT."/core/class/events.class.php");
|
||||||
|
|
||||||
|
|
||||||
if (!$user->admin)
|
if (!$user->admin)
|
||||||
accessforbidden();
|
accessforbidden();
|
||||||
|
|
||||||
$langs->load("users");
|
$langs->load("users");
|
||||||
$langs->load("admin");
|
$langs->load("admin");
|
||||||
@ -38,52 +39,19 @@ $langs->load("other");
|
|||||||
$action=GETPOST("action");
|
$action=GETPOST("action");
|
||||||
|
|
||||||
|
|
||||||
// List of all events supported by triggers
|
$securityevent=new Events($db);
|
||||||
$eventstolog=array(
|
$eventstolog=$securityevent->eventstolog;
|
||||||
array('id'=>'USER_LOGIN', 'test'=>1),
|
|
||||||
array('id'=>'USER_LOGIN_FAILED', 'test'=>1),
|
|
||||||
array('id'=>'USER_LOGOUT', 'test'=>1),
|
|
||||||
array('id'=>'USER_CREATE', 'test'=>1),
|
|
||||||
array('id'=>'USER_MODIFY', 'test'=>1),
|
|
||||||
array('id'=>'USER_NEW_PASSWORD', 'test'=>1),
|
|
||||||
array('id'=>'USER_ENABLEDISABLE', 'test'=>1),
|
|
||||||
array('id'=>'USER_DELETE', 'test'=>1),
|
|
||||||
array('id'=>'GROUP_CREATE', 'test'=>1),
|
|
||||||
array('id'=>'GROUP_MODIFY', 'test'=>1),
|
|
||||||
array('id'=>'GROUP_DELETE', 'test'=>1),
|
|
||||||
/* array('id'=>'ACTION_CREATE', 'test'=>$conf->societe->enabled),
|
|
||||||
array('id'=>'COMPANY_CREATE', 'test'=>$conf->societe->enabled),
|
|
||||||
array('id'=>'CONTRACT_VALIDATE', 'test'=>$conf->contrat->enabled),
|
|
||||||
array('id'=>'PROPAL_VALIDATE', 'test'=>$conf->propal->enabled),
|
|
||||||
array('id'=>'PROPAL_CLOSE_SIGNED', 'test'=>$conf->propal->enabled),
|
|
||||||
array('id'=>'PROPAL_CLOSE_REFUSED', 'test'=>$conf->propal->enabled),
|
|
||||||
array('id'=>'PROPAL_SENTBYMAIL', 'test'=>$conf->propal->enabled),
|
|
||||||
array('id'=>'ORDER_VALIDATE', 'test'=>$conf->commande->enabled),
|
|
||||||
array('id'=>'ORDER_SENTBYMAIL', 'test'=>$conf->commande->enabled),
|
|
||||||
array('id'=>'BILL_VALIDATE', 'test'=>$conf->facture->enabled),
|
|
||||||
array('id'=>'BILL_PAYED', 'test'=>$conf->facture->enabled),
|
|
||||||
array('id'=>'BILL_CANCEL', 'test'=>$conf->facture->enabled),
|
|
||||||
array('id'=>'BILL_SENTBYMAIL', 'test'=>$conf->facture->enabled),
|
|
||||||
array('id'=>'PAYMENT_CUSTOMER_CREATE','test'=>$conf->facture->enabled),
|
|
||||||
array('id'=>'PAYMENT_SUPPLIER_CREATE','test'=>$conf->fournisseur->enabled),
|
|
||||||
array('id'=>'MEMBER_CREATE', 'test'=>$conf->adherent->enabled),
|
|
||||||
array('id'=>'MEMBER_VALIDATE', 'test'=>$conf->adherent->enabled),
|
|
||||||
array('id'=>'MEMBER_SUBSCRIPTION', 'test'=>$conf->adherent->enabled),
|
|
||||||
array('id'=>'MEMBER_MODIFY', 'test'=>$conf->adherent->enabled),
|
|
||||||
array('id'=>'MEMBER_RESILIATE', 'test'=>$conf->adherent->enabled),
|
|
||||||
array('id'=>'MEMBER_DELETE', 'test'=>$conf->adherent->enabled),
|
|
||||||
*/
|
|
||||||
);
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Actions
|
* Actions
|
||||||
*/
|
*/
|
||||||
if ($action == "save")
|
if ($action == "save")
|
||||||
{
|
{
|
||||||
$i=0;
|
$i=0;
|
||||||
|
|
||||||
$db->begin();
|
$db->begin();
|
||||||
|
|
||||||
foreach ($eventstolog as $key => $arr)
|
foreach ($eventstolog as $key => $arr)
|
||||||
{
|
{
|
||||||
@ -93,8 +61,8 @@ if ($action == "save")
|
|||||||
else dolibarr_del_const($db,$param,$conf->entity);
|
else dolibarr_del_const($db,$param,$conf->entity);
|
||||||
}
|
}
|
||||||
|
|
||||||
$db->commit();
|
$db->commit();
|
||||||
$mesg = "<font class=\"ok\">".$langs->trans("SetupSaved")."</font>";
|
$mesg = "<font class=\"ok\">".$langs->trans("SetupSaved")."</font>";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -130,14 +98,14 @@ foreach ($eventstolog as $key => $arr)
|
|||||||
{
|
{
|
||||||
if ($arr['id'])
|
if ($arr['id'])
|
||||||
{
|
{
|
||||||
$var=!$var;
|
$var=!$var;
|
||||||
print '<tr '.$bc[$var].'>';
|
print '<tr '.$bc[$var].'>';
|
||||||
print '<td>'.$arr['id'].'</td>';
|
print '<td>'.$arr['id'].'</td>';
|
||||||
print '<td>';
|
print '<td>';
|
||||||
$key='MAIN_LOGEVENTS_'.$arr['id'];
|
$key='MAIN_LOGEVENTS_'.$arr['id'];
|
||||||
$value=$conf->global->$key;
|
$value=$conf->global->$key;
|
||||||
print '<input '.$bc[$var].' type="checkbox" name="'.$key.'" value="1"'.($value?' checked="true"':'').'>';
|
print '<input '.$bc[$var].' type="checkbox" name="'.$key.'" value="1"'.($value?' checked="true"':'').'>';
|
||||||
print '</td></tr>'."\n";
|
print '</td></tr>'."\n";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
print '</table>';
|
print '</table>';
|
||||||
@ -151,12 +119,10 @@ print "</form>\n";
|
|||||||
print '</div>';
|
print '</div>';
|
||||||
|
|
||||||
|
|
||||||
|
dol_htmloutput_mesg($mesg);
|
||||||
if ($mesg) print "<br>$mesg<br>";
|
|
||||||
print "<br>";
|
|
||||||
|
|
||||||
|
|
||||||
$db->close();
|
$db->close();
|
||||||
|
|
||||||
llxFooter('$Date$ - $Revision$');
|
llxFooter('$Date: 2011/07/18 23:30:56 $ - $Revision: 1.20 $');
|
||||||
?>
|
?>
|
||||||
|
|||||||
@ -21,19 +21,19 @@
|
|||||||
* \file htdocs/admin/tools/listevents.php
|
* \file htdocs/admin/tools/listevents.php
|
||||||
* \ingroup core
|
* \ingroup core
|
||||||
* \brief List of security events
|
* \brief List of security events
|
||||||
* \version $Id$
|
* \version $Id: listevents.php,v 1.31 2011/07/18 23:28:30 eldy Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require("../../main.inc.php");
|
require("../../main.inc.php");
|
||||||
|
require_once(DOL_DOCUMENT_ROOT.'/core/class/events.class.php');
|
||||||
if (! $user->admin)
|
if (! $user->admin)
|
||||||
accessforbidden();
|
accessforbidden();
|
||||||
|
|
||||||
// Security check
|
// Security check
|
||||||
if ($user->societe_id > 0)
|
if ($user->societe_id > 0)
|
||||||
{
|
{
|
||||||
$action = '';
|
$action = '';
|
||||||
$socid = $user->societe_id;
|
$socid = $user->societe_id;
|
||||||
}
|
}
|
||||||
|
|
||||||
$langs->load("admin");
|
$langs->load("admin");
|
||||||
@ -61,23 +61,48 @@ $search_ua = GETPOST("search_ua");
|
|||||||
* Actions
|
* Actions
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
$now=dol_now();
|
||||||
|
|
||||||
// Purge audit events
|
// Purge audit events
|
||||||
if ($_REQUEST['action'] == 'confirm_purge' && $_REQUEST['confirm'] == 'yes' && $user->admin)
|
if ($_REQUEST['action'] == 'confirm_purge' && $_REQUEST['confirm'] == 'yes' && $user->admin)
|
||||||
{
|
{
|
||||||
|
$error=0;
|
||||||
|
|
||||||
|
$db->begin();
|
||||||
|
$securityevents=new Events($db);
|
||||||
|
|
||||||
|
// Delete events
|
||||||
$sql = "DELETE FROM ".MAIN_DB_PREFIX."events";
|
$sql = "DELETE FROM ".MAIN_DB_PREFIX."events";
|
||||||
$sql.= " WHERE entity = ".$conf->entity;
|
$sql.= " WHERE entity = ".$conf->entity;
|
||||||
$resql = $db->query($sql);
|
$resql = $db->query($sql);
|
||||||
if (! $resql)
|
if (! $resql)
|
||||||
{
|
{
|
||||||
|
$error++;
|
||||||
$mesg='<div class="error">'.$db->lasterror().'</div>';
|
$mesg='<div class="error">'.$db->lasterror().'</div>';
|
||||||
}
|
}
|
||||||
|
// Add event purge
|
||||||
|
$text=$langs->trans("SecurityEventsPurged");
|
||||||
|
$securityevent=new Events($db);
|
||||||
|
$securityevent->type='SECURITY_EVENTS_PURGE';
|
||||||
|
$securityevent->dateevent=$now;
|
||||||
|
$securityevent->description=$text;
|
||||||
|
$result=$securityevent->create($user);
|
||||||
|
if ($result > 0)
|
||||||
|
{
|
||||||
|
dol_syslog($text, LOG_WARNING);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
$error++;
|
||||||
|
dol_syslog($securityevent->error, LOG_ERROR);
|
||||||
|
$db->rolback();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* View
|
* View
|
||||||
*/
|
*/
|
||||||
|
|
||||||
llxHeader();
|
llxHeader();
|
||||||
|
|
||||||
@ -215,21 +240,21 @@ if ($result)
|
|||||||
else print '<tr><td colspan="6">'.$langs->trans("NoEventOrNoAuditSetup").'</td></tr>';
|
else print '<tr><td colspan="6">'.$langs->trans("NoEventOrNoAuditSetup").'</td></tr>';
|
||||||
}
|
}
|
||||||
print "</table>";
|
print "</table>";
|
||||||
$db->free();
|
$db->free($result);
|
||||||
|
|
||||||
if ($num)
|
if ($num)
|
||||||
{
|
{
|
||||||
print '<div class="tabsAction">';
|
print '<div class="tabsAction">';
|
||||||
print '<a class="butAction" href="'.$_SERVER["PHP_SELF"].'?action=purge">'.$langs->trans("Purge").'</a>';
|
print '<a class="butAction" href="'.$_SERVER["PHP_SELF"].'?action=purge">'.$langs->trans("Purge").'</a>';
|
||||||
print '</div>';
|
print '</div>';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
dol_print_error($db);
|
dol_print_error($db);
|
||||||
}
|
}
|
||||||
|
|
||||||
$db->close();
|
$db->close();
|
||||||
|
|
||||||
llxFooter('$Date$ - $Revision$');
|
llxFooter('$Date: 2011/07/18 23:28:30 $ - $Revision: 1.31 $');
|
||||||
?>
|
?>
|
||||||
@ -21,7 +21,7 @@
|
|||||||
* \file htdocs/core/class/events.class.php
|
* \file htdocs/core/class/events.class.php
|
||||||
* \ingroup core
|
* \ingroup core
|
||||||
* \brief File of class to manage security events.
|
* \brief File of class to manage security events.
|
||||||
* \version $Id$
|
* \version $Id: events.class.php,v 1.7 2011/07/18 23:32:00 eldy Exp $
|
||||||
* \author Laurent Destailleur
|
* \author Laurent Destailleur
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -52,6 +52,42 @@ class Events // extends CommonObject
|
|||||||
var $dateevent;
|
var $dateevent;
|
||||||
var $description;
|
var $description;
|
||||||
|
|
||||||
|
// List of all events supported by triggers
|
||||||
|
var $eventstolog=array(
|
||||||
|
array('id'=>'USER_LOGIN', 'test'=>1),
|
||||||
|
array('id'=>'USER_LOGIN_FAILED', 'test'=>1),
|
||||||
|
array('id'=>'USER_LOGOUT', 'test'=>1),
|
||||||
|
array('id'=>'USER_CREATE', 'test'=>1),
|
||||||
|
array('id'=>'USER_MODIFY', 'test'=>1),
|
||||||
|
array('id'=>'USER_NEW_PASSWORD', 'test'=>1),
|
||||||
|
array('id'=>'USER_ENABLEDISABLE', 'test'=>1),
|
||||||
|
array('id'=>'USER_DELETE', 'test'=>1),
|
||||||
|
array('id'=>'GROUP_CREATE', 'test'=>1),
|
||||||
|
array('id'=>'GROUP_MODIFY', 'test'=>1),
|
||||||
|
array('id'=>'GROUP_DELETE', 'test'=>1),
|
||||||
|
/* array('id'=>'ACTION_CREATE', 'test'=>$conf->societe->enabled),
|
||||||
|
array('id'=>'COMPANY_CREATE', 'test'=>$conf->societe->enabled),
|
||||||
|
array('id'=>'CONTRACT_VALIDATE', 'test'=>$conf->contrat->enabled),
|
||||||
|
array('id'=>'PROPAL_VALIDATE', 'test'=>$conf->propal->enabled),
|
||||||
|
array('id'=>'PROPAL_CLOSE_SIGNED', 'test'=>$conf->propal->enabled),
|
||||||
|
array('id'=>'PROPAL_CLOSE_REFUSED', 'test'=>$conf->propal->enabled),
|
||||||
|
array('id'=>'PROPAL_SENTBYMAIL', 'test'=>$conf->propal->enabled),
|
||||||
|
array('id'=>'ORDER_VALIDATE', 'test'=>$conf->commande->enabled),
|
||||||
|
array('id'=>'ORDER_SENTBYMAIL', 'test'=>$conf->commande->enabled),
|
||||||
|
array('id'=>'BILL_VALIDATE', 'test'=>$conf->facture->enabled),
|
||||||
|
array('id'=>'BILL_PAYED', 'test'=>$conf->facture->enabled),
|
||||||
|
array('id'=>'BILL_CANCEL', 'test'=>$conf->facture->enabled),
|
||||||
|
array('id'=>'BILL_SENTBYMAIL', 'test'=>$conf->facture->enabled),
|
||||||
|
array('id'=>'PAYMENT_CUSTOMER_CREATE','test'=>$conf->facture->enabled),
|
||||||
|
array('id'=>'PAYMENT_SUPPLIER_CREATE','test'=>$conf->fournisseur->enabled),
|
||||||
|
array('id'=>'MEMBER_CREATE', 'test'=>$conf->adherent->enabled),
|
||||||
|
array('id'=>'MEMBER_VALIDATE', 'test'=>$conf->adherent->enabled),
|
||||||
|
array('id'=>'MEMBER_SUBSCRIPTION', 'test'=>$conf->adherent->enabled),
|
||||||
|
array('id'=>'MEMBER_MODIFY', 'test'=>$conf->adherent->enabled),
|
||||||
|
array('id'=>'MEMBER_RESILIATE', 'test'=>$conf->adherent->enabled),
|
||||||
|
array('id'=>'MEMBER_DELETE', 'test'=>$conf->adherent->enabled),
|
||||||
|
*/
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -75,7 +111,6 @@ class Events // extends CommonObject
|
|||||||
global $conf, $langs;
|
global $conf, $langs;
|
||||||
|
|
||||||
// Clean parameters
|
// Clean parameters
|
||||||
$this->id=trim($this->id);
|
|
||||||
$this->description=trim($this->description);
|
$this->description=trim($this->description);
|
||||||
|
|
||||||
// Check parameters
|
// Check parameters
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user