Save to local storage at search

This commit is contained in:
Georgy Litvinov 2020-08-25 10:47:35 +02:00
parent 02177dcea7
commit f86119a3bc

View file

@ -1,26 +1,32 @@
<div id="builder"></div> <div id="builder"></div>
<div class="btn-group"> <div class="btn-group">
<button id="btn-search" class="btn btn-warning reset" data-target="basic">Search</button> <button id="btn-reset" class="btn btn-warning reset" data-target="basic">Очистить</button>
<button id="btn-reset" class="btn btn-warning reset" data-target="basic">Reset</button> <button id="btn-set" class="btn btn-success set-json" data-target="basic">Пример</button>
<button id="btn-set" class="btn btn-success set-json" data-target="basic">Set rules</button> <button id="btn-search" class="btn btn-warning reset" data-target="basic">Поиск</button>
<button id="btn-get" class="btn btn-primary parse-json" data-target="basic">Get rules</button> <!-- <button id="btn-get" class="btn btn-primary parse-json" data-target="basic">Get rules</button> -->
</div> </div>
<script src="themes/iph/js/query-builder.standalone.min.js"></script> <script src="themes/iph/js/query-builder.standalone.min.js"></script>
<script src="themes/iph/js/query-builder.ru.js"></script> <script src="themes/iph/js/query-builder.ru.js"></script>
<script> <script>
var rules_basic = { var rules_example = {
condition: 'AND', condition: 'AND',
rules: [{ rules: [{
id: 'ALLTEXT', id: 'ALLTEXT',
operator: 'contains', operator: 'contains',
value: 2 value: 'философия'
}, { }, {
id: 'keywords', id: 'keywords',
operator: 'contains', operator: 'contains',
value: 1 value: 'авторитет'
}] }]
}; };
var rules_start;
if (localStorage.getItem('queryBuilderFormSaved') === true || localStorage.getItem('queryBuilderFormSaved') === 'true') {
rules_start = JSON.parse(localStorage.getItem('queryBuilderForm'));
} else {
rules_start = rules_example;
}
$('#builder').queryBuilder({ $('#builder').queryBuilder({
filters: [ filters: [
@ -34,7 +40,7 @@
], ],
lang_code: 'ru', lang_code: 'ru',
rules: rules_basic rules: rules_start
}); });
$('#btn-reset').on('click', function() { $('#btn-reset').on('click', function() {
@ -42,22 +48,26 @@
}); });
$('#btn-set').on('click', function() { $('#btn-set').on('click', function() {
$('#builder').queryBuilder('setRules', rules_basic); $('#builder').queryBuilder('setRules', rules_example);
}); });
$('#btn-get').on('click', function() { //$('#btn-get').on('click', function() {
var result = $('#builder').queryBuilder('getRules'); // var result = $('#builder').queryBuilder('getRules');
//
if (!$.isEmptyObject(result)) { // if (!$.isEmptyObject(result)) {
alert(JSON.stringify(result, null, 2)); // alert(JSON.stringify(result, null, 2));
} // }
//
}); // });
$('#btn-search').on('click', function() { $('#btn-search').on('click', function() {
var json_result = $('#builder').queryBuilder('getRules'); var json_result = $('#builder').queryBuilder('getRules');
var query_string = format_query_string(json_result,""); var query_string = format_query_string(json_result,"");
if (!$.isEmptyObject(query_string)) { if (!$.isEmptyObject(query_string)) {
localStorage.setItem('queryBuilderForm',JSON.stringify(json_result));
localStorage.setItem('queryBuilderFormSaved',true);
window.open("${urls.base}/customsearch?querytext=" + query_string,"_self") window.open("${urls.base}/customsearch?querytext=" + query_string,"_self")
} }
//if (!$.isEmptyObject(json_result)) { //if (!$.isEmptyObject(json_result)) {