[Advanced search] Polished things up a bit by using alert and dialog to convey messages.
这个提交包含在:
父节点
17170433e0
当前提交
97b5b1b2c8
共有 2 个文件被更改,包括 56 次插入 和 26 次删除
|
|
@ -113,26 +113,26 @@ function export_search_result(){
|
|||
}
|
||||
|
||||
function export_stored_query(id){
|
||||
xhttp = new XMLHttpRequest();
|
||||
xhttp.onreadystatechange = function() {
|
||||
var a;
|
||||
if (xhttp.readyState === 4 && xhttp.status === 200) {
|
||||
// Trick for making downloadable link
|
||||
a = document.createElement('a');
|
||||
a.href = window.URL.createObjectURL(xhttp.response);
|
||||
// Give filename you wish to download
|
||||
a.download = "advanced_search_export.adi";
|
||||
a.style.display = 'none';
|
||||
document.body.appendChild(a);
|
||||
a.click();
|
||||
}
|
||||
};
|
||||
// Post data to URL which handles post request
|
||||
xhttp.open("POST", "<?php echo site_url('search/export_stored_query_to_adif');?>", true);
|
||||
xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
|
||||
// You should set responseType as blob for binary responses
|
||||
xhttp.responseType = 'blob';
|
||||
xhttp.send("id=" + id);
|
||||
xhttp = new XMLHttpRequest();
|
||||
xhttp.onreadystatechange = function() {
|
||||
var a;
|
||||
if (xhttp.readyState === 4 && xhttp.status === 200) {
|
||||
// Trick for making downloadable link
|
||||
a = document.createElement('a');
|
||||
a.href = window.URL.createObjectURL(xhttp.response);
|
||||
// Give filename you wish to download
|
||||
a.download = "advanced_search_export.adi";
|
||||
a.style.display = 'none';
|
||||
document.body.appendChild(a);
|
||||
a.click();
|
||||
}
|
||||
};
|
||||
// Post data to URL which handles post request
|
||||
xhttp.open("POST", "<?php echo site_url('search/export_stored_query_to_adif');?>", true);
|
||||
xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
|
||||
// You should set responseType as blob for binary responses
|
||||
xhttp.responseType = 'blob';
|
||||
xhttp.send("id=" + id);
|
||||
}
|
||||
|
||||
$('#btn-save').on('click', function() {
|
||||
|
|
@ -153,7 +153,8 @@ $('#btn-save').on('click', function() {
|
|||
if(result) {
|
||||
$.post( "<?php echo site_url('search/save_query');?>", { search: JSON.stringify(resultquery, null, 2), description: $(".getqueryname").val() })
|
||||
.done(function( data ) {
|
||||
alert('Query saved!');
|
||||
$(".alert").remove();
|
||||
$(".card-body.main").append('<div class="alert alert-success"><a href="#" class="close" data-dismiss="alert" aria-label="close">×</a>Your query has been saved!</div>');
|
||||
$('#querydropdown').append( new Option(data.description, data.id) ); // We add the saved query to the dropdown
|
||||
});
|
||||
}
|
||||
|
|
@ -162,11 +163,25 @@ $('#btn-save').on('click', function() {
|
|||
|
||||
}
|
||||
else{
|
||||
alert('Make a query first');
|
||||
BootstrapDialog.show({
|
||||
title: 'Stored Queries',
|
||||
type: BootstrapDialog.TYPE_WARNING,
|
||||
size: BootstrapDialog.SIZE_NORMAL,
|
||||
cssClass: 'queries-dialog',
|
||||
nl2br: false,
|
||||
message: 'You need to make a query before you search!',
|
||||
buttons: [{
|
||||
label: 'Close',
|
||||
action: function (dialogItself) {
|
||||
dialogItself.close();
|
||||
}
|
||||
}]
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
function run_query() {
|
||||
$(".alert").remove();
|
||||
$(".runbutton").addClass('running');
|
||||
$(".runbutton").prop('disabled', true);
|
||||
let id = $('#querydropdown').val();
|
||||
|
|
@ -231,6 +246,7 @@ function edit_stored_query(id) {
|
|||
}
|
||||
|
||||
$('#btn-edit').on('click', function() {
|
||||
$(".alert").remove();
|
||||
$.ajax({
|
||||
url: base_url + 'index.php/search/get_stored_queries',
|
||||
type: 'post',
|
||||
|
|
@ -253,6 +269,7 @@ $('#btn-edit').on('click', function() {
|
|||
});
|
||||
|
||||
$('#btn-get').on('click', function() {
|
||||
$(".alert").remove();
|
||||
var result = $('#builder').queryBuilder('getRules');
|
||||
if (!$.isEmptyObject(result)) {
|
||||
$(".searchbutton").addClass('running');
|
||||
|
|
@ -289,7 +306,20 @@ $('#btn-get').on('click', function() {
|
|||
});
|
||||
}
|
||||
else{
|
||||
alert('Make a query first');
|
||||
BootstrapDialog.show({
|
||||
title: 'Stored Queries',
|
||||
type: BootstrapDialog.TYPE_WARNING,
|
||||
size: BootstrapDialog.SIZE_NORMAL,
|
||||
cssClass: 'queries-dialog',
|
||||
nl2br: false,
|
||||
message: 'You need to make a query before you search!',
|
||||
buttons: [{
|
||||
label: 'Close',
|
||||
action: function (dialogItself) {
|
||||
dialogItself.close();
|
||||
}
|
||||
}]
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@
|
|||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="card-body main">
|
||||
|
||||
<div class="card-text" id="builder"></div>
|
||||
|
||||
|
|
@ -41,8 +41,8 @@
|
|||
|
||||
|
||||
<div class="form-group row">
|
||||
<label class="col-md-1 control-label" for="querydropdown"> Stored queries:</label>
|
||||
<div class="col-md-2">
|
||||
<label class="col-md-2 control-label" for="querydropdown"> Stored queries:</label>
|
||||
<div class="col-md-3">
|
||||
<select id="querydropdown" name="querydropdown" class="form-control custom-select-sm">
|
||||
<?php
|
||||
foreach($stored_queries as $q){
|
||||
|
|
|
|||
正在加载…
在新工单中引用