| Server IP : 89.108.64.180 / Your IP : 216.73.217.92 Web Server : Apache/2.4.41 (Ubuntu) System : Linux 89-108-64-180.cloudvps.regruhosting.ru 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : www-root ( 1010) PHP Version : 8.0.30 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,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, MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/www-root/data/www/rzaimka.ru/wp-content/plugins/maxbuttons/blocks/ |
Upload File : |
<?php
declare(strict_types=1);
namespace MaxButtons;
defined('ABSPATH') or die('No direct access permitted');
$blockClass["color"] = "colorBlock";
$blockOrder[10][] = "color";
class colorBlock extends maxBlock
{
protected $blockname = "color";
protected $fields = array("text_color" => array("default" => "#ffffff",
"css" => "color",
"csspart" => "mb-text",
'cssvalidate' => 'checkColor',
),
"text_shadow_color" => array("default" => "#505ac7",
"css" => "text-shadow-color",
"csspart" => "mb-text",
'mixin' => 'textshadow',
'cssvalidate' => 'checkColor',
),
"gradient_start_color" => array("default" => "#505ac7",
"css" => "gradient-start-color",
"mixin" => 'gradient',
'cssvalidate' => 'checkColor',
),
"gradient_end_color" => array("default" => "#505ac7",
"css" => "gradient-end-color",
"mixin" => 'gradient',
'cssvalidate' => 'checkColor',
),
"border_color" => array("default" => "#505ac7",
"css" => "border-color",
'cssvalidate' => 'checkBorderColor',
),
"box_shadow_color" => array("default" => "#333333",
"css" => "box-shadow-color",
'mixin' => 'boxshadow',
'cssvalidate' => 'checkColor',
),
"text_color_hover" => array("default" => "#505ac7",
"css" => "color",
"csspart" => "mb-text",
"csspseudo" => "hover",
'cssvalidate' => 'checkColor',
),
"text_shadow_color_hover" => array("default" => "#333333",
"css" => "text-shadow-color",
"csspart" => "mb-text",
"csspseudo" => "hover",
'mixin' => 'textshadow',
'cssvalidate' => 'checkColor',
),
"gradient_start_color_hover" => array("default" => "#ffffff",
"css" => "gradient-start-color",
"csspseudo" => "hover",
"mixin" => 'gradient',
'cssvalidate' => 'checkColor',
),
"gradient_end_color_hover" => array("default" => "#ffffff",
"css" => "gradient-end-color",
"csspseudo" => "hover",
'mixin' => 'gradient',
'cssvalidate' => 'checkColor',
),
"border_color_hover" => array("default" => "#505ac7",
"css" => "border-color",
"csspseudo" => "hover",
'cssvalidate' => 'checkBorderColor',
),
"box_shadow_color_hover" => array("default" => "#333333",
"css" => "box-shadow-color",
"csspseudo" => "hover",
'mixin' => 'boxshadow',
'cssvalidate' => 'checkColor',
),
"icon_color" => array( "default" => '#ffffff',
"css" => "color",
"csspart" => "mb-icon",
'cssvalidate' => 'checkColor',
),
"icon_color_hover" => array( "default" => '#2b469e',
"css" => "color",
"csspart" => "mb-icon,mb-icon-hover",
"csspseudo" => "hover",
'cssvalidate' => 'checkColor',
),
);
public function parse_css($css, $screens, string $mode = 'normal') {
$data = $this->getBlockData();
$css = parent::parse_css($css, $screens, $mode);
$border_width = isset($this->data['border']['border_width']) ? $this->data['border']['border_width'] : 0;
if ( intval($border_width) == 0) // if no border, then don't output other border properties.
{
unset($css['maxbutton']['normal']['border-color']);
unset($css['maxbutton']['hover']['border-color']);
}
return $css;
}
protected function checkColor($value)
{
if (! $value) // if no color value, then transparent.
$value = 'rgba(0,0,0,0)';
elseif (! maxUtils::isrgba($value) && substr($value,0,1) !== '#')
{
$value = '#' . $value;
}
return $value;
}
protected function checkBorderColor($value, $field_id, $field_data, $screenObj)
{
$border_width = $screenObj->getValue($screenObj->getFieldID('border_width'));
if ($border_width == 0)
{
return false;
}
else
return $this->checkColor($value);
}
public function admin_fields($screen) {}
} // class