User edit renberakva
This commit is contained in:
parent
844ec27281
commit
53408ba354
|
|
@ -105,7 +105,7 @@ const UserSchema = mongoose.Schema({
|
|||
}
|
||||
},
|
||||
canDownload:{
|
||||
type: String,
|
||||
type: Boolean,
|
||||
default: false,
|
||||
required: true
|
||||
},
|
||||
|
|
|
|||
|
|
@ -7,6 +7,8 @@ const checkUserAdmin3 = require('../js/helperFuncs');
|
|||
let User = require('../models/user');
|
||||
var utils = require('../js/utils');
|
||||
var nodemailer = require('nodemailer');
|
||||
var generator = require('generate-password');
|
||||
const emailFelado='klportal@outlook.com';
|
||||
String.prototype.replaceAt=function(index, replacement) {
|
||||
return this.substr(0, index) + replacement+ this.substr(index + replacement.length);
|
||||
}
|
||||
|
|
@ -25,7 +27,26 @@ var transporter = nodemailer.createTransport({
|
|||
pass: 'IoSn1Pb1'
|
||||
}
|
||||
});
|
||||
// Regisztrációs email kiküldése
|
||||
function sendEmailNewPasswordNotify(user,visiblePassword)
|
||||
{
|
||||
|
||||
var mailOptions = {
|
||||
from: emailFelado,//'munkanyilvantarto@klelectro.hu',//'szamlaertesito@gmail.com',
|
||||
to: user.email,
|
||||
subject: 'Munkanyílvántartó új jelszó.',
|
||||
text: 'That was easy!'
|
||||
};
|
||||
|
||||
mailOptions.text='Tisztelt '+user.name+'!\nÖn új jelszót kapott.\n\nBelépési adatok:\nWeblap: www.iotechnic.eu\nFelhasználó név: '+user.username+'\nJelszó: '+visiblePassword+'\n';
|
||||
transporter.sendMail(mailOptions, function(error, info){
|
||||
if (error) {
|
||||
console.log(error);
|
||||
} else {
|
||||
console.log('Email sent: ' + info.response);
|
||||
}
|
||||
});
|
||||
}
|
||||
function sendEmailRegisterNotify(username,pwd,email)
|
||||
{
|
||||
|
||||
|
|
@ -165,6 +186,48 @@ router.get('/user_edit/:id', utils.ensureAuthenticated,function(req, res){
|
|||
|
||||
});
|
||||
|
||||
// New Api key
|
||||
router.get('/newPassword/:id', utils.ensureAuthenticated,function (req, res) {
|
||||
//calling.aFunction();
|
||||
|
||||
|
||||
let user={};
|
||||
|
||||
var password = generator.generate({
|
||||
length: 10,
|
||||
numbers: true,
|
||||
symbols: true,
|
||||
});
|
||||
|
||||
bcrypt.genSalt(10, function(err, salt){
|
||||
bcrypt.hash(password, salt, function(err, hash){
|
||||
if(err){
|
||||
console.log(err);
|
||||
res.send({'result': 'error'});
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
user.password=hash;
|
||||
let query = {_id:req.params.id}
|
||||
User.findOneAndUpdate(query,user,{ returnNewDocument: true },function(err,document){
|
||||
if(err){
|
||||
console.log(err);
|
||||
res.send({'result': 'error'});
|
||||
}else{
|
||||
sendEmailNewPasswordNotify(document,password)
|
||||
//console.log(document.name);
|
||||
res.send({'result': 'success'});
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
});
|
||||
|
||||
// Register Proccess
|
||||
router.post('/user_edit/:id', function(req, res){
|
||||
let user={};
|
||||
|
|
@ -186,15 +249,15 @@ router.post('/user_edit/:id', function(req, res){
|
|||
} else {
|
||||
|
||||
let query = {_id:req.user._id}
|
||||
var oldpass=req.body.passwordOld;
|
||||
//var oldpass=req.body.passwordOld;
|
||||
console.log("Current User:");
|
||||
console.log(req.user);
|
||||
console.log(oldpass);
|
||||
// console.log(oldpass);
|
||||
User.findById(req.params.id,function(err,eUser){ // eUser=aki adatait szerkesztjük
|
||||
query = {_id:eUser._id}
|
||||
eUser.comparePassword(oldpass, function(err, isMatch) {
|
||||
// eUser.comparePassword(oldpass, function(err, isMatch) {
|
||||
//req.user.comparePassword(oldpass, function(err, isMatch) {
|
||||
if (isMatch) {
|
||||
// if (isMatch) {
|
||||
|
||||
eUser.name = req.body.name;
|
||||
eUser.email = req.body.email;
|
||||
|
|
@ -228,7 +291,7 @@ router.post('/user_edit/:id', function(req, res){
|
|||
console.log(err);
|
||||
}
|
||||
eUser.password = hash;
|
||||
User.update(query, eUser, function(err){
|
||||
User.updateOne(query, eUser, function(err){
|
||||
if(err){
|
||||
req.flash('success','Felhasználói adatok módosítása sikertelen');
|
||||
console.log(err);
|
||||
|
|
@ -246,7 +309,7 @@ router.post('/user_edit/:id', function(req, res){
|
|||
else
|
||||
{
|
||||
|
||||
User.update(query, eUser, function(err){
|
||||
User.updateOne(query, eUser, function(err){
|
||||
if(err){
|
||||
req.flash('success','Felhasználói adatok módosítása sikertelen');
|
||||
console.log(err);
|
||||
|
|
@ -258,12 +321,12 @@ router.post('/user_edit/:id', function(req, res){
|
|||
}
|
||||
});
|
||||
}
|
||||
} else {
|
||||
/* } else {
|
||||
req.flash('error','Hejtelen régi jelszót adott meg');
|
||||
res.redirect('/users/user_edit/'+eUser._id);
|
||||
console.log('Incorrect password.' );
|
||||
}
|
||||
});
|
||||
}*/
|
||||
// });
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ extends layout
|
|||
|
||||
block content
|
||||
h1 Felhasználói adatok módisítása
|
||||
label(id='uid', style='display:none;') #{user._id}
|
||||
form(method='POST', action='/users/user_edit/'+user._id)
|
||||
#form-group
|
||||
label Teljes név:
|
||||
|
|
@ -19,7 +20,7 @@ block content
|
|||
label Jelszó újra:
|
||||
input.form-control(name='password2',type='password', value= user.password)
|
||||
br
|
||||
#form-group
|
||||
//-#form-group
|
||||
label Régi jelszó:
|
||||
input.form-control(name='passwordOld',type='password')
|
||||
br
|
||||
|
|
@ -37,10 +38,10 @@ block content
|
|||
.container-fluid(style='border:1px solid #cecece;radius:5px;')
|
||||
.row
|
||||
.col-md-3
|
||||
input#defaultCheck2.form-check-input(name='chkIsadmin',type='checkbox', checked=user.isAdmin)
|
||||
input#defaultCheck0.form-check-input(name='chkIsadmin',type='checkbox', checked=user.isAdmin)
|
||||
| Adminisztrátor
|
||||
.col-md-3
|
||||
input#defaultCheck2.form-check-input(name='chkIsEmployee',type='checkbox', checked=user.isEmployee)
|
||||
input#defaultCheck1.form-check-input(name='chkIsEmployee',type='checkbox', checked=user.isEmployee)
|
||||
| Munkavállaló
|
||||
.row
|
||||
.col-md-3
|
||||
|
|
@ -79,12 +80,12 @@ block content
|
|||
input#defaultCheck11.form-check-input(name='chk_DeleteDevice',type='checkbox', checked=user.canDelete.device)
|
||||
| Törölhet berendezést
|
||||
br
|
||||
input#defaultCheck12.form-check-input(name='chk_DownloadFiles',type='checkbox', checked=user.canDelete.files)
|
||||
input#defaultCheck12.form-check-input(name='chk_DeleteFiles',type='checkbox', checked=user.canDelete.files)
|
||||
| Törölhet fájlokat
|
||||
br
|
||||
.col-md-2
|
||||
h4 Letöltés
|
||||
input#defaultCheck13.form-check-input(name='chk_DeleteFiles',type='checkbox', checked=user.canDownload)
|
||||
input#defaultCheck13.form-check-input(name='chk_DownloadFiles',type='checkbox', checked=user.canDownload)
|
||||
| Letölthet fájlokat
|
||||
br
|
||||
.col-md-2
|
||||
|
|
@ -99,6 +100,25 @@ block content
|
|||
| Ügyfélkezelés
|
||||
br
|
||||
hr
|
||||
a.btn.btn-warning(href='#',id='newPassword',name='newPassword') Új Jelszó küldése
|
||||
|
|
||||
input.btn.btn-primary(type='submit',value='Mentés')
|
||||
|
|
||||
a.btn.btn-success(href='/users') Vissza
|
||||
a.btn.btn-success(href='/users') Vissza
|
||||
|
||||
script(type='text/javascript', src='/bower_components/jquery/dist/jquery.min.js')
|
||||
script.
|
||||
$(document).ready(function () {
|
||||
var uid=document.getElementById('uid').textContent;
|
||||
$('#newPassword').click(function () {
|
||||
$.get('/users/newPassword/'+uid, function(result) {
|
||||
if (result.result==='error'){
|
||||
alert("Új Jelszó generálása sikertelen!"); // display string message
|
||||
}
|
||||
else
|
||||
if (result.result==='success'){
|
||||
alert("Új Jelszó sikeresen generálva és elküldve a felhasználónak."); // display string message
|
||||
}
|
||||
});
|
||||
});
|
||||
})
|
||||
Loading…
Reference in New Issue