mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-11-01 03:26:04 +01:00
user edit and profile changes
This commit is contained in:
@@ -20,6 +20,22 @@
|
||||
<div class="account-bio-block">
|
||||
<span class="account-bio-label">email</span>
|
||||
<span>{user.email}</span>
|
||||
<br/>
|
||||
|
||||
<span class="account-bio-label">full name</span>
|
||||
<span>{user.fullname}</span>
|
||||
<br/>
|
||||
|
||||
<span class="account-bio-label">website</span>
|
||||
<span><a href="{user.website}">{user.website}</a></span>
|
||||
<br/>
|
||||
|
||||
<span class="account-bio-label">location</span>
|
||||
<span>{user.location}</span>
|
||||
<br/>
|
||||
|
||||
<span class="account-bio-label">age</span>
|
||||
<span>{user.age}</span>
|
||||
<br/>
|
||||
|
||||
<span class="account-bio-label">member for</span>
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
<div class="control-group">
|
||||
<label class="control-label" for="inputWebsite">Website</label>
|
||||
<div class="controls">
|
||||
<input type="text" id="inputWebsite" placeholder="http://website.com" value="{user.fullname}">
|
||||
<input type="text" id="inputWebsite" placeholder="http://website.com" value="{user.website}">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -58,8 +58,8 @@
|
||||
</div>
|
||||
|
||||
<div class="form-actions">
|
||||
<button type="submit" class="btn btn-primary">Save changes</button>
|
||||
<button type="button" class="btn">Cancel</button>
|
||||
<a id="submitBtn" href="" class="btn btn-primary">Save changes</a>
|
||||
<a href="/users/{user.username}" class="btn">Cancel</a>
|
||||
</div>
|
||||
|
||||
</form>
|
||||
@@ -71,6 +71,27 @@
|
||||
</div>
|
||||
<script type="text/javascript">
|
||||
(function() {
|
||||
// ...
|
||||
$(document).ready(function(){
|
||||
|
||||
$('#submitBtn').on('click',function(){
|
||||
|
||||
var userData = {
|
||||
email:$('#inputEmail').val(),
|
||||
fullname:$('#inputFullname').val(),
|
||||
website:$('#inputWebsite').val(),
|
||||
birthday:$('#inputBirthday').val(),
|
||||
location:$('#inputLocation').val()
|
||||
};
|
||||
|
||||
$.post('/edituser',
|
||||
userData,
|
||||
function(data) {
|
||||
|
||||
}
|
||||
);
|
||||
|
||||
});
|
||||
|
||||
});
|
||||
}());
|
||||
</script>
|
||||
@@ -69,6 +69,13 @@ var config = require('../config.js'),
|
||||
});
|
||||
}
|
||||
|
||||
User.updateUserFields = function(uid, data) {
|
||||
console.log(data);
|
||||
for(var key in data) {
|
||||
User.setUserField(uid, key, data[key]);
|
||||
}
|
||||
}
|
||||
|
||||
User.setUserField = function(uid, field, value) {
|
||||
RDB.db.hset('user:'+uid, field, value);
|
||||
}
|
||||
|
||||
@@ -332,6 +332,19 @@ passport.deserializeUser(function(uid, done) {
|
||||
});
|
||||
});
|
||||
|
||||
app.post('/edituser', function(req, res){
|
||||
|
||||
if(!req.user) {
|
||||
res.redirect('/403');
|
||||
return;
|
||||
}
|
||||
|
||||
user.updateUserFields(req.user.uid, req.body);
|
||||
|
||||
res.redirect('/');
|
||||
});
|
||||
|
||||
|
||||
app.get('/baristest', function(req, res) {
|
||||
/*user.getUserField(req.user.uid, 'email', function(data) {
|
||||
console.log(" I GOT FIELD " +data);
|
||||
@@ -362,6 +375,7 @@ passport.deserializeUser(function(uid, done) {
|
||||
if(data)
|
||||
{
|
||||
data.joindate = utils.relativeTime(data.joindate);
|
||||
data.age = new Date().getFullYear() - new Date(data.birthday).getFullYear();;
|
||||
data.uid = uid;
|
||||
callback({user:data});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user