Merge e3c7119423 into 36739aed39
This commit is contained in:
commit
39298f754f
@ -9,7 +9,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
/* global generateFromBlock, generateWhereBlock */ // js/database/query_generator.js
|
||||
/* global generateFromBlock, generateWhereBlock, generateOrderBlock */ // js/database/query_generator.js
|
||||
|
||||
/**
|
||||
* js file for handling AJAX and other events in /database/multi-table-query
|
||||
@ -125,6 +125,11 @@ AJAX.registerOnload('database/multi_table_query.js', function () {
|
||||
query += generateWhereBlock();
|
||||
}
|
||||
|
||||
var $orderParts = generateOrderBlock();
|
||||
if ($orderParts !== '') {
|
||||
query += '\nORDER BY ' + $orderParts;
|
||||
}
|
||||
|
||||
query += ';';
|
||||
editor.getDoc().setValue(query);
|
||||
});
|
||||
|
||||
@ -97,6 +97,22 @@ function generateWhereBlock () {
|
||||
return query;
|
||||
}
|
||||
|
||||
function generateOrderBlock() {
|
||||
var parts = [];
|
||||
$('.tableNameSelect').each(function () {
|
||||
var criteriaDiv = $(this).siblings('.jsCriteriaOptions').first();
|
||||
var useCriteria = criteriaDiv.find('input.sort_or:checked');
|
||||
if (useCriteria.length > 0 && $(this).val() !== '' && $(this).siblings('.criteria_col').first().prop('checked')) {
|
||||
var tableName = $(this).val();
|
||||
var tableShort = $(this).siblings('.table_alias').val();
|
||||
var ref = '`' + Functions.escapeBacktick(tableShort !== '' ? tableShort : tableName) + '`';
|
||||
ref += '.`' + Functions.escapeBacktick($(this).parent().find('.opColumn').first().val()) + '`';
|
||||
parts.push(ref + ' ' + useCriteria.val());
|
||||
}
|
||||
});
|
||||
return parts.join(', ');
|
||||
}
|
||||
|
||||
function generateJoin (newTable, tableAliases, fk) {
|
||||
var query = '';
|
||||
query += ' \n\tLEFT JOIN ' + '`' + Functions.escapeBacktick(newTable) + '`';
|
||||
|
||||
@ -65,8 +65,8 @@
|
||||
|
||||
<tr class="sort_order query-form__tr--bg-none">
|
||||
<td>{% trans 'Sort' %}</td>
|
||||
<td><input type="radio" name="sort[{{ id }}]">{% trans 'Ascending' %}</td>
|
||||
<td><input type="radio" name="sort[{{ id }}]">{% trans 'Descending' %}</td>
|
||||
<td><input type="radio" name="sort[{{ id }}]" value="ASC" class="sort_or">{% trans 'Ascending' %}</td>
|
||||
<td><input type="radio" name="sort[{{ id }}]" value="DESC" class="sort_or">{% trans 'Descending' %}</td>
|
||||
</tr>
|
||||
|
||||
<tr class="logical_operator query-form__tr--bg-none query-form__tr--hide">
|
||||
|
||||
Loading…
Reference in New Issue
Block a user