openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit 00ac9f8ab1db2011e880b66a9ac05ff2ca762442
parent e9f476571aa927e7627c19d0b5cc71aec672c92c
Author: dankert <devnull@localhost>
Date:   Thu,  2 Oct 2003 22:56:17 +0200

Benutzer entfernen

Diffstat:
user.php | 86++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------
1 file changed, 70 insertions(+), 16 deletions(-)

diff --git a/user.php b/user.php @@ -20,7 +20,10 @@ // Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. // --------------------------------------------------------------------------- // $Log$ -// Revision 1.1 2003-09-29 18:18:21 dankert +// Revision 1.2 2003-10-02 20:56:17 dankert +// Benutzer entfernen +// +// Revision 1.1 2003/09/29 18:18:21 dankert // erste Version // // --------------------------------------------------------------------------- @@ -37,6 +40,7 @@ session_start(); include( "DB.php" ); +include( "$conf_incldir/db.inc.$conf_php" ); include( "$conf_incldir/language.inc.$conf_php" ); include( "$conf_incldir/theme.inc.$conf_php" ); include( "$conf_incldir/request.inc.$conf_php" ); @@ -49,7 +53,7 @@ if ( $SESS['user']['is_admin'] != '1' ) die('access denied'); -$db = new DB( $conf['database_'.$SESS['dbid']] ); +$db = db_connection(); $var = array(); @@ -61,21 +65,70 @@ if ( $SESS['useraction'] == 'save' ) { if ( $REQ['is_admin']!=1 ) $REQ['is_admin'] = 0; + + if ( $REQ['delete'] == '1' ) + { + // Alle Archivdaten in Dateien mit diesem Benutzer entfernen + $sql = new Sql( 'UPDATE {t_file} '. + 'SET create_userid=null '. + 'WHERE create_userid={userid}' ); + $sql->setInt ('userid',$SESS['userid'] ); + $res = $db->query($sql->query); + + $sql = new Sql( 'UPDATE {t_file} '. + 'SET lastchange_userid=null '. + 'WHERE lastchange_userid={userid}' ); + $sql->setInt ('userid',$SESS['userid'] ); + $res = $db->query($sql->query); + + // Alle Berechtigungen dieses Benutzers löschen + $sql = new Sql( 'DELETE FROM {t_acl} '. + 'WHERE userid={userid}' ); + $sql->setInt ('userid',$SESS['userid'] ); + $res = $db->query($sql->query); + + // Alle Gruppenzugehörigkeiten dieses Benutzers löschen + $sql = new Sql( 'DELETE FROM {t_usergroup} '. + 'WHERE userid={userid}' ); + $sql->setInt('userid',$SESS['userid'] ); + $res = $db->query($sql->query); + + // Benutzer löschen + $sql = new Sql( 'DELETE FROM {t_user} '. + 'WHERE id={userid}' ); + $sql->setInt ('userid',$SESS['userid'] ); + $res = $db->query($sql->query); + + unset( $SESS['userid'] ); + $SESS['useraction'] = 'list'; - $t_user = $conf_db_prefix.'user'; - $sql = "UPDATE $t_user ". - "SET ". - "name ='".$REQ['name']."', ". - "fullname ='".$REQ['fullname']."', ". - "is_admin = ".$REQ['is_admin'].", ". - "ldap ='".$REQ['ldap']."', ". - "mail ='".$REQ['mail']."', ". - "lang ='".$REQ['lang']."', ". - "style ='".$REQ['style']."' ". - "WHERE id=".$SESS['userid']; - $res = $db->query($sql); + $var['tree_refresh'] = true; + } + else + { + // Benutzer speichern + $sql = new Sql( 'UPDATE {t_user} '. + 'SET name={name}, '. + 'fullname = {fullname}, '. + 'is_admin = {is_admin}, '. + 'ldap = {ldap}, '. + 'mail = {mail}, '. + 'lang = {lang}, '. + 'style = {style} '. + 'WHERE id= {userid}' ); + $sql->setString('name' ,$REQ['name'] ); + $sql->setString('fullname',$REQ['fullname']); + $sql->setInt ('is_admin',$REQ['is_admin']); + $sql->setString('ldap' ,$REQ['ldap'] ); + $sql->setString('mail' ,$REQ['mail'] ); + $sql->setString('lang' ,$REQ['lang'] ); + $sql->setString('style' ,$REQ['style'] ); + $sql->setInt ('userid' ,$SESS['userid'] ); + $res = $db->query($sql->query); + + $SESS['useraction'] = 'edit'; + } - $SESS['useraction'] = 'show'; } if ( $SESS['useraction'] == 'add' ) @@ -219,10 +272,11 @@ if ( $SESS['useraction'] == 'groups' ) $var['groups'][$row['id']] = $row['name']; } + // Mitgliedschaften ermitteln // $var['memberships'] = array(); - $t_usergroup = $conf_db_prefix.'usergroup'; + $sql = "SELECT * FROM $t_usergroup ". "WHERE userid=".$SESS['userid']; $res = $db->query($sql);