Files
wyczarujprezent.pl/modules/leoelements/includes/controls/groups/border.php
2024-10-28 22:14:22 +01:00

135 lines
2.9 KiB
PHP

<?php
/**
* 2007-2022 Apollotheme
*
* NOTICE OF LICENSE
*
* LeoElements is module help you can build content for your shop
*
* DISCLAIMER
*
* @author Apollotheme <apollotheme@gmail.com>
* @copyright 2007-2022 Apollotheme
* @license http://apollotheme.com - prestashop template provider
*/
namespace LeoElements;
use LeoElements\Leo_Helper;
if ( ! defined( '_PS_VERSION_' ) ) {
exit; // Exit if accessed directly.
}
/**
* Elementor border control.
*
* A base control for creating border control. Displays input fields to define
* border type, border width and border color.
*
* @since 1.0.0
*/
class Group_Control_Border extends Group_Control_Base {
/**
* Fields.
*
* Holds all the border control fields.
*
* @since 1.0.0
* @access protected
* @static
*
* @var array Border control fields.
*/
protected static $fields;
/**
* Get border control type.
*
* Retrieve the control type, in this case `border`.
*
* @since 1.0.0
* @access public
* @static
*
* @return string Control type.
*/
public static function get_type() {
return 'border';
}
/**
* Init fields.
*
* Initialize border control fields.
*
* @since 1.2.2
* @access protected
*
* @return array Control fields.
*/
protected function init_fields() {
$fields = [];
$fields['border'] = [
'label' => Leo_Helper::_x( 'Border Type', 'Border Control', 'elementor' ),
'type' => Controls_Manager::SELECT,
'options' => [
'' => Leo_Helper::__( 'None', 'elementor' ),
'solid' => Leo_Helper::_x( 'Solid', 'Border Control', 'elementor' ),
'double' => Leo_Helper::_x( 'Double', 'Border Control', 'elementor' ),
'dotted' => Leo_Helper::_x( 'Dotted', 'Border Control', 'elementor' ),
'dashed' => Leo_Helper::_x( 'Dashed', 'Border Control', 'elementor' ),
'groove' => Leo_Helper::_x( 'Groove', 'Border Control', 'elementor' ),
],
'selectors' => [
'{{SELECTOR}}' => 'border-style: {{VALUE}};',
],
];
$fields['width'] = [
'label' => Leo_Helper::_x( 'Width', 'Border Control', 'elementor' ),
'type' => Controls_Manager::DIMENSIONS,
'selectors' => [
'{{SELECTOR}}' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
],
'condition' => [
'border!' => '',
],
'responsive' => true,
];
$fields['color'] = [
'label' => Leo_Helper::_x( 'Color', 'Border Control', 'elementor' ),
'type' => Controls_Manager::COLOR,
'default' => '',
'selectors' => [
'{{SELECTOR}}' => 'border-color: {{VALUE}};',
],
'condition' => [
'border!' => '',
],
];
return $fields;
}
/**
* Get default options.
*
* Retrieve the default options of the border control. Used to return the
* default options while initializing the border control.
*
* @since 1.9.0
* @access protected
*
* @return array Default border control options.
*/
protected function get_default_options() {
return [
'popover' => false,
];
}
}