diff --git a/routes/routes-account.js b/routes/routes-account.js
index 10f9ae7e7b06b361800e0f4c8dd2dfcf8b37efa8..40c54b58c2c32ea7a11ce12758da2ac6987d22cc 100644
--- a/routes/routes-account.js
+++ b/routes/routes-account.js
@@ -523,60 +523,71 @@ module.exports = function (app, config, passport, i18n) {
createdDate: curDate.toISOString().slice(0,10)
}
- let token
- async.waterfall([
- function(done) {
- crypto.randomBytes(20, function(err, buf) {
- token = buf.toString('hex');
- done(err, token);
- });
- },
- // encrypt password
- function(token, done) {
- bcrypt.genSalt(saltRounds, function(err, salt) {
- bcrypt.hash(req.body.inputPassword, salt, function(err, hash) {
- var newAccount = {
- profile: userData,
- password: hash,
- verificationToken: token
- }
- done(err, newAccount)
+ var userEmail = userData.email
+ var pos = userEmail.indexOf('@')
+ var emailLength = userEmail.length
+ var emailDomain = userEmail.slice(pos, emailLength);
+
+ if ( emailDomain.toLowerCase() == "@hft-stuttgart.de") {
+ req.flash('error', "Fehlgeschlagen: HFT-Account")
+ res.redirect('/account/registration');
+ }
+ else {
+ let token
+ async.waterfall([
+ function(done) {
+ crypto.randomBytes(20, function(err, buf) {
+ token = buf.toString('hex');
+ done(err, token);
});
- });
- },
- // save data
- function(newAccount, err) {
- methods.registerNewUser(newAccount, function(err){
- if (err) {
- req.flash('error', "Fehlgeschlagen")
- }
- else {
- // send email
- var emailSubject = "Bitte bestätigen Sie Ihr M4_LAB Benutzerkonto"
- var emailContent = "Lieber Nutzer,\n\n"+
- "vielen Dank für Ihre Anmeldung am Transferportal der HFT Stuttgart.\n"+
- "Um Ihre Anmeldung zu bestätigen, klicken Sie bitte diesen Link: "+config.app.host+"/verifyAccount?token="+token+"\n"+
- "Ohne Bestätigung Ihres Kontos müssen wir Ihr Konto leider nach 7 Tagen löschen.\n\n"+
- "Sollten Sie sich selbst nicht mit Ihren Daten am Transferportal registriert haben, ignorieren Sie diese E-Mail bitte.\n\n"+mailSignature
-
- mailer.options.to = req.body.inputEmail;
- mailer.options.subject = emailSubject;
- mailer.options.text = emailContent;
- mailer.transport.sendMail(mailer.options, function(err) {
- if (err) {
- console.log('cannot send email')
- throw err
+ },
+ // encrypt password
+ function(token, done) {
+ bcrypt.genSalt(saltRounds, function(err, salt) {
+ bcrypt.hash(req.body.inputPassword, salt, function(err, hash) {
+ var newAccount = {
+ profile: userData,
+ password: hash,
+ verificationToken: token
}
- })
- // user feedback
- req.flash('success', 'Vielen Dank für Ihre Registrierung!'+'\r\n\r\n'+
- 'Wir haben Ihnen eine E-Mail an Ihre verwendete Adresse gesendet. Diese enthält einen Link zur Bestätigung Ihres Accounts.'+'\r\n'+
- 'Wenn Sie die Mail nicht in ihrem Postfach vorfinden, prüfen Sie bitte auch Ihren Spam-Ordner.')
- }
- res.redirect('/account/registration')
- })
- }
- ])
+ done(err, newAccount)
+ });
+ });
+ },
+ // save data
+ function(newAccount, err) {
+ methods.registerNewUser(newAccount, function(err){
+ if (err) {
+ req.flash('error', "Fehlgeschlagen")
+ }
+ else {
+ // send email
+ var emailSubject = "Bitte bestätigen Sie Ihr M4_LAB Benutzerkonto"
+ var emailContent = "Lieber Nutzer,\n\n"+
+ "vielen Dank für Ihre Anmeldung am Transferportal der HFT Stuttgart.\n"+
+ "Um Ihre Anmeldung zu bestätigen, klicken Sie bitte diesen Link: "+config.app.host+"/verifyAccount?token="+token+"\n"+
+ "Ohne Bestätigung Ihres Kontos müssen wir Ihr Konto leider nach 7 Tagen löschen.\n\n"+
+ "Sollten Sie sich selbst nicht mit Ihren Daten am Transferportal registriert haben, ignorieren Sie diese E-Mail bitte.\n\n"+mailSignature
+
+ mailer.options.to = req.body.inputEmail;
+ mailer.options.subject = emailSubject;
+ mailer.options.text = emailContent;
+ mailer.transport.sendMail(mailer.options, function(err) {
+ if (err) {
+ console.log('cannot send email')
+ throw err
+ }
+ })
+ // user feedback
+ req.flash('success', 'Vielen Dank für Ihre Registrierung!'+'\r\n\r\n'+
+ 'Wir haben Ihnen eine E-Mail an Ihre verwendete Adresse gesendet. Diese enthält einen Link zur Bestätigung Ihres Accounts.'+'\r\n'+
+ 'Wenn Sie die Mail nicht in ihrem Postfach vorfinden, prüfen Sie bitte auch Ihren Spam-Ordner.')
+ }
+ res.redirect('/account/registration')
+ })
+ }
+ ])
+ }
})
// ============= USER VERIFICATION ================================
diff --git a/views/DE/account/registration.pug b/views/DE/account/registration.pug
index 64c796ea60df371673d41920af0d5ef04e9d6c2e..dc42f50cf8f59a9e73aa85130865fb444d450a5c 100644
--- a/views/DE/account/registration.pug
+++ b/views/DE/account/registration.pug
@@ -14,9 +14,12 @@ html(lang="de")
body
div(class="container-fluid")
div(class="row")
- div(class="col-md-6 offset-md-2")
+ div(class="pt-4 pb-4 col-md-6 offset-md-2")
h3(class="mb-3 font-weight-bold") Neues Benutzerkonto anlegen
div(class="col-md-6 offset-md-3")
+ div(class="alert alert-info" role="alert")
+ | Auf dieser Seite können sich Benutzer, die keinen Account an der HFT haben, registrieren.
+ | Um sich mit ihrem HFT-Account anzumelden, klicken Sie hier.
if successes
for success in successes
div.alert.alert-success.alert-dismissible #{ success }
@@ -26,7 +29,7 @@ html(lang="de")
div.alert.alert-danger.alert-dismissible.fade.show #{ error }
a(class="close", href="#", data-dismiss="alert", aria-label="close") ×
form(method="POST")
- h5(class="mb-3 font-weight-bold") Anmeldedaten
+ h5(class="pt-2 mb-3 font-weight-bold") Anmeldedaten
div(class='form-row')
div(class='form-group col-md-6')
input#inputEmail(name="inputEmail", type="email", class="form-control", placeholder="E-Mail-Adresse*", maxlength="45" required)
@@ -34,7 +37,7 @@ html(lang="de")
div(class="form-group col-md-6")
input#inputPassword(name="inputPassword", type="password", class="form-control", data-toggle="password", placeholder="Passwort*", maxlength="45" required)
span#passwordWarning(class='warning')
- h5(class="mb-3 font-weight-bold") Benutzerprofil
+ h5(class="pt-2 mb-3 font-weight-bold") Benutzerprofil
div(class="form-row")
div(class='form-group col-md-2')
select#inputSalutation(name="inputSalutation", class="form-control")