PluginProbe
MaxButtons – Create buttons / 7.11
MaxButtons – Create buttons v7.11
6.23 6.24 6.25 6.26 6.26.1 6.27 6.28 6.3 6.4 6.5 6.6 6.7 6.8 6.9 7.0 7.1 7.1.1 7.1.2 7.1.3 7.10 7.11 7.13 7.13.1 7.13.2 7.13.3 All 100 releases
maxbuttons / blocks / color.php

color.php in MaxButtons – Create buttons 7.11, at blocks/color.php

106 lines 3.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 namespace MaxButtons;
3 defined('ABSPATH') or die('No direct access permitted');
4
5 $blockClass["color"] = "colorBlock";
6 $blockOrder[10][] = "color";
7
8
9 class colorBlock extends maxBlock
10 {
11 protected $blockname = "color";
12 protected $fields = array("text_color" => array("default" => "#ffffff",
13 "css" => "color",
14 "csspart" => "mb-text"
15 ),
16 "text_shadow_color" => array("default" => "#505ac7",
17 "css" => "text-shadow-color",
18 "csspart" => "mb-text"
19 ),
20 "gradient_start_color" => array("default" => "#505ac7",
21 "css" => "gradient-start-color"
22 ),
23 "gradient_end_color" => array("default" => "#505ac7",
24 "css" => "gradient-end-color"
25 ),
26 "border_color" => array("default" => "#505ac7",
27 "css" => "border-color"
28 ),
29 "box_shadow_color" => array("default" => "#333333",
30 "css" => "box-shadow-color"
31 ),
32 "text_color_hover" => array("default" => "#505ac7",
33 "css" => "color",
34 "csspart" => "mb-text",
35 "csspseudo" => "hover",
36 ),
37 "text_shadow_color_hover" => array("default" => "#333333",
38 "css" => "text-shadow-color",
39 "csspart" => "mb-text",
40 "csspseudo" => "hover"),
41
42 "gradient_start_color_hover" => array("default" => "#ffffff",
43 "css" => "gradient-start-color",
44 "csspseudo" => "hover"),
45
46 "gradient_end_color_hover" => array("default" => "#ffffff",
47 "css" => "gradient-end-color",
48 "csspseudo" => "hover"
49 ),
50
51 "border_color_hover" => array("default" => "#505ac7",
52 "css" => "border-color",
53 "csspseudo" => "hover"),
54
55 "box_shadow_color_hover" => array("default" => "#333333",
56 "css" => "box-shadow-color",
57 "csspseudo" => "hover"),
58
59 "icon_color" => array( "default" => '#ffffff',
60 "css" => "color",
61 "csspart" => "mb-icon"),
62
63 "icon_color_hover" => array( "default" => '#2b469e',
64 "css" => "color",
65 "csspart" => "mb-icon-hover",
66 "csspseudo" => "hover",
67 ),
68 );
69
70 public function parse_css($css, $mode = 'normal') {
71
72 $data = $this->data[$this->blockname];
73 foreach($this->fields as $field => $field_data) // ensure colors have the correct format
74 {
75 $value = isset($data[$field]) ? $data[$field] : false;
76 if (! $value)
77 {
78 $value = 'rgba(0,0,0,0)'; // if no color value, then transparent.
79 // $this->data[$this->blockname][$field] = $value;
80 //continue; // no color, no check.
81 }
82
83
84 if (! maxUtils::isrgba($value) && substr($value,0,1) !== '#')
85 {
86 $value = '#' . $value;
87 }
88 $this->data[$this->blockname][$field] = $value;
89 }
90
91 $css = parent::parse_css($css, $mode);
92
93 $border_width = maxBlocks::getValue('border_width');
94 if ( intval($border_width) == 0) // if no border, then don't output other border properties.
95 {
96 unset($css['maxbutton']['normal']['border-color']);
97 unset($css['maxbutton']['hover']['border-color']);
98 }
99
100 return $css;
101 }
102
103
104 public function admin_fields() {}
105 } // class
106