Marius Cramer
2014-02-17 ebbe6374fc9c308daf729d2ad1b2f8007ed771ce
server/lib/classes/system.inc.php
@@ -1526,7 +1526,11 @@
   function maildirmake($maildir_path, $user = '', $subfolder = '', $group = '') {
      global $app;
      global $app, $conf;
      // load the server configuration options
      $app->uses("getconf");
      $mail_config = $app->getconf->get_server_config($conf["server_id"], 'mail');
      if($subfolder != '') {
         $dir = escapeshellcmd($maildir_path.'/.'.$subfolder);
@@ -1571,25 +1575,30 @@
      //* Add the subfolder to the subscriptions and courierimapsubscribed files
      if($subfolder != '') {
         // Courier
         if(!is_file($maildir_path.'/courierimapsubscribed')) {
            $tmp_file = escapeshellcmd($maildir_path.'/courierimapsubscribed');
            touch($tmp_file);
            chmod($tmp_file, 0744);
            chown($tmp_file, 'vmail');
            chgrp($tmp_file, 'vmail');
         if($mail_config['pop3_imap_daemon'] == 'courier') {
            if(!is_file($maildir_path.'/courierimapsubscribed')) {
               $tmp_file = escapeshellcmd($maildir_path.'/courierimapsubscribed');
               touch($tmp_file);
               chmod($tmp_file, 0744);
               chown($tmp_file, 'vmail');
               chgrp($tmp_file, 'vmail');
            }
            $this->replaceLine($maildir_path.'/courierimapsubscribed', 'INBOX.'.$subfolder, 'INBOX.'.$subfolder, 1, 1);
         }
         $this->replaceLine($maildir_path.'/courierimapsubscribed', 'INBOX.'.$subfolder, 'INBOX.'.$subfolder, 1, 1);
         // Dovecot
         if(!is_file($maildir_path.'/subscriptions')) {
            $tmp_file = escapeshellcmd($maildir_path.'/subscriptions');
            touch($tmp_file);
            chmod($tmp_file, 0744);
            chown($tmp_file, 'vmail');
            chgrp($tmp_file, 'vmail');
         if($mail_config['pop3_imap_daemon'] == 'dovecot') {
            if(!is_file($maildir_path.'/subscriptions')) {
               $tmp_file = escapeshellcmd($maildir_path.'/subscriptions');
               touch($tmp_file);
               chmod($tmp_file, 0744);
               chown($tmp_file, 'vmail');
               chgrp($tmp_file, 'vmail');
            }
            $this->replaceLine($maildir_path.'/subscriptions', $subfolder, $subfolder, 1, 1);
         }
         $this->replaceLine($maildir_path.'/subscriptions', $subfolder, $subfolder, 1, 1);
      }
      $app->log('Created Maildir '.$maildir_path.' with subfolder: '.$subfolder, LOGLEVEL_DEBUG);