Change user password, Disable user, improve comments on functions
This commit is contained in:
parent
3b37cb2905
commit
71f1742c45
7 changed files with 135 additions and 146 deletions
|
@ -137,13 +137,21 @@
|
||||||
'tip' => $L->g('this-token-is-similar-to-a-password-it-should-not-be-shared')
|
'tip' => $L->g('this-token-is-similar-to-a-password-it-should-not-be-shared')
|
||||||
));
|
));
|
||||||
|
|
||||||
echo Bootstrap::formTitle(array('title' => $L->g('Password')));
|
echo Bootstrap::formTitle(array('title' => $L->g('Change password')));
|
||||||
|
|
||||||
echo '
|
echo Bootstrap::formInputText(array(
|
||||||
<div class="form-group">
|
'name' => 'newPassword',
|
||||||
<a href="' . HTML_PATH_ADMIN_ROOT . 'user-password/' . $user->username() . '" class="btn btn-primary me-2">' . $L->g('Change password') . '</a>
|
'label' => $L->g('New password'),
|
||||||
</div>
|
'type' => 'password',
|
||||||
';
|
'value' => '',
|
||||||
|
));
|
||||||
|
|
||||||
|
echo Bootstrap::formInputText(array(
|
||||||
|
'name' => 'confirmPassword',
|
||||||
|
'label' => $L->g('Confirm password'),
|
||||||
|
'type' => 'password',
|
||||||
|
'value' => '',
|
||||||
|
));
|
||||||
?>
|
?>
|
||||||
</div>
|
</div>
|
||||||
<!-- End Tab security -->
|
<!-- End Tab security -->
|
||||||
|
@ -247,6 +255,77 @@
|
||||||
<script>
|
<script>
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
|
|
||||||
|
$('#btnSave').on('click', function() {
|
||||||
|
var username = $('#username').val();
|
||||||
|
var newPassword = $('#newPassword').val();
|
||||||
|
var confirmPassword = $('#confirmPassword').val();
|
||||||
|
|
||||||
|
// Change the password if the user write a new one in the input
|
||||||
|
if (newPassword) {
|
||||||
|
if (newPassword.length < PASSWORD_LENGTH) {
|
||||||
|
showAlertError("<?php $L->p('Password must be at least 6 characters long') ?>");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (newPassword !== confirmPassword) {
|
||||||
|
showAlertError("<?php $L->p('The password and confirmation password do not match') ?>");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
bootbox.confirm({
|
||||||
|
message: '<?php $L->p('Are you sure you want to change the password') ?>',
|
||||||
|
buttons: {
|
||||||
|
cancel: {
|
||||||
|
label: '<i class="fa fa-times"></i><?php $L->p('Cancel') ?>',
|
||||||
|
className: 'btn-sm btn-secondary'
|
||||||
|
},
|
||||||
|
confirm: {
|
||||||
|
label: '<i class="fa fa-check"></i><?php $L->p('Confirm') ?>',
|
||||||
|
className: 'btn-sm btn-primary'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
closeButton: false,
|
||||||
|
callback: function(result) {
|
||||||
|
if (result) {
|
||||||
|
// The user accepted the action to change the password
|
||||||
|
var args = {
|
||||||
|
username: username,
|
||||||
|
password: $('#newPassword').val()
|
||||||
|
};
|
||||||
|
api.editUser(args).then(function(response) {
|
||||||
|
if (response.status == 0) {
|
||||||
|
logs('User password changed. Username: ' + response.data.key);
|
||||||
|
showAlertInfo("<?php $L->p('The changes have been saved') ?>");
|
||||||
|
} else {
|
||||||
|
logs('An error occurred while trying to change the user password.');
|
||||||
|
showAlertError(response.message);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
$('#newPassword').val('');
|
||||||
|
$('#confirmPassword').val('');
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
// Edit the user properties
|
||||||
|
var args = {
|
||||||
|
username: username,
|
||||||
|
role: $('#role').val(),
|
||||||
|
email: $('#email').val()
|
||||||
|
};
|
||||||
|
api.editUser(args).then(function(response) {
|
||||||
|
if (response.status == 0) {
|
||||||
|
logs('User edited. Username: ' + response.data.key);
|
||||||
|
} else {
|
||||||
|
logs('An error occurred while trying to edit the user.');
|
||||||
|
showAlertError(response.message);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
$('#inputProfilePicture').on("change", function(e) {
|
$('#inputProfilePicture').on("change", function(e) {
|
||||||
var inputProfilePicture = $('#inputProfilePicture')[0].files;
|
var inputProfilePicture = $('#inputProfilePicture')[0].files;
|
||||||
var username = $('#username').val();
|
var username = $('#username').val();
|
||||||
|
@ -311,7 +390,7 @@
|
||||||
};
|
};
|
||||||
api.deleteProfilePicture(args).then(function(response) {
|
api.deleteProfilePicture(args).then(function(response) {
|
||||||
if (response.status == 0) {
|
if (response.status == 0) {
|
||||||
logs('Profile picture deleted. Username: ' + response.data.username);
|
logs('Profile picture deleted. Username: ' + response.data.key);
|
||||||
showAlertInfo("<?php $L->p('The changes have been saved') ?>");
|
showAlertInfo("<?php $L->p('The changes have been saved') ?>");
|
||||||
$('#profilePicturePreview').attr('src', '<?php echo HTML_PATH_CORE_IMG . 'default.svg' ?>');
|
$('#profilePicturePreview').attr('src', '<?php echo HTML_PATH_CORE_IMG . 'default.svg' ?>');
|
||||||
} else {
|
} else {
|
||||||
|
@ -347,10 +426,10 @@
|
||||||
username: $('#username').val(),
|
username: $('#username').val(),
|
||||||
disable: true
|
disable: true
|
||||||
};
|
};
|
||||||
api.disableUser(args).then(function(response) {
|
api.editUser(args).then(function(response) {
|
||||||
if (response.status == 0) {
|
if (response.status == 0) {
|
||||||
logs('User disabled. Username: ' + response.data.username);
|
logs('User disabled. Username: ' + response.data.key);
|
||||||
showAlertInfo("<?php $L->p('The changes have been saved') ?>");
|
window.location.replace(HTML_PATH_ADMIN_ROOT + 'users');
|
||||||
} else {
|
} else {
|
||||||
logs("An error occurred while trying to disable the user.");
|
logs("An error occurred while trying to disable the user.");
|
||||||
showAlertError(response.message);
|
showAlertError(response.message);
|
||||||
|
|
|
@ -1,60 +0,0 @@
|
||||||
<?php defined('BLUDIT') or die('Bludit CMS.'); ?>
|
|
||||||
|
|
||||||
<?php echo Bootstrap::formOpen(array('id'=>'jsform', 'class'=>'tab-content')); ?>
|
|
||||||
|
|
||||||
<div class="align-middle">
|
|
||||||
<div class="float-end mt-1">
|
|
||||||
<button type="submit" class="btn btn-primary btn-sm" name="save"><?php $L->p('Save') ?></button>
|
|
||||||
<a class="btn btn-secondary btn-sm" href="<?php echo HTML_PATH_ADMIN_ROOT.'edit-user/'.$user->username() ?>" role="button"><?php $L->p('Cancel') ?></a>
|
|
||||||
</div>
|
|
||||||
<?php echo Bootstrap::pageTitle(array('title'=>$L->g('Change password'), 'icon'=>'user')); ?>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<?php
|
|
||||||
// Token CSRF
|
|
||||||
echo Bootstrap::formInputHidden(array(
|
|
||||||
'name'=>'tokenCSRF',
|
|
||||||
'value'=>$security->getTokenCSRF()
|
|
||||||
));
|
|
||||||
|
|
||||||
// Username
|
|
||||||
echo Bootstrap::formInputHidden(array(
|
|
||||||
'name'=>'username',
|
|
||||||
'value'=>$user->username()
|
|
||||||
));
|
|
||||||
|
|
||||||
// Username disabled
|
|
||||||
echo Bootstrap::formInputText(array(
|
|
||||||
'name'=>'usernameDisabled',
|
|
||||||
'label'=>$L->g('Username'),
|
|
||||||
'value'=>$user->username(),
|
|
||||||
'class'=>'',
|
|
||||||
'placeholder'=>'',
|
|
||||||
'disabled'=>true,
|
|
||||||
'tip'=>''
|
|
||||||
));
|
|
||||||
|
|
||||||
// New password
|
|
||||||
echo Bootstrap::formInputText(array(
|
|
||||||
'name'=>'newPassword',
|
|
||||||
'label'=>$L->g('New password'),
|
|
||||||
'type'=>'password',
|
|
||||||
'value'=>'',
|
|
||||||
'class'=>'',
|
|
||||||
'placeholder'=>'',
|
|
||||||
'tip'=>''
|
|
||||||
));
|
|
||||||
|
|
||||||
// Confirm password
|
|
||||||
echo Bootstrap::formInputText(array(
|
|
||||||
'name'=>'confirmPassword',
|
|
||||||
'label'=>$L->g('Confirm new password'),
|
|
||||||
'type'=>'password',
|
|
||||||
'value'=>'',
|
|
||||||
'class'=>'',
|
|
||||||
'placeholder'=>'',
|
|
||||||
'tip'=>''
|
|
||||||
));
|
|
||||||
?>
|
|
||||||
|
|
||||||
<?php echo Bootstrap::formClose(); ?>
|
|
|
@ -31,7 +31,7 @@ foreach ($list as $username) {
|
||||||
echo '<td class="pt-3 pb-3"><a href="'.HTML_PATH_ADMIN_ROOT.'edit-user/'.$username.'">'.$username.'</a></td>';
|
echo '<td class="pt-3 pb-3"><a href="'.HTML_PATH_ADMIN_ROOT.'edit-user/'.$username.'">'.$username.'</a></td>';
|
||||||
echo '<td class="pt-3 pb-3 d-none d-lg-table-cell">'.$user->nickname().'</td>';
|
echo '<td class="pt-3 pb-3 d-none d-lg-table-cell">'.$user->nickname().'</td>';
|
||||||
echo '<td class="pt-3 pb-3">'.$user->email().'</td>';
|
echo '<td class="pt-3 pb-3">'.$user->email().'</td>';
|
||||||
echo '<td class="pt-3 pb-3">'.($user->enabled()?'<b>'.$L->g('Enabled').'</b>':$L->g('Disabled')).'</td>';
|
echo '<td class="pt-3 pb-3">'.($user->enabled()?'<b>'.$L->g('Enabled').'</b>':'<b class="text-danger">'.$L->g('Disabled').'</b>').'</td>';
|
||||||
if ($user->role()=='admin') {
|
if ($user->role()=='admin') {
|
||||||
echo '<td class="pt-3 pb-3">'.$L->g('Administrator').'</td>';
|
echo '<td class="pt-3 pb-3">'.$L->g('Administrator').'</td>';
|
||||||
} elseif ($user->role()=='editor') {
|
} elseif ($user->role()=='editor') {
|
||||||
|
|
|
@ -2,10 +2,10 @@
|
||||||
|
|
||||||
/* ----------------------------------------------------------------------------
|
/* ----------------------------------------------------------------------------
|
||||||
Global functions
|
Global functions
|
||||||
These function provides connectivity beteween differens objects and databases.
|
These functions provide connectivity between different objects and databases.
|
||||||
These function should provide different checks and logic before add/edit/delete into the databases.
|
These function should provide different checks and logic before add/edit/delete into the databases.
|
||||||
|
|
||||||
For example the creation of a user should check:
|
For example, the creation of a user should check:
|
||||||
- if the user already exists
|
- if the user already exists
|
||||||
- if the username is not empty
|
- if the username is not empty
|
||||||
- if the password match with the differents security rules such as min length
|
- if the password match with the differents security rules such as min length
|
||||||
|
@ -13,8 +13,8 @@
|
||||||
|
|
||||||
/* Create a new page === Bludit v4
|
/* Create a new page === Bludit v4
|
||||||
|
|
||||||
@args array The array $args supports all the keys from the variable $dbFields of the class pages.class.php. If you don't pass all the keys, the default values are used.
|
@args array The array $args supports all the keys from the variable $dbFields of the class pages.class.php
|
||||||
@return string/bool Returns the page key if the page is successfully created, FALSE otherwise
|
@return string/bool Returns the page key on successful create, FALSE otherwise
|
||||||
*/
|
*/
|
||||||
function createPage($args) {
|
function createPage($args) {
|
||||||
global $pages;
|
global $pages;
|
||||||
|
@ -47,15 +47,15 @@ function createPage($args) {
|
||||||
}
|
}
|
||||||
|
|
||||||
Log::set(__FUNCTION__.LOG_SEP.'Something happened when you tried to create the page.', LOG_TYPE_ERROR);
|
Log::set(__FUNCTION__.LOG_SEP.'Something happened when you tried to create the page.', LOG_TYPE_ERROR);
|
||||||
deletePage($key);
|
deletePage(array('key'=>$key));
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Edit a page === Bludit v4
|
/* Edit a page === Bludit v4
|
||||||
|
|
||||||
@args array The array $args supports all the keys from the variable $dbFields of the class pages.class.php. If you don't pass all the keys, the default values are used.
|
@args array The array $args supports all the keys from the variable $dbFields of the class pages.class.php
|
||||||
@args['key'] string The key of the page to be edited
|
@args['key'] string The key of the page to be edited
|
||||||
@return string/bool Returns the page key if the page is successfully edited, FALSE otherwise
|
@return string/bool Returns the page key on successful edit, FALSE otherwise
|
||||||
*/
|
*/
|
||||||
function editPage($args) {
|
function editPage($args) {
|
||||||
global $pages;
|
global $pages;
|
||||||
|
@ -98,16 +98,16 @@ function editPage($args) {
|
||||||
|
|
||||||
/* Delete a page === Bludit v4
|
/* Delete a page === Bludit v4
|
||||||
|
|
||||||
@key string The key of the page to be deleted
|
@key string Array => (key: string)
|
||||||
@return string/bool Returns TRUE if the page is successfully deleted, FALSE otherwise
|
@return string/bool Returns the page key on successful delete, FALSE otherwise
|
||||||
*/
|
*/
|
||||||
function deletePage($key) {
|
function deletePage($args) {
|
||||||
global $pages;
|
global $pages;
|
||||||
global $syslog;
|
global $syslog;
|
||||||
|
|
||||||
if ($pages->delete($key)) {
|
if ($pages->delete($args['key'])) {
|
||||||
// Call the plugins after page deleted
|
// Call the plugins after page deleted
|
||||||
execPluginsByHook('afterPageDelete', array($key));
|
execPluginsByHook('afterPageDelete', array($args['key']));
|
||||||
|
|
||||||
// Reindex categories and tags
|
// Reindex categories and tags
|
||||||
reindexCategories();
|
reindexCategories();
|
||||||
|
@ -116,7 +116,7 @@ function deletePage($key) {
|
||||||
// Add to syslog
|
// Add to syslog
|
||||||
$syslog->add(array(
|
$syslog->add(array(
|
||||||
'dictionaryKey'=>'content-deleted',
|
'dictionaryKey'=>'content-deleted',
|
||||||
'notes'=>$key
|
'notes'=>$args['key']
|
||||||
));
|
));
|
||||||
|
|
||||||
Log::set(__FUNCTION__.LOG_SEP.'Page deleted.', LOG_TYPE_INFO);
|
Log::set(__FUNCTION__.LOG_SEP.'Page deleted.', LOG_TYPE_INFO);
|
||||||
|
@ -130,7 +130,7 @@ function deletePage($key) {
|
||||||
/* Create a new category === Bludit v4
|
/* Create a new category === Bludit v4
|
||||||
|
|
||||||
@args array Array => (name: string, template: string, description: string)
|
@args array Array => (name: string, template: string, description: string)
|
||||||
@return string/bool Returns the category key if the category is successfully created, FALSE otherwise
|
@return string/bool Returns the category key on successful create, FALSE otherwise
|
||||||
*/
|
*/
|
||||||
function createCategory($args) {
|
function createCategory($args) {
|
||||||
global $categories;
|
global $categories;
|
||||||
|
@ -159,7 +159,7 @@ function createCategory($args) {
|
||||||
/* Edit a category === Bludit v4
|
/* Edit a category === Bludit v4
|
||||||
|
|
||||||
@args array Array => (key: string, name: string, friendlyURL: string, template: string, description: string)
|
@args array Array => (key: string, name: string, friendlyURL: string, template: string, description: string)
|
||||||
@return string/bool Returns the category key if the category is successfully edited, FALSE otherwise
|
@return string/bool Returns the category key on successful edit, FALSE otherwise
|
||||||
*/
|
*/
|
||||||
function editCategory($args) {
|
function editCategory($args) {
|
||||||
global $pages;
|
global $pages;
|
||||||
|
@ -190,7 +190,7 @@ function editCategory($args) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Change the category key inside the pages database
|
// Re-link all pages with the new category key
|
||||||
if ($args['key']!==$finalKey) {
|
if ($args['key']!==$finalKey) {
|
||||||
$pages->changeCategory($args['key'], $finalKey);
|
$pages->changeCategory($args['key'], $finalKey);
|
||||||
}
|
}
|
||||||
|
@ -207,7 +207,7 @@ function editCategory($args) {
|
||||||
/* Delete a category === Bludit v4
|
/* Delete a category === Bludit v4
|
||||||
|
|
||||||
@args array Array => (key: string)
|
@args array Array => (key: string)
|
||||||
@return bool Returns TRUE if the category was deleted, FALSE otherwise
|
@return bool Returns TRUE on successful delete, FALSE otherwise
|
||||||
*/
|
*/
|
||||||
function deleteCategory($args) {
|
function deleteCategory($args) {
|
||||||
global $categories;
|
global $categories;
|
||||||
|
@ -235,8 +235,8 @@ function deleteCategory($args) {
|
||||||
/* Create a new user === Bludit v4
|
/* Create a new user === Bludit v4
|
||||||
This function should check everthing, such as empty username, emtpy password, password lenght, etc
|
This function should check everthing, such as empty username, emtpy password, password lenght, etc
|
||||||
|
|
||||||
@args array The array $args supports all the keys from the variable $dbFields of the class pages.class.php. If you don't pass all the keys, the default values are used.
|
@args array The array $args supports all the keys from the variable $dbFields of the class users.class.php
|
||||||
@return string/bool Returns the page key if the page is successfully created, FALSE otherwise
|
@return string/bool Returns the username on successful create, FALSE otherwise
|
||||||
*/
|
*/
|
||||||
function createUser($args) {
|
function createUser($args) {
|
||||||
global $users;
|
global $users;
|
||||||
|
@ -271,9 +271,10 @@ function createUser($args) {
|
||||||
|
|
||||||
/* Edit an user === Bludit v4
|
/* Edit an user === Bludit v4
|
||||||
|
|
||||||
@args array The array $args supports all the keys from the variable $dbFields of the class users.class.php. If you don't pass all the keys, the default values are used.
|
@args array The array $args supports all the keys from the variable $dbFields of the class users.class.php
|
||||||
@args['disable'] bool If you set this variable the user will be disabled
|
@args['disable'] bool If you set this variable the user will be disabled
|
||||||
@return string/bool Returns the username if the user was successfully disabled, FALSE otherwise
|
@args['password'] string If you set this variable a new password will be set for the user
|
||||||
|
@return string/bool Returns the username on successful edit, FALSE otherwise
|
||||||
*/
|
*/
|
||||||
function editUser($args) {
|
function editUser($args) {
|
||||||
global $users;
|
global $users;
|
||||||
|
@ -289,9 +290,10 @@ function editUser($args) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Disable the user
|
||||||
|
// Your should pass the argument 'disable'
|
||||||
if (isset($args['disable'])) {
|
if (isset($args['disable'])) {
|
||||||
$login = new Login();
|
if (Session::get('role')!=='admin') {
|
||||||
if ($login->role()!=='admin') {
|
|
||||||
Log::set(__FUNCTION__.LOG_SEP.'Only the administrator can disable users.', LOG_TYPE_ERROR);
|
Log::set(__FUNCTION__.LOG_SEP.'Only the administrator can disable users.', LOG_TYPE_ERROR);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -319,12 +321,12 @@ function editUser($args) {
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Upload a profile picture === Bludit v4
|
/* Upload a profile picture === Bludit v4
|
||||||
The profile picture is saved in PATH_UPLOADS_PROFILES.$username.png
|
The profile picture is store in PATH_UPLOADS_PROFILES.$username.png
|
||||||
|
|
||||||
@username string Username
|
@username string Username
|
||||||
@_FILE array https://www.php.net/manual/en/reserved.variables.files.php
|
@_FILE array https://www.php.net/manual/en/reserved.variables.files.php
|
||||||
|
|
||||||
@return array
|
@return array
|
||||||
*/
|
*/
|
||||||
function uploadProfilePicture($username) {
|
function uploadProfilePicture($username) {
|
||||||
if (!isset($_FILES['file'])) {
|
if (!isset($_FILES['file'])) {
|
||||||
|
@ -392,9 +394,9 @@ function uploadProfilePicture($username) {
|
||||||
|
|
||||||
/* Delete a profile picture === Bludit v4
|
/* Delete a profile picture === Bludit v4
|
||||||
|
|
||||||
@username string Username
|
@username string Username
|
||||||
|
|
||||||
@return bool Returns TRUE if the profile pictures is deleted succesfully, FALSE otherwise
|
@return bool Returns TRUE on successful delete, FALSE otherwise
|
||||||
*/
|
*/
|
||||||
function deleteProfilePicture($username) {
|
function deleteProfilePicture($username) {
|
||||||
// Check path traversal
|
// Check path traversal
|
||||||
|
@ -419,10 +421,10 @@ function deleteProfilePicture($username) {
|
||||||
/* Upload a file to a page === Bludit v4
|
/* Upload a file to a page === Bludit v4
|
||||||
The files is saved in
|
The files is saved in
|
||||||
|
|
||||||
@pageKey string Page key
|
@pageKey string Page key
|
||||||
@_FILE array https://www.php.net/manual/en/reserved.variables.files.php
|
@_FILE array https://www.php.net/manual/en/reserved.variables.files.php
|
||||||
|
|
||||||
@return array
|
@return array
|
||||||
*/
|
*/
|
||||||
function uploadPageFile($pageKey) {
|
function uploadPageFile($pageKey) {
|
||||||
global $site;
|
global $site;
|
||||||
|
@ -932,40 +934,6 @@ function editSettings($args) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
function changeUserPassword($args) {
|
|
||||||
global $users;
|
|
||||||
global $L;
|
|
||||||
global $syslog;
|
|
||||||
|
|
||||||
// Arguments
|
|
||||||
$username = $args['username'];
|
|
||||||
$newPassword = $args['newPassword'];
|
|
||||||
$confirmPassword = $args['confirmPassword'];
|
|
||||||
|
|
||||||
// Password length
|
|
||||||
if (Text::length($newPassword) < 6) {
|
|
||||||
Alert::set($L->g('Password must be at least 6 characters long'), ALERT_STATUS_FAIL);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($newPassword!=$confirmPassword) {
|
|
||||||
Alert::set($L->g('The password and confirmation password do not match'), ALERT_STATUS_FAIL);
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($users->setPassword(array('username'=>$username, 'password'=>$newPassword))) {
|
|
||||||
// Add to syslog
|
|
||||||
$syslog->add(array(
|
|
||||||
'dictionaryKey'=>'user-password-changed',
|
|
||||||
'notes'=>$username
|
|
||||||
));
|
|
||||||
|
|
||||||
Alert::set($L->g('The changes have been saved'), ALERT_STATUS_OK);
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Returns true if the user is allowed to proceed
|
// Returns true if the user is allowed to proceed
|
||||||
function checkRole($allowRoles, $redirect=true) {
|
function checkRole($allowRoles, $redirect=true) {
|
||||||
|
|
|
@ -268,13 +268,13 @@ class API {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Disable an user
|
/* Edit an user
|
||||||
|
|
||||||
@args array Array => (username: string, enabled: bool)
|
@args array Arguments can be any of the fields from an user
|
||||||
@return string The username
|
@return string The username
|
||||||
*/
|
*/
|
||||||
async disableUser(args) {
|
async editUser(args) {
|
||||||
var url = this.apiURL + 'users/' + args['username'];
|
var url = this.apiURL + "users/" + args['username'];
|
||||||
var body = Object.assign({}, this.body, args);
|
var body = Object.assign({}, this.body, args);
|
||||||
try {
|
try {
|
||||||
var response = await fetch(url, {
|
var response = await fetch(url, {
|
||||||
|
|
|
@ -390,9 +390,11 @@
|
||||||
"start-typing-to-see-a-list-of-suggestions": "Start typing to see a list of suggestions.",
|
"start-typing-to-see-a-list-of-suggestions": "Start typing to see a list of suggestions.",
|
||||||
"view": "View",
|
"view": "View",
|
||||||
"confirm": "Confirm",
|
"confirm": "Confirm",
|
||||||
|
"current-password": "Current password",
|
||||||
"are-you-sure-you-want-to-disable-this-user": "Are you sure you want to disable this user?",
|
"are-you-sure-you-want-to-disable-this-user": "Are you sure you want to disable this user?",
|
||||||
"are-you-sure-you-want-to-delete-the-profile-picture": "Are you sure you want to delete the profile picture?",
|
"are-you-sure-you-want-to-delete-the-profile-picture": "Are you sure you want to delete the profile picture?",
|
||||||
"are-you-sure-you-want-to-delete-this-user": "Are you sure you want to delete this user?",
|
"are-you-sure-you-want-to-delete-this-user": "Are you sure you want to delete this user?",
|
||||||
"are-you-sure-you-want-to-delete-this-page": "Are you sure you want to delete this page?",
|
"are-you-sure-you-want-to-delete-this-page": "Are you sure you want to delete this page?",
|
||||||
"are-you-sure-you-want-to-delete-this-category?": "Are you sure you want to delete this category?"
|
"are-you-sure-you-want-to-delete-this-category?": "Are you sure you want to delete this category?",
|
||||||
|
"are-you-sure-you-want-to-change-the-password?": "Are you sure you want to change the password?"
|
||||||
}
|
}
|
|
@ -195,7 +195,7 @@ class pluginAPI extends Plugin {
|
||||||
if (!empty($parmC)) {
|
if (!empty($parmC)) {
|
||||||
$key = $parmB.'/'.$parmC;
|
$key = $parmB.'/'.$parmC;
|
||||||
}
|
}
|
||||||
$data = $this->deletePage($key);
|
$data = $this->deletePage(array('key'=>$key));
|
||||||
}
|
}
|
||||||
// (GET) /api/settings
|
// (GET) /api/settings
|
||||||
elseif ( ($method==='GET') && ($parmA==='settings') && empty($parmB) && $writePermissions ) {
|
elseif ( ($method==='GET') && ($parmA==='settings') && empty($parmB) && $writePermissions ) {
|
||||||
|
@ -520,9 +520,9 @@ class pluginAPI extends Plugin {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
private function deletePage($key)
|
private function deletePage($args)
|
||||||
{
|
{
|
||||||
if (deletePage($key)) {
|
if (deletePage($args)) {
|
||||||
return array(
|
return array(
|
||||||
'status'=>'0',
|
'status'=>'0',
|
||||||
'message'=>'Page deleted.'
|
'message'=>'Page deleted.'
|
||||||
|
|
Loading…
Add table
Reference in a new issue