Dominik
2015-04-03 03b6336852f9dbccfed7c6275c8530a05f6eb010
server/plugins-available/mail_plugin.inc.php
@@ -130,14 +130,21 @@
         $app->log('Created Directory: '.$base_path, LOGLEVEL_DEBUG);
      }
      // Dovecot uses a different mail layout with a separate 'Maildir' subdirectory.
      // Dovecot can create its Maildir on its own and can create the correct mailbox-format-type
      if($mail_config['pop3_imap_daemon'] == 'dovecot') {
         //exec("su -c 'mkdir -p ".escapeshellcmd($maildomain_path)."' ".$mail_config['mailuser_name']);
         $app->system->mkdirpath($maildomain_path, 0700, $user, $group);
         $app->log('Created Directory: '.$maildomain_path, LOGLEVEL_DEBUG);
         $maildomain_path .= '/Maildir';
      }
         exec("su -c 'doveadm mailbox create -u \"".$data["new"]["email"]."\" INBOX'");
         exec("su -c 'doveadm mailbox create -u \"".$data["new"]["email"]."\" Sent'");
         exec("su -c 'doveadm mailbox create -u \"".$data["new"]["email"]."\" Trash'");
         exec("su -c 'doveadm mailbox create -u \"".$data["new"]["email"]."\" Junk'");
         exec("su -c 'doveadm mailbox create -u \"".$data["new"]["email"]."\" Drafts'");
         exec("su -c 'doveadm mailbox subscribe -u \"".$data["new"]["email"]."\" INBOX'");
         exec("su -c 'doveadm mailbox subscribe -u \"".$data["new"]["email"]."\" Sent'");
         exec("su -c 'doveadm mailbox subscribe -u \"".$data["new"]["email"]."\" Trash'");
         exec("su -c 'doveadm mailbox subscribe -u \"".$data["new"]["email"]."\" Junk'");
         exec("su -c 'doveadm mailbox subscribe -u \"".$data["new"]["email"]."\" Drafts'");
      }
      else {
      //* When the mail user dir exists but it is not a valid maildir, move it to corrupted maildir folder
      if(!empty($maildomain_path) && is_dir($maildomain_path) && !is_dir($maildomain_path.'/new') && !is_dir($maildomain_path.'/cur')) {
         if(!is_dir($mail_config['homedir_path'].'/corrupted/'.$data['new']['mailuser_id'])) $app->system->mkdirpath($mail_config['homedir_path'].'/corrupted/'.$data['new']['mailuser_id'], 0700, $mail_config['mailuser_name'], $mail_config['mailuser_group']);
@@ -190,7 +197,7 @@
            $app->log('Set Maildir quota: '."su -c 'maildirmake -q ".$data['new']['quota']."S ".escapeshellcmd($data['new']['maildir'])."' ".$user, LOGLEVEL_DEBUG);
         }
      }
      }
      //* Send the welcome email message
      if(file_exists($conf['rootpath'].'/conf-custom/mail/welcome_email_'.$conf['language'].'.txt')) {