PluginProbe ʕ •ᴥ•ʔ
Pods – Custom Content Types and Fields / 3.3.9.1
Pods – Custom Content Types and Fields v3.3.9.1
2.8.23.4 2.9.19.4 3.0.10.4 3.1.4.2 3.2.8.3 3.3.9.1 trunk 1.14.8 2.7.31.3 2.8.23.3 2.9.19.3 3.0.10.3 3.1.4.1 3.2.0 3.2.1 3.2.1.1 3.2.2 3.2.4 3.2.5 3.2.6 3.2.7 3.2.7.1 3.2.8 3.2.8.1 3.2.8.2 3.3.0 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.3.7 3.3.8 3.3.9
pods / ui / fields / oembed.php
pods / ui / fields Last commit date
_comment.php 2 weeks ago _db.php 2 weeks ago _hidden.php 2 weeks ago _label.php 2 weeks ago _row.php 2 weeks ago attachment.php 2 weeks ago checkbox.php 2 weeks ago cleditor.php 2 weeks ago codemirror.php 2 weeks ago color.php 2 weeks ago currency.php 2 weeks ago date.php 2 weeks ago datetime.php 2 weeks ago email.php 2 weeks ago link.php 2 weeks ago number.php 2 weeks ago oembed.php 2 weeks ago password.php 2 weeks ago phone.php 2 weeks ago radio.php 2 weeks ago select.php 2 weeks ago slider.php 2 weeks ago slug.php 2 weeks ago text.php 2 weeks ago textarea.php 2 weeks ago time.php 2 weeks ago tinymce.php 2 weeks ago website.php 2 weeks ago
oembed.php
86 lines
1 <?php
2
3 // Don't load directly.
4 if ( ! defined( 'ABSPATH' ) ) {
5 die( '-1' );
6 }
7
8 // phpcs:ignoreFile WordPress.NamingConventions.PrefixAllGlobals.NonPrefixedVariableFound
9
10 $attributes = array();
11 $attributes['type'] = 'text';
12 $attributes['value'] = $value;
13 $attributes['tabindex'] = 2;
14 $attributes = PodsForm::merge_attributes( $attributes, $name, $form_field_type, $options );
15
16 if ( (bool) pods_v( 'readonly', $options, false ) ) {
17 $attributes['readonly'] = 'READONLY';
18
19 $attributes['class'] .= ' pods-form-ui-read-only';
20 }
21
22 $show_preview = (int) pods_v( $form_field_type . '_show_preview', $options, 0 );
23 ?>
24 <input<?php PodsForm::attributes( $attributes, $name, $form_field_type, $options ); ?> />
25
26 <?php
27 if ( 1 === $show_preview ) {
28 $oembed_width = ( isset( $options['oembed_width'] ) ) ? (int) $options['oembed_width'] : 0;
29 $oembed_height = ( isset( $options['oembed_height'] ) ) ? (int) $options['oembed_height'] : 0;
30 ?>
31 <p class="howto">
32 <?php esc_html_e( 'Preview', 'pods' ); ?>
33 </p>
34 <input type="hidden" id="<?php echo esc_js( pods_js_name( $attributes['id'] ) ); ?>_preview_nonce" name="_nonce_pods_oembed" value="<?php echo esc_attr( wp_create_nonce( 'pods_field_oembed_preview' ) ); ?>" />
35 <div id="<?php echo esc_js( pods_js_name( $attributes['id'] ) ); ?>_preview" class="pods-oembed-preview">
36 <?php echo PodsForm::field_method( $form_field_type, 'display', $value, $name, $options ); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
37 </div>
38 <script type="text/javascript">
39 jQuery( function ( $ ) {
40 var pods_ajaxurl = ajaxurl + '?pods_ajax=1';
41
42 $( document ).on( 'keyup', '#<?php echo esc_js( $attributes['id'] ); ?>', function () {
43 var value = $( this ).val();
44 var name = '<?php echo esc_js( $name ); ?>';
45 var options = {
46 id : <?php echo esc_js( $options['id'] ); ?>,
47 oembed_width : '<?php echo esc_js( $oembed_width ); ?>',
48 oembed_height : '<?php echo esc_js( $oembed_height ); ?>'
49 };
50 var nonce = $( this ).parent().find( '#<?php echo esc_js( pods_js_name( $attributes['id'] ) ); ?>_preview_nonce' ).val();
51 delay( function () {
52 var postdata = {
53 'action' : 'oembed_update_preview',
54 '_nonce_pods_oembed' : nonce,
55 'pods_field_oembed_value' : value,
56 'pods_field_oembed_name' : name,
57 'pods_field_oembed_options' : options
58 };
59 $.ajax( {
60 type : 'POST',
61 url : pods_ajaxurl,
62 cache : false,
63 data : postdata,
64 success : function ( response ) {
65 if ( typeof response.data == 'string' ) {
66 $( '#<?php echo esc_js( pods_js_name( $attributes['id'] ) ); ?>_preview' ).html( response.data );
67 }
68 }
69 } );
70 }, 500 );
71 } );
72
73 var delay = (function () {
74 var timer = 0;
75 return function ( callback, ms ) {
76 clearTimeout( timer );
77 timer = setTimeout( callback, ms );
78 };
79 })();
80
81 } );
82 </script>
83 <?php
84 }//end if
85 PodsForm::regex( $form_field_type, $options );
86