PluginProbe ʕ •ᴥ•ʔ
EmbedPress – PDF Embedder, 3D PDF FlipBook, Google Reviews, YouTube Videos, Upload & Embed PDF documents / 3.6.6
EmbedPress – PDF Embedder, 3D PDF FlipBook, Google Reviews, YouTube Videos, Upload & Embed PDF documents v3.6.6
4.6.0 4.5.6 4.5.5 4.5.4 4.5.3 4.5.2 trunk 1.0.0 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.5.0 1.6.0 1.6.1 1.6.2 1.6.3 1.7.0 1.7.1 1.7.2 1.7.3 1.7.4 1.7.5 2.0.0 2.0.1 2.0.2 2.0.3 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.2.0 2.2.1 2.2.2 2.3.0 2.3.1 2.3.2 2.3.3 2.4.0 2.4.1 2.5.0 2.5.1 2.5.2 2.5.3 2.5.4 2.5.5 2.6.0 2.6.1 2.6.2 2.7.0 2.7.1 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 2.7.7 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.1.0 3.1.1 3.1.2 3.1.3 3.2.0 3.2.1 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.4.0 3.4.1 3.4.2 3.4.3 3.5.0 3.5.1 3.5.2 3.5.3 3.6.0 3.6.1 3.6.2 3.6.3 3.6.4 3.6.5 3.6.6 3.6.7 3.6.8 3.7.0 3.7.1 3.7.2 3.7.3 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.9.0 3.9.1 3.9.10 3.9.11 3.9.12 3.9.13 3.9.14 3.9.15 3.9.16 3.9.17 3.9.2 3.9.3 3.9.4 3.9.5 3.9.6 3.9.7 3.9.8 3.9.9 4.0.0 4.0.1 4.0.10 4.0.11 4.0.12 4.0.13 4.0.14 4.0.2 4.0.3 4.0.4 4.0.5 4.0.6 4.0.7 4.0.8 4.0.9 4.1.0 4.1.1 4.1.10 4.1.2 4.1.3 4.1.4 4.1.5 4.1.6 4.1.7 4.1.8 4.1.9 4.2.0 4.2.1 4.2.2 4.2.3 4.2.4 4.2.5 4.2.6 4.2.7 4.2.8 4.2.9 4.3.0 4.3.1 4.4.0 4.4.1 4.4.10 4.4.11 4.4.2 4.4.3 4.4.4 4.4.5 4.4.6 4.4.7 4.4.8 4.4.9 4.5.0 4.5.1
embedpress / Gutenberg / block-backend / block-embedpress.php
embedpress / Gutenberg / block-backend Last commit date
block-embedpress.php 3 years ago block-wistia.php 5 years ago block-youtube.php 3 years ago
block-embedpress.php
234 lines
1 <?php
2 // Exit if accessed directly.
3
4 use EmbedPress\Providers\Youtube;
5
6 if (!defined('ABSPATH')) {
7 exit;
8 }
9 /**
10 * It renders gutenberg block of embedpress on the frontend
11 * @param array $attributes
12 */
13
14 //Custom Logo
15 function customLogo($embedHTML, $atts){
16
17
18
19
20 $x = !empty($atts['logoX']) ? $atts['logoX'] : 0;
21 $y = !empty($atts['logoY']) ? $atts['logoY'] : 0;
22 $uniqid = !empty($atts['url'])? '.ose-uid-' . md5($atts['url']): '';
23
24 $brandUrl = !empty($atts['customlogoUrl']) ? $atts['customlogoUrl'] : '';
25 $opacity = !empty($atts['logoOpacity']) ? $atts['logoOpacity'] : '';
26
27 $cssClass = !empty( $atts['url'] ) ? '.ose-uid-' . md5( $atts['url'] ) : '.ose-youtube';
28
29
30
31 ob_start(); ?>
32 <style type="text/css">
33 <?php echo esc_html($cssClass); ?>
34 {
35 position: relative;
36 }
37
38 <?php echo esc_html($cssClass); ?> .watermark {
39 border: 0;
40 position: absolute;
41 bottom: <?php echo esc_html($y); ?>%;
42 right: <?php echo esc_html($x); ?>%;
43 max-width: 150px;
44 max-height: 75px;
45 opacity: 0.25;
46 z-index: 5;
47 -o-transition: opacity 0.5s ease-in-out;
48 -moz-transition: opacity 0.5s ease-in-out;
49 -webkit-transition: opacity 0.5s ease-in-out;
50 transition: opacity 0.5s ease-in-out;
51 opacity: <?php echo esc_html($opacity); ?>;
52 }
53
54 <?php echo esc_html($cssClass); ?>
55 .watermark:hover {
56 opacity: 1;
57 }
58 </style>
59 <?php
60
61
62 $style = ob_get_clean();
63
64 if ( ! class_exists( '\simple_html_dom' ) ) {
65 include_once EMBEDPRESS_PATH_CORE . 'simple_html_dom.php';
66 }
67
68 $cta = '';
69 $img = '';
70
71 if(!empty($atts['customlogo'])){
72 $img = '<img src="'.esc_url($atts['customlogo']).'"/>';
73
74 $imgDom = str_get_html( $img );
75 $imgDom = $imgDom->find( 'img', 0 );
76 $imgDom->setAttribute( 'class', 'watermark ep-custom-logo' );
77 $imgDom->removeAttribute( 'style' );
78 $imgDom->setAttribute( 'width', 'auto' );
79 $imgDom->setAttribute( 'height', 'auto' );
80 ob_start();
81 echo $imgDom;
82
83 $cta .= ob_get_clean();
84
85 $imgDom->clear();
86 unset( $img, $imgDom );
87
88 if ( !empty($brandUrl) ) {
89 $cta = '<a href="'.esc_url($brandUrl).'" target="_blank">'.$cta.'</a>';
90 }
91 $dom = str_get_html( $embedHTML );
92
93 $wrapDiv = $dom->find( $uniqid, 0 );
94
95 if ( ! empty( $wrapDiv ) && is_object( $wrapDiv ) ) {
96 $wrapDiv->innertext .= $cta;
97 }
98
99 ob_start();
100 echo $wrapDiv;
101
102 $markup = ob_get_clean();
103
104 $dom->clear();
105 unset( $dom, $wrapDiv );
106
107 $embedHTML = $style . $markup;
108
109 }
110
111 return $embedHTML;
112
113 }
114
115 function embedpress_render_block($attributes)
116 {
117
118
119 if (!empty($attributes['embedHTML'])) {
120 $embed = apply_filters('embedpress_gutenberg_embed', $attributes['embedHTML'], $attributes);
121
122 $aligns = [
123 'left' => 'alignleft',
124 'right' => 'alignright',
125 'wide' => 'alignwide',
126 'full' => 'alignfull',
127 'center' => 'aligncenter',
128 ];
129 if (isset($attributes['align'])) {
130 $alignment = isset($aligns[$attributes['align']]) ? $aligns[$attributes['align']] . ' clear' : '';
131 } else {
132 $alignment = 'aligncenter'; // default alignment is center in js, so keeping same here
133 }
134 $embed = customLogo($embed, $attributes);
135
136 ob_start();
137 ?>
138 <div class="embedpress-gutenberg-wrapper">
139 <div class="wp-block-embed__wrapper <?php echo esc_attr($alignment) ?> <?php if($attributes['videosize'] == 'responsive') echo 'ep-video-responsive'; ?>">
140 <?php echo $embed; ?>
141 </div>
142 </div>
143 <?php
144
145
146
147 echo embedpress_render_block_style($attributes);
148
149 return ob_get_clean();
150 }
151 }
152
153 /**
154 * Make style function for embedpress render block
155 */
156
157 function embedpress_render_block_style($attributes)
158 {
159
160 $uniqid = !empty($attributes['url']) ? '.ose-uid-' . md5($attributes['url']) : '';
161
162 $_iscustomlogo = '';
163
164 if(!empty($attributes['customlogo'])){
165 $_iscustomlogo = $uniqid.' img.watermark.ep-custom-logo {
166 display: block !important;
167 }';
168 }
169 $youtubeStyles = '<style>
170 ' . esc_attr($uniqid) . ' {
171 width: ' . esc_attr($attributes['width']) . 'px !important;
172 height: ' . esc_attr($attributes['height']) . 'px;
173 max-width: 100%;
174 }
175
176 ' . esc_attr($uniqid) . '>iframe {
177 height: ' . esc_attr($attributes['height']) . 'px !important;
178 max-height: ' . esc_attr($attributes['height']) . 'px !important;
179 width: 100%;
180 }
181
182 ' . esc_attr($uniqid) . ' .wistia_embed {
183 max-width: 100%;
184 }
185
186 .alignright .ose-wistia' . esc_attr($uniqid) .'{
187 margin-left: auto;
188 }
189 .alignleft .ose-wistia' . esc_attr($uniqid) .'{
190 margin-right: auto;
191 }
192 .aligncenter .ose-wistia' . esc_attr($uniqid) .'{
193 margin: auto;
194 }
195 '.$uniqid.' img.watermark{
196 display: none;
197 }
198 '.$_iscustomlogo.'
199
200
201 </style>';
202
203 if($attributes['videosize'] == 'responsive') {
204 $youtubeStyles = '<style>
205 ' . esc_attr($uniqid) . ' {
206 position: relative;
207 width: ' . esc_attr($attributes['width']) . 'px !important;
208 height: 0;
209 padding-top: 56.25%;
210 max-width: 100%;
211 }
212
213 ' . esc_attr($uniqid) . ' > iframe {
214 position: absolute;
215 top: 0;
216 left: 0;
217 width: 100%;
218 height: 100%;
219 }
220
221 .ep-video-responsive{
222 display: inline-block!important;
223 max-width: 100%;
224 }
225 '.$uniqid.' img.watermark{
226 display: none;
227 }
228 '.$_iscustomlogo.'
229 </style>';
230 }
231
232 return $youtubeStyles;
233 }
234