#states arguments

1 reply [Last post]
Last seen: 1 year 26 weeks ago
Joined: 2012-09-19

I would like to set a form item visible depending on something like this $a>4.
Is this possible using states in form api?


Last seen: 6 years 29 weeks ago
Joined: 2011-06-11
This is how I do it

An Excerpt from one of my modules.

$form['show_sts_managed_user_checkbox'] = array(
  '#type' => 'hidden',
  '#value' => $user_has_administer_users_rights,

$form['sts_managed_user'] = array(
  '#title' => t('Allow administrators of STS Module to edit user'),
  '#type' => 'checkbox',
  '#default_value' => $sts_managed_user,
  '#states' => array(
    'visible' => array(
        => array('value' => 'yes'),

The first assignment to the $form array picks up as it's value an ordinary PHP variable. If you replaced the line

#value => $user_has_administer_users_rights


#value => $a>4 ? 'yes' : 'no',

it should work for you.

I'll leave to to contextualise the rest of the code :)

Hope this helps.


Add to playlist

Add to , or

Add to new playlist:

Add to playlist
This is a member-only feature
But, it's easy to become a member

Add to cart:

Contact us

Below are the supported keyboard shortcuts for our video player.

Start / stop video
Go to next video
Go to previous video
Increase or decrease player speed by 20%
Skip ahead or go back by 15 seconds
Jump to a percentage (2 is 20%, for example)
Toggle full screen
Videos Pricing More Search
BuildAModule Logo Icon BuildAModule Logo Icon
Become a member!
1 month
6 months
10% off
12 months
20% off
All memberships come with the following:
24 / 7 access to the entire 1800+ video library
An innovative video player with a rolling transcript
Extensive Drupal and cross-platform training
A thorough and thoughtful training style
Progress tracking
Take notes on specific video sections
Intuitive multi-user management
How many users?
Go solo with a single user, or give multiple team members access through one account and get discounts by bundling multiple users into a single membership.