all values must be arrays
[MojoFacets.git] / templates / all_checkboxes.html.ep
index 7c2b16f..262c847 100644 (file)
@@ -1,11 +1,12 @@
 <a id="all"  href="#">all</a>
+<a id="toggle" href="#">toggle</a>
 <a id="none" href="#">none</a>
 
 <label for=filter_regex>regex:
 <input type=text name=filter_regex>
 <span class=hint>tab or click outside to apply</span>
-<a id="included" href="#">included</a>
-<a id="excluded" href="#">excluded</a>
+<a id="included" href="#" style="display:none">included</a>
+<a id="excluded" href="#" style="display:none">excluded</a>
 </label>
 
 
@@ -29,6 +30,15 @@ $('a#none').click( function(){
        $('#checked-count').text( 0 );
 });
 
+$('a#toggle').click( function(){
+       var count = 0;
+    $("input[type='checkbox']:not([disabled='disabled'])").each( function() {
+               this.checked = ! this.checked;
+               if ( this.checked ) count++;
+       });
+       $('#checked-count').text( count );
+});
+
 function update_checked_count(full) {
        var count = $('#checked-count');
        var nr = -1;
@@ -50,14 +60,14 @@ $("input[type='checkbox']").bind( 'click', update_checked_count );
 $('a#included').click( function(){
     $("label.included input[type='checkbox']:not([disabled='disabled'])").attr('checked', true);
        update_checked_count(1);
-}).hide();
+});
 
 $('a#excluded').click( function(){
-    $("label.excluded input[type='checkbox']:not([disabled='disabled'])").attr('checked', false);
+    $("label.excluded input[type='checkbox']:not([disabled='disabled'])").attr('checked', true);
        update_checked_count(1);
-}).hide();
+});
 
-$('input[name=filter_regex]').change( function(e) {
+$('input[name=filter_regex]').focusout( function(e) {
        console.debug( this, e );
        var r = new RegExp( this.value ,'i');
        var included = 0;