Run saved query from compilation page

This commit is contained in:
Georgy Litvinov 2021-02-23 22:46:00 +01:00
parent 0aa7aba071
commit 0c3fd560aa
2 changed files with 34 additions and 7 deletions

View file

@ -96,6 +96,26 @@ ${scripts.add('<script async type="text/javascript" src="${urls.base}/themes/iph
<#assign skipThis = propertyGroups.pullProperty("http://xmlns.com/foaf/0.1/firstName")!>
<#assign skipThis = propertyGroups.pullProperty("http://xmlns.com/foaf/0.1/lastName")!>
</#if>
<#assign rawQuery = propertyGroups.pullProperty("https://litvinovg.pro/text_structures#rawQueryString")!>
<#assign queryBuilderRules = propertyGroups.pullProperty("https://litvinovg.pro/text_structures#queryBuilderRules")!>
<#if rawQuery?has_content && queryBuilderRules?has_content>
<#list queryBuilderRules.statements as statement>
<#assign queryBuilderRulesString = statement.value!>
</#list>
<#list rawQuery.statements as statement>
<#assign rawQueryString = statement.value!>
</#list>
<form action="${urls.base}/customsearch" method="post">
<input type="hidden" id="queryBuilderRules" name="queryBuilderRules" value='${queryBuilderRulesString}' />
<input type="hidden" id="querytext" name="querytext" value='${rawQueryString}' />
<input type="submit" id="submit" value="Поисковый запрос"/>
</form>
</#if>
<div class="expandSwitch">
<label class="switch">Раскрыть статью
<input id="expandlCB" type="checkbox" onclick="switchExpand();">

View file

@ -75,11 +75,16 @@
};
</#if>
var rules_start;
if (localStorage.getItem('queryBuilderFormSaved') === true || localStorage.getItem('queryBuilderFormSaved') === 'true') {
rules_start = JSON.parse(localStorage.getItem('queryBuilderForm'));
} else {
rules_start = rules_example;
}
<#if queryBuilderRules??>
rules_start = ${queryBuilderRules};
<#else>
if (localStorage.getItem('queryBuilderFormSaved') === true || localStorage.getItem('queryBuilderFormSaved') === 'true') {
rules_start = JSON.parse(localStorage.getItem('queryBuilderForm'));
} else {
rules_start = rules_example;
}
</#if>
$('#builder').queryBuilder({
filters: [
@ -134,8 +139,10 @@
var query_string = format_query_string(json_result,"");
var hits = $("#hitsPerPageSelect :selected");
if (!$.isEmptyObject(query_string)) {
localStorage.setItem('queryBuilderForm',JSON.stringify(json_result));
localStorage.setItem('queryBuilderFormSaved',true);
<#if !queryBuilderRules??>
localStorage.setItem('queryBuilderForm',JSON.stringify(json_result));
localStorage.setItem('queryBuilderFormSaved',true);
</#if>
var queryURL = "${urls.base}/customsearch?querytext=" + query_string;
if (hits !== null){
queryURL = queryURL.concat("&hitsPerPage=",hits.text());