Skip to content

Commit 461f482

Browse files
committed
delete user: ref #335
1 parent 51474fe commit 461f482

File tree

2 files changed

+45
-24
lines changed

2 files changed

+45
-24
lines changed

cli/cyberPanel.py

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@
2424
from plogical.sslUtilities import sslUtilities
2525
from plogical.processUtilities import ProcessUtilities
2626
from plogical.backupSchedule import backupSchedule
27-
from django.http import HttpRequest
2827

2928
# All that we see or seem is but a dream within a dream.
3029

@@ -1379,6 +1378,24 @@ def main():
13791378

13801379
print(response.content.decode())
13811380

1381+
elif args.function == "deleteUser":
1382+
1383+
completeCommandExample = 'cyberpanel deleteUser --userName cyberpanel'
1384+
1385+
if not args.userName:
1386+
print("\n\nPlease enter User Name. For example:\n\n" + completeCommandExample + "\n\n")
1387+
return
1388+
1389+
from userManagment.views import submitUserDeletion
1390+
1391+
data = {}
1392+
data['accountUsername'] = args.userName
1393+
data['userID'] = 1
1394+
1395+
response = submitUserDeletion(data)
1396+
1397+
print(response.content.decode())
1398+
13821399

13831400

13841401
if __name__ == "__main__":

userManagment/views.py

Lines changed: 27 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,6 @@ def modifyUsers(request):
255255
except KeyError:
256256
return redirect(loadLoginPage)
257257

258-
259258
def fetchUserDetails(request):
260259
try:
261260
val = request.session['userID']
@@ -316,7 +315,6 @@ def fetchUserDetails(request):
316315
json_data = json.dumps(data_ret)
317316
return HttpResponse(json_data)
318317

319-
320318
def saveModifications(request):
321319
try:
322320
val = request.session['userID']
@@ -386,7 +384,6 @@ def saveModifications(request):
386384
json_data = json.dumps(data_ret)
387385
return HttpResponse(json_data)
388386

389-
390387
def deleteUser(request):
391388
try:
392389
userID = request.session['userID']
@@ -405,38 +402,45 @@ def deleteUser(request):
405402
except KeyError:
406403
return redirect(loadLoginPage)
407404

408-
409405
def submitUserDeletion(request):
406+
410407
try:
411-
userID = request.session['userID']
408+
try:
409+
userID = request.session['userID']
410+
except:
411+
userID = request['userID']
412412
try:
413413

414-
if request.method == 'POST':
414+
try:
415415
data = json.loads(request.body)
416-
accountUsername = data['accountUsername']
416+
except:
417+
data = request
417418

418-
currentACL = ACLManager.loadedACL(userID)
419+
accountUsername = data['accountUsername']
419420

420-
currentUser = Administrator.objects.get(pk=userID)
421-
userInQuestion = Administrator.objects.get(userName=accountUsername)
421+
currentACL = ACLManager.loadedACL(userID)
422422

423-
if ACLManager.checkUserOwnerShip(currentACL, currentUser, userInQuestion):
424-
user = Administrator.objects.get(userName=accountUsername)
423+
currentUser = Administrator.objects.get(pk=userID)
424+
userInQuestion = Administrator.objects.get(userName=accountUsername)
425425

426-
childUsers = Administrator.objects.filter(owner=user.pk)
426+
if ACLManager.checkUserOwnerShip(currentACL, currentUser, userInQuestion):
427+
user = Administrator.objects.get(userName=accountUsername)
427428

428-
for items in childUsers:
429-
items.delete()
429+
childUsers = Administrator.objects.filter(owner=user.pk)
430430

431-
user.delete()
431+
for items in childUsers:
432+
items.delete()
433+
434+
user.delete()
435+
436+
data_ret = {'status': 1, 'deleteStatus': 1, 'error_message': 'None'}
437+
json_data = json.dumps(data_ret)
438+
return HttpResponse(json_data)
439+
else:
440+
data_ret = {'status': 0, 'deleteStatus': 0, 'error_message': 'Not enough privileges.'}
441+
json_data = json.dumps(data_ret)
442+
return HttpResponse(json_data)
432443

433-
data_ret = {'status': 1, 'deleteStatus': 1, 'error_message': 'None'}
434-
json_data = json.dumps(data_ret)
435-
return HttpResponse(json_data)
436-
else:
437-
data_ret = {'status': 0, 'deleteStatus': 0, 'error_message': 'Not enough privileges.'}
438-
json_data = json.dumps(data_ret)
439-
return HttpResponse(json_data)
440444

441445
except BaseException as msg:
442446
data_ret = {'status': 0, 'deleteStatus': 0, 'error_message': str(msg)}

0 commit comments

Comments
 (0)