/** * Function to send email to applicant about successfull application for job * * @param \Opit\OpitHrm\HiringBundle\Entity\JobPosition $jobPosition * @param \Opit\OpitHrm\HiringBundle\Entity\Applicant $applicant */ public function sendExternalApplicantMail(JobPosition $jobPosition, Applicant $applicant) { $templateVars = array(); $templateVars['jobPosition'] = $jobPosition; $templateVars['applicant'] = $applicant; $this->mailer->setRecipient($applicant->getEmail()); $this->mailer->setSubject('[OPIT-HRM] - Successfully applied for ' . $jobPosition->getJobTitle() . ' (' . $jobPosition->getJobPositionId() . ')'); $this->mailer->setBodyByTemplate('OpitOpitHrmHiringBundle:Mail:externalApplicationSuccessful.html.twig', $templateVars); $this->mailer->sendMail(); }
/** * Check if applicant with email or phone number has been added to a job position * * @param \Opit\OpitHrm\HiringBundle\Entity\Applicant $applicant * @return type */ public function findByEmailPhoneNumber(Applicant $applicant) { $dq = $this->createQueryBuilder('a'); $dq->select('count(a.id)'); $dq->innerJoin('a.jobPosition', 'jp'); $dq->where($dq->expr()->eq('jp.id', ':jpId')); $dq->andWhere($dq->expr()->orX($dq->expr()->eq('a.email', ':email'), $dq->expr()->eq('a.phoneNumber', ':phoneNumber'))); $dq->setParameter(':email', $applicant->getEmail()); $dq->setParameter(':phoneNumber', $applicant->getPhoneNumber()); $dq->setParameter(':jpId', $applicant->getJobPosition()->getId()); return $dq->getQuery()->getSingleScalarResult(); }