You are here

function _epsacrop_get_field_actions in EPSA Crop - Image Cropping 6.2

Same name and namespace in other branches
  1. 6 epsacrop.module \_epsacrop_get_field_actions()

Helper function for returning only imagecache preset actions with croping that was enabled for specific field.

Parameters

string $type_name: Content type machine name, e.g. 'page'.

string $field_name: CCK imagefield name, e.g. 'field_image'.

Return value

Structured array, e.g.: array( 0 => array( 'presetname' => 'presetname', 'width' => 400, 'height' => 300, ), 1 => ... )

2 calls to _epsacrop_get_field_actions()
epsacrop_dialog in ./epsacrop.module
Callback function for Dialog popup.
theme_epsacrop_widget_item in ./epsacrop.module
fonction theme qui ajouter le lien gérer le crop

File

./epsacrop.module, line 557
The main file of module

Code

function _epsacrop_get_field_actions($type_name, $field_name) {
  $actions = _epsacrop_get_crop_actions();
  $content_type = content_types($type_name);
  $presets = $content_type['fields'][$field_name]['widget']['epsacrop_presets'];
  if (!empty($presets) && is_array($presets)) {
    $presets = array_flip($presets);
    foreach ($actions as $key => $action) {
      if (!array_key_exists($action['presetname'], $presets)) {
        unset($actions[$key]);
      }
    }
  }

  // Here we gonna strip the px after height and with
  $_actions = array();
  foreach ($actions as $key => $action) {
    $_actions[$key] = array(
      'presetname' => $action['presetname'],
      'height' => (int) preg_replace('/[^0-9]+/', '', $action['height']),
      'width' => (int) preg_replace('/[^0-9]+/', '', $action['width']),
    );
  }
  return $_actions;
}