public function addEventIntoEventsTableForOnlineCustomers($to_emails_array, $fromName, $subject) { $customerAlertsManager = CustomerAlertsManager::getInstance($this->config, $this->args); $onlineUsersManager = OnlineUsersManager::getInstance($this->config, $this->args); $customerLocalEmailsManager = CustomerLocalEmailsManager::getInstance($this->config, $this->args); $onlineRegisteredCustomers = $onlineUsersManager->getOnlineRegisteredCustomers(); foreach ($onlineRegisteredCustomers as $onlineUsersDto) { $custEmail = $onlineUsersDto->getEmail(); if (in_array($custEmail, $to_emails_array)) { $customerInboxUnreadEmailsCount = $customerLocalEmailsManager->getCustomerInboxUnreadEmailsCountCustomerEmail($custEmail); $customerAlertsManager->addNewEmailCustomerAlert($custEmail, $fromName, $subject, $customerInboxUnreadEmailsCount, $onlineUsersDto->getLanguageCode()); } } }
public function addEventIntoEventsTableForOnlineCustomers($company) { $customerAlertsManager = CustomerAlertsManager::getInstance($this->config, $this->args); $companyDealersManager = CompanyDealersManager::getInstance($this->config, $this->args); $onlineUsersManager = OnlineUsersManager::getInstance($this->config, $this->args); $userManager = UserManager::getInstance($this->config, $this->args); $onlineRegisteredCustomers = $onlineUsersManager->getOnlineRegisteredCustomers(); foreach ($onlineRegisteredCustomers as $onlineUsersDto) { $customerType = $userManager->getCustomerTypeByEmail($onlineUsersDto->getEmail()); if ($customerType === UserGroups::$USER) { $userCustomer = $userManager->getUserByEmail($onlineUsersDto->getEmail()); $dealerDto = $companyDealersManager->getByCompanyIdAndUserId($userCustomer->getId(), $company->getId()); if (isset($dealerDto)) { $customerAlertsManager->addPriceUploadCustomerAlert($onlineUsersDto->getEmail(), $company, $onlineUsersDto->getLanguageCode()); } } elseif ($customerType === UserGroups::$COMPANY || $customerType === UserGroups::$ADMIN) { $customerAlertsManager->addPriceUploadCustomerAlert($onlineUsersDto->getEmail(), $company); } } }
private function getOnlineAdminsEmails() { $adminManager = AdminManager::getInstance(null, null); $adminsDtos = $adminManager->selectAll(); $onlineUsersManager = OnlineUsersManager::getInstance(null, null); $ret = array(); foreach ($adminsDtos as $adminDto) { $adminEmail = $adminDto->getEmail(); $onlineAdminDto = $onlineUsersManager->selectByField('email', $adminEmail); if (!empty($onlineAdminDto)) { $ret[] = $adminEmail; } } return $ret; }
public function load() { $onlineUsersManager = OnlineUsersManager::getInstance($this->config, $this->args); $ac = $onlineUsersManager->selectAll(); $this->addParam('onlineusers', $ac); }