adjust some functions

This commit is contained in:
usmannasir
2023-12-22 07:15:19 +05:00
parent af6a5dc3f8
commit e4f31be181
8 changed files with 76 additions and 18 deletions

View File

@@ -1,5 +1,8 @@
from django.conf.urls import url
from django.urls import path
from . import views
from websiteFunctions.views import Dockersitehome
urlpatterns = [
url(r'^$', views.loadDockerHome, name='dockerHome'),
@@ -26,4 +29,6 @@ urlpatterns = [
url(r'^installDocker', views.installDocker, name='installDocker'),
url(r'^images', views.images, name='containerImage'),
url(r'^view/(?P<name>(.*))$', views.viewContainer, name='viewContainer'),
path('manage/<int:dockerapp>/app', Dockersitehome, name='Dockersitehome'),
]

View File

@@ -97,9 +97,6 @@ REWRITERULE ^(.*)$ HTTP://docker{port}/$1 [P]
WriteToFile.write(HTAccessContent)
WriteToFile.close()
from plogical.installUtilities import installUtilities
installUtilities.reStartLiteSpeed()
# Takes
# ComposePath, MySQLPath, MySQLRootPass, MySQLDBName, MySQLDBNUser, MySQLPassword, CPUsMySQL, MemoryMySQL,
# port, SitePath, CPUsSite, MemorySite, ComposePath, SiteName
@@ -336,6 +333,11 @@ services:
command = f"chown -R nobody:{group} /home/docker/{self.data['finalURL']}/data"
ProcessUtilities.executioner(command)
### just restart ls for htaccess
from plogical.installUtilities import installUtilities
installUtilities.reStartLiteSpeed()
logging.statusWriter(self.JobID, 'Completed. [200]')
# command = f"docker-compose -f {self.data['ComposePath']} ps -q wordpress"
@@ -592,6 +594,7 @@ services:
return 0, str(msg)
### pass container id and number of lines to fetch from logs
def ContainerInfo(self):
try:
import docker

View File

@@ -739,7 +739,6 @@ class ACLManager:
except:
return 0
@staticmethod
def checkOwnershipZone(domain, admin, currentACL):
try:
@@ -1086,3 +1085,4 @@ class ACLManager:
pass

View File

@@ -14,5 +14,6 @@
</script>
<h2> Docker Site Home</h2>
<p>{{ dockerSite.SiteName }}</p>
{% endblock %}

View File

@@ -68,7 +68,7 @@
{% trans "File Manager" %}</a>
</div>
<div class="col-md-2 content-box-header" style="text-transform: none;">
<a href="/websites/{$ web.domain $}/Dockersitehome" target="_self" title="Manage Website">
<a href="/docker/manage/{$ web.id $}/app" target="_self" title="Manage Website">
<i class="p fa fa-external-link btn-icon">&emsp;</i>
<span>{% trans "Manage" %}</span>
</a>

View File

@@ -199,7 +199,7 @@ urlpatterns = [
url(r'^submitDockerSiteCreation$', views.submitDockerSiteCreation, name='submitDockerSiteCreation'),
url(r'^ListDockerSites$', views.ListDockerSites, name='ListDockerSites'),
url(r'^fetchDockersite$', views.fetchDockersite, name='fetchDockersite'),
url(r'^(?P<domain>(.*))/Dockersitehome', views.Dockersitehome, name='Dockersitehome'),
### SSH Configs

View File

@@ -1846,10 +1846,10 @@ def fetchDockersite(request):
except KeyError:
return redirect(loadLoginPage)
def Dockersitehome(request, domain):
def Dockersitehome(request, dockerapp):
try:
userID = request.session['userID']
wm = WebsiteManager(domain)
wm = WebsiteManager(dockerapp)
return wm.Dockersitehome(request, userID, None)
except KeyError:
return redirect(loadLoginPage)

View File

@@ -6608,6 +6608,13 @@ StrictHostKeyChecking no
def CreateDockerPackage(self, request=None, userID=None, data=None, DeleteID=None):
Data = {}
currentACL = ACLManager.loadedACL(userID)
if currentACL['admin'] == 1:
pass
else:
return ACLManager.loadError()
try:
if DeleteID != None:
DockerPackagesDelete = DockerPackages.objects.get(pk=DeleteID)
@@ -6623,6 +6630,13 @@ StrictHostKeyChecking no
def AssignPackage(self, request=None, userID=None, data=None, DeleteID=None):
currentACL = ACLManager.loadedACL(userID)
if currentACL['admin'] == 1:
pass
else:
return ACLManager.loadError()
try:
if DeleteID != None:
DockerPackagesDelete = PackageAssignment.objects.get(pk=DeleteID)
@@ -6647,6 +6661,13 @@ StrictHostKeyChecking no
def AddDockerpackage(self, userID=None, data=None):
try:
currentACL = ACLManager.loadedACL(userID)
if currentACL['admin'] == 1:
pass
else:
return ACLManager.loadError()
admin = Administrator.objects.get(pk=userID)
name = data['name']
@@ -6668,6 +6689,13 @@ StrictHostKeyChecking no
def Getpackage(self, userID=None, data=None):
try:
currentACL = ACLManager.loadedACL(userID)
if currentACL['admin'] == 1:
pass
else:
return ACLManager.loadError()
admin = Administrator.objects.get(pk=userID)
id = data['id']
@@ -6694,6 +6722,14 @@ StrictHostKeyChecking no
def Updatepackage(self, userID=None, data=None):
try:
currentACL = ACLManager.loadedACL(userID)
if currentACL['admin'] == 1:
pass
else:
return ACLManager.loadError()
admin = Administrator.objects.get(pk=userID)
id = data['id']
CPU = data['CPU']
@@ -6720,6 +6756,15 @@ StrictHostKeyChecking no
def AddAssignment(self, userID=None, data=None):
try:
currentACL = ACLManager.loadedACL(userID)
if currentACL['admin'] == 1:
pass
else:
return ACLManager.loadError()
admin = Administrator.objects.get(pk=userID)
package = data['package']
@@ -6845,11 +6890,19 @@ StrictHostKeyChecking no
return HttpResponse(final_json)
def ListDockerSites(self, request=None, userID=None, data=None, DeleteID=None):
admin = Administrator.objects.get(pk=userID)
currentACL = ACLManager.loadedACL(userID)
fdata={}
try:
if DeleteID != None:
DockerSitesDelete = DockerSites.objects.get(pk=DeleteID)
if ACLManager.checkOwnership(DockerSitesDelete.admin, admin, currentACL) == 1:
pass
else:
return ACLManager.loadError()
passdata={}
passdata["domain"] = DockerSitesDelete.admin.domain
passdata["JobID"] = None
@@ -6875,21 +6928,13 @@ StrictHostKeyChecking no
recordsToShow = int(data['recordsToShow'])
endPageNumber, finalPageNumber = self.recordsPointer(pageNumber, recordsToShow)
dockersites = ACLManager.findDockersiteObjects(currentACL, userID)
pagination = self.getPagination(len(dockersites), recordsToShow)
logging.CyberCPLogFileWriter.writeToFile("Our dockersite" + str(dockersites))
json_data = self.findDockersitesListJson(dockersites[finalPageNumber:endPageNumber])
@@ -6904,13 +6949,17 @@ StrictHostKeyChecking no
return HttpResponse(final_json)
def Dockersitehome(self, request=None, userID=None, data=None, DeleteID=None):
currentACL = ACLManager.loadedACL(userID)
admin = Administrator.objects.get(pk=userID)
if ACLManager.checkOwnership(self.domain, admin, currentACL) == 1:
ds = DockerSites.objects.get(pk=self.domain)
if ACLManager.checkOwnership(ds.admin.domain, admin, currentACL) == 1:
pass
else:
return ACLManager.loadError()
proc = httpProc(request, 'websiteFunctions/DockerSiteHome.html',
None)
{'dockerSite': ds})
return proc.render()