| @@ -39,9 +39,9 @@ | ||
| 39 | 39 | if ( $tour_type === 'street-view' && ! isset( $postdata['streetviewdata'] ) ) { |
| 40 | 40 | return $this->render_streetview( $postdata, $parsed ); |
| 41 | 41 | } |
| 42 | 42 | |
| 43 | - if ( $tour_type === 'video' && ! isset( $postdata['vidid'] ) ) { | |
| 43 | + if ( $tour_type === 'video' ) { | |
| 44 | 44 | return $this->render_video( $postdata, $parsed, $id ); |
| 45 | 45 | } |
| 46 | 46 | } |
| 47 | 47 | |
| @@ -62,8 +62,12 @@ | ||
| 62 | 62 | . '</div>'; |
| 63 | 63 | } |
| 64 | 64 | |
| 65 | 65 | private function render_video( array $postdata, array $atts, int $id ) { |
| 66 | + if ( function_exists( 'wpvr_enqueue_frontend_scripts' ) ) { | |
| 67 | + wpvr_enqueue_frontend_scripts( 'video' ); | |
| 68 | + } | |
| 69 | + | |
| 66 | 70 | $width = ! empty( $atts['width'] ) ? esc_attr( $atts['width'] ) : '600px'; |
| 67 | 71 | $height = ! empty( $atts['height'] ) ? esc_attr( $atts['height'] ) : '400px'; |
| 68 | 72 | $radius = ! empty( $atts['radius'] ) ? esc_attr( $atts['radius'] ) : null; |
| 69 | 73 | |
| @@ -69,8 +73,16 @@ | ||
| 69 | 73 | |
| 70 | 74 | // New UI stores video-autoplay / video-loop; legacy renderer expects autoplay / loop. |
| 71 | 75 | $postdata['autoplay'] = $postdata['video-autoplay'] ?? 'off'; |
| 72 | 76 | $postdata['loop'] = $postdata['video-loop'] ?? 'off'; |
| 77 | + | |
| 78 | + $vidid = ! empty( $postdata['vidid'] ) ? $postdata['vidid'] : ( 'vid' . $id ); | |
| 79 | + $postdata['vidid'] = $vidid; | |
| 80 | + | |
| 81 | + if ( empty( $postdata['panoviddata'] ) && ! empty( $postdata['vidurl'] ) ) { | |
| 82 | + $format = new \WPVR_Format(); | |
| 83 | + $postdata['panoviddata'] = $format->prepare_selfhost_video_meta_data( $postdata['vidurl'], $vidid, $postdata ); | |
| 84 | + } | |
| 73 | 85 | |
| 74 | 86 | return $this->legacy_video->render_video_shortcode( $postdata, $id, $width, $height, $radius ); |
| 75 | 87 | } |
| 76 | 88 | } |