mirror of
https://github.com/alchemy-fr/Phraseanet.git
synced 2025-10-24 02:13:15 +00:00
#PHRAS-610 #time 2h
WIP
This commit is contained in:
@@ -6,9 +6,9 @@
|
|||||||
<input type="hidden" name="reference" value="{{sbas_id}}"/>
|
<input type="hidden" name="reference" value="{{sbas_id}}"/>
|
||||||
<div class="clksbas">
|
<div class="clksbas">
|
||||||
<span onclick="deploy(this, '.sbascont_{{sbas_id}}' );" class="deployer_opened" ></span>
|
<span onclick="deploy(this, '.sbascont_{{sbas_id}}' );" class="deployer_opened" ></span>
|
||||||
<input type="checkbox" checked xstyle="display: none;" id="sbasChkr_{{sbas_id}}_{{unique_id}}" class="sbasChkr_{{sbas_id}}"
|
<input type="checkbox" checked style="display: none;" id="sbasChkr_{{sbas_id}}_{{unique_id}}" class="sbasChkr_{{sbas_id}}"
|
||||||
onchange="clksbas(this, {{sbas_id}});" />
|
onchange="clksbas(this, {{sbas_id}});" />
|
||||||
<label style="display: inline" class="checkbox" for="sbasChkr_{{sbas_id}}_{{unique_id}}">
|
<label id="ADVSRCH_SBAS_LABEL_{{sbas_id}}" style="display: inline" class="checkbox danger_indicator" for="sbasChkr_{{sbas_id}}_{{unique_id}}">
|
||||||
<span>{{sbas_id|sbas_labels(app)}}</span>
|
<span>{{sbas_id|sbas_labels(app)}}</span>
|
||||||
<span class="infos_sbas_{{sbas_id}}">
|
<span class="infos_sbas_{{sbas_id}}">
|
||||||
{{base["collections"]|length}}/{{base['collections']|length}}
|
{{base["collections"]|length}}/{{base['collections']|length}}
|
||||||
@@ -24,7 +24,7 @@
|
|||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<input class="ck_{{collection["base_id"]}} checkbas" style="*margin-top:-18px;"
|
<input class="ck_{{collection["base_id"]}} checkbas" style="*margin-top:-18px;"
|
||||||
onchange="infoSbas(this, {{sbas_id}});checkFilters(true);"
|
onchange="checkFilters(true);"
|
||||||
id="ck_{{collection["base_id"]}}_{{unique_id}}" type="checkbox"
|
id="ck_{{collection["base_id"]}}_{{unique_id}}" type="checkbox"
|
||||||
name="bases[]" value="{{collection["base_id"]}}" {% if collection["selected"] %}checked="checked"{% endif %} />
|
name="bases[]" value="{{collection["base_id"]}}" {% if collection["selected"] %}checked="checked"{% endif %} />
|
||||||
</td>
|
</td>
|
||||||
@@ -262,7 +262,7 @@
|
|||||||
<form id="searchForm" method="POST" action="{{ path('prod_query') }}" name="phrasea_query" class="phrasea_query">
|
<form id="searchForm" method="POST" action="{{ path('prod_query') }}" name="phrasea_query" class="phrasea_query">
|
||||||
<input id="SENT_query" name="qry" type="hidden" value="{{app['settings'].getUserSetting(app.getAuthenticatedUser(), 'start_page_query')}}">
|
<input id="SENT_query" name="qry" type="hidden" value="{{app['settings'].getUserSetting(app.getAuthenticatedUser(), 'start_page_query')}}">
|
||||||
<div class="input-append">
|
<div class="input-append">
|
||||||
<input id="EDIT_query" name="fake_qry" type="text" autocomplete="off" class="search query" value="{{app['settings'].getUserSetting(app.getAuthenticatedUser(), 'start_page_query')}}">
|
<input id="EDIT_query" name="fake_qry" type="text" autocomplete="off" class="search query danger_indicator" value="{{app['settings'].getUserSetting(app.getAuthenticatedUser(), 'start_page_query')}}">
|
||||||
<a id="ADV_query" href="#" class="btn btn-inverse adv_trigger adv_search_button">
|
<a id="ADV_query" href="#" class="btn btn-inverse adv_trigger adv_search_button">
|
||||||
<img src="/skins/icons/settings.png" title="{{ 'Advanced Search' | trans }}"/>
|
<img src="/skins/icons/settings.png" title="{{ 'Advanced Search' | trans }}"/>
|
||||||
</a>
|
</a>
|
||||||
|
|||||||
@@ -2440,15 +2440,10 @@ H4 {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#searchForm .clkbas label {
|
#searchForm .clkbas label {
|
||||||
color: #AAAAAA;
|
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
}
|
}
|
||||||
|
|
||||||
#searchForm .clkbas label.selected {
|
|
||||||
color: #FFFFFF;
|
|
||||||
}
|
|
||||||
|
|
||||||
.clkbas img {
|
.clkbas img {
|
||||||
vertical-align: middle;
|
vertical-align: middle;
|
||||||
max-height: 22px;
|
max-height: 22px;
|
||||||
|
|||||||
@@ -152,7 +152,11 @@ function is_shift_key(event) {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* adv search : check/uncheck all the collections (called by the buttons "all"/"none")
|
||||||
|
*
|
||||||
|
* @param bool
|
||||||
|
*/
|
||||||
function checkBases(bool) {
|
function checkBases(bool) {
|
||||||
$('form.phrasea_query .sbas_list').each(function () {
|
$('form.phrasea_query .sbas_list').each(function () {
|
||||||
|
|
||||||
@@ -161,15 +165,8 @@ function checkBases(bool) {
|
|||||||
$(this).find(':checkbox').attr('checked', 'checked');
|
$(this).find(':checkbox').attr('checked', 'checked');
|
||||||
else
|
else
|
||||||
$(this).find(':checkbox').removeAttr('checked');
|
$(this).find(':checkbox').removeAttr('checked');
|
||||||
infoSbas(null, sbas_id);
|
|
||||||
|
|
||||||
});
|
});
|
||||||
if (bool) {
|
|
||||||
$('.sbascont label').addClass('selected');
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$('.sbascont label').removeClass('selected');
|
|
||||||
}
|
|
||||||
checkFilters(true);
|
checkFilters(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -214,34 +211,38 @@ function checkFilters(save) {
|
|||||||
$("option.dbx", dateFilterSelect).prop("disabled", true); // dbx = all "field" entries in the select = all except the firstt
|
$("option.dbx", dateFilterSelect).prop("disabled", true); // dbx = all "field" entries in the select = all except the firstt
|
||||||
$("option.dbx", dateFilterSelect).hide();
|
$("option.dbx", dateFilterSelect).hide();
|
||||||
|
|
||||||
var nbSelectedColls = 0;
|
var nbTotalSelectedColls = 0;
|
||||||
$.each($('.sbascont', adv_box), function () {
|
$.each($('.sbascont', adv_box), function () {
|
||||||
var $this = $(this);
|
var $this = $(this);
|
||||||
|
|
||||||
var sbas_id = $this.parent().find('input[name="reference"]').val();
|
var sbas_id = $this.parent().find('input[name="reference"]').val();
|
||||||
search.bases[sbas_id] = [];
|
search.bases[sbas_id] = [];
|
||||||
|
|
||||||
var bas_ckbox = $this.find('.checkbas');
|
var nbCols = 0;
|
||||||
if (bas_ckbox.filter(':not(:checked)').length > 0) {
|
var nbSelectedColls = 0;
|
||||||
danger = 'medium';
|
$this.find('.checkbas').each(function (idx, el) {
|
||||||
}
|
nbCols++;
|
||||||
|
if($(this).attr("checked")) {
|
||||||
var checked = bas_ckbox.filter(':checked');
|
nbSelectedColls++;
|
||||||
/*
|
nbTotalSelectedColls++;
|
||||||
if (checked.length > 0) {
|
search.bases[sbas_id].push($(this).val());
|
||||||
var sbas_fields = $('.field_' + sbas_id, container).removeClass("hidden");
|
}
|
||||||
sbas_fields.filter('option').show().filter('.was').removeClass('was').attr('selected', 'selected').selected(true);
|
|
||||||
sbas_fields.filter(':checkbox').parent().show().find('.was').attr('checked', 'checked').removeClass('was');
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
var nbSelectedCollsForSBas = 0;
|
|
||||||
checked.each(function () {
|
|
||||||
nbSelectedCollsForSBas++;
|
|
||||||
nbSelectedColls++;
|
|
||||||
search.bases[sbas_id].push($(this).val());
|
|
||||||
});
|
});
|
||||||
|
|
||||||
if(nbSelectedCollsForSBas == 0) {
|
// display the number of selected colls for the databox
|
||||||
|
$('.infos_sbas_' + sbas_id).empty().append(nbSelectedColls + '/' + nbCols);
|
||||||
|
|
||||||
|
// if one coll is not checked, show danger
|
||||||
|
if(nbSelectedColls != nbCols) {
|
||||||
|
$("#ADVSRCH_SBAS_LABEL_" + sbas_id).addClass("danger");
|
||||||
|
danger = true;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
$("#ADVSRCH_SBAS_LABEL_" + sbas_id).removeClass("danger");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if(nbSelectedColls == 0) {
|
||||||
// no collections checked for this databox
|
// no collections checked for this databox
|
||||||
// hide the status bits
|
// hide the status bits
|
||||||
$("#ADVSRCH_SB_ZONE_"+sbas_id, container).hide();
|
$("#ADVSRCH_SB_ZONE_"+sbas_id, container).hide();
|
||||||
@@ -264,7 +265,7 @@ function checkFilters(save) {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
if (nbSelectedColls === 0) {
|
if (nbTotalSelectedColls == 0) {
|
||||||
// no collections checked at all
|
// no collections checked at all
|
||||||
// filters.addClass("danger");
|
// filters.addClass("danger");
|
||||||
// hide irrelevant filters
|
// hide irrelevant filters
|
||||||
@@ -307,6 +308,7 @@ function checkFilters(save) {
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$('#ADVSRCH_FIELDS_ZONE', container).addClass('danger');
|
$('#ADVSRCH_FIELDS_ZONE', container).addClass('danger');
|
||||||
|
danger = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------- status bits filter ---------
|
//--------- status bits filter ---------
|
||||||
@@ -324,6 +326,7 @@ function checkFilters(save) {
|
|||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
$("#ADVSRCH_SB_ZONE_"+sbas_id, container).addClass('danger');
|
$("#ADVSRCH_SB_ZONE_"+sbas_id, container).addClass('danger');
|
||||||
|
danger = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
@@ -364,13 +367,17 @@ function checkFilters(save) {
|
|||||||
|
|
||||||
fieldsSelect.scrollTop(scroll);
|
fieldsSelect.scrollTop(scroll);
|
||||||
|
|
||||||
if (save === true)
|
// if one filter shows danger, show it on the query
|
||||||
setPref('search', JSON.stringify(search));
|
if (danger) {
|
||||||
|
|
||||||
if (danger === true || danger === 'medium')
|
|
||||||
$('#EDIT_query').addClass('danger');
|
$('#EDIT_query').addClass('danger');
|
||||||
else
|
}
|
||||||
|
else {
|
||||||
$('#EDIT_query').removeClass('danger');
|
$('#EDIT_query').removeClass('danger');
|
||||||
|
}
|
||||||
|
|
||||||
|
if (save === true) {
|
||||||
|
setPref('search', JSON.stringify(search));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function toggleFilter(filter, ele) {
|
function toggleFilter(filter, ele) {
|
||||||
@@ -422,6 +429,7 @@ function clearAnswers() {
|
|||||||
|
|
||||||
function reset_adv_search() {
|
function reset_adv_search() {
|
||||||
$('#ADVSRCH_OPTIONS_ZONE select[name="sort"]').val($('#ADVSRCH_OPTIONS_ZONE select[name="sort"] option.default-selection').attr('value'));
|
$('#ADVSRCH_OPTIONS_ZONE select[name="sort"]').val($('#ADVSRCH_OPTIONS_ZONE select[name="sort"] option.default-selection').attr('value'));
|
||||||
|
$('#ADVSRCH_FIELDS_ZONE option').removeAttr("selected");
|
||||||
$('#ADVSRCH_OPTIONS_ZONE input:checkbox.field_switch').removeAttr('checked');
|
$('#ADVSRCH_OPTIONS_ZONE input:checkbox.field_switch').removeAttr('checked');
|
||||||
$('#ADVSRCH_OPTIONS_ZONE .datepicker').val('');
|
$('#ADVSRCH_OPTIONS_ZONE .datepicker').val('');
|
||||||
$('form.adv_search_bind input:text').val('');
|
$('form.adv_search_bind input:text').val('');
|
||||||
@@ -2756,29 +2764,10 @@ function clksbas(el, sbas_id) {
|
|||||||
$.each($('.sbascont_' + sbas_id + ' :checkbox'), function () {
|
$.each($('.sbascont_' + sbas_id + ' :checkbox'), function () {
|
||||||
this.checked = bool;
|
this.checked = bool;
|
||||||
});
|
});
|
||||||
if (bool) {
|
|
||||||
$('.sbascont_' + sbas_id + ' label').addClass('selected');
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
$('.sbascont_' + sbas_id + ' label').removeClass('selected');
|
|
||||||
}
|
|
||||||
|
|
||||||
infoSbas(null, sbas_id);
|
|
||||||
checkFilters(true);
|
checkFilters(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
function infoSbas(el, sbas_id) {
|
|
||||||
if (el) {
|
|
||||||
var label = $('label.ck_' + $(el).val());
|
|
||||||
if ($(el).attr('checked')) {
|
|
||||||
label.addClass('selected');
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
label.removeClass('selected');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$('.infos_sbas_' + sbas_id).empty().append($('.basChild_' + sbas_id + ':first .checkbas:checked').length + '/' + $('.basChild_' + sbas_id + ':first .checkbas').length);
|
|
||||||
}
|
|
||||||
|
|
||||||
function advSearch(event) {
|
function advSearch(event) {
|
||||||
event.cancelBubble = true;
|
event.cancelBubble = true;
|
||||||
|
|||||||
Reference in New Issue
Block a user