Vulcan/client/templates/user_edit.js

58 lines
1.3 KiB
JavaScript
Raw Normal View History

2012-09-19 09:03:25 +09:00
(function(){
Template.user_edit.events = {
'click input[type=submit]': function(e){
e.preventDefault();
if(!Meteor.user()) throw 'You must be logged in.';
var user=window.selected_user_id? Meteor.users.findOne(window.selected_user_id) : Meteor.user();
var username= $('#title').val();
var email = $('#url').val();
2012-09-24 14:29:54 +09:00
var bio = $('#bio').val();
2012-09-19 09:03:25 +09:00
var old_password = $('#new_password').val();
var new_password = $('#new_password').val();
if(old_password && new_password){
Meteor.changePassword(old_password, new_password);
}
Meteor.users.update(user._id,
{
$set: {
2012-09-24 14:29:54 +09:00
"profile.bio": bio
2012-09-19 09:03:25 +09:00
}
2012-09-24 14:51:21 +09:00
},
function(error){
if(error){
throwError(error.reason);
}else{
throwError('Profile updated');
}
}
2012-09-19 09:03:25 +09:00
);
}
};
Template.user_edit.user = function(){
var current_user=Meteor.user();
2012-09-27 23:18:02 -07:00
if(window.selected_user_id && !current_user.loading && current_user.isAdmin){
2012-09-19 09:03:25 +09:00
return Meteor.users.findOne(window.selected_user_id);
}else{
return current_user;
}
}
Template.user_edit.email = function(){
if(!this.loading){
return this.emails[0].address;
2012-09-19 09:03:25 +09:00
}
}
2012-09-24 14:29:54 +09:00
Template.user_edit.bio = function(){
if(!this.loading && this.profile){
return this.profile.bio;
}
}
2012-09-19 09:03:25 +09:00
})();