Fixed profile edit page issue

This commit is contained in:
Gregorio Chiko Putra 2017-10-28 11:11:07 +07:00
parent ffaec84ba9
commit 77358a9dac
5 changed files with 73 additions and 76 deletions

View File

@ -247,46 +247,42 @@ class Home
]); ]);
if (is_array($user)) { if (is_array($user)) {
if (isset($args['old_password'])) {
if (Hash::compare($args['old_password'], $user['salt'], $args['password'])) { if (Hash::compare($args['old_password'], $user['salt'], $args['password'])) {
unset($args['old_password']); unset($args['old_password']);
$args['password'] = $args['new_password']; $args['password'] = $args['new_password'];
unset($args['new_password']); unset($args['new_password']);
$args['password'] = Hash::make($args['password'], $user['salt']); $args['password'] = Hash::make($args['password'], $user['salt']);
$data = Access::update($args, $args['id']); $data = Access::update($args, $args['id']);
if ($data) {
if (isset($_SERVER['HTTP_CLIENT']) && $_SERVER['HTTP_CLIENT'] == 'api') {
echo json_encode([
'status' => true,
'route_to' => '/user' . '/' . $args['id'],
'message' => 'Proses berhasil'
]);die();
}
} else { } else {
if (isset($_SERVER['HTTP_CLIENT']) && $_SERVER['HTTP_CLIENT'] == 'api') { $response = [
echo json_encode([
'status' => false, 'status' => false,
'route_to' => '/user' . '/' . $args['id'],
'message' => 'Proses gagal'
]);die();
}
}
} else {
if (isset($_SERVER['HTTP_CLIENT']) && $_SERVER['HTTP_CLIENT'] == 'api') {
echo json_encode([
'status' => false,
'route_to' => '/user' . '/' . $args['id'],
'message' => 'Password lama tidak sama' 'message' => 'Password lama tidak sama'
]);die(); ];
}
} }
} else { } else {
if (isset($_SERVER['HTTP_CLIENT']) && $_SERVER['HTTP_CLIENT'] == 'api') { $data = Access::update($args, $args['id']);
echo json_encode([ }
if ($data) {
$response = [
'status' => true,
'message' => 'Proses berhasil'
];
} else {
$response = [
'status' => false,
'message' => 'Proses gagal'
];
}
} else {
$response = [
'status' => false, 'status' => false,
'route_to' => '/user' . '/' . $args['id'],
'message' => 'User tidak ditemukan' 'message' => 'User tidak ditemukan'
]);die(); ];
} }
if (isset($_SERVER['HTTP_CLIENT']) && $_SERVER['HTTP_CLIENT'] == 'api') {
$response['route_to'] = '/user' . '/' . $args['id'];
echo json_encode($response);die();
} }
} }
} }

View File

@ -57,12 +57,10 @@ var userProfile = {
user.current.new_password = value user.current.new_password = value
}) })
}), }),
userProfile.changePassword ? [
m('input.third#oPwd', { m('input.third#oPwd', {
type: 'password', type: 'password',
required: 'required', required: 'required',
style: userProfile.changePassword ?
'display: inline-block;'
: 'display: none;',
placeholder: 'Password Lama', placeholder: 'Password Lama',
oninput: m.withAttr('value', function(value) { oninput: m.withAttr('value', function(value) {
user.current.old_password = value user.current.old_password = value
@ -71,14 +69,12 @@ var userProfile = {
m('input.third#rNPwd', { m('input.third#rNPwd', {
type: 'password', type: 'password',
required: 'required', required: 'required',
style: userProfile.changePassword ?
'display: inline-block;'
: 'display: none;',
placeholder: 'Ulang Password Baru', placeholder: 'Ulang Password Baru',
oninput: m.withAttr('value', function(value) { oninput: m.withAttr('value', function(value) {
user.current.re_new_password = value user.current.re_new_password = value
}) })
}) })
] : null
]) ])
]), ]),
m('tr', [ m('tr', [

View File

@ -66,8 +66,17 @@ var user = {
}) })
}, },
editProfile: function() { editProfile: function() {
if (!_.isNil(user.current.old_password) && !_.isNil(user.current.re_new_password)) {
if (_.isEqual(user.current.re_new_password, user.current.new_password)) { if (_.isEqual(user.current.re_new_password, user.current.new_password)) {
_.unset(user.current, 're_new_password') _.unset(user.current, 're_new_password')
} else {
window.message = 'Password baru tidak sama'
m.redraw()
return false
}
} else {
_.unset(user.current, 'new_password')
}
return m.request({ return m.request({
method: 'POST', method: 'POST',
url: '/edit-profile/' + window.location.search, url: '/edit-profile/' + window.location.search,
@ -81,10 +90,6 @@ var user = {
} }
window.message = response.message window.message = response.message
}) })
} else {
window.message = 'Password baru tidak sama'
m.redraw()
}
} }
} }

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long