From 5136f6622e7ca87695c158a31cb8e78299f1967a Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Wed, 3 Jun 2015 14:26:22 +0200 Subject: Allow registration, add support for creating test accounts, rename satellite to organization --- modules/register.inc.php | 31 +++++++++++++++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) (limited to 'modules/register.inc.php') diff --git a/modules/register.inc.php b/modules/register.inc.php index 0fec4c7..d24d304 100644 --- a/modules/register.inc.php +++ b/modules/register.inc.php @@ -19,10 +19,37 @@ class Page_Register extends Page Util::redirect('?do=Main'); } + if (Request::post('testlogin')) { + // Check if one of firstname, lastname or email matches + $user = Database::queryFirst('SELECT firstname, lastname, email, organizationid FROM user WHERE login = :login LIMIT 1', array('login' => Request::post('testlogin'))); + if ($user === false || User::getOrganizationId() !== $user['organizationid']) { + // Invalid Login + Message::addError('Test-Account {{0}} unbekannt. ' + . ' Bitte wenden Sie sich an den bwLehrpool-Support, wenn dieser Test-Account Ihnen gehört.', Request::post('testlogin')); + Util::redirect('?do=Main'); + } + if (User::getLastName() !== $user['lastname'] + && User::getFirstName() !== $user['firstname'] + && User::getMail() !== $user['email']) { + // No match by personal information + Message::addError('Ihre Metadaten stimmen nicht mit dem Test-Account {{0}} überein. ' + . ' Bitte wenden Sie sich an den bwLehrpool-Support, wenn dieser Test-Account Ihnen gehört.', Request::post('testlogin')); + Util::redirect('?do=Main'); + } + // Check if anonymous is requested, but user shared VMs with his testacc + if (Image::getImageCount(Request::post('testlogin')) > 0) { + Message::addError('Sie haben mit Ihrem Test-Account Virtuelle Maschinen auf den Zentral-Server hochgeladen und können sich daher nicht ohne Teilnahme am landesweiten VM-Austausch registrieren.'); + Util::redirect('?do=Main'); + } + } + if (Request::post('agb') === 'on') { // Put stuff in DB - User::deploy(Request::post('share') !== 'on'); - Message::addSuccess('Ihr Konto wurde freigeschaltet'); + if (User::deploy(Request::post('share') !== 'on', Request::post('testlogin'))) { + Message::addSuccess('Ihr Konto wurde freigeschaltet'); + } else { + Message::addError('Fehler beim Zusammenführen mit Ihrem Test-Account. Bitte wenden Sie sich an den Support.'); + } Util::redirect('?do=Main'); } Message::addError('Sie müssen den Nutzungsbedingungen zustimmen'); -- cgit v1.2.3-55-g7522