: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in
namespace Leadin\admin\widgets;
use Elementor\Widget_Base;
* ElementorMeeting Widget
class ElementorMeeting extends Widget_Base {
public function get_name() {
return 'hubspot-meeting';
public function get_title() {
return esc_html( 'HubSpot Meeting' );
public function get_icon() {
public function get_custom_help_url() {
return 'https://wordpress.org/support/plugin/leadin/';
public function get_categories() {
return array( 'general', 'hubspot' );
public function get_keywords() {
return array( 'hubspot', 'meeting', 'leadin' );
public function get_style_depends() {
wp_register_style( 'leadin-elementor', LEADIN_JS_BASE_PATH . '/elementor.css', array(), LEADIN_PLUGIN_VERSION );
wp_register_style( 'leadin-css', LEADIN_ASSETS_PATH . '/style/leadin.css', array(), LEADIN_PLUGIN_VERSION );
return array( 'leadin-elementor', 'leadin-css' );
public function get_script_depends() {
'https://static.hsappstatic.net/MeetingsEmbed/ex/MeetingsEmbedCode.js',
return array( 'leadin-meeting' );
protected function register_controls() {
$this->start_controls_section(
'label' => esc_html( __( 'Meetings Scheduler', 'leadin' ) ),
'tab' => \Elementor\Controls_Manager::TAB_CONTENT,
'type' => 'leadinmeetingselect',
$this->end_controls_section();
protected function render() {
$settings = $this->get_settings_for_display();
$content = $settings['content'];
if ( Plugin::$instance->editor->is_edit_mode() ) {
<div class="hubspot-meeting-edit-mode" data-attributes=<?php echo json_encode( $content ); ?>>
if ( empty( $content ) ) {
<div class="hubspot-widget-empty">
if ( ! empty( $content ) ) {
echo do_shortcode( '[hubspot url="' . $url . '" type="meeting"]' );