HEX
Server: Apache/2
System: Linux ind.multivistaglobal.com 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User: multivis (1002)
PHP: 8.1.32
Disabled: exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname
Upload Files
File: /home/multivis/public_html/wp-content/plugins/embedpress/EmbedPress/RestAPI.php
<?php

namespace EmbedPress;

use EmbedPress\Includes\Classes\Helper;
use Embera\Embera;
use WP_Error as WP_ErrorAlias;
use WP_REST_Request;
use WP_REST_Response;

(defined('ABSPATH') && defined('EMBEDPRESS_IS_LOADED')) or die("No direct script access allowed.");

/**
 * Entity responsible for maintaining and registering all hooks that power the plugin.
 *
 * @package     EmbedPress
 * @author      EmbedPress <help@embedpress.com>
 * @copyright   Copyright (C) 2023 WPDeveloper. All rights reserved.
 * @license     GPLv3 or later
 * @since       1.0.0
 */
class RestAPI
{
    /**
     * @param  WP_REST_Request  $request
     *
     * @return WP_REST_Response | WP_ErrorAlias
     */
    public static function oembed($request)
    {
        $url = esc_url_raw($request->get_param('url'));
		$playlist_id = $request->get_param( 'list');
	    if ( !empty( $playlist_id) ) {
		    $url .= "&list=$playlist_id";
		}

		$atts = $request->get_params();


        if (empty($url)) {
            return new WP_ErrorAlias('embedpress_invalid_url', 'Invalid Embed URL', ['status' => 404]);
        }

        $atts = Helper::removeQuote($atts);

        // Map Meetup-specific Gutenberg attributes to shortcode attributes
        if (!empty($url) && strpos($url, 'meetup.com') !== false) {
            if (isset($atts['meetupOrderBy'])) {
                $atts['orderby'] = $atts['meetupOrderBy'];
            }
            if (isset($atts['meetupOrder'])) {
                $atts['order'] = $atts['meetupOrder'];
            }
            if (isset($atts['meetupPerPage'])) {
                $atts['per_page'] = $atts['meetupPerPage'];
            }
            if (isset($atts['meetupEnablePagination'])) {
                $atts['enable_pagination'] = $atts['meetupEnablePagination'];
            }
            if (isset($atts['meetupTimezone'])) {
                $atts['timezone'] = $atts['meetupTimezone'];
            }
            if (isset($atts['meetupDateFormat'])) {
                $atts['date_format'] = $atts['meetupDateFormat'];
            }
            if (isset($atts['meetupTimeFormat'])) {
                $atts['time_format'] = $atts['meetupTimeFormat'];
            }
        }

        $urlInfo = Shortcode::parseContent( $url, true, $atts);
        if (empty($urlInfo)) {
            return new WP_ErrorAlias('embedpress_invalid_url', 'Invalid Embed URL', ['status' => 404]);
        }
        return new WP_REST_Response($urlInfo, 200);
    }

    
}