public function testBasics() { $user = new User(); $user->setUsername("felicitus"); $this->assertEquals($user->getUsername(), "felicitus"); $user->setUsername("Timo A. Hummel"); $this->assertEquals($user->getUsername(), "Timo A. Hummel"); $user->setPassword("foobar"); $hashedPassword = "******"; $this->assertEquals($user->comparePassword("foobar"), true, "Error comparing passwords: PasswordTest01"); $this->assertEquals($user->compareHashedPassword($hashedPassword), true, "Error comparing passwords: PasswordTest02"); $user->setHashedPassword($hashedPassword); $this->assertEquals($user->comparePassword("foobar"), true, "Error comparing passwords: PasswordTest03"); $this->assertEquals($user->compareHashedPassword($hashedPassword), true, "Error comparing passwords: PasswordTest04"); }
public function run() { $dql = "SELECT COUNT(u) FROM PartKeepr\\User\\User u WHERE u.username = :username OR u.admin = :admin"; $query = $this->entityManager->createQuery($dql); $query->setParameter("username", "admin"); $query->setParameter("admin", true); if ($query->getSingleScalarResult() == 0) { $user = new User(); $user->setUsername("admin"); $user->setPassword("admin"); $user->setAdmin(true); $this->entityManager->persist($user); $this->entityManager->flush(); $this->logMessage("Admin User created"); } else { $this->logMessage("Skipped admin user creation, because an user named 'admin'" . "or another user with an admin flag already exists"); } }
/** * Initializes a bootstrapped PartKeepr environment. * * This is done within a function because we don't want to pollute the globals, which would give the following message * during unit tests: * * "PDOException: You cannot serialize or unserialize PDO instances" */ function initializeEnvironment() { PartKeepr::initialize("test"); $tool = new \Doctrine\ORM\Tools\SchemaTool(PartKeepr::getEM()); $classes = PartKeepr::getClassMetaData(); $tool->dropDatabase(); $tool->createSchema($classes); /* Some very basic installation things */ PartCategoryManager::getInstance()->ensureRootExists(); /* Create a blank admin user */ $user = new User(); $user->setUsername("admin"); $user->setPassword("admin"); $user->setAdmin(true); PartKeepr::getEM()->persist($user); /* Create a blank regular user */ $user2 = new User(); $user2->setUsername("regular"); $user2->setPassword("regular"); $user2->setAdmin(false); PartKeepr::getEM()->persist($user2); PartKeepr::getEM()->flush(); }
$aParameters = array(); $aParameters["doctrine_orm_version"] = \Doctrine\ORM\Version::VERSION; $aParameters["doctrine_dbal_version"] = \Doctrine\DBAL\Version::VERSION; $aParameters["doctrine_common_version"] = \Doctrine\Common\Version::VERSION; $aParameters["php_version"] = phpversion(); /* HTTP auth */ if (Configuration::getOption("partkeepr.auth.http", false) === true) { if (!isset($_SERVER["PHP_AUTH_USER"])) { // @todo Redirect to permission denied page die("Permission denied"); } try { $user = User::loadByName($_SERVER['PHP_AUTH_USER']); } catch (\Doctrine\ORM\NoResultException $e) { $user = new User(); $user->setUsername($_SERVER['PHP_AUTH_USER']); $user->setPassword("invalid"); PartKeepr::getEM()->persist($user); PartKeepr::getEM()->flush(); } $session = SessionManager::getInstance()->startSession($user); $aParameters["autoLoginUsername"] = $user->getUsername(); $aParameters["auto_start_session"] = $session->getSessionID(); $aPreferences = array(); foreach ($user->getPreferences() as $result) { $aPreferences[] = $result->serialize(); } $aParameters["userPreferences"] = array("response" => array("data" => $aPreferences)); } \Twig_Autoloader::register(); $loader = new \Twig_Loader_Filesystem(dirname(__FILE__) . '/templates/');