Index: imagefield_widget.inc =================================================================== --- imagefield_widget.inc (revision 1149) +++ imagefield_widget.inc (working copy) @@ -44,8 +44,13 @@ '#weight' => 8, ); $form['alt_settings']['custom_alt'] = array( - '#type' => 'checkbox', + '#type' => 'radios', '#title' => t('Enable custom alternate text'), + '#options' => array( + t('Disabled'), + t('Optional'), + t('Required') + ), '#default_value' => !empty($widget['custom_alt']) ? $widget['custom_alt'] : 0, '#description' => t('Enable user input alternate text for images.'), ); @@ -233,9 +238,10 @@ '#description' => t('This text will be used by screen readers, search engines, or when the image cannot be loaded.'), '#maxlength' => variable_get('imagefield_alt_length', 80), // See http://www.gawds.org/show.php?contentid=28. '#attributes' => array('class' => 'imagefield-text'), + '#required' => ( $field['widget']['custom_alt'] == 2 ) ? TRUE : FALSE, ); // #value must be hard-coded if #type = 'value'. - if ($default_alt) { + if (!$field['widget']['custom_alt']) { $element['data']['alt']['#value'] = $field['widget']['alt']; }