summaryrefslogtreecommitdiffstats
path: root/modules/register.inc.php
diff options
context:
space:
mode:
authorSimon Rettberg2015-06-03 14:26:22 +0200
committerSimon Rettberg2015-06-03 14:26:22 +0200
commit5136f6622e7ca87695c158a31cb8e78299f1967a (patch)
tree554c58c63fdbf58401fcf4e49ac9685e1eff9634 /modules/register.inc.php
parentAdd AddUser mask for creating test accounts (diff)
downloadbwlp-webadmin-5136f6622e7ca87695c158a31cb8e78299f1967a.tar.gz
bwlp-webadmin-5136f6622e7ca87695c158a31cb8e78299f1967a.tar.xz
bwlp-webadmin-5136f6622e7ca87695c158a31cb8e78299f1967a.zip
Allow registration, add support for creating test accounts, rename satellite to organization
Diffstat (limited to 'modules/register.inc.php')
-rw-r--r--modules/register.inc.php31
1 files changed, 29 insertions, 2 deletions
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');