use real radio buttons for metatype filter

This commit is contained in:
Frédéric Péters 2014-02-07 10:49:21 +01:00
parent e826ee20ca
commit 9f0a65bb1d
2 changed files with 15 additions and 12 deletions

View File

@ -152,7 +152,7 @@
function update_portaltypes()
{
metatype = $('.metatypes button.selected').data('type');
metatype = $('.metatypes input:checked').val();
if ($('option[value="portal_type"]:selected').length == 0) {
$('.addIndex option[value="portal_type"]').prop('selected', true);
$('.addIndex').trigger('change');
@ -175,12 +175,11 @@ function update_portaltypes()
function select_metatype(elem)
{
$('.metatypes button').removeClass('selected');
$('div.subtype').hide();
$('option.subtype').hide();
$(elem).addClass('selected');
$('div.subtype.' + $(elem).data('type')).show();
$('option.subtype.' + $(elem).data('type')).show();
$('div.subtype.' + $(elem).val()).show();
$('option.subtype.' + $(elem).val()).show();
$('fieldset.subtype-fieldset div.criteria-content').show();
}
@ -205,11 +204,14 @@ function select_metatype(elem)
var portal_type = $(this).val();
var checkbox = $('.subtype-fieldset').find('[data-portaltype="' + portal_type + '"]');
if ($(checkbox).parents('.docs').length == 1) {
select_metatype($('.metatypes [data-type="docs"]'));
$('.metatypes [value="docs"]').attr('checked', 'checked');
select_metatype($('.metatypes [value="docs"]'));
} else if ($(checkbox).parents('.tasks').length == 1) {
select_metatype($('.metatypes [data-type="tasks"]'));
$('.metatypes [value="tasks"]').attr('checked', 'checked');
select_metatype($('.metatypes [value="tasks"]'));
} else if ($(checkbox).parents('.contacts').length == 1) {
select_metatype($('.metatypes [data-type="contacts"]'));
$('.metatypes [value="contacts"]').attr('checked', 'checked');
select_metatype($('.metatypes [value="contacts"]'));
}
$(checkbox).click();
});
@ -232,7 +234,7 @@ function select_metatype(elem)
/* install callbacks */
$('.metatypes button').click(function() {
$('.metatypes input').change(function() {
select_metatype($(this));
update_portaltypes();
return false;

View File

@ -5,12 +5,12 @@
i18n:domain="plone">
<body>
<div metal:define-macro="criterias">
<div id="pfwbged-criterias">
<div class="metatypes">
Que cherchez-vous :
<button data-type="docs">Documents et dossiers</button>
<button data-type="tasks">Tâches</button>
<button data-type="contacts">Contacts</button>
<label><input value="docs" name="type-filter" type="radio">Documents et dossiers</label>
<label><input value="tasks" name="type-filter" type="radio">Tâches</label>
<label><input value="contacts" name="type-filter" type="radio">Contacts</label>
</div>
<fieldset class="criterias-fieldset subtype-fieldset">
@ -83,6 +83,7 @@
<input type="hidden" name="form-extra-columns" id="form-extra-columns"/>
</div>
</div>
</body>
</html>