コード例 #1
0
ファイル: AddUsers.php プロジェクト: Tom-Byrne/gocdb
 //     }
 //     $rightWhiteDNs[rtrim($dn)] = true;
 $doctrineUser = new User();
 $doctrineUser->setForename((string) $user->FORENAME);
 $doctrineUser->setSurname((string) $user->SURNAME);
 $doctrineUser->setTitle((string) $user->TITLE);
 $doctrineUser->setEmail((string) $user->EMAIL);
 $doctrineUser->setTelephone((string) $user->TEL);
 $doctrineUser->setWorkingHoursStart((string) $user->WORKING_HOURS_START);
 $doctrineUser->setWorkingHoursEnd((string) $user->WORKING_HOURS_END);
 //$doctrineUser->setCertificateDn((string) $user->CERTDN);
 $doctrineUser->setCertificateDn($dn);
 $doctrineUser->setAdmin(false);
 //  echo "DN is " . (string) $doctrineUser->getCertificateDn() . ".\r\n";
 // Roughly half of users don't have a home site set
 if ($user->HOMESITE != "" && !isBad($user->HOMESITE)) {
     // get the home site entity
     $dql = "SELECT s from Site s WHERE s.shortName = ?1";
     $homeSites = $entityManager->createQuery($dql)->setParameter(1, (string) $user->HOMESITE)->getResult();
     /* Error checking: ensure each "home site" refers to exactly
      * one home site */
     if (count($homeSites) !== 1) {
         throw new Exception(count($homeSites) . " sites found with short name: " . $user->HOMESITE . ". user DN is  " . $user->CERTDN);
     }
     foreach ($homeSites as $result) {
         $homeSite = $result;
     }
     $doctrineUser->setHomeSiteDoJoin($homeSite);
 }
 //Make Dave an admin
 if ($doctrineUser->getCertificateDn() == "/C=UK/O=eScience/OU=CLRC/L=DL/CN=david meredith") {
コード例 #2
0
ファイル: AddSiteRoles.php プロジェクト: Tom-Byrne/gocdb
 // * one user */
 if (count($users) !== 1) {
     foreach ($users as $u) {
         echo "Certificate DN is " . $u->getCertificateDn() . "-------";
     }
     throw new Exception(count($users) . " users found with DN: " . $user->CERTDN);
 }
 foreach ($users as $doctrineUser) {
     $doctrineUser = $doctrineUser;
 }
 if (!$doctrineUser instanceof User) {
     throw new Exception("Not a doctrine user");
 }
 // Check for invalid sites and skip adding this role
 // typically these sites don't have an NGI, country or production status
 if (isBad((string) $role->ON_ENTITY)) {
     continue;
 }
 // get the site entity
 $dql = "SELECT s FROM Site s WHERE s.shortName = ?1";
 $sites = $entityManager->createQuery($dql)->setParameter(1, (string) $role->ON_ENTITY)->getResult();
 // /* Error checking: ensure each "site" refers to exactly
 // * one site */
 if (count($sites) !== 1) {
     throw new Exception(count($sites) . " sites found with short name: " . $role->ON_ENTITY);
 }
 foreach ($sites as $doctrineSite) {
     $doctrineSite = $doctrineSite;
 }
 if (!$doctrineSite instanceof Site) {
     throw new Exception("Not a doctrine site");