'method_name',
'admin_init' => 'admin_init',
);
}
/**
* Array with default value
*
* @var array
*/
private $fields_old = array();
private $randID = null;
/**
* Default option
*
* @var array
*/
private $carousel_options = array();
private $indicators = array(
'before-inner',
'after-inner',
'after-control',
'false',
);
private $instance_old = array();
function __construct( Fields_Interface $fields_type, ItalyStrap\Image\Size $image_size ) {
$this->image_size_media = $image_size;
$this->fields_type = $fields_type;
/**
* Define data by given attributes.
*/
$this->fields_old = require( ITALYSTRAP_PLUGIN_PATH . 'config/carousel.php' );
$this->fields = require( ITALYSTRAP_PLUGIN_PATH . 'config/media-carousel.php' );
$this->carousel_options = array(
'orderby' => array(
'menu_order' => __( 'Menu order (Default)', 'italystrap' ),
'title' => __( 'Order by the image\'s title', 'italystrap' ),
'post_date' => __( 'Sort by date/time', 'italystrap' ),
'rand' => __( 'Order randomly', 'italystrap' ),
'ID' => __( 'Order by the image\'s ID', 'italystrap' ),
),
'indicators' => array(
'before-inner' => __( 'before-inner', 'italystrap' ),
'after-inner' => __( 'after-inner', 'italystrap' ),
'after-control' => __( 'after-control', 'italystrap' ),
'false' => __( 'false', 'italystrap' ),
),
'control' => true,
'pause' => array(
'false' => __( 'none', 'italystrap' ),
'hover' => __( 'hover', 'italystrap' ),
),
'image_title' => true,
'text' => true,
'wpautop' => true,
'responsive' => false,
);
$this->randID = rand( 2, 5 );
// add_action( 'admin_init', array( $this, 'admin_init' ) );
}
/**
* @todo applicare filtro in ItalyStrapCarousel e togliere il 2° valore dell'array qui sotto
*/
function admin_init() {
$this->gallery_types =
apply_filters(
'italystrap_gallery_types',
array(
'default' => __( 'Standard gallery', 'italystrap' ),
'carousel' => __( 'Bootstrap Carousel', 'italystrap' ),
)
);
// Enqueue the media UI only if needed.
// if ( count( $this->gallery_types ) > 0 ) {
add_action( 'wp_enqueue_media', array( $this, 'wp_enqueue_media' ) );
add_action( 'print_media_templates', array( $this, 'print_media_templates_old' ) );
// add_action( 'print_media_templates', array( $this, 'print_media_templates' ) );
// }
}
/**
* Registers/enqueues the gallery settings admin js.
*/
function wp_enqueue_media() {
if ( ! wp_script_is( 'italystrap-gallery-settings', 'registered' ) ) {
/**
* This only happens if we're not in ItalyStrap, but on WPCOM instead.
* This is the correct path for WPCOM.
*/
wp_register_script( 'italystrap-gallery-settings', plugins_url( 'admin/js/src/gallery-settings.js', ITALYSTRAP_FILE ), array( 'media-views' ), '20121225666' );
}
$translation_array = wp_json_encode( require( ITALYSTRAP_PLUGIN_PATH . 'config/carousel.php' ) );
// var_dump( $translation_array ); die();
wp_localize_script( 'italystrap-gallery-settings', 'gallery_fields', $translation_array );
wp_enqueue_script( 'italystrap-gallery-settings' );
}
/**
* Outputs a view template which can be used with wp.media.template
*/
function print_media_templates_old() {
$default_gallery_type = apply_filters( 'italystrap_default_gallery_type', 'default' );
echo '';
}
/**
* Outputs a view template which can be used with wp.media.template
*/
function print_media_templates() {
$output = '';
$default_gallery_type = apply_filters( 'italystrap_default_gallery_type', 'default' );
$instance = array();
$key = array(
'name' => __( 'Type', 'italystrap' ),
'desc' => __( 'Enter the widget class name.', 'italystrap' ),
'id' => 'type',
'_id' => 'type',
'_name' => 'type',
'type' => 'select',
'class' => 'widefat',
'data-setting'=> 'type',
// 'class-p' => 'setting',
'default' => $default_gallery_type,
'options' => $this->gallery_types,
// 'value' => 'Some value',
);
$output = sprintf(
'',
$this->fields_type->get_field_type( $key, $instance ),
$this->get_field_types( $this->fields )
);
printf(
''
);
echo $output; // XSS ok.
}
/**
* Create Fields
*
* Creates each field defined.
*
* @access protected
* @param array $fields The fields array.
* @param string $out The HTML form output.
* @return string Return the HTML Fields
*/
protected function get_field_types( array $fields, $out = '' ) {
foreach ( $fields as $key ) {
$out .= $this->get_field_type( $key );
}
return $out;
}
/**
* Create the Fields
*
* @access protected
* @param array $key The key of field's array to create the HTML field.
*
* @return string Return the HTML Fields
*/
protected function get_field_type( array $key ) {
/**
* Set field id and name
*/
$key['_id'] = $key['_name'] = $key['attributes']['data-setting'] = $key['id'];
return $this->fields_type->get_field_type( $key, array() );
}
}