From 83b1a7c69b67895604cdc29988f7458ed8381fea Mon Sep 17 00:00:00 2001 From: ivan Date: Wed, 6 Dec 2017 20:53:10 -0300 Subject: [PATCH] Fix version upgrade --- server/controllers/system/init-settings.php | 8 ++++---- server/libs/MailSender.php | 7 ++++--- server/models/Ticket.php | 2 +- .../libs/LinearCongruentialGeneratorTest.php | 2 +- version_upgrades/4.1.1/4.1.1.php | 17 ++++++++++------- version_upgrades/4.1.1/libs/MailSender.php | 3 +++ 6 files changed, 23 insertions(+), 16 deletions(-) diff --git a/server/controllers/system/init-settings.php b/server/controllers/system/init-settings.php index f95070d4..b027e077 100755 --- a/server/controllers/system/init-settings.php +++ b/server/controllers/system/init-settings.php @@ -83,10 +83,10 @@ class InitSettingsController extends Controller { 'registration' => !!Controller::request('registration'), 'user-system-enabled' => !!Controller::request('user-system-enabled'), 'last-stat-day' => date('YmdHi', strtotime(' -12 day ')), - 'ticket-gap' => Hashing::generateRandomPrime(1000000, 9999999), - 'ticket-first-number' => Hashing::generateRandomNumber(1000000, 9999999), - 'file-gap' => Hashing::generateRandomPrime(1000000, 9999999), - 'file-first-number' => Hashing::generateRandomNumber(1000000, 9999999), + 'ticket-gap' => Hashing::generateRandomPrime(100000, 999999), + 'ticket-first-number' => Hashing::generateRandomNumber(100000, 999999), + 'file-gap' => Hashing::generateRandomPrime(100000, 999999), + 'file-first-number' => Hashing::generateRandomNumber(100000, 999999), 'file-quantity' => 0, 'session-prefix' => 'opensupports-'.Hashing::generateRandomToken().'_' ]); diff --git a/server/libs/MailSender.php b/server/libs/MailSender.php index a0edd583..62bbaed3 100755 --- a/server/libs/MailSender.php +++ b/server/libs/MailSender.php @@ -36,10 +36,10 @@ class MailSender { public function setTemplate($type, $config) { $mailTemplate = MailTemplate::getTemplate($type); $compiledMailContent = $mailTemplate->compile($config); - + $this->mailOptions = array_merge($this->mailOptions, $compiledMailContent); } - + public function send() { $mailerInstance = $this->getMailerInstance(); @@ -49,6 +49,7 @@ class MailSender { throw new Exception('Mail sending data not available'); } + $mailerInstance->ClearAllRecipients(); $mailerInstance->addAddress($this->mailOptions['to']); $mailerInstance->Subject = $this->mailOptions['subject']; $mailerInstance->Body = $this->mailOptions['body']; @@ -88,4 +89,4 @@ class MailSender { return $this->mailerInstance; } -} \ No newline at end of file +} diff --git a/server/models/Ticket.php b/server/models/Ticket.php index f5f78ae9..26993e6b 100755 --- a/server/models/Ticket.php +++ b/server/models/Ticket.php @@ -78,7 +78,7 @@ class Ticket extends DataStore { $ticketQuantity = Ticket::count(); if ($ticketQuantity === 0) { - $ticketNumber = Setting::getSetting('ticket-first-number'); + $ticketNumber = Setting::getSetting('ticket-first-number')->value; } else { $linearCongruentialGenerator->setGap(Setting::getSetting('ticket-gap')->value); $linearCongruentialGenerator->setFirst(Setting::getSetting('ticket-first-number')->value); diff --git a/server/tests/libs/LinearCongruentialGeneratorTest.php b/server/tests/libs/LinearCongruentialGeneratorTest.php index 4c3bf51c..f2f29410 100644 --- a/server/tests/libs/LinearCongruentialGeneratorTest.php +++ b/server/tests/libs/LinearCongruentialGeneratorTest.php @@ -16,7 +16,7 @@ class LinearCongruentialGeneratorTest extends TestCase { $linearCongruentialGenerator = new LinearCongruentialGenerator(); $linearCongruentialGenerator->setRange($min, $max); $linearCongruentialGenerator->setGap(Hashing::generateRandomPrime($min, $max)); - $linearCongruentialGenerator->setFirst(Hashing::generateRandomNumber()); + $linearCongruentialGenerator->setFirst(Hashing::generateRandomNumber($min, $max)); $used = []; diff --git a/version_upgrades/4.1.1/4.1.1.php b/version_upgrades/4.1.1/4.1.1.php index e05289f8..2fbf8ac8 100644 --- a/version_upgrades/4.1.1/4.1.1.php +++ b/version_upgrades/4.1.1/4.1.1.php @@ -75,13 +75,14 @@ if($tickets = $mysql->query("SELECT * FROM ticket ORDER BY id ASC")) { $ticketString = ''; foreach($emailTickets as $ticket) { - $ticketString += '

' - $ticketString += $ticket['old_number']; - $ticketString += '(old) => '; - $ticketString += $ticket['new_number']; - $ticketString += '(new) '; - $ticketString += $ticket['title']; - $ticketString += '

'; + $ticketString .= '

'; + $ticketString .= $ticket['old_number']; + $ticketString .= ' => '; + $ticketString .= $ticket['new_number']; + $ticketString .= ' '; + $ticketString .= htmlentities($ticket['title']); + $ticketString .= '

'; + $ticketString .= PHP_EOL; } $mailSender->setMailContent([ @@ -93,5 +94,7 @@ if($tickets = $mysql->query("SELECT * FROM ticket ORDER BY id ASC")) { 'tickets' => $ticketString, ]) ]); + + $mailSender->send(); } } diff --git a/version_upgrades/4.1.1/libs/MailSender.php b/version_upgrades/4.1.1/libs/MailSender.php index e50c3dbf..10751415 100644 --- a/version_upgrades/4.1.1/libs/MailSender.php +++ b/version_upgrades/4.1.1/libs/MailSender.php @@ -1,4 +1,6 @@ ClearAllRecipients(); $mailerInstance->addAddress($this->mailOptions['to']); $mailerInstance->Subject = $this->mailOptions['subject']; $mailerInstance->Body = $this->mailOptions['body'];