557 lines
27 KiB
HTML
557 lines
27 KiB
HTML
<div class="mb-3">
|
|
<button class="btn btn-sm btn-secondary" type="button" data-bs-toggle="collapse" data-bs-target="#queryWindow" aria-expanded="true" aria-controls="queryWindow">
|
|
Query window
|
|
</button>
|
|
</div>
|
|
<div class="collapse show mb-3" id="queryWindow">
|
|
<form action="">
|
|
<input type="hidden" id="db_name" value="test_db">
|
|
|
|
<div class="card">
|
|
<div class="card-body">
|
|
<div class="d-none" id="e1aa88c07d60f7472d1e27463e533c89">
|
|
<option value="*">*</option>
|
|
<option value="id">id</option>
|
|
<option value="name">name</option>
|
|
<option value="datetimefield">datetimefield</option>
|
|
</div>
|
|
|
|
<div class="row g-3 mb-3">
|
|
<div class="col d-none" id="new_column_layout">
|
|
<div class="card">
|
|
<fieldset class="card-body">
|
|
<select class="tableNameSelect">
|
|
<option value="">select table</option>
|
|
<option data-hash="e1aa88c07d60f7472d1e27463e533c89" value="test_table">test_table</option>
|
|
</select>
|
|
<span>.</span>
|
|
<select class="columnNameSelect">
|
|
<option value="">select column</option>
|
|
</select>
|
|
<br>
|
|
<input type="checkbox" checked class="show_col">
|
|
<span>Show</span>
|
|
<br>
|
|
<input type="text" placeholder="Table alias" class="table_alias">
|
|
<input type="text" placeholder="Column alias" class="col_alias">
|
|
<br>
|
|
<input type="checkbox"
|
|
title="Use this column in criteria"
|
|
class="criteria_col" data-bs-toggle="collapse" data-bs-target="#criteriaOptions0" aria-expanded="false" aria-controls="criteriaOptions0">
|
|
|
|
<button class="btn btn-link p-0 jsCriteriaButton" type="button" data-bs-toggle="collapse" data-bs-target="#criteriaOptions0" aria-expanded="false" aria-controls="criteriaOptions0">
|
|
criteria
|
|
</button>
|
|
<div class="collapse jsCriteriaOptions" id="criteriaOptions0">
|
|
|
|
<div>
|
|
<table class="table table-sm table-borderless align-middle w-auto">
|
|
|
|
<tr class="sort_order">
|
|
<td>Sort</td>
|
|
<td><input type="radio" name="sort[0]">Ascending</td>
|
|
<td><input type="radio" name="sort[0]">Descending</td>
|
|
</tr>
|
|
|
|
<tr class="logical_operator">
|
|
<td>Add as</td>
|
|
<td>
|
|
<input type="radio"
|
|
name="logical_op[0]"
|
|
value="AND"
|
|
class="logical_op"
|
|
checked>
|
|
AND
|
|
</td>
|
|
<td>
|
|
<input type="radio"
|
|
name="logical_op[0]"
|
|
value="OR"
|
|
class="logical_op">
|
|
OR
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>Column</td>
|
|
<td colspan="2">
|
|
<select class="columnNameSelect query-form__select--inline opColumn">
|
|
<option value="">select column</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>Op</td>
|
|
<td>
|
|
<select class="criteria_op">
|
|
<option value="=">=</option>
|
|
<option value=">">></option>
|
|
<option value=">=">>=</option>
|
|
<option value="<"><</option>
|
|
<option value="<="><=</option>
|
|
<option value="!=">!=</option>
|
|
<option value="LIKE">LIKE</option>
|
|
<option value="LIKE %...%">LIKE %...%</option>
|
|
<option value="NOT LIKE">NOT LIKE</option>
|
|
<option value="NOT LIKE %...%">NOT LIKE %...%</option>
|
|
<option value="IN (...)">IN (...)</option>
|
|
<option value="NOT IN (...)">NOT IN (...)</option>
|
|
<option value="BETWEEN">BETWEEN</option>
|
|
<option value="NOT BETWEEN">NOT BETWEEN</option>
|
|
<option value="IS NULL">IS NULL</option>
|
|
<option value="IS NOT NULL">IS NOT NULL</option>
|
|
<option value="REGEXP">REGEXP</option>
|
|
<option value="REGEXP ^...$">REGEXP ^...$</option>
|
|
<option value="NOT REGEXP">NOT REGEXP</option>
|
|
</select>
|
|
</td>
|
|
<td>
|
|
<select class="criteria_rhs">
|
|
<option value="text">Text</option>
|
|
<option value="anotherColumn">Another column</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr class="rhs_table" style="display: none;">
|
|
<td></td>
|
|
<td>
|
|
<select class="tableNameSelect">
|
|
<option value="">select table</option>
|
|
<option data-hash="e1aa88c07d60f7472d1e27463e533c89" value="test_table">test_table</option>
|
|
</select><span>.</span>
|
|
</td>
|
|
<td>
|
|
<select class="columnNameSelect">
|
|
<option value="">select column</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr class="rhs_text">
|
|
<td></td>
|
|
<td colspan="2">
|
|
<input type="text"
|
|
class="rhs_text_val"
|
|
placeholder="Enter criteria as free text">
|
|
</td>
|
|
</tr>
|
|
|
|
</table>
|
|
</div>
|
|
</div>
|
|
<button type="button" class="btn-close position-absolute top-0 end-0 jsRemoveColumn" aria-label="Remove this column"></button>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
<div class="col">
|
|
<div class="card">
|
|
<fieldset class="card-body">
|
|
<select class="tableNameSelect">
|
|
<option value="">select table</option>
|
|
<option data-hash="e1aa88c07d60f7472d1e27463e533c89" value="test_table">test_table</option>
|
|
</select>
|
|
<span>.</span>
|
|
<select class="columnNameSelect">
|
|
<option value="">select column</option>
|
|
</select>
|
|
<br>
|
|
<input type="checkbox" checked class="show_col">
|
|
<span>Show</span>
|
|
<br>
|
|
<input type="text" placeholder="Table alias" class="table_alias">
|
|
<input type="text" placeholder="Column alias" class="col_alias">
|
|
<br>
|
|
<input type="checkbox"
|
|
title="Use this column in criteria"
|
|
class="criteria_col" data-bs-toggle="collapse" data-bs-target="#criteriaOptions1" aria-expanded="false" aria-controls="criteriaOptions1">
|
|
|
|
<button class="btn btn-link p-0 jsCriteriaButton" type="button" data-bs-toggle="collapse" data-bs-target="#criteriaOptions1" aria-expanded="false" aria-controls="criteriaOptions1">
|
|
criteria
|
|
</button>
|
|
<div class="collapse jsCriteriaOptions" id="criteriaOptions1">
|
|
|
|
<div>
|
|
<table class="table table-sm table-borderless align-middle w-auto">
|
|
|
|
<tr class="sort_order">
|
|
<td>Sort</td>
|
|
<td><input type="radio" name="sort[1]">Ascending</td>
|
|
<td><input type="radio" name="sort[1]">Descending</td>
|
|
</tr>
|
|
|
|
<tr class="logical_operator">
|
|
<td>Add as</td>
|
|
<td>
|
|
<input type="radio"
|
|
name="logical_op[1]"
|
|
value="AND"
|
|
class="logical_op"
|
|
checked>
|
|
AND
|
|
</td>
|
|
<td>
|
|
<input type="radio"
|
|
name="logical_op[1]"
|
|
value="OR"
|
|
class="logical_op">
|
|
OR
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>Column</td>
|
|
<td colspan="2">
|
|
<select class="columnNameSelect query-form__select--inline opColumn">
|
|
<option value="">select column</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>Op</td>
|
|
<td>
|
|
<select class="criteria_op">
|
|
<option value="=">=</option>
|
|
<option value=">">></option>
|
|
<option value=">=">>=</option>
|
|
<option value="<"><</option>
|
|
<option value="<="><=</option>
|
|
<option value="!=">!=</option>
|
|
<option value="LIKE">LIKE</option>
|
|
<option value="LIKE %...%">LIKE %...%</option>
|
|
<option value="NOT LIKE">NOT LIKE</option>
|
|
<option value="NOT LIKE %...%">NOT LIKE %...%</option>
|
|
<option value="IN (...)">IN (...)</option>
|
|
<option value="NOT IN (...)">NOT IN (...)</option>
|
|
<option value="BETWEEN">BETWEEN</option>
|
|
<option value="NOT BETWEEN">NOT BETWEEN</option>
|
|
<option value="IS NULL">IS NULL</option>
|
|
<option value="IS NOT NULL">IS NOT NULL</option>
|
|
<option value="REGEXP">REGEXP</option>
|
|
<option value="REGEXP ^...$">REGEXP ^...$</option>
|
|
<option value="NOT REGEXP">NOT REGEXP</option>
|
|
</select>
|
|
</td>
|
|
<td>
|
|
<select class="criteria_rhs">
|
|
<option value="text">Text</option>
|
|
<option value="anotherColumn">Another column</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr class="rhs_table" style="display: none;">
|
|
<td></td>
|
|
<td>
|
|
<select class="tableNameSelect">
|
|
<option value="">select table</option>
|
|
<option data-hash="e1aa88c07d60f7472d1e27463e533c89" value="test_table">test_table</option>
|
|
</select><span>.</span>
|
|
</td>
|
|
<td>
|
|
<select class="columnNameSelect">
|
|
<option value="">select column</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr class="rhs_text">
|
|
<td></td>
|
|
<td colspan="2">
|
|
<input type="text"
|
|
class="rhs_text_val"
|
|
placeholder="Enter criteria as free text">
|
|
</td>
|
|
</tr>
|
|
|
|
</table>
|
|
</div>
|
|
</div>
|
|
<button type="button" class="btn-close position-absolute top-0 end-0 jsRemoveColumn" aria-label="Remove this column"></button>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
<div class="col">
|
|
<div class="card">
|
|
<fieldset class="card-body">
|
|
<select class="tableNameSelect">
|
|
<option value="">select table</option>
|
|
<option data-hash="e1aa88c07d60f7472d1e27463e533c89" value="test_table">test_table</option>
|
|
</select>
|
|
<span>.</span>
|
|
<select class="columnNameSelect">
|
|
<option value="">select column</option>
|
|
</select>
|
|
<br>
|
|
<input type="checkbox" checked class="show_col">
|
|
<span>Show</span>
|
|
<br>
|
|
<input type="text" placeholder="Table alias" class="table_alias">
|
|
<input type="text" placeholder="Column alias" class="col_alias">
|
|
<br>
|
|
<input type="checkbox"
|
|
title="Use this column in criteria"
|
|
class="criteria_col" data-bs-toggle="collapse" data-bs-target="#criteriaOptions2" aria-expanded="false" aria-controls="criteriaOptions2">
|
|
|
|
<button class="btn btn-link p-0 jsCriteriaButton" type="button" data-bs-toggle="collapse" data-bs-target="#criteriaOptions2" aria-expanded="false" aria-controls="criteriaOptions2">
|
|
criteria
|
|
</button>
|
|
<div class="collapse jsCriteriaOptions" id="criteriaOptions2">
|
|
|
|
<div>
|
|
<table class="table table-sm table-borderless align-middle w-auto">
|
|
|
|
<tr class="sort_order">
|
|
<td>Sort</td>
|
|
<td><input type="radio" name="sort[2]">Ascending</td>
|
|
<td><input type="radio" name="sort[2]">Descending</td>
|
|
</tr>
|
|
|
|
<tr class="logical_operator">
|
|
<td>Add as</td>
|
|
<td>
|
|
<input type="radio"
|
|
name="logical_op[2]"
|
|
value="AND"
|
|
class="logical_op"
|
|
checked>
|
|
AND
|
|
</td>
|
|
<td>
|
|
<input type="radio"
|
|
name="logical_op[2]"
|
|
value="OR"
|
|
class="logical_op">
|
|
OR
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>Column</td>
|
|
<td colspan="2">
|
|
<select class="columnNameSelect query-form__select--inline opColumn">
|
|
<option value="">select column</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>Op</td>
|
|
<td>
|
|
<select class="criteria_op">
|
|
<option value="=">=</option>
|
|
<option value=">">></option>
|
|
<option value=">=">>=</option>
|
|
<option value="<"><</option>
|
|
<option value="<="><=</option>
|
|
<option value="!=">!=</option>
|
|
<option value="LIKE">LIKE</option>
|
|
<option value="LIKE %...%">LIKE %...%</option>
|
|
<option value="NOT LIKE">NOT LIKE</option>
|
|
<option value="NOT LIKE %...%">NOT LIKE %...%</option>
|
|
<option value="IN (...)">IN (...)</option>
|
|
<option value="NOT IN (...)">NOT IN (...)</option>
|
|
<option value="BETWEEN">BETWEEN</option>
|
|
<option value="NOT BETWEEN">NOT BETWEEN</option>
|
|
<option value="IS NULL">IS NULL</option>
|
|
<option value="IS NOT NULL">IS NOT NULL</option>
|
|
<option value="REGEXP">REGEXP</option>
|
|
<option value="REGEXP ^...$">REGEXP ^...$</option>
|
|
<option value="NOT REGEXP">NOT REGEXP</option>
|
|
</select>
|
|
</td>
|
|
<td>
|
|
<select class="criteria_rhs">
|
|
<option value="text">Text</option>
|
|
<option value="anotherColumn">Another column</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr class="rhs_table" style="display: none;">
|
|
<td></td>
|
|
<td>
|
|
<select class="tableNameSelect">
|
|
<option value="">select table</option>
|
|
<option data-hash="e1aa88c07d60f7472d1e27463e533c89" value="test_table">test_table</option>
|
|
</select><span>.</span>
|
|
</td>
|
|
<td>
|
|
<select class="columnNameSelect">
|
|
<option value="">select column</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr class="rhs_text">
|
|
<td></td>
|
|
<td colspan="2">
|
|
<input type="text"
|
|
class="rhs_text_val"
|
|
placeholder="Enter criteria as free text">
|
|
</td>
|
|
</tr>
|
|
|
|
</table>
|
|
</div>
|
|
</div>
|
|
<button type="button" class="btn-close position-absolute top-0 end-0 jsRemoveColumn" aria-label="Remove this column"></button>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
<div class="col">
|
|
<div class="card">
|
|
<fieldset class="card-body">
|
|
<select class="tableNameSelect">
|
|
<option value="">select table</option>
|
|
<option data-hash="e1aa88c07d60f7472d1e27463e533c89" value="test_table">test_table</option>
|
|
</select>
|
|
<span>.</span>
|
|
<select class="columnNameSelect">
|
|
<option value="">select column</option>
|
|
</select>
|
|
<br>
|
|
<input type="checkbox" checked class="show_col">
|
|
<span>Show</span>
|
|
<br>
|
|
<input type="text" placeholder="Table alias" class="table_alias">
|
|
<input type="text" placeholder="Column alias" class="col_alias">
|
|
<br>
|
|
<input type="checkbox"
|
|
title="Use this column in criteria"
|
|
class="criteria_col" data-bs-toggle="collapse" data-bs-target="#criteriaOptions3" aria-expanded="false" aria-controls="criteriaOptions3">
|
|
|
|
<button class="btn btn-link p-0 jsCriteriaButton" type="button" data-bs-toggle="collapse" data-bs-target="#criteriaOptions3" aria-expanded="false" aria-controls="criteriaOptions3">
|
|
criteria
|
|
</button>
|
|
<div class="collapse jsCriteriaOptions" id="criteriaOptions3">
|
|
|
|
<div>
|
|
<table class="table table-sm table-borderless align-middle w-auto">
|
|
|
|
<tr class="sort_order">
|
|
<td>Sort</td>
|
|
<td><input type="radio" name="sort[3]">Ascending</td>
|
|
<td><input type="radio" name="sort[3]">Descending</td>
|
|
</tr>
|
|
|
|
<tr class="logical_operator">
|
|
<td>Add as</td>
|
|
<td>
|
|
<input type="radio"
|
|
name="logical_op[3]"
|
|
value="AND"
|
|
class="logical_op"
|
|
checked>
|
|
AND
|
|
</td>
|
|
<td>
|
|
<input type="radio"
|
|
name="logical_op[3]"
|
|
value="OR"
|
|
class="logical_op">
|
|
OR
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>Column</td>
|
|
<td colspan="2">
|
|
<select class="columnNameSelect query-form__select--inline opColumn">
|
|
<option value="">select column</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td>Op</td>
|
|
<td>
|
|
<select class="criteria_op">
|
|
<option value="=">=</option>
|
|
<option value=">">></option>
|
|
<option value=">=">>=</option>
|
|
<option value="<"><</option>
|
|
<option value="<="><=</option>
|
|
<option value="!=">!=</option>
|
|
<option value="LIKE">LIKE</option>
|
|
<option value="LIKE %...%">LIKE %...%</option>
|
|
<option value="NOT LIKE">NOT LIKE</option>
|
|
<option value="NOT LIKE %...%">NOT LIKE %...%</option>
|
|
<option value="IN (...)">IN (...)</option>
|
|
<option value="NOT IN (...)">NOT IN (...)</option>
|
|
<option value="BETWEEN">BETWEEN</option>
|
|
<option value="NOT BETWEEN">NOT BETWEEN</option>
|
|
<option value="IS NULL">IS NULL</option>
|
|
<option value="IS NOT NULL">IS NOT NULL</option>
|
|
<option value="REGEXP">REGEXP</option>
|
|
<option value="REGEXP ^...$">REGEXP ^...$</option>
|
|
<option value="NOT REGEXP">NOT REGEXP</option>
|
|
</select>
|
|
</td>
|
|
<td>
|
|
<select class="criteria_rhs">
|
|
<option value="text">Text</option>
|
|
<option value="anotherColumn">Another column</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr class="rhs_table" style="display: none;">
|
|
<td></td>
|
|
<td>
|
|
<select class="tableNameSelect">
|
|
<option value="">select table</option>
|
|
<option data-hash="e1aa88c07d60f7472d1e27463e533c89" value="test_table">test_table</option>
|
|
</select><span>.</span>
|
|
</td>
|
|
<td>
|
|
<select class="columnNameSelect">
|
|
<option value="">select column</option>
|
|
</select>
|
|
</td>
|
|
</tr>
|
|
|
|
<tr class="rhs_text">
|
|
<td></td>
|
|
<td colspan="2">
|
|
<input type="text"
|
|
class="rhs_text_val"
|
|
placeholder="Enter criteria as free text">
|
|
</td>
|
|
</tr>
|
|
|
|
</table>
|
|
</div>
|
|
</div>
|
|
<button type="button" class="btn-close position-absolute top-0 end-0 jsRemoveColumn" aria-label="Remove this column"></button>
|
|
</fieldset>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="mb-3">
|
|
<input class="btn btn-secondary" type="button" value="+ Add column" id="add_column_button">
|
|
</div>
|
|
|
|
<div>
|
|
<textarea id="MultiSqlquery"
|
|
class="form-control"
|
|
cols="80"
|
|
rows="4"
|
|
name="sql_query"
|
|
dir="ltr"></textarea>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="card-footer">
|
|
<input class="btn btn-secondary" type="button" id="update_query_button" value="Update query">
|
|
<input class="btn btn-secondary" type="button" id="copy_query" value="Copy query" disabled>
|
|
<input class="btn btn-primary" type="button" id="submit_query" value="Submit query">
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
<div id="sql_results"></div>
|