From e5f5796d49d72443ce274ffe79d51c37b0782437 Mon Sep 17 00:00:00 2001 From: jengo Date: Fri, 20 Oct 2000 02:45:54 +0000 Subject: [PATCH] Started adding the LDAP admin section functions --- admin/deleteaccount.php | 51 ++-------------------- admin/inc/accounts_ldap.inc.php | 32 ++++++++++++++ admin/inc/accounts_sql.inc.php | 76 +++++++++++++++++++++++++++++++++ 3 files changed, 112 insertions(+), 47 deletions(-) create mode 100644 admin/inc/accounts_ldap.inc.php create mode 100755 admin/inc/accounts_sql.inc.php diff --git a/admin/deleteaccount.php b/admin/deleteaccount.php index d2a82079eb..aab2b6397a 100755 --- a/admin/deleteaccount.php +++ b/admin/deleteaccount.php @@ -19,6 +19,9 @@ $phpgw_info["flags"]["disable_message_class"] = True; $phpgw_info["flags"]["disable_send_class"] = True; include("../header.inc.php"); + include($phpgw_info["server"]["server_root"] . "/admin/inc/accounts_" + . $phpgw_info["server"]["auth_type"] . ".inc.php"); + // Make sure they are not attempting to delete there own account. // If they are, they should not reach this point anyway. if ($phpgw_info["user"]["account_id"] == $account_id) { @@ -55,53 +58,7 @@ } if ($confirm) { - $phpgw->db->query("select account_lid from accounts where account_id=$account_id"); - $phpgw->db->next_record(); - $lid = $phpgw->db->f(0); - - $i = 0; - $phpgw->db->query("select cal_id from webcal_entry where cal_create_by='$lid'"); - while ($phpgw->db->next_record()) { - $cal_id[$i] = $phpgw->db->f("cal_id"); - echo "
" . $phpgw->db->f("cal_id"); - $i++; - } - - $table_locks = array('preferences','todo','addressbook','accounts', - 'webcal_entry','webcal_entry_user','webcal_entry_repeats', - 'webcal_entry_groups'); - $phpgw->db->lock($table_locks); - - for ($i=0; $idb->query("delete from webcal_entry_repeats where cal_id='$cal_id[$i]'"); - $phpgw->db->query("delete from webcal_entry_groups where cal_id='$cal_id[$i]'"); - } - - $phpgw->db->query("delete from webcal_entry where cal_create_by='$lid'"); - $phpgw->db->query("delete from webcal_entry_user where cal_login='$lid'"); - - $phpgw->db->query("delete from todo where todo_owner='$lid'"); - $phpgw->db->query("delete from addressbook where ab_owner='$lid'"); - $phpgw->db->query("delete from accounts where account_lid='$lid'"); - //$phpgw->db->query("delete from users_headlines where owner='$lid'"); - //$phpgw->db->query("delete from profiles where owner='$lid'"); - - $phpgw->common->preferences_delete("all",$lid); - - $phpgw->db->unlock(); - - $sep = $phpgw->common->filesystem_separator(); - - //$basedir = $phpgw_info["server"]["server_root"] . $sep . "filemanager" . $sep . "users" - // . $sep; - $basedir = $phpgw_info["server"]["files_dir"] . $sep . "users" . $sep; - -//echo "

rmdir:".$basedir . $lid."

\n"; - if (! @rmdir($basedir . $lid)) { - $cd = 34; - } else { - $cd = 29; - } + $cd = account_delete($account_id); Header("Location: " . $phpgw->link("accounts.php","cd=$cd")); } diff --git a/admin/inc/accounts_ldap.inc.php b/admin/inc/accounts_ldap.inc.php new file mode 100644 index 0000000000..a828ed1e40 --- /dev/null +++ b/admin/inc/accounts_ldap.inc.php @@ -0,0 +1,32 @@ +db->query("select account_lid from accounts where account_id=$account_id"); + $phpgw->db->next_record(); + $lid = $phpgw->db->f(0); + + $i = 0; + $phpgw->db->query("select cal_id from webcal_entry where cal_create_by='$lid'"); + while ($phpgw->db->next_record()) { + $cal_id[$i] = $phpgw->db->f("cal_id"); + echo "
" . $phpgw->db->f("cal_id"); + $i++; + } + + $table_locks = array('preferences','todo','addressbook','accounts', + 'webcal_entry','webcal_entry_user','webcal_entry_repeats', + 'webcal_entry_groups'); + $phpgw->db->lock($table_locks); + + for ($i=0; $idb->query("delete from webcal_entry_repeats where cal_id='$cal_id[$i]'"); + $phpgw->db->query("delete from webcal_entry_groups where cal_id='$cal_id[$i]'"); + } + + $phpgw->db->query("delete from webcal_entry where cal_create_by='$lid'"); + $phpgw->db->query("delete from webcal_entry_user where cal_login='$lid'"); + + $phpgw->db->query("delete from todo where todo_owner='$lid'"); + $phpgw->db->query("delete from addressbook where ab_owner='$lid'"); + $phpgw->db->query("delete from accounts where account_lid='$lid'"); + + $phpgw->common->preferences_delete("all",$lid); + + $phpgw->db->unlock(); + + $sep = $phpgw->common->filesystem_separator(); + + $basedir = $phpgw_info["server"]["files_dir"] . $sep . "users" . $sep; + + if (! @rmdir($basedir . $lid)) { + $cd = 34; + } else { + $cd = 29; + } + return $cd; + }