mediamosa_browse_asset_form_validate($form, &$form_state)Submit form.
sites/all/modules/mediamosa/maintenance/browse/mediamosa_maintenance_browse_asset.inc, line 858
<?php
function mediamosa_browse_asset_form_validate($form, &$form_state) {
if ((empty($form_state['values']['new_metadata_property']) && $form_state['values']['new_metadata_value'] != '') || (!empty($form_state['values']['new_metadata_property']) && $form_state['values']['new_metadata_value'] == '')) {
if (empty($form_state['values']['new_metadata_property'])) {
form_set_error('new_metadata_property', t('Select the metadata property.'));
}
else {
form_set_error('new_metadata_value', t('give the selected metadata property a value.'));
}
}
// Get the metadata list.
$metadatas = mediamosa_asset_metadata_property::get_metadata_properties_full();
foreach ($metadatas as $name => $metadata) {
// So it matches.
$name_rpl = 'rpl_' . $name;
// Check if $name is a valid metadata field.
// We also skip checks on non-changed values.
if (!isset($form_state['values'][$name_rpl]) || $form_state['values'][$name_rpl] == '') {
continue;
}
// Now validate the value, empty is allowed.
switch ($metadata['propdef_type']) {
case mediamosa_asset_metadata_property_db::TYPE_CHAR:
break;
case mediamosa_asset_metadata_property_db::TYPE_DATETIME:
try {
$form_state['values'][$name_rpl] = mediamosa_type::check($name, mediamosa_type::TYPE_DATETIME, $form_state['values'][$name_rpl]);
}
catch (mediamosa_exception $e) {
form_set_error($name_rpl, t('Invalid date, must be in format YYYY-MM-DD or YYYY-MM-DD 00:00:00'));
}
break;
case mediamosa_asset_metadata_property_db::TYPE_INT:
if (!is_numeric($form_state['values'][$name_rpl])) {
form_set_error($name_rpl, t('This value must be numeric.'));
}
break;
default:
assert(0);
drupal_set_message(t('Unknown/unsupported metadata type.'), 'error');
break;
}
}
}
?>