/**
  *
  * @param int   student id
  * @param int   years
  * @param bool  show warning_message
  * @param bool  return_timestamp
  */
 public static function delete_inactive_student($student_id, $years = 2, $warning_message = false, $return_timestamp = false)
 {
     $tbl_track_login = Database::get_main_table(TABLE_STATISTIC_TRACK_E_LOGIN);
     $sql = 'SELECT login_date FROM ' . $tbl_track_login . '
             WHERE login_user_id = ' . intval($student_id) . '
             ORDER BY login_date DESC LIMIT 0,1';
     if (empty($years)) {
         $years = 1;
     }
     $inactive_time = $years * 31536000;
     //1 year
     $rs = Database::query($sql);
     if (Database::num_rows($rs) > 0) {
         if ($last_login_date = Database::result($rs, 0, 0)) {
             $last_login_date = api_get_local_time($last_login_date, null, date_default_timezone_get());
             if ($return_timestamp) {
                 return api_strtotime($last_login_date);
             } else {
                 if (!$warning_message) {
                     return api_format_date($last_login_date, DATE_FORMAT_SHORT);
                 } else {
                     $timestamp = api_strtotime($last_login_date);
                     $currentTimestamp = time();
                     //If the last connection is > than 7 days, the text is red
                     //345600 = 7 days in seconds 63072000= 2 ans
                     // if ($currentTimestamp - $timestamp > 184590 )
                     if ($currentTimestamp - $timestamp > $inactive_time && UserManager::delete_user($student_id)) {
                         Display::display_normal_message(get_lang('UserDeleted'));
                         echo '<p>', 'id', $student_id, ':', $last_login_date, '</p>';
                     }
                 }
             }
         }
     }
     return false;
 }
function WSHelperActionOnUsers($params, $type)
{
    if (!WSHelperVerifyKey($params)) {
        return return_error(WS_ERROR_SECRET_KEY);
    }
    $original_user_ids = $params['ids'];
    foreach ($original_user_ids as $original_user_id) {
        $user_id = UserManager::get_user_id_from_original_id($original_user_id['original_user_id_value'], $original_user_id['original_user_id_name']);
        if ($user_id > 0) {
            if ($type == "delete") {
                UserManager::delete_user($user_id);
            } else {
                if ($type == "disable") {
                    UserManager::disable($user_id);
                } else {
                    if ($type == "enable") {
                        UserManager::enable($user_id);
                    }
                }
            }
        }
    }
}
Esempio n. 3
0
                     } else {
                         $message = Display::return_message(get_lang('CannotDeleteUserBecauseOwnsCourse'), 'error');
                     }
                 } else {
                     $message = Display::return_message(get_lang('CannotDeleteUser'), 'error');
                 }
             }
             break;
         case 'delete':
             if (api_is_platform_admin()) {
                 $number_of_selected_users = count($_POST['id']);
                 $number_of_deleted_users = 0;
                 if (is_array($_POST['id'])) {
                     foreach ($_POST['id'] as $index => $user_id) {
                         if ($user_id != $_user['user_id']) {
                             if (UserManager::delete_user($user_id)) {
                                 $number_of_deleted_users++;
                             }
                         }
                     }
                 }
                 if ($number_of_selected_users == $number_of_deleted_users) {
                     $message = Display::return_message(get_lang('SelectedUsersDeleted'), 'confirmation');
                 } else {
                     $message = Display::return_message(get_lang('SomeUsersNotDeleted'), 'error');
                 }
             }
             break;
     }
     Security::clear_token();
 }
<?php

/* For licensing terms, see /license.txt */
//require_once '../inc/global.inc.php';
if (api_get_setting('platform_unsubscribe_allowed') != 'true') {
    api_not_allowed();
}
$tool_name = get_lang('Unsubscribe');
$message = Display::return_message(get_lang('UnsubscribeFromPlatform'), 'warning');
$form = new FormValidator('user_add');
$form->addElement('button', 'submit', get_lang('Unsubscribe'), array('onclick' => "javascript:if(!confirm('" . addslashes(api_htmlentities(get_lang("UnsubscribeFromPlatformConfirm"))) . "')) return false;"));
$content = $form->returnForm();
if ($form->validate()) {
    $user_info = api_get_user_info();
    $result = UserManager::delete_user($user_info['user_id']);
    if ($result) {
        $message = Display::return_message(sprintf(get_lang('UnsubscribeFromPlatformSuccess', $user_info['username'])));
        $content = null;
        online_logout($user_info['user_id'], false);
        api_not_allowed(true, $message);
    }
}
//$tpl = new Template($tool_name);
echo $actions;
echo $message;
echo $content;
 static function transaction_2($data)
 {
     $uidIdPersonaId = strtoupper($data['item_id']);
     global $data_list;
     $user_id = self::get_user_id_by_persona_id($uidIdPersonaId, $data_list);
     if ($user_id) {
         $chamilo_user_info_before = api_get_user_info($user_id, false, false, true);
         $result = UserManager::delete_user($user_id);
         $chamilo_user_info = api_get_user_info($user_id, false, false, true);
         if ($result) {
             $data_list['users'][$uidIdPersonaId] = null;
             return array('entity' => 'user', 'before' => $chamilo_user_info_before, 'after' => $chamilo_user_info, 'message' => "User was deleted : {$user_id}", 'status_id' => self::TRANSACTION_STATUS_SUCCESSFUL);
         } else {
             return array('message' => "User was NOT deleted : {$user_id} error while calling function UserManager::delete_user", 'status_id' => self::TRANSACTION_STATUS_SUCCESSFUL);
         }
     } else {
         return array('message' => "User was not found with uidIdPersona: {$uidIdPersonaId}", 'status_id' => self::TRANSACTION_STATUS_FAILED);
     }
 }
 /**
  * Deletes a user (helper method)
  *
  * @param string User id field name. Use "chamilo_user_id" as the field name if you want to use the internal user_id
  * @param string User id value
  * @return mixed True if user was successfully deleted, WSError otherwise
  */
 protected function deleteUserHelper($user_id_field_name, $user_id_value)
 {
     $user_id = $this->getUserId($user_id_field_name, $user_id_value);
     if ($user_id instanceof WSError) {
         return $user_id;
     } else {
         if (!UserManager::delete_user($user_id)) {
             return new WSError(101, "There was a problem while deleting this user");
         } else {
             return true;
         }
     }
 }
 /**
  * @depends testCreateUser
  */
 public function testDelete_user2()
 {
     $user_info = UserManager::get_user_info('jmontoya666');
     $this->assertSame(false, UserManager::delete_user($user_info['user_id']));
 }