Server IP : 172.67.216.182 / Your IP : 104.23.175.11 Web Server : Apache System : Linux krdc-ubuntu-s-2vcpu-4gb-amd-blr1-01.localdomain 5.15.0-142-generic #152-Ubuntu SMP Mon May 19 10:54:31 UTC 2025 x86_64 User : www ( 1000) PHP Version : 7.4.33 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 : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /www/wwwroot/savinassociates.com/wp-content/plugins/js_composer/include/params/ |
Upload File : |
<?php if ( ! defined( 'ABSPATH' ) ) { die( '-1' ); } /** * WPBakery WPBakery Page Builder shortcodes attributes class. * * This class and functions represents ability which will allow you to create attributes settings fields to * control new attributes. * New attributes can be added to shortcode settings by using param array in wp_map function * * @package WPBakeryPageBuilder * */ /** * Shortcode params class allows to create new params types. * class WpbakeryShortcodeParams * @since 4.2 */ class WpbakeryShortcodeParams { /** * @since 4.2 * @var array - store shortcode attributes types */ protected static $params = array(); /** * @since 4.2 * @var array - store shortcode javascript files urls */ protected static $scripts = array(); /** * @since 4.7 * @var array - store params not required to init */ protected static $optional_init_params = array(); /** * Get list of params that need to be initialized * * @return string[] */ public static function getRequiredInitParams() { $all_params = array_keys( self::$params ); $optional_params = apply_filters( 'vc_edit_form_fields_optional_params', self::$optional_init_params ); $required_params = array_diff( $all_params, $optional_params ); return $required_params; } /** * Create new attribute type * * @static * @param $name - attribute name * @param $form_field_callback - hook, will be called when settings form is shown and attribute added to shortcode * param list * @param $script_url - javascript file url which will be attached at the end of settings form. * * @return bool - return true if attribute type created * @since 4.2 * */ public static function addField( $name, $form_field_callback, $script_url = null ) { $result = false; if ( ! empty( $name ) && ! empty( $form_field_callback ) ) { self::$params[ $name ] = array( 'callbacks' => array( 'form' => $form_field_callback, ), ); $result = true; if ( is_string( $script_url ) && ! in_array( $script_url, self::$scripts, true ) ) { self::$scripts[] = $script_url; } } return $result; } /** * Calls hook for attribute type * @param $name - attribute name * @param $param_settings - attribute settings from shortcode * @param $param_value - attribute value * @param $tag - attribute tag * * @return mixed|string - returns html which will be render in hook * @since 4.2 * @static * */ public static function renderSettingsField( $name, $param_settings, $param_value, $tag ) { if ( isset( self::$params[ $name ]['callbacks']['form'] ) ) { return call_user_func( self::$params[ $name ]['callbacks']['form'], $param_settings, $param_value, $tag ); } return ''; } /** * List of javascript files urls for shortcode attributes. * @return array - list of js scripts * @since 4.2 * @static */ public static function getScripts() { return self::$scripts; } }