add delete_user and add to usermanagment
This commit is contained in:
32
timeTrack.py
32
timeTrack.py
@@ -3,7 +3,7 @@
|
||||
#
|
||||
# timeTrack.py
|
||||
# by 4nima
|
||||
# v.2.1.2
|
||||
# v.2.1.5
|
||||
#
|
||||
#########################
|
||||
# simple time tracking with database
|
||||
@@ -287,8 +287,6 @@ class TimeTrack:
|
||||
|
||||
sql = "INSERT INTO users ( name ) values ( ? )"
|
||||
|
||||
|
||||
|
||||
try:
|
||||
with sqlite3.connect(self.DATABASE, detect_types=sqlite3.PARSE_DECLTYPES | sqlite3.PARSE_COLNAMES) as con:
|
||||
con.execute(sql, [username])
|
||||
@@ -347,6 +345,23 @@ class TimeTrack:
|
||||
else:
|
||||
self.USERNAME = data[0][1]
|
||||
|
||||
def delete_user(self, UID=False):
|
||||
if not UID:
|
||||
logging.error('no userid passed for deletion')
|
||||
else:
|
||||
logging.debug('Userid {} will be delete'.format(UID))
|
||||
sql = "DELETE FROM users WHERE id = ?"
|
||||
|
||||
try:
|
||||
with sqlite3.connect(self.DATABASE, detect_types=sqlite3.PARSE_DECLTYPES | sqlite3.PARSE_COLNAMES) as con:
|
||||
con.execute(sql, [UID])
|
||||
except sqlite3.Error as err:
|
||||
logging.error('User could not be delete from database')
|
||||
logging.debug(sql)
|
||||
logging.error('SQLError: {}'.format(err))
|
||||
else:
|
||||
logging.info('User was delete successfully')
|
||||
|
||||
## Time handling
|
||||
#===============
|
||||
### Creates an active event if none exists for the user
|
||||
@@ -580,6 +595,16 @@ class TimeTrack:
|
||||
self.USERID = users[userid - 1][0]
|
||||
self.set_user()
|
||||
elif userinput == 3:
|
||||
users = self.get_users()
|
||||
printtext = ['Welcher User soll gelöscht werden?:']
|
||||
count = 1
|
||||
for user in users:
|
||||
printtext.append('[{}] {}'.format(count, user[1]))
|
||||
count += 1
|
||||
|
||||
printtext.append('[0] abbrechen')
|
||||
userid = self.userchoise(printtext, count)
|
||||
self.delete_user(users[userid - 1][0])
|
||||
pass
|
||||
|
||||
## Reports
|
||||
@@ -673,4 +698,3 @@ class TimeTrack:
|
||||
if __name__ == "__main__":
|
||||
test = TimeTrack()
|
||||
test.start_interactive_mode()
|
||||
test.DBCON.close()
|
||||
Reference in New Issue
Block a user