mirror of https://github.com/MISP/MISP
chg: [UI] Fix setting placeholder for user setting
parent
98f2a43739
commit
a7ca58895a
|
@ -217,12 +217,10 @@ class UserSettingsController extends AppController
|
|||
// load the valid settings from the model
|
||||
if ($this->_isSiteAdmin()) {
|
||||
$users = $this->UserSetting->User->find('list', array(
|
||||
'recursive' => -1,
|
||||
'fields' => array('User.id', 'User.email')
|
||||
));
|
||||
} else if ($this->_isAdmin()) {
|
||||
$users = $this->UserSetting->User->find('list', array(
|
||||
'recursive' => -1,
|
||||
'conditions' => array('User.org_id' => $this->Auth->user('org_id')),
|
||||
'fields' => array('User.id', 'User.email')
|
||||
));
|
||||
|
@ -234,7 +232,7 @@ class UserSettingsController extends AppController
|
|||
}
|
||||
$this->set('setting', $setting);
|
||||
$this->set('users', $users);
|
||||
$this->set('validSettings', UserSetting::VALID_SETTINGS);
|
||||
$this->set('validSettings', $this->UserSetting->settingPlaceholders($this->Auth->user()));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -68,7 +68,7 @@ class UserSetting extends AppModel
|
|||
)
|
||||
),
|
||||
'homepage' => array(
|
||||
'path' => '/events/index'
|
||||
'placeholder' => ['path' => '/events/index'],
|
||||
),
|
||||
'default_restsearch_parameters' => array(
|
||||
'placeholder' => array(
|
||||
|
@ -155,6 +155,21 @@ class UserSetting extends AppModel
|
|||
return self::VALID_SETTINGS[$setting]['internal'];
|
||||
}
|
||||
|
||||
/**
|
||||
* @param array $user
|
||||
* @return array
|
||||
*/
|
||||
public function settingPlaceholders(array $user)
|
||||
{
|
||||
$output = [];
|
||||
foreach (self::VALID_SETTINGS as $setting => $config) {
|
||||
if ($this->checkSettingAccess($user, $setting) === true) {
|
||||
$output[$setting] = $config['placeholder'];
|
||||
}
|
||||
}
|
||||
return $output;
|
||||
}
|
||||
|
||||
public function getInternalSettingNames()
|
||||
{
|
||||
$internal = [];
|
||||
|
@ -430,7 +445,7 @@ class UserSetting extends AppModel
|
|||
if (empty($userSetting['user_id'])) {
|
||||
$userSetting['user_id'] = $user['id'];
|
||||
}
|
||||
if (empty($data['UserSetting']['setting']) || !isset($data['UserSetting']['setting'])) {
|
||||
if (empty($data['UserSetting']['setting'])) {
|
||||
throw new MethodNotAllowedException(__('This endpoint expects both a setting and a value to be set.'));
|
||||
}
|
||||
if (!$this->checkSettingValidity($data['UserSetting']['setting'])) {
|
||||
|
|
|
@ -39,8 +39,8 @@
|
|||
echo $this->element('/genericElements/SideMenu/side_menu', array('menuList' => 'globalActions', 'menuItem' => 'user_settings_set'));
|
||||
?>
|
||||
<script type="text/javascript">
|
||||
var validSettings = <?php echo json_encode($validSettings); ?>;
|
||||
$(document).ready(function() {
|
||||
var validSettings = <?= json_encode($validSettings); ?>;
|
||||
$(function() {
|
||||
loadUserSettingValue();
|
||||
changeUserSettingPlaceholder();
|
||||
$('#UserSettingSetting').on('change', function() {
|
||||
|
@ -56,11 +56,11 @@
|
|||
var user_id = $('#UserSettingUserId').val();
|
||||
var setting = $('#UserSettingSetting').val();
|
||||
$.ajax({
|
||||
type:"get",
|
||||
type: "get",
|
||||
url: baseurl + "/user_settings/getSetting/" + user_id + "/" + setting,
|
||||
success: function (data, textStatus) {
|
||||
success: function (data) {
|
||||
if (data === '[]') {
|
||||
var data = '';
|
||||
data = '';
|
||||
} else {
|
||||
data = JSON.parse(data);
|
||||
data = JSON.stringify(data, undefined, 4);
|
||||
|
@ -73,7 +73,7 @@
|
|||
function changeUserSettingPlaceholder() {
|
||||
var setting = $('#UserSettingSetting').val();
|
||||
if (setting in validSettings) {
|
||||
$('#UserSettingValue').attr("placeholder", "Example:\n" + JSON.stringify(validSettings[setting]["placeholder"], undefined, 4));
|
||||
$('#UserSettingValue').attr("placeholder", "Example:\n" + JSON.stringify(validSettings[setting], undefined, 4));
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
|
Loading…
Reference in New Issue