| Server IP : 43.130.17.34 / Your IP : 216.73.217.6 Web Server : nginx/1.28.0 System : Linux VM-4-12-opencloudos 6.6.92-34.1.oc9.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jun 25 21:32:13 CST 2025 x86_64 User : www ( 1000) PHP Version : 8.0.26 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /www/wwwroot/yespkg.com/wp-content/plugins/elementor-pro/modules/global-widget/documents/ |
Upload File : |
<?php
namespace ElementorPro\Modules\GlobalWidget\Documents;
use Elementor\Core\Base\Document;
use Elementor\Modules\Library\Documents\Library_Document;
use Elementor\User;
use ElementorPro\Core\Behaviors\Feature_Lock;
use ElementorPro\Modules\GlobalWidget\Module;
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
class Widget extends Library_Document {
public static function get_properties() {
$properties = parent::get_properties();
$properties['admin_tab_group'] = 'library';
$properties['show_in_library'] = false;
$properties['is_editable'] = false;
// Since, created in the editor environment.
$properties['show_in_finder'] = false;
return $properties;
}
public function get_name() {
return 'widget';
}
public static function get_title() {
return esc_html__( 'Global Widget', 'elementor-pro' );
}
public static function get_plural_title() {
return esc_html__( 'Global Widgets', 'elementor-pro' );
}
public static function get_lock_behavior_v2() {
return new Feature_Lock( [
'type' => static::get_type(),
] );
}
public function is_editable_by_current_user() {
return User::is_current_user_can_edit( $this->get_main_id() );
}
public function import( array $data ) {
parent::import( $data );
$this->update_main_meta( Module::WIDGET_TYPE_META_KEY, $data['content'][0]['widgetType'] );
}
public function save( $data ) {
// Since the method of 'modules/usage::before_document_save' will remove from global if new_status is the same as old.
$data['settings'] = [ 'post_status' => Document::STATUS_PUBLISH ];
return parent::save( $data );
}
}