Some progress
This commit is contained in:
parent
166e90dae0
commit
fd5b66000f
2 changed files with 30 additions and 7 deletions
|
@ -164,7 +164,7 @@
|
|||
|
||||
function fillOutForm(compilationName){
|
||||
var iframeDoc = document.getElementById('newCompilationIframe').contentWindow.document;
|
||||
var rules = $('#builder').queryBuilder('getRules');
|
||||
var rules = $('#builder').queryBuilder('getRules', { get_flags: true });
|
||||
var query = format_query_string(rules,"");
|
||||
iframeDoc.getElementById('queryBuilderRules').value = JSON.stringify(rules);
|
||||
iframeDoc.getElementById('rawQueryString').value = query;
|
||||
|
|
|
@ -132,7 +132,7 @@
|
|||
|
||||
|
||||
$('#btn-search-expand').on('click', function() {
|
||||
var json_result = $('#builder').queryBuilder('getRules');
|
||||
var json_result = $('#builder').queryBuilder('getRules', { get_flags: true });
|
||||
var query_string = format_query_string(json_result,"");
|
||||
var hits = $("#hitsPerPageSelect :selected");
|
||||
if (!$.isEmptyObject(query_string)) {
|
||||
|
@ -171,16 +171,26 @@
|
|||
if ('operator' in json_query && json_query.operator.startsWith("not_")){
|
||||
string_query += "NOT ";
|
||||
}
|
||||
string_query += json_query.field + ":" + json_query.value.toString().replace(/[']+/g,'').replace(/#/g,'%23') ;
|
||||
if (json_query.hasOwnProperty('data') && json_query.data.hasOwnProperty('value')){
|
||||
var value = "\"" + json_query.data.value.toString()+ "\"";
|
||||
} else {
|
||||
var value = json_query.value.toString();
|
||||
}
|
||||
string_query += json_query.field + ":" + value.replace(/[']+/g,'').replace(/#/g,'%23') ;
|
||||
}
|
||||
return string_query;
|
||||
}
|
||||
|
||||
function excludeDocByURI(uri){
|
||||
var allRules = $('#builder').queryBuilder('getRules');
|
||||
var excludeRuleString = '{ "id": "URI", "field": "URI", "type": "string", "input": "text", "operator": "not_contains", "value": "" }';
|
||||
function excludeDocByURI(name, uri){
|
||||
var allRules = $('#builder').queryBuilder('getRules', { get_flags: true });
|
||||
var excludeRuleString = '{ "id": "URI", "field": "URI", "type": "string", "flags":{}, "input": "text", "operator": "not_contains", "data":{} }';
|
||||
var excludeRule = JSON.parse(excludeRuleString);
|
||||
excludeRule.value = uri;
|
||||
excludeRule.data.value = uri;
|
||||
excludeRule.flags.value_readonly = true;
|
||||
excludeRule.flags.filter_readonly = true;
|
||||
excludeRule.flags.operator_readonly = true;
|
||||
excludeRule.value = name;
|
||||
console.log(excludeRule);
|
||||
if (allRules !== null){
|
||||
if (allRules.condition === "AND"){
|
||||
allRules.rules.push(excludeRule);
|
||||
|
@ -194,6 +204,19 @@
|
|||
$('#builder').queryBuilder('setRules', allRules);
|
||||
}
|
||||
}
|
||||
|
||||
function createRemoveButtons(){
|
||||
$('.compilationDraftExcerpt').each(function(index){ createRemoveButton(this)});
|
||||
}
|
||||
|
||||
function createRemoveButton(element){
|
||||
var uri = element.getAttribute('parturi');
|
||||
var button = element.querySelector('button');
|
||||
var a = document.createElement('a');
|
||||
a.setAttribute('href',"javascript:excludeDocByURI(\'" + uri + "\');");
|
||||
a.textContent = "удалить документ из поиска";
|
||||
button.appendChild(a);
|
||||
}
|
||||
</script>
|
||||
<#macro freeField field >
|
||||
{
|
||||
|
|
Loading…
Add table
Reference in a new issue