File manager - Edit - /home/verseaumee/TF89388/wp-content/plugins/noisa-toolkit/includes/widgets/class-widget-tracks.php
Back
<?php /** * Rascals Tracks Widget * * Display music tracks * * @author Rascals Themes * @category Widgets * @package NoisaToolkit/Widgets * @version 1.0.0 * @extends WP_Widget */ class RascalsTracksWidget extends WP_Widget { /** * Constructor */ function __construct() { /* Widget settings */ $widget_ops = array( 'classname' => 'widget_r_tracks', 'description' => esc_html__( 'Display music tracks', 'noisa-toolkit' ) ); /* Create the widget */ parent::__construct( 'r-tracks-widget', esc_html__( 'Tracks (RT)', 'noisa-toolkit' ), $widget_ops ); } /** * Widget function. * * @see WP_Widget * @access public * @param array $args * @param array $instance * @return void */ function widget( $args, $instance ) { extract( $args ); $title = ( isset( $instance['title'] ) ) ? sanitize_text_field( $instance['title'] ) : ''; $title = apply_filters( 'widget_title', $title ); $tracks_id = ( isset( $instance['tracks_id'] ) ) ? sanitize_text_field( $instance['tracks_id'] ) : 0; $type = ( isset( $instance['type'] ) ) ? sanitize_text_field( $instance['type'] ) : 'tracklist'; $list_button = ( isset( $instance['list_button'] ) ) ? sanitize_text_field( $instance['list_button'] ) : '0'; $list_button = ( $list_button === 'yes' ) ? '1' : '0'; $in_row = ( isset( $instance['in_row'] ) ) ? sanitize_text_field( $instance['in_row'] ) : '2'; $classes = ( isset( $instance['classes'] ) ) ? sanitize_text_field( $instance['classes'] ) : ''; echo wp_kses_post( $before_widget ); // Title if ( ! empty( $title ) ) { echo wp_kses_post( $before_title ) . esc_attr( $title) . wp_kses_post( $after_title ); } // Display tracks if ( $type === 'tracklist' ) { echo do_shortcode('[tracklist id="' . esc_attr( $tracks_id ) . '" style="simple" track_action="sp-play-track" list_button="' . esc_attr( $list_button ) . '" list_button_action="sp-play-list" ]'); } else if ( $type === 'tracklist_grid' ) { echo do_shortcode('[tracklist_grid id="' . esc_attr( $tracks_id ) . '" track_action="sp-play-track" list_button="' . esc_attr( $list_button ) . '" list_button_action="sp-play-list" in_row="' . esc_attr( $in_row ) . '"]'); } echo wp_kses_post( $after_widget ); } /** * Update function. * * @see WP_Widget->update * @access public * @param array $new_instance * @param array $old_instance * @return array */ function update( $new_instance, $old_instance ) { $instance = $old_instance; $instance['title'] = sanitize_text_field( $new_instance['title'] ); $instance['tracks_id'] = sanitize_text_field( $new_instance['tracks_id'] ); $instance['type'] = sanitize_text_field( $new_instance['type'] ); $instance['list_button'] = sanitize_text_field( $new_instance['list_button'] ); $instance['in_row'] = sanitize_text_field( $new_instance['in_row'] ); $instance['classes'] = sanitize_text_field( $new_instance['classes'] ); return $instance; } /** * Form function. * * @see WP_Widget->form * @access public * @param array $instance * @return void */ function form( $instance ) { $defaults = array( 'title' => esc_html__( 'Tracks', 'noisa-toolkit' ), 'tracks_id' => '', 'type' => 'tracklist', 'list_button' => '', 'in_row' => '2' ); $instance = wp_parse_args( (array ) $instance, $defaults ); // Get acces to RascalsWidgets Class -> Fields $RW = new RascalsWidgets(); // Tabs $RW->tabsStart( array( esc_html__( 'General', 'noisa-toolkit' ), esc_html__( 'Advanced', 'noisa-toolkit' ) ) ); // ----------------------- Tab 01 $RW->tabStart(1); // Title $RW->input_e( array( 'label' => esc_html__( 'Title:', 'noisa-toolkit' ), 'value' => $instance['title'], 'id' => $this->get_field_id( 'title' ), 'name' => $this->get_field_name( 'title' ), 'desc' => '' )); // Tracks ID $RW->select_e( array( 'label' => esc_html__( 'Select Tracks', 'noisa-toolkit' ), 'value' => $instance['tracks_id'], 'id' => $this->get_field_id( 'tracks_id' ), 'options' => $RW->getPosts( 'noisa_tracks' ), 'name' => $this->get_field_name( 'tracks_id' ), 'desc' => esc_html__( 'Select Track(s)', 'noisa-toolkit' ) )); // Type $RW->select_e( array( 'label' => esc_html__( 'Display Type', 'noisa-toolkit' ), 'value' => $instance['type'], 'id' => $this->get_field_id( 'type' ), 'options' => array( array( 'value' => 'tracklist', 'label' => 'Tracklist' ), array( 'value' => 'tracklist_grid', 'label' => 'Tracklist Grid' ) ), 'name' => $this->get_field_name( 'type' ), 'desc' => '' )); // Button $RW->checkbox_e( array( 'label' => esc_html__( 'Display list button', 'noisa-toolkit' ), 'value' => $instance['list_button'], 'id' => $this->get_field_id( 'list_button' ), 'name' => $this->get_field_name( 'list_button' ), 'desc' => '' )); // Number of photos in row $RW->select_e( array( 'label' => esc_html__( 'Tracks Per Row', 'noisa-toolkit' ), 'value' => $instance['in_row'], 'id' => $this->get_field_id( 'in_row' ), 'options' => array( array( 'value' => '2', 'label' => '2' ), array( 'value' => '3', 'label' => '3' ), array( 'value' => '4', 'label' => '4' ), array( 'value' => '5', 'label' => '5' ) ), 'name' => $this->get_field_name( 'in_row' ), 'desc' => esc_html__( 'Please note: Only for Tracklist Grid.', 'noisa-toolkit' ) )); $RW->tabEnd(); // ----------------------- Tab 02 $RW->tabStart(2); // Classes $RW->input_e( array( 'label' => esc_html__( 'Classes', 'noisa-toolkit' ), 'value' => $instance['classes'], 'id' => $this->get_field_id( 'classes' ), 'name' => $this->get_field_name( 'classes' ), 'desc' => esc_html__( 'Style particular content element differently - add a class name and refer to it in custom CSS', 'noisa-toolkit' ) )); $RW->tabEnd(); $RW->tabsEnd(); } }
| ver. 1.4 |
Github
|
.
| PHP 8.5.7 | Generation time: 0 |
proxy
|
phpinfo
|
Settings