PHP 8.0.30
Preview: Course_Embed.php Size: 2.55 KB
/home/certprox/sacre.certproxywizard.com/wp/wp-content/plugins/tutor/classes/Course_Embed.php

<?php
/**
 * Manage course embed
 *
 * @package Tutor
 * @author Themeum <support@themeum.com>
 * @link https://themeum.com
 * @since 2.1.0
 */

namespace TUTOR;

if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

/**
 * Course embed class
 *
 * @since 2.1.0
 */
class Course_Embed {

	/**
	 * Register hooks
	 *
	 * @since 2.1.0
	 * @return void
	 */
	public function __construct() {
		add_filter( 'tutor_get_template_path', __CLASS__ . '::filter_template_path', 100, 2 );
		add_filter( 'embed_oembed_html', __CLASS__ . '::oembed_iframe_overrides', 10, 3 );
	}

	/**
	 * Filter oembed data
	 *
	 * @since 2.1.0
	 *
	 * @param string $html  html content to filter.
	 * @param string $url  post embed url.
	 * @param array  $attr attrs.
	 *
	 * @return string customized html content
	 */
	public static function oembed_iframe_overrides( $html, $url, $attr ) {

		$post_id = url_to_postid( $url );
		if ( ! $post_id || tutor()->course_post_type !== get_post_type( $post_id ) ) {
			return $html;
		}

		if ( strpos( $html, '<iframe' ) !== false ) {
			$html = str_replace(
				'<iframe class="wp-embedded-content" sandbox="allow-scripts" security="restricted" style="position: absolute; clip: rect(1px, 1px, 1px, 1px);"',
				'<iframe class="wp-embedded-content" sandbox="allow-forms allow-popups allow-scripts allow-same-origin allow-top-navigation" security="restricted" ',
				$html
			);

			$html = preg_replace( '/( height=".*")/i', ' height="620" marginwidth="0" marginheight="0" frameborder="0" scrolling="no" ', $html );

			$html = str_replace(
				'<blockquote class="wp-embedded-content"',
				'<blockquote class="wp-embedded-content" style="display:none" ',
				$html
			);
			return $html;
		} else {
			return $html;
		}
	}

	/**
	 * Filter template
	 *
	 * @since 2.1.0
	 *
	 * @param string $template_location default template location.
	 * @param string $template template name.
	 *
	 * @return string
	 */
	public static function filter_template_path( $template_location, $template ) {
		$post_id = get_the_ID();
		if ( get_post_type( $post_id ) === tutor()->course_post_type && function_exists( 'is_embed' ) && is_embed() ) {
			if ( 'single-course' === $template ) {
				$template_location = tutor()->path . 'templates/course-embed.php';
			}
		}
		return $template_location;
	}

	/**
	 * Check if current course is embedded
	 *
	 * @since 2.1.0
	 * @return boolean
	 */
	public static function is_embed_course() {
		$post_id = get_the_ID();
		if ( get_post_type( $post_id ) === tutor()->course_post_type && function_exists( 'is_embed' ) && is_embed() ) {
			return true;
		}
		return false;
	}
}

Directory Contents

Dirs: 0 × Files: 59

Name Size Perms Modified Actions
11.79 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
24.41 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
17.03 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
2.79 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
23.94 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
4.39 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
1.47 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
3.16 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
4.85 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
94.45 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
2.55 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
8.68 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
14.68 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
1.16 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
8.20 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
513 B lrw-r--r-- 2026-05-26 12:31:45
Edit Download
1.23 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
10.43 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
7.16 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
2.94 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
4.62 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
11.49 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
9.08 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
13.20 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
13.09 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
19.92 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
67.77 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
2.00 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
18.30 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
2.52 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
2.55 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
35.16 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
12.53 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
7.28 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
10.78 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
7.97 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
3.72 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
5.18 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
14.18 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
1.08 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
10.44 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
3.03 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
8.20 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
14.52 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
683 B lrw-r--r-- 2026-05-26 12:31:45
Edit Download
3.33 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
18.56 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
36.69 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
4.69 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
1.48 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
33.34 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
12.49 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
14.90 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
270.80 KB lrw-r--r-- 2026-05-26 12:31:45
Edit Download
3.94 KB lrw-r--r-- 2026-05-26 12:31:46
Edit Download
4.83 KB lrw-r--r-- 2026-05-26 12:31:46
Edit Download
9.49 KB lrw-r--r-- 2026-05-26 12:31:46
Edit Download
6.24 KB lrw-r--r-- 2026-05-26 12:31:46
Edit Download
24.76 KB lrw-r--r-- 2026-05-26 12:31:46
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).