ftimme
2012-05-30 2cb1563f63386b35a69e460051aa9b4a2851d104
interface/web/mail/mail_alias_edit.php
@@ -74,7 +74,8 @@
      $app->tpl->setVar("email_local_part",$email_parts[0]);
      
      // Getting Domains of the user
      $sql = "SELECT domain FROM mail_domain WHERE ".$app->tform->getAuthSQL('r');
      // $sql = "SELECT domain FROM mail_domain WHERE ".$app->tform->getAuthSQL('r').' ORDER BY domain';
      $sql = "SELECT domain FROM mail_domain WHERE domain NOT IN (SELECT SUBSTR(source,2) FROM mail_forwarding WHERE type = 'aliasdomain') AND ".$app->tform->getAuthSQL('r')." ORDER BY domain";
      $domains = $app->db->queryAllRecords($sql);
      $domain_select = '';
      if(is_array($domains)) {
@@ -120,11 +121,20 @@
      unset($this->dataRecord["email_local_part"]);
      unset($this->dataRecord["email_domain"]);
      
      //* Check if there is no mailbox with this address
      $tmp = $app->db->queryOneRecord("SELECT count(mailuser_id) as number FROM mail_user WHERE email = '".$app->db->quote($this->dataRecord["source"])."'");
      //* Check if there is no active mailbox with this address
      $tmp = $app->db->queryOneRecord("SELECT count(mailuser_id) as number FROM mail_user WHERE postfix = 'y' AND email = '".$app->db->quote($this->dataRecord["source"])."'");
      if($tmp['number'] > 0) $app->tform->errorMessage .= $app->tform->lng("duplicate_mailbox_txt")."<br>";
      unset($tmp);
      
      //* Check if email alias exists
      if($this->id > 0) {
         $tmp = $app->db->queryOneRecord("SELECT count(forwarding_id) as number FROM mail_forwarding WHERE source = '".$app->db->quote($this->dataRecord["source"])."' AND destination = '".$app->db->quote($this->dataRecord["destination"])."' AND forwarding_id != ".$this->id);
      } else {
         $tmp = $app->db->queryOneRecord("SELECT count(forwarding_id) as number FROM mail_forwarding WHERE source = '".$app->db->quote($this->dataRecord["source"])."' AND destination = '".$app->db->quote($this->dataRecord["destination"])."'");
      }
      if($tmp['number'] > 0) $app->tform->errorMessage .= $app->tform->lng("duplicate_email_alias_txt")."<br>";
      unset($tmp);
      parent::onSubmit();
   }