From 450b4334efa86ef8dd1a5dd6eca8558c029c1e31 Mon Sep 17 00:00:00 2001 From: Daniel Wehner <daniel.wehner@erdfisch.de> Date: Thu, 20 Sep 2012 17:11:20 +0200 Subject: [PATCH] Issue #1789824 by dawehner, tim.plunkett: Convert the handler filter from CTools dependent.js to #states. --- css/views-admin.ctools-rtl.css | 9 --------- css/views-admin.ctools.css | 8 -------- css/views-admin.seven.css | 11 +---------- includes/admin.inc | 16 +++++++++++----- 4 files changed, 12 insertions(+), 32 deletions(-) diff --git a/css/views-admin.ctools-rtl.css b/css/views-admin.ctools-rtl.css index a98611382242..c8adea2299b5 100644 --- a/css/views-admin.ctools-rtl.css +++ b/css/views-admin.ctools-rtl.css @@ -30,15 +30,6 @@ /* @end */ -/* @group Dependent */ - -.dependent-options { - margin-left: 0; - margin-right: 18px; -} - -/* @end */ - /* @group Export */ /* Override for filter button on the views list screen */ diff --git a/css/views-admin.ctools.css b/css/views-admin.ctools.css index 153e74141713..ff402d44d903 100644 --- a/css/views-admin.ctools.css +++ b/css/views-admin.ctools.css @@ -119,14 +119,6 @@ /* @end */ -/* @group Dependent */ - -.dependent-options { - margin-left: 18px; /* LTR */ -} - -/* @end */ - /* @group Export */ /* Override for filter button on the views list screen */ diff --git a/css/views-admin.seven.css b/css/views-admin.seven.css index d13f3c219bad..58ce631c6875 100644 --- a/css/views-admin.seven.css +++ b/css/views-admin.seven.css @@ -105,15 +105,11 @@ fieldset.fieldset-no-legend { } /* @group Dependent options - * - * Dependent options are identified in CTools dependent.js */ -/* The .dependent-options.form-item is necessary to supercede the Seven .form-item +/* This is necessary to supercede the Seven .form-item * reset declaration that sets the margin to zero. */ -.dependent-options, -.dependent-options.form-item, .form-item-options-expose-required, .form-item-options-expose-label, .form-item-options-expose-description { @@ -123,10 +119,7 @@ fieldset.fieldset-no-legend { .views-admin-dependent .form-item .form-item, .views-admin-dependent .form-type-checkboxes, .views-admin-dependent .form-type-radios, -.views-admin-dependent .dependent-options, .views-admin-dependent .form-item .form-item, -.views-admin-dependent .dependent-options .form-type-select, -.views-admin-dependent .dependent-options .form-type-textfield, .form-item-options-expose-required, .form-item-options-expose-label, .form-item-options-expose-description { @@ -142,8 +135,6 @@ fieldset.fieldset-no-legend { /* @end */ -/* @end */ - /* @group Lists */ .views-admin ul.secondary, diff --git a/includes/admin.inc b/includes/admin.inc index c23b460c1644..6321f285fc04 100644 --- a/includes/admin.inc +++ b/includes/admin.inc @@ -3944,7 +3944,6 @@ function views_ui_add_item_form($form, &$form_state) { '#type' => 'select', '#title' => t('Filter'), '#options' => array(), - '#attributes' => array('class' => array('ctools-master-dependent')), ); $form['options']['name'] = array( @@ -3954,8 +3953,7 @@ function views_ui_add_item_form($form, &$form_state) { '#default_value' => 'all', ); - // Group options first to simplify the DOM objects that Views - // dependent JS will act upon. + // Group options first to simplify the usage of #states. $grouped_options = array(); foreach ($options as $key => $option) { $group = preg_replace('/[^a-z0-9]/', '-', strtolower($option['group'])); @@ -3980,7 +3978,6 @@ function views_ui_add_item_form($form, &$form_state) { } foreach ($grouped_options as $group => $group_options) { - $form['options']['name'][$group . '_start']['#markup'] = '<div class="ctools-dependent-all ctools-dependent-' . $group . '">'; $zebra = 0; foreach ($group_options as $key => $option) { $zebra_class = ($zebra % 2) ? 'odd' : 'even'; @@ -3991,10 +3988,19 @@ function views_ui_add_item_form($form, &$form_state) { '#return_value' => $key, '#prefix' => "<div class='$zebra_class filterable-option'>", '#suffix' => '</div>', + '#states' => array( + 'visible' => array( + array( + ':input[name="group"]' => array('value' => 'all'), + ), + array( + ':input[name="group"]' => array('value' => $group), + ), + ) + ) ); $zebra++; } - $form['options']['name'][$group . '_end']['#markup'] = '</div>'; } $form['options']['controls']['group']['#options'] = $groups; -- GitLab