fixing event_system() call and improving performance -refs #6213

1.9.x
Yoselyn Castillo 12 years ago
parent c493278e67
commit 45c688e86d
  1. 5
      main/inc/lib/main_api.lib.php
  2. 19
      main/inc/lib/usermanager.lib.php

@ -153,8 +153,8 @@ define('LOG_COURSE_DELETE', 'course_deleted');
define('LOG_COURSE_CREATE', 'course_created');
define('LOG_USER_DELETE', 'user_deleted');
define('LOG_USER_CREATE', 'user_created');
define('LOG_USER_ACTIVE', 'user_active');
define('LOG_USER_OFF', 'user_off');
define('LOG_USER_ENABLE', 'user_enable');
define('LOG_USER_DISABLE', 'user_disable');
define('LOG_SESSION_CREATE', 'session_created');
define('LOG_SESSION_DELETE', 'session_deleted');
define('LOG_SESSION_CATEGORY_CREATE', 'session_category_created');
@ -1072,6 +1072,7 @@ function _api_format_user($user, $add_password = false) {
$result['user_id'] = $user_id;
$result['official_code'] = $user['official_code'];
$result['status'] = $user['status'];
$result['active'] = $user['active'];
$result['auth_source'] = $user['auth_source'];
if (isset($user['username'])) {

@ -533,16 +533,18 @@ class UserManager
if (!in_array($language, $languages['folder'])) {
$language = api_get_setting('platformLanguage');
}
$activate = 0;
$sql_active = "SELECT * FROM $table_user WHERE user_id='$user_id' ";
$change_active = 0;
if ($user_info['active'] != $active) {
$change_active = 1;
}
/*$sql_active = "SELECT * FROM $table_user WHERE user_id='$user_id' ";
$return_active = Database::query($sql_active);
if (Database::num_rows($return_active) > 0) {
$result_active = Database::fetch_array($return_active);
if ($result_active['active'] != $active) {
$activate = 1;
}
}
}*/
$sql = "UPDATE $table_user SET
lastname='".Database::escape_string($lastname)."',
firstname='".Database::escape_string($firstname)."',
@ -582,15 +584,14 @@ class UserManager
}
$sql .= " WHERE user_id='$user_id'";
$return = Database::query($sql);
if ($activate == 1 && $return) {
$user_id_manager = api_get_user_id();
if ($change_active == 1 && $return) {
$user_info = api_get_user_info($user_id);
if ($active == 1) {
$event_title = LOG_USER_ACTIVE;
$event_title = LOG_USER_ENABLE;
} else {
$event_title = LOG_USER_OFF;
$event_title = LOG_USER_DISABLE;
}
event_system($event_title, LOG_USER_ID, $user_id, api_get_utc_datetime(), $user_id_manager, null, $user_info);
event_system($event_title, LOG_USER_ID, $user_id, api_get_utc_datetime(), null, null);
}
if (is_array($extra) && count($extra) > 0) {
$res = true;

Loading…
Cancel
Save