Rolling back file_space addition

This commit is contained in:
Miles Lott 2001-07-27 10:04:54 +00:00
parent 42b795992b
commit 1fe026c4c0
3 changed files with 71 additions and 74 deletions

View File

@ -24,10 +24,11 @@
/* $Id$ */ /* $Id$ */
// Dont know where to put this (seek3r) /* Dont know where to put this (seek3r)
// This is where it belongs (jengo) This is where it belongs (jengo)
// This is where it ended up (milosch) This is where it ended up (milosch)
/* Since LDAP will return system accounts, there are a few we don't want to login. */ Since LDAP will return system accounts, there are a few we don't want to login.
*/
$phpgw_info['server']['global_denied_users'] = array( $phpgw_info['server']['global_denied_users'] = array(
'root' => True, 'bin' => True, 'daemon' => True, 'root' => True, 'bin' => True, 'daemon' => True,
'adm' => True, 'lp' => True, 'sync' => True, 'adm' => True, 'lp' => True, 'sync' => True,
@ -62,7 +63,7 @@
{ {
global $phpgw, $phpgw_info; global $phpgw, $phpgw_info;
// get a ldap connection handle /* get an ldap connection handle */
$ds = $phpgw->common->ldapConnect(); $ds = $phpgw->common->ldapConnect();
// search the dn for the given uid // search the dn for the given uid
@ -89,7 +90,6 @@
$this->data['lastpasswd_change'] = $this->db->f('account_lastpwd_change'); $this->data['lastpasswd_change'] = $this->db->f('account_lastpwd_change');
$this->data['status'] = $this->db->f('account_status'); $this->data['status'] = $this->db->f('account_status');
$this->data['expires'] = -1; $this->data['expires'] = -1;
$this->data['file_space'] = $this->db->f('account_file_space');
return $this->data; return $this->data;
} }
@ -100,7 +100,7 @@
$ds = $phpgw->common->ldapConnect(); $ds = $phpgw->common->ldapConnect();
// search the dn for the given uid /* search the dn for the given uid */
$sri = ldap_search($ds, $phpgw_info['server']['ldap_context'], 'uidnumber='.$this->account_id); $sri = ldap_search($ds, $phpgw_info['server']['ldap_context'], 'uidnumber='.$this->account_id);
$allValues = ldap_get_entries($ds, $sri); $allValues = ldap_get_entries($ds, $sri);
@ -117,19 +117,19 @@
while (list($key,$val) = each($entry)) while (list($key,$val) = each($entry))
{ {
$tmpentry = ''; $tmpentry = '';
$tmpentry[$key] = trim($val); // must trim! $tmpentry[$key] = trim($val); /* must trim! */
//echo '<br>'.$key.' '.$val; /* echo '<br>'.$key.' '.$val; */
if ($tmpentry[$key] && $key) if ($tmpentry[$key] && $key)
{ {
if (!$allValues[0][$key][0]) if (!$allValues[0][$key][0])
{ {
// attribute was not in LDAP, add it /* attribute was not in LDAP, add it */
ldap_mod_add($ds, $allValues[0]['dn'], $tmpentry); ldap_mod_add($ds, $allValues[0]['dn'], $tmpentry);
} }
else else
{ {
// attribute was in LDAP, modify it /* attribute was in LDAP, modify it */
//echo $val.' '; /* echo $val.' '; */
ldap_modify($ds, $allValues[0]['dn'], $tmpentry); ldap_modify($ds, $allValues[0]['dn'], $tmpentry);
} }
} }
@ -137,7 +137,7 @@
$this->db->query("update phpgw_accounts set account_firstname='" . $this->data['firstname'] $this->db->query("update phpgw_accounts set account_firstname='" . $this->data['firstname']
. "', account_lastname='" . $this->data['lastname'] . "', account_status='" . "', account_lastname='" . $this->data['lastname'] . "', account_status='"
. $this->data['status'] . "', account_file_space='" . $this->data['file_space'] . $this->data['status']
. "' where account_id='" . $this->account_id . "'",__LINE__,__FILE__); . "' where account_id='" . $this->account_id . "'",__LINE__,__FILE__);
} }
@ -156,7 +156,7 @@
$del = ldap_delete($ds, $allValues[0]['dn']); $del = ldap_delete($ds, $allValues[0]['dn']);
} }
// Do this last since we are depending upon this record to get the account_lid above /* Do this last since we are depending upon this record to get the account_lid above */
$tables_array = Array('phpgw_accounts'); $tables_array = Array('phpgw_accounts');
$this->db->lock($tables_array); $this->db->lock($tables_array);
$this->db->query('DELETE FROM phpgw_accounts WHERE account_id='.$account_id); $this->db->query('DELETE FROM phpgw_accounts WHERE account_id='.$account_id);
@ -219,8 +219,7 @@
'account_type' => $this->db->f('account_type'), 'account_type' => $this->db->f('account_type'),
'account_firstname' => $allValues[0]['givenname'][0], 'account_firstname' => $allValues[0]['givenname'][0],
'account_lastname' => $allValues[0]['sn'][0], 'account_lastname' => $allValues[0]['sn'][0],
'account_status' => $this->db->f('account_status'), 'account_status' => $this->db->f('account_status')
'account_file_space' => $this->db->f('account_file_space'),
); );
} }
else else
@ -231,8 +230,7 @@
'account_type' => $this->db->f('account_type'), 'account_type' => $this->db->f('account_type'),
'account_firstname' => $this->db->f('account_firstname'), 'account_firstname' => $this->db->f('account_firstname'),
'account_lastname' => $this->db->f('account_lastname'), 'account_lastname' => $this->db->f('account_lastname'),
'account_status' => $this->db->f('account_status'), 'account_status' => $this->db->f('account_status')
'account_file_space' => $this->db->f('account_file_space'),
); );
} }
} }
@ -322,7 +320,7 @@
{ {
$in += 2; $in += 2;
} }
// echo "<p>class_accounts_ldap->exists('$account') == $in</p>"; /* echo "<p>class_accounts_ldap->exists('$account') == $in</p>"; */
return $in; return $in;
} }
@ -340,7 +338,7 @@
$nextid = $phpgw->common->last_id('accounts_ldap',$min,$max); $nextid = $phpgw->common->last_id('accounts_ldap',$min,$max);
// Loop until we find a free id /* Loop until we find a free id */
$free = 0; $free = 0;
while (!$free) while (!$free)
{ {
@ -362,13 +360,13 @@
return False; return False;
} }
$account_id = $nextid; $account_id = $nextid;
//echo $account_id;exit; /* echo $account_id;exit; */
} }
$this->db->query("INSERT INTO phpgw_accounts (account_id, account_lid, account_type, account_pwd, " $this->db->query("INSERT INTO phpgw_accounts (account_id, account_lid, account_type, account_pwd, "
. "account_firstname, account_lastname, account_status, account_expires, account_file_space) VALUES ('" . $account_id . "','" . $account_info['account_lid'] . "account_firstname, account_lastname, account_status, account_expires) VALUES ('" . $account_id . "','" . $account_info['account_lid']
. "','" . $account_info['account_type'] . "','" . md5($account_info['account_passwd']) . "', '" . $account_info['account_firstname'] . "','" . $account_info['account_type'] . "','" . md5($account_info['account_passwd']) . "', '" . $account_info['account_firstname']
. "','" . $account_info['account_lastname'] . "','" . $account_info['account_status'] . "'," . $account_info['account_expires'] . ",'" . $account_info['account_file_space'] . "')",__LINE__,__FILE__); . "','" . $account_info['account_lastname'] . "','" . $account_info['account_status'] . "'," . $account_info['account_expires'] . ")",__LINE__,__FILE__);
$sri = ldap_search($ds, $phpgw_info['server']['ldap_context'],'uid=' . $account_info['account_lid']); $sri = ldap_search($ds, $phpgw_info['server']['ldap_context'],'uid=' . $account_info['account_lid']);
@ -404,35 +402,36 @@
if ($allValues[0]['dn']) if ($allValues[0]['dn'])
{ {
// This should keep the password from being overwritten here ? /* This should keep the password from being overwritten here ? */
unset($entry['userpassword']); unset($entry['userpassword']);
while (list($key,$val) = each($entry)) while (list($key,$val) = each($entry))
{ {
$tmpentry = ''; $tmpentry = '';
$tmpentry[$key] = trim($val); // must trim! $tmpentry[$key] = trim($val); /* must trim! */
//echo '<br>'.$key.' '.$val; /* echo '<br>'.$key.' '.$val; */
if ($tmpentry[$key]) if ($tmpentry[$key])
{ {
if (!$allValues[0][$key][0]) if (!$allValues[0][$key][0])
{ {
// attribute was not in LDAP, add it /* attribute was not in LDAP, add it */
ldap_mod_add($ds, $allValues[0]['dn'], $tmpentry); ldap_mod_add($ds, $allValues[0]['dn'], $tmpentry);
} }
else else
{ {
// attribute was in LDAP, modify it /* attribute was in LDAP, modify it */
ldap_modify($ds, $allValues[0]['dn'], $tmpentry); ldap_modify($ds, $allValues[0]['dn'], $tmpentry);
} }
} }
} }
/*
// if ($account_type == 'g') if ($account_type == 'g')
// { {
// $tmpentry['objectclass'][0] = 'top'; $tmpentry['objectclass'][0] = 'top';
// $tmpentry['objectclass'][1] = 'posixGroup'; $tmpentry['objectclass'][1] = 'posixGroup';
// } }
// else else
*/
if ($account_info['account_type'] == 'u') if ($account_info['account_type'] == 'u')
{ {
$tmpentry['objectclass'][0] = 'top'; $tmpentry['objectclass'][0] = 'top';
@ -448,12 +447,14 @@
} }
else else
{ {
// if ($account_type == 'g') /*
// { if ($account_type == 'g')
// $entry['objectclass'][0] = 'top'; {
// $entry['objectclass'][1] = 'posixGroup'; $entry['objectclass'][0] = 'top';
// } $entry['objectclass'][1] = 'posixGroup';
// else }
else
*/
if ($account_info['account_type'] == 'u') if ($account_info['account_type'] == 'u')
{ {
$dn = 'uid=' . $account_info['account_lid'] . ',' . $phpgw_info['server']['ldap_context']; $dn = 'uid=' . $account_info['account_lid'] . ',' . $phpgw_info['server']['ldap_context'];
@ -467,9 +468,9 @@
ldap_add($ds, $dn, $entry); ldap_add($ds, $dn, $entry);
} }
//ldap_add($ds, $dn, $entry); /* ldap_add($ds, $dn, $entry); */
} }
//print ldap_error($ds); /* print ldap_error($ds); */
} }
function auto_add($account_name, $passwd, $default_prefs=False, $default_acls= False) function auto_add($account_name, $passwd, $default_prefs=False, $default_acls= False)
@ -481,7 +482,7 @@
if ($defaultprefs =='') if ($defaultprefs =='')
{ {
$defaultprefs = 'a:5:{s:6:"common";a:10:{s:9:"maxmatchs";s:2:"15";s:12:"template_set";s:8:"verdilak";s:5:"theme";s:6:"purple";s:13:"navbar_format";s:5:"icons";s:9:"tz_offset";N;s:10:"dateformat";s:5:"m/d/Y";s:10:"timeformat";s:2:"12";s:4:"lang";s:2:"en";s:11:"default_app";N;s:8:"currency";s:1:"$";}s:11:"addressbook";a:1:{s:0:"";s:4:"True";}:s:8:"calendar";a:4:{s:13:"workdaystarts";s:1:"7";s:11:"workdayends";s:2:"15";s:13:"weekdaystarts";s:6:"Monday";s:15:"defaultcalendar";s:9:"month.php";}}'; $defaultprefs = 'a:5:{s:6:"common";a:10:{s:9:"maxmatchs";s:2:"15";s:12:"template_set";s:8:"verdilak";s:5:"theme";s:6:"purple";s:13:"navbar_format";s:5:"icons";s:9:"tz_offset";N;s:10:"dateformat";s:5:"m/d/Y";s:10:"timeformat";s:2:"12";s:4:"lang";s:2:"en";s:11:"default_app";N;s:8:"currency";s:1:"$";}s:11:"addressbook";a:1:{s:0:"";s:4:"True";}:s:8:"calendar";a:4:{s:13:"workdaystarts";s:1:"7";s:11:"workdayends";s:2:"15";s:13:"weekdaystarts";s:6:"Monday";s:15:"defaultcalendar";s:9:"month.php";}}';
// $defaultprefs = 'a:5:{s:6:"common";a:1:{s:0:"";s:2:"en";}s:11:"addressbook";a:1:{s:0:"";s:4:"True";}s:8:"calendar";a:1:{s:0:"";s:13:"workdaystarts";}i:15;a:1:{s:0:"";s:11:"workdayends";}s:6:"Monday";a:1:{s:0:"";s:13:"weekdaystarts";}}'; /* $defaultprefs = 'a:5:{s:6:"common";a:1:{s:0:"";s:2:"en";}s:11:"addressbook";a:1:{s:0:"";s:4:"True";}s:8:"calendar";a:1:{s:0:"";s:13:"workdaystarts";}i:15;a:1:{s:0:"";s:11:"workdayends";}s:6:"Monday";a:1:{s:0:"";s:13:"weekdaystarts";}}'; */
} }
$sql = "insert into phpgw_accounts"; $sql = "insert into phpgw_accounts";
$sql .= "(account_id, account_lid, account_pwd, account_firstname, account_lastname, account_lastpwd_change, account_status, account_type, account_file_space)"; $sql .= "(account_id, account_lid, account_pwd, account_firstname, account_lastname, account_lastpwd_change, account_status, account_type, account_file_space)";

