function imageoffsets_form_submit in Image javascript crop 6
Save the offset & size values
Parameters
$form_id id of the form:
$form_values submitted values of the imageoffsets form:
File
- ./
imagecrop.admin.inc, line 348 - Administration functions for Imagecrop
Code
function imageoffsets_form_submit($form, &$form_state) {
if ($form_state['values']['op'] == t('Scale image')) {
$form_state['values']['image-crop-x'] = 0;
$form_state['values']['image-crop-y'] = 0;
}
$form_state['values']['image-crop-x'] = max($form_state['values']['image-crop-x'], 0);
$form_state['values']['image-crop-y'] = max($form_state['values']['image-crop-y'], 0);
// save into imagecrop tables
$module = !empty($form_state['values']['module']) ? '/' . $form_state['values']['module'] : '';
$field = !empty($form_state['values']['field']) ? '/' . $form_state['values']['field'] : '';
$node_type = !empty($form_state['values']['node_type']) ? '/' . $form_state['values']['node_type'] : '';
$reference = !empty($form_state['values']['module']) && ($form_state['values']['module'] == 'node_images' || $form_state['values']['module'] == 'user') ? $form_state['values']['module'] : 'files';
$scaling = isset($form_state['values']['scaling']) ? $form_state['values']['scaling'] : 'original';
db_query("DELETE FROM {imagecrop} WHERE fid = %d AND presetname = '%s' AND reference = '%s'", $form_state['values']['fid'], $form_state['values']['presetname'], $reference);
db_query("INSERT INTO {imagecrop} (fid, reference, xoffset, yoffset, width, height, scale, presetname) VALUES (%d, '%s', %d, %d, %d, %d, '%s', '%s')", $form_state['values']['fid'], $reference, $form_state['values']['image-crop-x'], $form_state['values']['image-crop-y'], $form_state['values']['image-crop-width'], $form_state['values']['image-crop-height'], $scaling, $form_state['values']['presetname']);
if ($form_state['values']['op'] == t('Scale image')) {
drupal_goto('imagecrop/docrop/' . $form_state['values']['fid'] . '/' . $form_state['values']['presetname'] . $module . $field . $node_type);
}
else {
// delete imagecache preset, so newest file is generated.
file_delete($form_state['values']['preset-destination']);
if ($form_state['values']['preset-destination'] != $form_state['values']['temp-preset-destination']) {
file_delete($form_state['values']['temp-preset-destination']);
}
drupal_goto('imagecrop/showcrop/' . $form_state['values']['fid'] . '/' . $form_state['values']['presetname'] . $module . $field . $node_type);
}
}