diff --git a/include/class_log.inc b/include/class_log.inc
index af687c39e605b2c64bcdc03cd0d0f0bc9ed97470..daad88908e19a8211f9338350e61f0021f146f40 100644 (file)
--- a/include/class_log.inc
+++ b/include/class_log.inc
\sa log()
*/
\sa log()
*/
- function log($action,$objecttype,$object,$changes_array = array(),$result = TRUE)
+ function log($action,$objecttype,$object,$changes_array = array(),$result = "")
{
if(!is_array($changes_array)){
trigger_error("log(string,string,string,array(),bool). Forth parameter must be an array.");
{
if(!is_array($changes_array)){
trigger_error("log(string,string,string,array(),bool). Forth parameter must be an array.");
$this->log_into_syslog($entry);
}
if(isset($this->config->current['LOGGING']) && preg_match("/(^|,)mysql(,|$)/i",$this->config->current['LOGGING'])){
$this->log_into_syslog($entry);
}
if(isset($this->config->current['LOGGING']) && preg_match("/(^|,)mysql(,|$)/i",$this->config->current['LOGGING'])){
- $this->log_into_db($entry);
+ $res = $this->log_into_db($entry);
+
+ if(!$res){
+ global $config;
+ $config->current['LOGGING'] = preg_replace("/(^|,)mysql(,|$)/",",",$config->current['LOGGING']);
+ msg_dialog::display(_("Logging to MySQL disabled"),_("The logging to a MySQL database is now disabled for this session of GOsa, due to communication errors with the specified logging database."), INFO_DIALOG);
+ }
}
}
}
}
}
}
function check($entry = array())
{
$msgs = array();
function check($entry = array())
{
$msgs = array();
- # if(!isset($entry['user']) || empty($entry['user'])){
- # $msgs[] = "Currently active user is empty.";
- # }
if(!isset($entry['action']) || !in_array($entry['action'],array("modify","create","remove","copy","snapshot","view","security","debug"))){
$msgs[] = "Invalid option specified '".$entry['action']."'";
if(!isset($entry['action']) || !in_array($entry['action'],array("modify","create","remove","copy","snapshot","view","security","debug"))){
$msgs[] = "Invalid option specified '".$entry['action']."'";
$con = @mysql_pconnect($server_name,$server['USER'],$server['PWD']);
if(!$con){
print_red(sprintf(_("Could not connect to logging server %s."),$server_name));
$con = @mysql_pconnect($server_name,$server['USER'],$server['PWD']);
if(!$con){
print_red(sprintf(_("Could not connect to logging server %s."),$server_name));
+ return(FALSE);
}else{
$db = mysql_select_db($server['DB'],$con);
if(!$db){
}else{
$db = mysql_select_db($server['DB'],$con);
if(!$db){
- @print_red(sprintf(_("Could not select database %s on server %s. Server says :%s"),$server['DB'],$server['SERVER'],mysql_error($con)));
+ print_red(sprintf(_("Could not select database %s on server %s. Server says :%s"),$server['DB'],$server['SERVER'],mysql_error($con)));
+ return(FALSE);
}else{
/* Create mysql syntax */
}else{
/* Create mysql syntax */
";
$res = mysql_query($query,$con);
if(!$res){
";
$res = mysql_query($query,$con);
if(!$res){
- print_red(sprintf(_("Could not query database %s on server %s. Server ssys :%s"),$server['DB'],$server['SERVER'],mysql_error($con)));
-
+ print_red(sprintf(_("Could not query database %s on server %s. Server says :%s"),$server['DB'],$server['SERVER'],mysql_error($con)));
+ return(FALSE);
}
}
mysql_close($con);
}
}
}
}
mysql_close($con);
}
}
+ return(TRUE);
}
}
}
}