balmet.com

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

deprecated-notice.php (2328B)


      1 <?php
      2 namespace Elementor;
      3 
      4 if ( ! defined( 'ABSPATH' ) ) {
      5 	exit; // Exit if accessed directly.
      6 }
      7 
      8 /**
      9  * Elementor Deprecated Notice control.
     10  *
     11  * A base control specific for creating Deprecation Notices control.
     12  * Displays a warning notice in the panel.
     13  *
     14  * @since 2.6.0
     15  */
     16 class Control_Deprecated_Notice extends Base_UI_Control {
     17 
     18 	/**
     19 	 * Get deprecated-notice control type.
     20 	 *
     21 	 * Retrieve the control type, in this case `deprecated_notice`.
     22 	 *
     23 	 * @since 2.6.0
     24 	 * @access public
     25 	 *
     26 	 * @return string Control type.
     27 	 */
     28 	public function get_type() {
     29 		return 'deprecated_notice';
     30 	}
     31 
     32 	/**
     33 	 * Render deprecated notice control output in the editor.
     34 	 *
     35 	 * Used to generate the control HTML in the editor using Underscore JS
     36 	 * template. The variables for the class are available using `data` JS
     37 	 * object.
     38 	 *
     39 	 * @since 2.6.0
     40 	 * @access public
     41 	 */
     42 	public function content_template() {
     43 		?>
     44 		<# if ( data.label ) { #>
     45 		<span class="elementor-control-title">{{{ data.label }}}</span>
     46 		<#
     47 		}
     48 		let notice = wp.i18n.sprintf( wp.i18n.__( 'The <strong>%1$s</strong> widget has been deprecated since %2$s %3$s.', 'elementor' ), data.widget, data.plugin, data.since );
     49 		if ( data.replacement ) {
     50 			notice += '<br>' + wp.i18n.sprintf( wp.i18n.__( 'It has been replaced by <strong>%1$s</strong>.', 'elementor' ), data.replacement );
     51 		}
     52 		if ( data.last ) {
     53 			notice += '<br>' + wp.i18n.sprintf( wp.i18n.__( 'Note that %1$s will be completely removed once %2$s %3$s is released.', 'elementor' ), data.widget, data.plugin, data.last );
     54 		}
     55 		#>
     56 		<div class="elementor-control-deprecated-notice elementor-panel-alert elementor-panel-alert-warning">{{{ notice }}}</div>
     57 		<?php
     58 	}
     59 
     60 	/**
     61 	 * Get deprecated-notice control default settings.
     62 	 *
     63 	 * Retrieve the default settings of the deprecated notice control. Used to return the
     64 	 * default settings while initializing the deprecated notice control.
     65 	 *
     66 	 * @since 2.6.0
     67 	 * @access protected
     68 	 *
     69 	 * @return array Control default settings.
     70 	 */
     71 	protected function get_default_settings() {
     72 		return [
     73 			'widget' => '', // Widgets name
     74 			'since' => '', // Plugin version widget was deprecated
     75 			'last' => '', // Plugin version in which the widget will be removed
     76 			'plugin' => '', // Plugin's title
     77 			'replacement' => '', // Widget replacement
     78 		];
     79 	}
     80 }