From c50b1eaa496107a82640b5e6f3754975177f111c Mon Sep 17 00:00:00 2001 From: "usman@cyberpersons.com" Date: Fri, 3 Feb 2023 19:55:23 +0500 Subject: [PATCH] possible fix of https://community.cyberpanel.net/t/snappymail-does-not-show-email-folders-for-subdomain-domain-com-websites/40026 --- plogical/upgrade.py | 47 +++++++++++++++++++++++++++++++++++---------- 1 file changed, 37 insertions(+), 10 deletions(-) diff --git a/plogical/upgrade.py b/plogical/upgrade.py index ae7eea3d2..130f47a71 100755 --- a/plogical/upgrade.py +++ b/plogical/upgrade.py @@ -511,14 +511,14 @@ $cfg['Servers'][$i]['LogoutURL'] = 'phpmyadminsignin.php?logout'; labsPath = '/usr/local/lscp/cyberpanel/rainloop/data/_data_/_default_/configs/application.ini' - labsData = """[labs] -imap_folder_list_limit = 0 -autocreate_system_folders = On -""" - - writeToFile = open(labsPath, 'a') - writeToFile.write(labsData) - writeToFile.close() +# labsData = """[labs] +# imap_folder_list_limit = 0 +# autocreate_system_folders = On +# """ +# +# writeToFile = open(labsPath, 'a') +# writeToFile.write(labsData) +# writeToFile.close() includeFileOldPath = '/usr/local/CyberCP/public/snappymail/_include.php' includeFileNewPath = '/usr/local/CyberCP/public/snappymail/include.php' @@ -531,8 +531,35 @@ autocreate_system_folders = On command = 'mv %s %s' % (includeFileOldPath, includeFileNewPath) Upgrade.executioner(command, 'mkdir snappymail configs', 0) - command = "sed -i 's|autocreate_system_folders = Off|autocreate_system_folders = On|g' %s" % (labsPath) - Upgrade.executioner(command, 'mkdir snappymail configs', 0) + ## take care of auto create folders + + labsData = open(labsPath, 'r').read() + + if labsData.find('autocreate_system_folders') > -1: + command = "sed -i 's|autocreate_system_folders = Off|autocreate_system_folders = On|g' %s" % (labsPath) + Upgrade.executioner(command, 'mkdir snappymail configs', 0) + else: + WriteToFile = open(labsPath, 'w') + for lines in open(labsPath, 'r').readlines(): + if lines.find('[labs]') > -1: + WriteToFile.write(lines) + WriteToFile.write(f'autocreate_system_folders = On\n') + else: + WriteToFile.write(lines) + WriteToFile.close() + + ##take care of imap_folder_list_limit + + if labsData.find('imap_folder_list_limit') == -1: + WriteToFile = open(labsPath, 'w') + for lines in open(labsPath, 'r').readlines(): + if lines.find('[labs]') > -1: + WriteToFile.write(lines) + WriteToFile.write(f'imap_folder_list_limit = 0\n') + else: + WriteToFile.write(lines) + WriteToFile.close() + os.chdir(cwd)