summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeekologist <Conver@users.noreply.github.com>2015-09-17 21:26:53 +0200
committerGeekologist <Conver@users.noreply.github.com>2015-09-17 21:26:53 +0200
commita6d9ec300c7df3643a8c43017fce6a91d727fd29 (patch)
tree45ff9bcd0d47330911f4001efeabaf630aff720d
parent94eff82c1dfe7b8f32df659562399d37047ee0df (diff)
parent42892d5a3e29bcd351302c8011cd1bec93bfddfd (diff)
downloadPHPAuth-a6d9ec300c7df3643a8c43017fce6a91d727fd29.zip
PHPAuth-a6d9ec300c7df3643a8c43017fce6a91d727fd29.tar.gz
PHPAuth-a6d9ec300c7df3643a8c43017fce6a91d727fd29.tar.bz2
Merge pull request #115 from JacquesLoubser/master
Suppression Cleanup
-rwxr-xr-xauth.class.php43
-rwxr-xr-xconfig.class.php5
-rw-r--r--database.sql3
3 files changed, 35 insertions, 16 deletions
diff --git a/auth.class.php b/auth.class.php
index c22561a..518e50b 100755
--- a/auth.class.php
+++ b/auth.class.php
@@ -645,14 +645,13 @@ class Auth
* @param int $uid
* @param string $email
* @param string $type
+ * @param boolean $suppressed = NULL
* @return boolean
*/
- private function addRequest($uid, $email, $type)
+ private function addRequest($uid, $email, $type,$suppressed = NULL)
{
- require 'PHPMailer/PHPMailerAutoload.php';
- $mail = new \PHPMailer;
$return['error'] = true;
@@ -660,7 +659,25 @@ class Auth
$return['message'] = $this->lang["system_error"] . " #08";
return $return;
}
+ if($suppressed == NULL)
+ {
+ $suppressed = true;
+ if($type == "activation")
+ {
+ if(!$this->config->emailmessage_suppress_activation)
+ {
+ $suppressed = false;
+ }
+ }
+ if($type == "reset")
+ {
+ if(!$this->config->emailmessage_suppress_reset)
+ {
+ $suppressed = false;
+ }
+ }
+ }
$query = $this->dbh->prepare("SELECT id, expire FROM {$this->config->table_requests} WHERE uid = ? AND type = ?");
$query->execute(array($uid, $type));
@@ -696,7 +713,11 @@ class Auth
$request_id = $this->dbh->lastInsertId();
// Check configuration for SMTP parameters
+ if(!$suppressed)
+ {
+ require 'PHPMailer/PHPMailerAutoload.php';
+ $mail = new \PHPMailer;
if($this->config->smtp) {
$mail->isSMTP();
$mail->Host = $this->config->smtp_host;
@@ -717,27 +738,19 @@ class Auth
$mail->addAddress($email);
$mail->isHTML(true);
- $suppressed = false;
-
if($type == "activation") {
- if(!$this->config->emailmessage_suppress_activation){
+
$mail->Subject = sprintf($this->lang['email_activation_subject'], $this->config->site_name);
$mail->Body = sprintf($this->lang['email_activation_body'], $this->config->site_url, $this->config->site_activation_page, $key);
$mail->AltBody = sprintf($this->lang['email_activation_altbody'], $this->config->site_url, $this->config->site_activation_page, $key);
- } else {
- $suppressed = true;
}
- } else {
+ else {
$mail->Subject = sprintf($this->lang['email_reset_subject'], $this->config->site_name);
$mail->Body = sprintf($this->lang['email_reset_body'], $this->config->site_url, $this->config->site_password_reset_page, $key);
$mail->AltBody = sprintf($this->lang['email_reset_altbody'], $this->config->site_url, $this->config->site_password_reset_page, $key);
}
- if($suppressed){
- $this->lang["register_success"] = $this->lang["register_success_emailmessage_suppressed"];
- $return['error'] = false;
- return $return;
- }
+
if(!$mail->send()) {
$this->deleteRequest($request_id);
@@ -745,7 +758,7 @@ class Auth
$return['message'] = $this->lang["system_error"] . " #10";
return $return;
}
-
+ }
$return['error'] = false;
return $return;
}
diff --git a/config.class.php b/config.class.php
index 1d4fadd..139f7e4 100755
--- a/config.class.php
+++ b/config.class.php
@@ -97,5 +97,10 @@ class Config
if (! isset($this->config['emailmessage_suppress_activation']) )
$this->config['emailmessage_suppress_activation'] = 0;
+ if (! isset($this->config['emailmessage_suppress_reset']) )
+ $this->config['emailmessage_suppress_reset'] = 0;
+
}
+
+
}
diff --git a/database.sql b/database.sql
index 962a9a1..2bcc857 100644
--- a/database.sql
+++ b/database.sql
@@ -49,7 +49,8 @@ INSERT INTO `config` (`id`, `setting`, `value`) VALUES
(33, 'attack_mitigation_time', '+30 minutes'),
(34, 'attempts_before_verify', '5'),
(35, 'attempts_before_ban', '30'),
-(36, 'emailmessage_suppress_activation', '0');
+(36, 'emailmessage_suppress_activation', '0'),
+(37, 'emailmessage_suppress_reset', '0');
DROP TABLE IF EXISTS `attempts`;
CREATE TABLE `attempts` (