PluginProbe
Jetpack – WP Security, Backup, Speed, & Growth / 16.2-beta
Jetpack – WP Security, Backup, Speed, & Growth v16.2-beta
16.3-a.5 16.3-a.7 16.3-a.3 16.3-a.1 16.2 16.2-beta 12.0.3 12.1.3 12.2.3 12.3.2 12.4.2 12.5.2 12.6.4 12.7.3 12.8.3 12.9.5 13.0.2 13.1.5 13.2.4 13.3.3 13.4.5 13.5.2 13.6.2 13.7.2 13.8.3 All 506 releases
jetpack / modules / videopress / js / media-video-widget-extensions.js

media-video-widget-extensions.js in Jetpack – WP Security, Backup, Speed, & Growth 16.2-beta, at modules/videopress/js/media-video-widget-extensions.js

53 lines 1.8 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 window.wp = window.wp || {};
2
3 ( function ( wp ) {
4 if ( wp.mediaWidgets ) {
5 // Over-ride core media_video#mapMediaToModelProps to set the url based upon videopress_guid if it exists.
6 wp.mediaWidgets.controlConstructors.media_video.prototype.mapMediaToModelProps = ( function (
7 originalMapMediaToModelProps
8 ) {
9 return function ( mediaFrameProps ) {
10 var newProps, originalProps, videoPressGuid;
11 originalProps = originalMapMediaToModelProps.call( this, mediaFrameProps );
12 newProps = _.extend( {}, originalProps );
13
14 // API response on new media will have the guid at videopress.guid.
15 if ( mediaFrameProps.videopress && mediaFrameProps.videopress.guid ) {
16 videoPressGuid = mediaFrameProps.videopress.guid;
17 }
18
19 // Selecting an existing VideoPress file will have the guid at .videopress_guid[ 0 ].
20 if (
21 ! videoPressGuid &&
22 mediaFrameProps.videopress_guid &&
23 mediaFrameProps.videopress_guid.length
24 ) {
25 videoPressGuid = mediaFrameProps.videopress_guid[ 0 ];
26 }
27
28 if ( videoPressGuid ) {
29 newProps = _.extend( {}, originalProps, {
30 url: 'https://videopress.com/v/' + videoPressGuid,
31 attachment_id: 0,
32 } );
33 }
34 return newProps;
35 };
36 } )( wp.mediaWidgets.controlConstructors.media_video.prototype.mapMediaToModelProps );
37
38 // Over-ride core media_video#isHostedVideo() to add support for videopress oembed urls.
39 wp.mediaWidgets.controlConstructors.media_video.prototype.isHostedVideo = ( function (
40 originalIsHostedVideo
41 ) {
42 return function ( url ) {
43 var parsedUrl = document.createElement( 'a' );
44 parsedUrl.href = url;
45 if ( 'videopress.com' === parsedUrl.hostname ) {
46 return true;
47 }
48 return originalIsHostedVideo.call( this, url );
49 };
50 } )( wp.mediaWidgets.controlConstructors.media_video.prototype.isHostedVideo );
51 }
52 } )( window.wp );
53