18.10.2016 Views

Drupal 7 Module Development

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Chapter 7<br />

}<br />

return;<br />

'field_ui_field_edit_form') {<br />

$values = $form_state['values'];<br />

$language = $values['language'];<br />

$field_name = $element['#field_name'];<br />

$num_dimensions = 2;<br />

if (array_search('depth', $element['#columns'])) {<br />

$num_dimensions = 3;<br />

}<br />

foreach ($values[$field_name][$language] as $delta => $item) {<br />

if (substr_count($item['dimfield_combined_wrapper']['height_width_<br />

depth'], 'x') == $num_dimensions - 1) {<br />

if ($num_dimensions == 2) {<br />

list($height, $width) = explode('x', $item['dimfield_combined_<br />

wrapper']['height_width_depth']);<br />

$new_values = array(<br />

'height' => trim($height),<br />

'width' => trim($width),<br />

'units' => $item['dimfield_combined_wrapper']['units'],<br />

);<br />

}<br />

elseif ($num_dimensions == 3) {<br />

list($height, $width, $depth) = explode('x',<br />

$item['dimfield_combined_wrapper']['height_width_depth']);<br />

$new_values = array(<br />

'height' => trim($height),<br />

'width' => trim($width),<br />

'depth' => trim($depth),<br />

'units' => $item['dimfield_combined_wrapper']['units'],<br />

);<br />

}<br />

form_set_value($element, $new_values, $form_state);<br />

}<br />

else {<br />

form_set_error($field_name, t('You must specify all dimensions,<br />

separated by an \'x\'.'));<br />

}<br />

}<br />

}<br />

[ 197 ]

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!