__( 'The current track with artwork, auto-refreshing.', 'streamsera' ), 'show_instance_in_rest' => true, 'customize_selective_refresh' => true, ) ); } /** * Output. * * @param array $args Sidebar args. * @param array $instance Instance. */ public function widget( $args, $instance ) { $markup = Widgets::now_playing( array( 'station' => absint( $instance['station'] ?? 0 ), 'show_artwork' => ! empty( $instance['artwork'] ), 'show_listeners' => ! empty( $instance['listeners'] ), 'compact' => true, ) ); if ( ! $markup ) { return; } echo wp_kses_post( $args['before_widget'] ); if ( ! empty( $instance['title'] ) ) { echo wp_kses_post( $args['before_title'] ) . esc_html( apply_filters( 'widget_title', $instance['title'], $instance, $this->id_base ) ) . wp_kses_post( $args['after_title'] ); } echo wp_kses( $markup, streamsera_allowed_html() ); echo wp_kses_post( $args['after_widget'] ); } /** * Form. * * @param array $instance Instance. * @return void */ public function form( $instance ) { $instance = wp_parse_args( (array) $instance, array( 'title' => __( 'Now playing', 'streamsera' ), 'station' => 0, 'artwork' => 1, 'listeners' => 0, ) ); $stations = get_posts( array( 'post_type' => Station::POST_TYPE, 'post_status' => 'publish', 'posts_per_page' => 100, 'orderby' => 'title', 'order' => 'ASC', ) ); ?>

>
>

sanitize_text_field( $new_instance['title'] ?? '' ), 'station' => absint( $new_instance['station'] ?? 0 ), 'artwork' => ! empty( $new_instance['artwork'] ) ? 1 : 0, 'listeners' => ! empty( $new_instance['listeners'] ) ? 1 : 0, ); } }