View File

@ -25,7 +25,6 @@
class accounts extends accounts_ class accounts extends accounts_
{ {
var $memberships = Array(); var $memberships = Array();
var $members = Array(); var $members = Array();

View File

@ -49,14 +49,12 @@
$this->data['account_lid'] = $this->db->f('account_lid'); $this->data['account_lid'] = $this->db->f('account_lid');
$this->data['firstname'] = $this->db->f('account_firstname'); $this->data['firstname'] = $this->db->f('account_firstname');
$this->data['lastname'] = $this->db->f('account_lastname'); $this->data['lastname'] = $this->db->f('account_lastname');
$this->data['fullname'] = $this->db->f('account_firstname') . ' ' $this->data['fullname'] = $this->db->f('account_firstname') . ' ' . $this->db->f('account_lastname');
. $this->db->f('account_lastname');
$this->data['lastlogin'] = $this->db->f('account_lastlogin'); $this->data['lastlogin'] = $this->db->f('account_lastlogin');
$this->data['lastloginfrom'] = $this->db->f('account_lastloginfrom'); $this->data['lastloginfrom'] = $this->db->f('account_lastloginfrom');
$this->data['lastpasswd_change'] = $this->db->f('account_lastpwd_change'); $this->data['lastpasswd_change'] = $this->db->f('account_lastpwd_change');
$this->data['status'] = $this->db->f('account_status'); $this->data['status'] = $this->db->f('account_status');
$this->data['expires'] = $this->db->f('account_expires'); $this->data['expires'] = $this->db->f('account_expires');
$this->data['file_space'] = $this->db->f('account_file_space');
return $this->data; return $this->data;
} }
@ -65,7 +63,7 @@
$this->db->query("UPDATE phpgw_accounts SET account_firstname='" . $this->data['firstname'] $this->db->query("UPDATE phpgw_accounts SET account_firstname='" . $this->data['firstname']
. "', account_lastname='" . $this->data['lastname'] . "', account_status='" . "', account_lastname='" . $this->data['lastname'] . "', account_status='"
. $this->data['status'] . "', account_expires='" . $this->data['expires'] . $this->data['status'] . "', account_expires='" . $this->data['expires']
. "', account_file_space='" . $this->data['file_space'] . "' WHERE account_id='" . "' WHERE account_id='"
. $this->account_id . "'",__LINE__,__FILE__); . $this->account_id . "'",__LINE__,__FILE__);
} }
@ -75,7 +73,7 @@
$account_id = get_account_id($accountid); $account_id = get_account_id($accountid);
// Do this last since we are depending upon this record to get the account_lid above /* Do this last since we are depending upon this record to get the account_lid above */
$tables_array = Array('phpgw_accounts'); $tables_array = Array('phpgw_accounts');
$this->db->lock($tables_array); $this->db->lock($tables_array);
$this->db->query('DELETE FROM phpgw_accounts WHERE account_id='.$account_id); $this->db->query('DELETE FROM phpgw_accounts WHERE account_id='.$account_id);
@ -109,7 +107,7 @@
$whereclause = "WHERE account_type = 'g'"; $whereclause = "WHERE account_type = 'g'";
break; break;
default: default:
$whereclause = ""; $whereclause = '';
} }
if ($query) if ($query)
@ -136,7 +134,7 @@
{ {
$this->db->limit_query($sql,$start,__LINE__,__FILE__,$offset); $this->db->limit_query($sql,$start,__LINE__,__FILE__,$offset);
} }
elseif ($start == 0 || $start && !$offset) elseif ($start)
{ {
$this->db->limit_query($sql,$start,__LINE__,__FILE__); $this->db->limit_query($sql,$start,__LINE__,__FILE__);
} }
@ -145,7 +143,8 @@
$this->db->query($sql,__LINE__,__FILE__); $this->db->query($sql,__LINE__,__FILE__);
} }
while ($this->db->next_record()) { while ($this->db->next_record())
{
$accounts[] = Array( $accounts[] = Array(
'account_id' => $this->db->f('account_id'), 'account_id' => $this->db->f('account_id'),
'account_lid' => $this->db->f('account_lid'), 'account_lid' => $this->db->f('account_lid'),
@ -153,8 +152,7 @@
'account_firstname' => $this->db->f('account_firstname'), 'account_firstname' => $this->db->f('account_firstname'),
'account_lastname' => $this->db->f('account_lastname'), 'account_lastname' => $this->db->f('account_lastname'),
'account_status' => $this->db->f('account_status'), 'account_status' => $this->db->f('account_status'),
'account_expires' => $this->db->f('account_expires'), 'account_expires' => $this->db->f('account_expires')
'account_file_space' => $this->db->f('account_file_space')
); );
} }
return $accounts; return $accounts;
@ -226,19 +224,19 @@
function create($account_info) function create($account_info)
{ {
$this->db->query("insert into phpgw_accounts (account_lid, account_type, account_pwd, " $this->db->query("insert into phpgw_accounts (account_lid, account_type, account_pwd, "
. "account_firstname, account_lastname, account_status, account_expires, account_file_space) values ('" . $account_info['account_lid'] . "account_firstname, account_lastname, account_status, account_expires) values ('" . $account_info['account_lid']
. "','" . $account_info['account_type'] . "','" . md5($account_info['account_passwd']) . "', '" . $account_info['account_firstname'] . "','" . $account_info['account_type'] . "','" . md5($account_info['account_passwd']) . "', '" . $account_info['account_firstname']
. "','" . $account_info['account_lastname'] . "','" . $account_info['account_status'] . "','" . $account_info['account_expires'] . "','" . $account_info['account_file_space'] . "','" . $account_info['account_lastname'] . "','" . $account_info['account_status'] . "','" . $account_info['account_expires']
. "')",__LINE__,__FILE__); . "')",__LINE__,__FILE__);
} }
function auto_add($accountname, $passwd, $default_prefs = False, $default_acls = False, $expiredate = 0, $account_status = 'A') function auto_add($accountname, $passwd, $default_prefs = False, $default_acls = False, $expiredate = 0, $account_status = 'A')
{ {
global $phpgw, $phpgw_info; global $phpgw;
if (!$expiredate) if (!$expiredate)
{ {
// expire in 30 days by default /* expire in 30 days by default */
$expiredate = time() + ( ( 60 * 60 ) * (30 * 24) ); $expiredate = time() + ( ( 60 * 60 ) * (30 * 24) );
} }
@ -249,8 +247,7 @@
'account_firstname' => '', 'account_firstname' => '',
'account_lastname' => '', 'account_lastname' => '',
'account_status' => $account_status, 'account_status' => $account_status,
'account_expires' => mktime(2,0,0,date('n',$expiredate), intval(date('d',$expiredate)), date('Y',$expiredate)), 'account_expires' => mktime(2,0,0,date('n',$expiredate), intval(date('d',$expiredate)), date('Y',$expiredate))
'account_file_space' => $phpgw_info['server']['vfs_default_account_size_number'] . "-" . $phpgw_info['server']['vfs_default_account_size_type']
); );
$this->create($acct_info); $this->create($acct_info);
$accountid = $this->name2id($accountname); $accountid = $this->name2id($accountname);
@ -259,7 +256,7 @@
if ($default_prefs == False) if ($default_prefs == False)
{ {
$default_prefs = 'a:5:{s:6:"common";a:10:{s:9:"maxmatchs";s:2:"15";s:12:"template_set";s:8:"verdilak";s:5:"theme";s:6:"purple";s:13:"navbar_format";s:5:"icons";s:9:"tz_offset";N;s:10:"dateformat";s:5:"m/d/Y";s:10:"timeformat";s:2:"12";s:4:"lang";s:2:"en";s:11:"default_app";N;s:8:"currency";s:1:"$";}s:11:"addressbook";a:1:{s:0:"";s:4:"True";}:s:8:"calendar";a:4:{s:13:"workdaystarts";s:1:"7";s:11:"workdayends";s:2:"15";s:13:"weekdaystarts";s:6:"Monday";s:15:"defaultcalendar";s:9:"month.php";}}'; $default_prefs = 'a:5:{s:6:"common";a:10:{s:9:"maxmatchs";s:2:"15";s:12:"template_set";s:8:"verdilak";s:5:"theme";s:6:"purple";s:13:"navbar_format";s:5:"icons";s:9:"tz_offset";N;s:10:"dateformat";s:5:"m/d/Y";s:10:"timeformat";s:2:"12";s:4:"lang";s:2:"en";s:11:"default_app";N;s:8:"currency";s:1:"$";}s:11:"addressbook";a:1:{s:0:"";s:4:"True";}:s:8:"calendar";a:4:{s:13:"workdaystarts";s:1:"7";s:11:"workdayends";s:2:"15";s:13:"weekdaystarts";s:6:"Monday";s:15:"defaultcalendar";s:9:"month.php";}}';
// $defaultprefs = 'a:5:{s:6:"common";a:1:{s:0:"";s:2:"en";}s:11:"addressbook";a:1:{s:0:"";s:4:"True";}s:8:"calendar";a:1:{s:0:"";s:13:"workdaystarts";}i:15;a:1:{s:0:"";s:11:"workdayends";}s:6:"Monday";a:1:{s:0:"";s:13:"weekdaystarts";}}'; /* $defaultprefs = 'a:5:{s:6:"common";a:1:{s:0:"";s:2:"en";}s:11:"addressbook";a:1:{s:0:"";s:4:"True";}s:8:"calendar";a:1:{s:0:"";s:13:"workdaystarts";}i:15;a:1:{s:0:"";s:11:"workdayends";}s:6:"Monday";a:1:{s:0:"";s:13:"weekdaystarts";}}'; */
$this->db->query("insert into phpgw_preferences (preference_owner, preference_value) values ('".$accountid."', '$default_prefs')"); $this->db->query("insert into phpgw_preferences (preference_owner, preference_value) values ('".$accountid."', '$default_prefs')");
} }