From e36b6b8a6a3ca362d06e9ebdf829f81eefbb62b3 Mon Sep 17 00:00:00 2001 From: Usman Nasir Date: Thu, 17 Dec 2020 14:20:54 +0500 Subject: [PATCH] fix further minor issues in cloudlinux --- CLScript/CloudLinuxUsers.py | 13 +++++++++++-- CLScript/UserInfo.py | 7 ++++++- plogical/virtualHostUtilities.py | 2 +- 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/CLScript/CloudLinuxUsers.py b/CLScript/CloudLinuxUsers.py index 1ae5b725b..a26d2e9e5 100755 --- a/CLScript/CloudLinuxUsers.py +++ b/CLScript/CloudLinuxUsers.py @@ -92,7 +92,12 @@ class CloudLinuxUsers(CLMain): user['username'] = webs.externalApp if self.ow: - user['owner'] = webs.admin.userName + if webs.admin.owner == 1: + user['owner'] = webs.admin.userName + else: + from loginSystem.models import Administrator + oAdmin = Administrator.objects.get(pk=webs.admin.owner) + user['owner'] = oAdmin.userName if self.domain: user['domain'] = webs.domain @@ -133,7 +138,11 @@ class CloudLinuxUsers(CLMain): if self.owner == None: websites = Websites.objects.all() else: - websites = Websites.objects.filter(admin__userName=self.owner) + from loginSystem.models import Administrator + from plogical.acl import ACLManager + oAdmin = Administrator.objects.get(userName=self.owner) + currentACL = ACLManager.loadedACL(oAdmin.pk) + websites = ACLManager.findWebsiteObjects(currentACL, oAdmin.pk) if self.username != None: websites = websites.filter(externalApp=self.username) diff --git a/CLScript/UserInfo.py b/CLScript/UserInfo.py index 472b614f3..55b266be9 100755 --- a/CLScript/UserInfo.py +++ b/CLScript/UserInfo.py @@ -2,10 +2,15 @@ import getpass def main(): + import pwd if getpass.getuser() == 'root': userType = "admin" else: - userType = "user" + try: + uid = pwd.getpwnam(getpass.getuser()).pw_uid + userType = 'reseller' + except: + userType = 'user' data = """{ "userName": "%s", diff --git a/plogical/virtualHostUtilities.py b/plogical/virtualHostUtilities.py index 899814849..09d28eb9c 100755 --- a/plogical/virtualHostUtilities.py +++ b/plogical/virtualHostUtilities.py @@ -261,7 +261,7 @@ class virtualHostUtilities: CLPath = '/etc/sysconfig/cloudlinux' if os.path.exists(CLPath): - command = '/usr/share/cloudlinux/hooks/post_modify_user.py create --username %s --owner %s' % (virtualHostUser, virtualHostUser) + command = '/usr/share/cloudlinux/hooks/post_modify_user.py create --username %s --owner %s' % (virtualHostUser, admin.userName) ProcessUtilities.executioner(command) ### For autodiscover of mail clients.