Skip to content

Commit bf98efc

Browse files
committed
Some code refactoring and changelog updates
1 parent efede9c commit bf98efc

File tree

5 files changed

+64
-43
lines changed

5 files changed

+64
-43
lines changed

CHANGELOG-1.1.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,10 @@ CHANGELOG for 1.1.x
33

44
This changelog references any relevant changes introduced in 1.1 minor versions.
55

6-
* 1.1.4
6+
* 1.1.4 (2024-12-19)
77
* Microsoft Modern App related updates.
88
* License and support email address updates.
9+
* Code refactoring.
910

1011
* 1.1.3 (2023-06-12)
1112
* Update: Dropped dependency on uvdesk/composer-plugin in support of symfony/flex

Controller/MailboxChannel.php

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ public function createMailboxConfiguration(Request $request, EntityManagerInterf
6363
$imapConfiguration = null;
6464

6565
// IMAP Configuration
66-
if (!empty($params['imap']['transport'])) {
66+
if (! empty($params['imap']['transport'])) {
6767
$imapConfiguration = IMAP\Configuration::createTransportDefinition($params['imap']['transport'], !empty($params['imap']['host']) ? trim($params['imap']['host'], '"') : null);
6868

6969
if ($imapConfiguration instanceof IMAP\Transport\AppTransportConfigurationInterface) {
@@ -107,7 +107,10 @@ public function createMailboxConfiguration(Request $request, EntityManagerInterf
107107
}
108108

109109
// SMTP Configuration
110-
if (!empty($params['smtp']['transport']) && 'swiftmailer_id' !== $params['smtp']['transport']) {
110+
if (
111+
! empty($params['smtp']['transport'])
112+
&& 'swiftmailer_id' !== $params['smtp']['transport']
113+
) {
111114
$smtpConfiguration = SMTP\Configuration::createTransportDefinition($params['smtp']['transport'], !empty($params['smtp']['host']) ? trim($params['smtp']['host'], '"') : null);
112115

113116
if ($smtpConfiguration instanceof SMTP\Transport\AppTransportConfigurationInterface) {
@@ -164,8 +167,8 @@ public function createMailboxConfiguration(Request $request, EntityManagerInterf
164167
} else {
165168
$mailboxConfiguration = $mailboxService->parseMailboxConfigurations();
166169

167-
// Swiftmailer Configuration
168-
if (!empty($params['swiftmailer_id'])) {
170+
// SwiftMailer Configuration
171+
if (! empty($params['swiftmailer_id'])) {
169172
foreach ($swiftMailerConfigurationCollection as $configuration) {
170173
if ($configuration->getId() == $params['swiftmailer_id']) {
171174
$swiftmailerConfiguration = $configuration;
@@ -224,7 +227,7 @@ public function createMailboxConfiguration(Request $request, EntityManagerInterf
224227

225228
public function updateMailboxConfiguration($id, Request $request, EntityManagerInterface $entityManager, UserService $userService, MailboxService $mailboxService, TranslatorInterface $translator, SwiftMailerService $swiftMailer)
226229
{
227-
if (!$userService->isAccessAuthorized('ROLE_ADMIN')) {
230+
if (! $userService->isAccessAuthorized('ROLE_ADMIN')) {
228231
return $this->redirect($this->generateUrl('helpdesk_member_dashboard'));
229232
}
230233

@@ -310,7 +313,10 @@ public function updateMailboxConfiguration($id, Request $request, EntityManagerI
310313
}
311314

312315
// SMTP Configuration
313-
if (!empty($params['smtp']['transport']) && 'swiftmailer_id' !== $params['smtp']['transport']) {
316+
if (
317+
! empty($params['smtp']['transport'])
318+
&& 'swiftmailer_id' !== $params['smtp']['transport']
319+
) {
314320
$smtpConfiguration = SMTP\Configuration::createTransportDefinition($params['smtp']['transport'], !empty($params['smtp']['host']) ? trim($params['smtp']['host'], '"') : null);
315321

316322
if ($smtpConfiguration instanceof SMTP\Transport\AppTransportConfigurationInterface) {
@@ -366,7 +372,7 @@ public function updateMailboxConfiguration($id, Request $request, EntityManagerI
366372

367373
$mailbox = new Mailbox($params['id']);
368374

369-
// Swiftmailer Configuration
375+
// SwiftMailer Configuration
370376
if (! empty($params['swiftmailer_id'])) {
371377
foreach ($swiftMailerConfigurationCollection as $configuration) {
372378
if ($configuration->getId() == $params['swiftmailer_id']) {
@@ -380,27 +386,27 @@ public function updateMailboxConfiguration($id, Request $request, EntityManagerI
380386
->setName($params['name'])
381387
->setIsEnabled(!empty($params['isEnabled']) && 'on' == $params['isEnabled'] ? true : false);
382388

383-
if (!empty($imapConfiguration)) {
389+
if (! empty($imapConfiguration)) {
384390
$mailbox
385391
->setImapConfiguration($imapConfiguration)
386392
;
387393
}
388394

389-
if (!empty($smtpConfiguration)) {
395+
if (! empty($smtpConfiguration)) {
390396
$mailbox
391397
->setSmtpConfiguration($smtpConfiguration)
392398
;
393399
}
394400

395-
if (!empty($swiftmailerConfiguration) && empty($smtpConfiguration)) {
401+
if (! empty($swiftmailerConfiguration) && empty($smtpConfiguration)) {
396402
$mailbox
397403
->setSwiftMailerConfiguration($swiftmailerConfiguration);
398404
;
399405
}
400406

401407
$mailboxConfiguration->addMailbox($mailbox);
402408

403-
if (!empty($params['isDefault']) && 'on' == $params['isDefault']) {
409+
if (! empty($params['isDefault']) && 'on' == $params['isDefault']) {
404410
$mailboxConfiguration
405411
->setDefaultMailbox($mailbox)
406412
;

Controller/MailboxChannelXHR.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ public function processOutlookMailXHR(Request $request, MailboxService $mailboxS
153153
return new JsonResponse([
154154
'success' => false,
155155
'message' => $e->getMessage(),
156-
'params' => $request->get('email')
156+
'params' => $request->get('email')
157157
], 500);
158158
}
159159

Services/MailboxService.php

Lines changed: 35 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,10 @@ public function parseMailboxConfigurations(bool $ignoreInvalidAttributes = false
106106
// SMTP Configuration
107107
$smtpConfiguration = null;
108108

109-
if (!empty($params['smtp_server']) && !isset($params['smtp_server']['mailer_id'])) {
109+
if (
110+
! empty($params['smtp_server'])
111+
&& !isset($params['smtp_server']['mailer_id'])
112+
) {
110113
$smtpConfiguration = SMTP\Configuration::guessTransportDefinition($params['smtp_server']);
111114

112115
if ($smtpConfiguration instanceof SMTP\Transport\AppTransportConfigurationInterface) {
@@ -127,7 +130,7 @@ public function parseMailboxConfigurations(bool $ignoreInvalidAttributes = false
127130
->setPassword($params['smtp_server']['password'])
128131
;
129132

130-
if (!empty($params['smtp_server']['sender_address'])) {
133+
if (! empty($params['smtp_server']['sender_address'])) {
131134
$smtpConfiguration
132135
->setSenderAddress($params['smtp_server']['sender_address'])
133136
;
@@ -140,13 +143,13 @@ public function parseMailboxConfigurations(bool $ignoreInvalidAttributes = false
140143
->setName($params['name'])
141144
->setIsEnabled($params['enabled']);
142145

143-
if (!empty($imapConfiguration)) {
146+
if (! empty($imapConfiguration)) {
144147
$mailbox
145148
->setImapConfiguration($imapConfiguration)
146149
;
147150
}
148151

149-
if (!empty($smtpConfiguration)) {
152+
if (! empty($smtpConfiguration)) {
150153
$mailbox
151154
->setSmtpConfiguration($smtpConfiguration)
152155
;
@@ -280,8 +283,8 @@ private function searchTicketSubjectReference($senderEmail, $messageSubject) {
280283

281284
// Search Criteria: Find ticket based on subject
282285
if (
283-
!empty($senderEmail)
284-
&& !empty($messageSubject)
286+
! empty($senderEmail)
287+
&& ! empty($messageSubject)
285288
) {
286289
$threadRepository = $this->entityManager->getRepository(Thread::class);
287290
$ticket = $threadRepository->findTicketBySubject($senderEmail, $messageSubject);
@@ -318,7 +321,7 @@ private function searchExistingTickets(array $criterias = [])
318321
} else {
319322
$thread = $threadRepository->findOneByMessageId($criteriaValue);
320323

321-
if (!empty($thread)) {
324+
if (! empty($thread)) {
322325
return $thread->getTicket();
323326
}
324327
}
@@ -377,10 +380,10 @@ public function processMail($rawEmail)
377380

378381
$from = $this->parseAddress('from') ?: $this->parseAddress('sender');
379382
$addresses = [
380-
'from' => $this->getEmailAddress($from),
381-
'to' => empty($this->parseAddress('X-Forwarded-To')) ? $this->parseAddress('to') : $this->parseAddress('X-Forwarded-To'),
382-
'cc' => $this->parseAddress('cc'),
383-
'delivered-to' => $this->parseAddress('delivered-to'),
383+
'from' => $this->getEmailAddress($from),
384+
'to' => empty($this->parseAddress('X-Forwarded-To')) ? $this->parseAddress('to') : $this->parseAddress('X-Forwarded-To'),
385+
'cc' => $this->parseAddress('cc'),
386+
'delivered-to' => $this->parseAddress('delivered-to'),
384387
];
385388

386389
if (empty($addresses['from'])) {
@@ -468,7 +471,7 @@ public function processMail($rawEmail)
468471
$mailData['subject'] = $parser->getHeader('subject');
469472
$mailData['message'] = autolink($htmlFilter->addClassEmailReplyQuote($parser->getMessageBody('htmlEmbedded')));
470473
$mailData['attachments'] = $parser->getAttachments();
471-
}catch(\Exception $e){
474+
} catch(\Exception $e) {
472475
return [
473476
'error' => true,
474477
'message' => $e->getMessage(),
@@ -481,7 +484,7 @@ public function processMail($rawEmail)
481484

482485
$website = $this->entityManager->getRepository(Website::class)->findOneByCode('knowledgebase');
483486

484-
if (!empty($mailData['from']) && $this->container->get('ticket.service')->isEmailBlocked($mailData['from'], $website)) {
487+
if (! empty($mailData['from']) && $this->container->get('ticket.service')->isEmailBlocked($mailData['from'], $website)) {
485488
return [
486489
'message' => "Received email where the sender email address is present in the block list. Skipping this email from further processing.",
487490
'content' => [
@@ -530,7 +533,7 @@ public function processMail($rawEmail)
530533
return [
531534
'message' => "The contents of this email has already been processed.",
532535
'content' => [
533-
'from' => !empty($mailData['from']) ? $mailData['from'] : null,
536+
'from' => ! empty($mailData['from']) ? $mailData['from'] : null,
534537
'thread' => $thread->getId(),
535538
'ticket' => $ticket->getId(),
536539
],
@@ -547,13 +550,16 @@ public function processMail($rawEmail)
547550
];
548551
}
549552

550-
if ($ticket->getCustomer() && $ticket->getCustomer()->getEmail() == $mailData['from']) {
553+
if (
554+
$ticket->getCustomer()
555+
&& $ticket->getCustomer()->getEmail() == $mailData['from']
556+
) {
551557
// Reply from customer
552558
$user = $ticket->getCustomer();
553559

554560
$mailData['user'] = $user;
555561
$userDetails = $user->getCustomerInstance()->getPartialDetails();
556-
} else if ($this->entityManager->getRepository(Ticket::class)->isTicketCollaborator($ticket, $mailData['from'])){
562+
} else if ($this->entityManager->getRepository(Ticket::class)->isTicketCollaborator($ticket, $mailData['from'])) {
557563
// Reply from collaborator
558564
$user = $this->entityManager->getRepository(User::class)->findOneByEmail($mailData['from']);
559565

@@ -563,7 +569,10 @@ public function processMail($rawEmail)
563569
} else {
564570
$user = $this->entityManager->getRepository(User::class)->findOneByEmail($mailData['from']);
565571

566-
if (!empty($user) && null != $user->getAgentInstance()) {
572+
if (
573+
! empty($user)
574+
&& null != $user->getAgentInstance()
575+
) {
567576
$mailData['user'] = $user;
568577
$mailData['createdBy'] = 'agent';
569578
$userDetails = $user->getAgentInstance()->getPartialDetails();
@@ -589,7 +598,6 @@ public function processMail($rawEmail)
589598
$this->entityManager->flush();
590599

591600
$ticket->lastCollaborator = $user;
592-
593601

594602
$event = new CoreWorkflowEvents\Ticket\Collaborator();
595603
$event
@@ -780,18 +788,22 @@ public function processOutlookMail(array $outlookEmail)
780788
;
781789

782790
$this->container->get('event_dispatcher')->dispatch($event, 'uvdesk.automation.workflow.execute');
783-
} else if (false === $ticket->getIsTrashed() && strtolower($ticket->getStatus()->getCode()) != 'spam' && !empty($mailData['inReplyTo'])) {
791+
} else if (
792+
false === $ticket->getIsTrashed()
793+
&& strtolower($ticket->getStatus()->getCode()) != 'spam'
794+
&& ! empty($mailData['inReplyTo'])
795+
) {
784796
$mailData['threadType'] = 'reply';
785797
$thread = $this->entityManager->getRepository(Thread::class)->findOneByMessageId($mailData['messageId']);
786798
$ticketRef = $this->entityManager->getRepository(Ticket::class)->findById($ticket->getId());
787799
$referenceIds = explode(' ', $ticketRef[0]->getReferenceIds());
788800

789-
if (!empty($thread)) {
801+
if (! empty($thread)) {
790802
// Thread with the same message id exists skip process.
791803
return [
792804
'message' => "The contents of this email has already been processed 1.",
793805
'content' => [
794-
'from' => !empty($mailData['from']) ? $mailData['from'] : null,
806+
'from' => ! empty($mailData['from']) ? $mailData['from'] : null,
795807
'thread' => $thread->getId(),
796808
'ticket' => $ticket->getId(),
797809
],
@@ -823,8 +835,7 @@ public function processOutlookMail(array $outlookEmail)
823835
$userDetails = $user->getCustomerInstance()->getPartialDetails();
824836
} else {
825837
$user = $this->entityManager->getRepository(User::class)->findOneByEmail($mailData['from']);
826-
827-
if (!empty($user) && null != $user->getAgentInstance()) {
838+
if (! empty($user) && null != $user->getAgentInstance()) {
828839
$mailData['user'] = $user;
829840
$mailData['createdBy'] = 'agent';
830841
$userDetails = $user->getAgentInstance()->getPartialDetails();
@@ -865,7 +876,7 @@ public function processOutlookMail(array $outlookEmail)
865876

866877
$thread = $this->container->get('ticket.service')->createThread($ticket, $mailData);
867878

868-
if($thread->getThreadType() == 'reply') {
879+
if ($thread->getThreadType() == 'reply') {
869880
if ($thread->getCreatedBy() == 'customer') {
870881
$event = new CoreWorkflowEvents\Ticket\CustomerReply();
871882
$event

Utils/MailboxConfiguration.php

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ public function addMailbox(Mailbox $mailbox)
2323
$imapConfiguration = $mailbox->getImapConfiguration();
2424

2525
if (
26-
!empty($imapConfiguration)
26+
! empty($imapConfiguration)
2727
&& !$imapConfiguration instanceof IMAP\Transport\AppTransportConfigurationInterface
2828
&& !$imapConfiguration instanceof IMAP\Transport\SimpleTransportConfigurationInterface
2929
) {
@@ -59,7 +59,10 @@ public function getMailboxes(): array
5959

6060
public function getDefaultMailbox(): ?Mailbox
6161
{
62-
if (!empty($this->defaultMailbox) && !empty($this->collection[$this->defaultMailbox])) {
62+
if (
63+
! empty($this->defaultMailbox)
64+
&& !empty($this->collection[$this->defaultMailbox])
65+
) {
6366
return $this->collection[$this->defaultMailbox];
6467
}
6568

@@ -81,7 +84,7 @@ public function setDefaultMailbox(Mailbox $mailbox): self
8184

8285
public function getMailboxById($mailboxId): ?Mailbox
8386
{
84-
if (!empty($this->collection[$mailboxId])) {
87+
if (! empty($this->collection[$mailboxId])) {
8588
return $this->collection[$mailboxId];
8689
}
8790

@@ -93,7 +96,7 @@ public function getMailboxByEmailAddress($mailboxEmail): ?Mailbox
9396
foreach ($this->collection as $mailbox) {
9497
$smtpConfiguration = $mailbox->getSmtpConfiguration();
9598

96-
if (!empty($smtpConfiguration) && $smtpConfiguration->getUsername() == $mailboxEmail) {
99+
if (! empty($smtpConfiguration) && $smtpConfiguration->getUsername() == $mailboxEmail) {
97100
return $mailbox;
98101
}
99102
}
@@ -106,7 +109,7 @@ public function getIncomingMailboxByEmailAddress($mailboxEmail): ?Mailbox
106109
foreach ($this->collection as $mailbox) {
107110
$imapConfiguration = $mailbox->getImapConfiguration();
108111

109-
if (!empty($imapConfiguration) && $imapConfiguration->getUsername() == $mailboxEmail) {
112+
if (! empty($imapConfiguration) && $imapConfiguration->getUsername() == $mailboxEmail) {
110113
return $mailbox;
111114
}
112115
}
@@ -121,7 +124,7 @@ public function getOutgoingMailboxByEmailAddress($mailboxEmail): ?Mailbox
121124

122125
public function __toString()
123126
{
124-
if (!empty($this->collection)) {
127+
if (! empty($this->collection)) {
125128
$mailboxes = array_reduce($this->collection, function($mailboxes, $mailbox) {
126129
return $mailboxes . (string) $mailbox;
127130
}, '');

0 commit comments

Comments
 (0)