From f762323d97813b8ef143982e672caff40adeed18 Mon Sep 17 00:00:00 2001 From: Sebastian Peterschmidt <38015476+seppelschmidt@users.noreply.github.com> Date: Mon, 2 Apr 2018 21:28:13 +0000 Subject: [PATCH 1/2] Makes all checkboxes toggable with a single click --- app/views/admin/splashpages/_form.html.haml | 22 +++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/app/views/admin/splashpages/_form.html.haml b/app/views/admin/splashpages/_form.html.haml index 1d15b38c..81d919b6 100644 --- a/app/views/admin/splashpages/_form.html.haml +++ b/app/views/admin/splashpages/_form.html.haml @@ -1,3 +1,18 @@ +:javascript + $(document).ready(function(){ + var originalState = true; + $('form.splashpage .inputs:first .input.checkbox input[type=checkbox]:not(.select-all)').each(function() { + originalState = originalState && $(this).is(':checked'); + }); + $('form.splashpage .select-all').prop('checked', originalState); + + $('form.splashpage').on('change', '.select-all', function(e) { + var value = $(this).is(':checked'); + var parent = $(this).parents('.inputs:first'); + parent.find('.input.checkbox input[type=checkbox]').prop('checked', value); + }); + }); + .row .col-md-12 .page-header @@ -8,6 +23,13 @@ .col-md-12 = f.inputs name: 'Components' do %ul.fa-ul + %li + .boolean.input.optional.form-group.checkbox + %span.form-wrapper + %label.control-label + %input.select-all{type: 'checkbox'} + %em Select all + %li = f.input :include_cfp, label: 'Display call for papers and call for tracks, while open', input_html: { checked: params[:action] == 'new' || @splashpage.try(:include_cfp) } %li From 73424e1bbaa98e0e9ef7578fd277dcee73784d16 Mon Sep 17 00:00:00 2001 From: Sebastian Peterschmidt <38015476+seppelschmidt@users.noreply.github.com> Date: Mon, 2 Apr 2018 22:00:38 +0000 Subject: [PATCH 2/2] Fixes linter problems --- app/views/admin/splashpages/_form.html.haml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/views/admin/splashpages/_form.html.haml b/app/views/admin/splashpages/_form.html.haml index 81d919b6..5b3c6d5a 100644 --- a/app/views/admin/splashpages/_form.html.haml +++ b/app/views/admin/splashpages/_form.html.haml @@ -5,7 +5,7 @@ originalState = originalState && $(this).is(':checked'); }); $('form.splashpage .select-all').prop('checked', originalState); - + $('form.splashpage').on('change', '.select-all', function(e) { var value = $(this).is(':checked'); var parent = $(this).parents('.inputs:first'); @@ -27,7 +27,7 @@ .boolean.input.optional.form-group.checkbox %span.form-wrapper %label.control-label - %input.select-all{type: 'checkbox'} + %input.select-all{ type: 'checkbox' } %em Select all %li