/**
  * Enqueue scripts and styles
  *
  * @return void
  */
 static function admin_enqueue_scripts()
 {
     parent::admin_enqueue_scripts();
     add_thickbox();
     wp_enqueue_script('media-upload');
     wp_enqueue_script('SW_META-thickbox-image', SW_META_JS_URL . 'thickbox-image.js', array('jquery'), SW_META_VER, true);
 }
 /**
  * Add actions
  *
  * @return void
  */
 static function add_actions()
 {
     // Do same actions as file field
     parent::add_actions();
     // Attach images via Ajax
     add_action('wp_ajax_SW_META_attach_media', array(__CLASS__, 'wp_ajax_attach_media'));
     add_action('print_media_templates', array(__CLASS__, 'print_templates'));
 }
 /**
  * Normalize parameters for field
  *
  * @param array $field
  *
  * @return array
  */
 static function normalize_field($field)
 {
     $field['js_options'] = array('runtimes' => 'html5,silverlight,flash,html4', 'file_data_name' => 'async-upload', 'browse_button' => $field['id'] . '-browse-button', 'drop_element' => $field['id'] . '-dragdrop', 'multiple_queues' => true, 'max_file_size' => wp_max_upload_size() . 'b', 'url' => admin_url('admin-ajax.php'), 'flash_swf_url' => includes_url('js/plupload/plupload.flash.swf'), 'silverlight_xap_url' => includes_url('js/plupload/plupload.silverlight.xap'), 'multipart' => true, 'urlstream_upload' => true, 'filters' => array(array('title' => _x('Allowed Image Files', 'image upload', 'meta-box'), 'extensions' => 'jpg,jpeg,gif,png')), 'multipart_params' => array('field_id' => $field['id'], 'action' => 'SW_META_plupload_image_upload'));
     $field = parent::normalize_field($field);
     return $field;
 }