From 95732b429fc9b71f14c544586885a449bd5efddc Mon Sep 17 00:00:00 2001 From: fat <jacobthornton@gmail.com> Date: Sat, 17 Aug 2013 21:50:01 -0700 Subject: [PATCH] add dependency support to customizer --- assets/js/customizer.js | 22 ++++++++++++++++++++++ customize.html | 14 +++++++------- 2 files changed, 29 insertions(+), 7 deletions(-) diff --git a/assets/js/customizer.js b/assets/js/customizer.js index 7725ec0daf..b8a4b29562 100644 --- a/assets/js/customizer.js +++ b/assets/js/customizer.js @@ -216,5 +216,27 @@ window.onload = function () { // wait for load in a dumb way because B-0 inputsVariables.val('') }) + $('[data-dependencies]').on('click', function () { + if (!$(this).is(':checked')) return + var dependencies = this.getAttribute('data-dependencies') + if (!dependencies) return + dependencies = dependencies.split(',') + for (var i = 0; i < dependencies.length; i++) { + var dependency = $('[value="' + dependencies[i] + '"]') + dependency && dependency.prop('checked', true) + } + }) + + $('[data-dependents]').on('click', function () { + if ($(this).is(':checked')) return + var dependents = this.getAttribute('data-dependents') + if (!dependents) return + dependents = dependents.split(',') + for (var i = 0; i < dependents.length; i++) { + var dependent = $('[value="' + dependents[i] + '"]') + dependent && dependent.prop('checked', false) + } + }) + parseUrl() } \ No newline at end of file diff --git a/customize.html b/customize.html index 94b8719441..55dd882f8a 100644 --- a/customize.html +++ b/customize.html @@ -66,13 +66,13 @@ base_url: "../" </div> <div class="checkbox"> <label> - <input type="checkbox" checked value="forms.less"> + <input type="checkbox" checked value="forms.less" data-dependents="navbar.less,input-groups.less"> Forms </label> </div> <div class="checkbox"> <label> - <input type="checkbox" checked value="buttons.less"> + <input type="checkbox" checked value="buttons.less" data-dependents="button-groups.less"> Buttons </label> </div> @@ -112,7 +112,7 @@ base_url: "../" </div> <div class="checkbox"> <label> - <input type="checkbox" checked value="navbar.less" data-dependency="forms.less"> + <input type="checkbox" checked value="navbar.less" data-dependencies="forms.less"> Navbar </label> </div> @@ -223,13 +223,13 @@ base_url: "../" <h4>Miscellaneous</h4> <div class="checkbox"> <label> - <input type="checkbox" checked value="input-groups.less" data-dependency="forms.less"> + <input type="checkbox" checked value="input-groups.less" data-dependencies="forms.less"> Input groups </label> </div> <div class="checkbox"> <label> - <input type="checkbox" checked value="button-groups.less" data-dependency="buttons.less"> + <input type="checkbox" checked value="button-groups.less" data-dependencies="buttons.less"> Button groups </label> </div> @@ -304,13 +304,13 @@ base_url: "../" </div> <div class="checkbox"> <label> - <input type="checkbox" checked value="tooltip.js"> + <input type="checkbox" checked value="tooltip.js" data-dependents="popover.js"> Tooltips </label> </div> <div class="checkbox"> <label> - <input type="checkbox" checked value="popover.js" data-dependency="tooltip.js"> + <input type="checkbox" checked value="popover.js" data-dependencies="tooltip.js"> Popovers <small>(requires Tooltips)</small> </label> </div> -- GitLab