Fix issue: Column autocomplete uses wrong table in "Groups Settings"

This commit is contained in:
Marcin Łojewski
2017-12-30 11:19:48 +01:00
parent 105f5b6762
commit 7440949ecb
2 changed files with 54 additions and 4 deletions

View File

@@ -233,8 +233,14 @@ if(isset($_POST['appname']) && ($_POST['appname'] === 'user_sql') && isset($_POS
'tablePrefix' => ''
);
if ($_POST['groupTable'] === 'true') {
$sql_table = $_POST['sql_group_table'];
} else {
$sql_table = $_POST['sql_table'];
}
if($helper->verifyTable($parameters, $_POST['sql_driver'], $_POST['sql_table']))
$columns = $helper->getColumns($parameters, $_POST['sql_driver'], $_POST['sql_table']);
$columns = $helper->getColumns($parameters, $_POST['sql_driver'], $sql_table);
else
$columns = array();

View File

@@ -17,7 +17,7 @@ user_sql.adminSettingsUI = function()
$('#sqlDiv').tabs();
// Attach auto-completion to all column fields
$('#col_username, #col_password, #col_displayname, #col_active, #col_email, #col_gethome, #col_group_name, #col_group_username').autocomplete({
$('#col_username, #col_password, #col_displayname, #col_active, #col_email, #col_gethome').autocomplete({
source: function(request, response)
{
var post = $('#sqlForm').serializeArray();
@@ -55,6 +55,50 @@ user_sql.adminSettingsUI = function()
}
});
// Attach auto-completion to all group column fields
$('#col_group_name, #col_group_username').autocomplete({
source: function(request, response)
{
var post = $('#sqlForm').serializeArray();
var domain = $('#sql_domain_chooser option:selected').val();
post.push({
name: 'groupTable',
value: 'true'
});
post.push({
name: 'function',
value: 'getColumnAutocomplete'
});
post.push({
name: 'domain',
value: domain
});
post.push({
name: 'request',
value: request.term
});
// Ajax foobar
$.post(OC.filePath('user_sql', 'ajax', 'settings.php'), post, response, 'json');
},
minLength: 0,
open: function() {
$(this).attr('state', 'open');
},
close: function() {
$(this).attr('state', 'closed');
}
}).focus(function() {
if($(this).attr('state') != 'open')
{
$(this).autocomplete("search");
}
});
// Attach auto-completion to all table fields
$('#sql_table, #sql_group_table').autocomplete({
source: function(request, response)