Files
CyberPanel/databases/views.py

119 lines
3.2 KiB
Python
Raw Normal View History

2017-10-24 19:16:36 +05:00
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
2018-10-08 22:12:05 +05:00
from django.shortcuts import redirect
2017-10-24 19:16:36 +05:00
from loginSystem.views import loadLoginPage
2018-10-08 22:12:05 +05:00
from databaseManager import DatabaseManager
from pluginManager import pluginManager
2017-10-24 19:16:36 +05:00
import json
# Create your views here.
def loadDatabaseHome(request):
try:
2018-10-08 22:12:05 +05:00
userID = request.session['userID']
dm = DatabaseManager()
return dm.loadDatabaseHome(request, userID)
2017-10-24 19:16:36 +05:00
except KeyError:
return redirect(loadLoginPage)
def createDatabase(request):
try:
2018-10-08 22:12:05 +05:00
result = pluginManager.preCreateDatabase(request)
if result != 200:
return result
2017-10-24 19:16:36 +05:00
2018-10-08 22:12:05 +05:00
userID = request.session['userID']
dm = DatabaseManager()
coreResult = dm.createDatabase(request, userID)
2017-10-24 19:16:36 +05:00
2018-10-08 22:12:05 +05:00
result = pluginManager.postCreateDatabase(request, coreResult)
if result != 200:
return result
2017-10-24 19:16:36 +05:00
2018-10-08 22:12:05 +05:00
return coreResult
2017-10-24 19:16:36 +05:00
except KeyError:
return redirect(loadLoginPage)
def submitDBCreation(request):
try:
2018-08-18 00:39:10 +05:00
userID = request.session['userID']
2017-10-24 19:16:36 +05:00
2018-10-08 22:12:05 +05:00
result = pluginManager.preSubmitDBCreation(request)
if result != 200:
return result
2018-08-18 00:39:10 +05:00
2018-10-08 22:12:05 +05:00
dm = DatabaseManager()
2018-10-12 18:18:10 +05:00
coreResult = dm.submitDBCreation(userID, json.loads(request.body))
2018-06-30 15:29:56 +05:00
2018-10-08 22:12:05 +05:00
result = pluginManager.postSubmitDBCreation(request, coreResult)
if result != 200:
return result
2017-10-24 19:16:36 +05:00
2018-10-08 22:12:05 +05:00
return coreResult
2017-10-24 19:16:36 +05:00
2018-10-08 22:12:05 +05:00
except KeyError:
return redirect(loadLoginPage)
2017-10-24 19:16:36 +05:00
def deleteDatabase(request):
try:
2018-08-18 00:39:10 +05:00
userID = request.session['userID']
2018-10-08 22:12:05 +05:00
dm = DatabaseManager()
return dm.deleteDatabase(request, userID)
2017-10-24 19:16:36 +05:00
except KeyError:
return redirect(loadLoginPage)
def fetchDatabases(request):
try:
2018-08-18 00:39:10 +05:00
userID = request.session['userID']
2018-10-08 22:12:05 +05:00
dm = DatabaseManager()
return dm.fetchDatabases(userID, json.loads(request.body))
2017-10-24 19:16:36 +05:00
except KeyError:
2018-10-08 22:12:05 +05:00
return redirect(loadLoginPage)
2017-10-24 19:16:36 +05:00
def submitDatabaseDeletion(request):
try:
2018-08-18 00:39:10 +05:00
userID = request.session['userID']
2018-10-08 22:12:05 +05:00
result = pluginManager.preSubmitDatabaseDeletion(request)
if result != 200:
return result
2017-10-24 19:16:36 +05:00
2018-10-08 22:12:05 +05:00
dm = DatabaseManager()
coreResult = dm.submitDatabaseDeletion(userID, json.loads(request.body))
2017-10-24 19:16:36 +05:00
2018-10-08 22:12:05 +05:00
result = pluginManager.postSubmitDatabaseDeletion(request, coreResult)
if result != 200:
return result
2017-10-24 19:16:36 +05:00
2018-10-08 22:12:05 +05:00
return coreResult
except KeyError:
return redirect(loadLoginPage)
2017-10-24 19:16:36 +05:00
def listDBs(request):
try:
2018-08-18 00:39:10 +05:00
userID = request.session['userID']
2018-10-08 22:12:05 +05:00
dm = DatabaseManager()
return dm.listDBs(request, userID)
2017-10-24 19:16:36 +05:00
except KeyError:
return redirect(loadLoginPage)
def changePassword(request):
try:
2018-08-18 00:39:10 +05:00
userID = request.session['userID']
2017-10-24 19:16:36 +05:00
2018-10-08 22:12:05 +05:00
result = pluginManager.preChangePassword(request)
if result != 200:
return result
2017-10-24 19:16:36 +05:00
2018-10-08 22:12:05 +05:00
dm = DatabaseManager()
coreResult = dm.changePassword(userID, json.loads(request.body))
2017-10-24 19:16:36 +05:00
2018-10-08 22:12:05 +05:00
result = pluginManager.postChangePassword(request, coreResult)
if result != 200:
return result
2017-10-24 19:16:36 +05:00
2018-10-08 22:12:05 +05:00
return coreResult
except KeyError:
return redirect(loadLoginPage)