Fix issue: Column autocomplete uses wrong table in "Groups Settings"
This commit is contained in:
@@ -232,9 +232,15 @@ if(isset($_POST['appname']) && ($_POST['appname'] === 'user_sql') && isset($_POS
|
||||
'dbname' => $_POST['sql_database'],
|
||||
'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();
|
||||
|
||||
|
||||
@@ -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();
|
||||
@@ -53,7 +53,51 @@ user_sql.adminSettingsUI = function()
|
||||
{
|
||||
$(this).autocomplete("search");
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
// 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({
|
||||
|
||||
Reference in New Issue
Block a user