| 1 |
<?php |
| 2 |
defined('ABSPATH') or die('No direct access permitted'); |
| 3 |
|
| 4 |
$blockClass["color"] = "colorBlock"; |
| 5 |
$blockOrder[10][] = "color"; |
| 6 |
|
| 7 |
use MaxButtons\maxBlocks as maxBlocks; |
| 8 |
use MaxButtons\maxField as maxField; |
| 9 |
|
| 10 |
class colorBlock extends maxBlock |
| 11 |
{ |
| 12 |
protected $blockname = "color"; |
| 13 |
protected $fields = array("text_color" => array("default" => "#ffffff", |
| 14 |
"css" => "color", |
| 15 |
"csspart" => "mb-text" |
| 16 |
), |
| 17 |
"text_shadow_color" => array("default" => "#505ac7", |
| 18 |
"css" => "text-shadow-color", |
| 19 |
"csspart" => "mb-text" |
| 20 |
), |
| 21 |
"gradient_start_color" => array("default" => "#505ac7", |
| 22 |
"css" => "gradient-start-color" |
| 23 |
), |
| 24 |
"gradient_end_color" => array("default" => "#505ac7", |
| 25 |
"css" => "gradient-end-color" |
| 26 |
), |
| 27 |
"border_color" => array("default" => "#505ac7", |
| 28 |
"css" => "border-color" |
| 29 |
), |
| 30 |
"box_shadow_color" => array("default" => "#333333", |
| 31 |
"css" => "box-shadow-color" |
| 32 |
), |
| 33 |
"text_color_hover" => array("default" => "#505ac7", |
| 34 |
"css" => "color", |
| 35 |
"csspart" => "mb-text", |
| 36 |
"csspseudo" => "hover", |
| 37 |
), |
| 38 |
"text_shadow_color_hover" => array("default" => "#333333", |
| 39 |
"css" => "text-shadow-color", |
| 40 |
"csspart" => "mb-text", |
| 41 |
"csspseudo" => "hover"), |
| 42 |
|
| 43 |
"gradient_start_color_hover" => array("default" => "#ffffff", |
| 44 |
"css" => "gradient-start-color", |
| 45 |
"csspseudo" => "hover"), |
| 46 |
|
| 47 |
"gradient_end_color_hover" => array("default" => "#ffffff", |
| 48 |
"css" => "gradient-end-color", |
| 49 |
"csspseudo" => "hover" |
| 50 |
), |
| 51 |
|
| 52 |
"border_color_hover" => array("default" => "#505ac7", |
| 53 |
"css" => "border-color", |
| 54 |
"csspseudo" => "hover"), |
| 55 |
|
| 56 |
"box_shadow_color_hover" => array("default" => "#333333", |
| 57 |
"css" => "box-shadow-color", |
| 58 |
"csspseudo" => "hover"), |
| 59 |
|
| 60 |
"icon_color" => array( "default" => '#ffffff', |
| 61 |
"css" => "color", |
| 62 |
"csspart" => "fa"), |
| 63 |
|
| 64 |
"icon_color_hover" => array( "default" => '#2b469e', |
| 65 |
"css" => "color", |
| 66 |
"csspart" => "fa", |
| 67 |
"csspseudo" => "hover", |
| 68 |
), |
| 69 |
); |
| 70 |
|
| 71 |
public function parse_css($css, $mode = 'normal') { |
| 72 |
|
| 73 |
$data = $this->data[$this->blockname]; |
| 74 |
foreach($this->fields as $field => $field_data) // ensure colors have the correct format |
| 75 |
{ |
| 76 |
$value = isset($data[$field]) ? $data[$field] : false; |
| 77 |
if (! $value) |
| 78 |
continue; // no color, no check. |
| 79 |
|
| 80 |
if (substr($value,0,1) !== '#') |
| 81 |
{ |
| 82 |
$value = '#' . $value; |
| 83 |
} |
| 84 |
$this->data[$this->blockname][$field] = $value; |
| 85 |
} |
| 86 |
|
| 87 |
return parent::parse_css($css, $mode); |
| 88 |
} |
| 89 |
|
| 90 |
|
| 91 |
public function admin_fields() {} |
| 92 |
} // class |
| 93 |
|
| 94 |
|
| 95 |
|