function media_crop_create_instance in Media crop 7
Page callback, for creating a (or retrieving an existing) cropped media instance.
1 string reference to 'media_crop_create_instance'
- media_crop_menu in ./
media_crop.module - Implements hook_menu().
File
- ./
media_crop.module, line 524 - Media crop primary module file.
Code
function media_crop_create_instance($style_name, $file, $token) {
if (!drupal_valid_token($token, MEDIA_CROP_TOKEN_VALUE)) {
watchdog('media_crop', 'Invalid token. ( %token )', array(
'%token' => $token,
));
drupal_access_denied();
}
if (!is_array($_POST['media_crop'])) {
watchdog('media_crop', 'Missing necessary _POST data.');
drupal_access_denied();
}
$angle = (int) $_POST['media_crop']['angle'];
$crop_x_coordinate = (int) $_POST['media_crop']['x'];
$crop_y_coordinate = (int) $_POST['media_crop']['y'];
$crop_width = (int) $_POST['media_crop']['w'];
$crop_height = (int) $_POST['media_crop']['h'];
$scale_width = _is_positive_integer($_POST['media_crop']['scale_w']) ? (int) $_POST['media_crop']['scale_w'] : 0;
$scale_height = _is_positive_integer($_POST['media_crop']['scale_h']) ? (int) $_POST['media_crop']['scale_h'] : 0;
$mciid = db_query("\n SELECT mciid FROM {media_crop_instance} WHERE\n fid = :fid AND\n image_style_name = :style AND\n angle = :angle AND\n crop_x = :x AND\n crop_y = :y AND\n crop_w = :w AND\n crop_h = :h AND\n crop_scale_w = :scale_w AND\n crop_scale_h = :scale_h\n ", array(
':fid' => $file->fid,
':style' => $style_name,
':angle' => $angle,
':x' => $crop_x_coordinate,
':y' => $crop_y_coordinate,
':w' => $crop_width,
':h' => $crop_height,
':scale_w' => $scale_width,
':scale_h' => $scale_height,
))
->fetchField();
if (!$mciid) {
$instance = (object) array(
'fid' => $file->fid,
'image_style_name' => $style_name,
'angle' => $angle,
'crop_x' => $crop_x_coordinate,
'crop_y' => $crop_y_coordinate,
'crop_w' => $crop_width,
'crop_h' => $crop_height,
'crop_scale_w' => $scale_width,
'crop_scale_h' => $scale_height,
);
drupal_write_record('media_crop_instance', $instance);
$mciid = $instance->mciid;
}
drupal_json_output($mciid);
return NULL;
}