function sendInvitationForDevice($device, $mailer, $url, $version, $msg, $nbInvitations, $entityManager)
{
    $udid = $device->getUdid();
    $mail = $device->getTester()->getEmail();
    $token = Tools::randomAppleRequestId();
    $app = $version->getName();
    $ver = $version->getVersion();
    if (empty($udid)) {
        $result = send_enroll_mail($mailer, $url, $app, $ver, $msg, $mail, $token);
    } else {
        $result = send_link_mail($mailer, $url, $app, $ver, $msg, $mail, $udid, $token);
    }
    // Ok
    if ($result == 1) {
        $nbInvitations++;
        //TODO: if tester does not exist, create it.
        $invitation = new Invitation();
        $invitation->setSubject("Mail subject");
        $invitation->setText($msg);
        $invitation->setToken($token);
        $invitation->setDateSent(new \DateTime("now"));
        $invitation->setStatus(Invitation::STATUS_SENT);
        //$invitation->setDeveloper(//TODO:)
        $invitation->setTester($device->getTester());
        $invitation->setDevice($device);
        $invitation->setVersion($version);
        $entityManager->persist($device);
        $entityManager->persist($invitation);
        $entityManager->flush();
    } else {
        $sendMailError += 'The invitation was not sent to: ' . $email . '</br>';
    }
}
Ejemplo n.º 2
0
$device = $invitation->getDevice();
if ($device == NULL) {
    $device = new Device();
}
$device->setName($plistData['DEVICE_NAME']);
$device->setDateCreation(new \DateTime("now"));
$device->setSystemVersion($plistData['VERSION']);
$device->setModel($plistData['PRODUCT']);
$device->setUdid($plistData['UDID']);
$device->addInvitation($invitation);
$device->setTester($tester);
$invitation->setStatus(Invitation::STATUS_UDID);
$entityManager->persist($device);
$entityManager->persist($invitation);
$entityManager->flush();
//Send the confirmation email
$smtp = Swift_SmtpTransport::newInstance($CRED_SMTP, $CRED_SMTP_PORT, 'ssl')->setUsername($CRED_SMTP_USR)->setPassword($CRED_SMTP_PWD);
$mailer = Swift_Mailer::newInstance($smtp);
$url = Tools::rel2abs('runthisapp.php', Tools::current_url());
$msg = 'Click on following link to install your app: ';
$udid = $device->getUdid();
$mail = $device->getTester()->getEmail();
$token = $_GET['key'];
$app = $invitation->getVersion()->getName();
$ver = $invitation->getVersion()->getVersion();
$result = send_link_mail($mailer, $url, $app, $ver, $msg, $mail, $udid, $token);
// Error
if ($result != 1) {
    error_log('RTA::Error sending email', 0);
    die;
}