Example #1
0
 public static function getRecords($parameters)
 {
     $query = Contact::builder();
     if (isset($parameters['group_id_042'])) {
         $query->whereIn('id_041', function ($query) use($parameters) {
             // select contacts from this groups
             $query->select('contact_id_042')->from('005_042_contacts_groups')->whereIn('group_id_042', [$parameters['group_id_042']])->groupBy('contact_id_042')->get();
         });
     }
     if (isset($args['groupBy'])) {
         $query->groupBy($args['groupBy']);
     }
     return $query->get();
 }
Example #2
0
 /**
  * Function to search pattern inside message
  * @param $message
  * @param $patterns
  * @return array
  */
 public static function checkEmailPattern($message, $patterns)
 {
     $response = [];
     $patternFound = false;
     $objPattern = null;
     $subject = $message->getSubject();
     $body = $message->getMessageBody();
     foreach ($patterns as $pattern) {
         $subjectFound = false;
         $messageFound = false;
         if (empty($pattern->subject_049) == false && strpos($subject, $pattern->subject_049) !== false) {
             $subjectFound = true;
         }
         if (empty($pattern->message_049) === false && strpos($body, $pattern->message_049) !== false) {
             $messageFound = true;
         }
         if ($pattern->operator_049 == 'and' && $subjectFound && $messageFound) {
             $patternFound = true;
             $objPattern = $pattern;
             break;
         } elseif (($pattern->operator_049 == 'or' || $pattern->operator_049 == null) && ($subjectFound || $messageFound)) {
             $patternFound = true;
             $objPattern = $pattern;
             break;
         }
     }
     if ($patternFound) {
         $response['success'] = true;
         $response['pattern'] = $objPattern;
         $emails = Miscellaneous::extractEmail($body);
         $response['contacts'] = Contact::builder()->whereIn('email_041', $emails)->where('unsubscribe_email_041', false)->get();
     } else {
         $response['success'] = false;
         $response['pattern'] = false;
         $emails = Miscellaneous::extractEmail($body);
         $response['contacts'] = Contact::builder()->whereIn('email_041', $emails)->where('unsubscribe_email_041', false)->get();
     }
     return $response;
 }