start_controls_section(
'style_section',
[
'label' => __( 'EPCs', 'propertyhive' ),
'tab' => \Elementor\Controls_Manager::TAB_STYLE,
]
);
$this->add_group_control(
\Elementor\Group_Control_Typography::get_type(),
[
'name' => 'typography',
'label' => __( 'Typography', 'propertyhive' ),
'global' => [
'default' => \Elementor\Core\Kits\Documents\Tabs\Global_Typography::TYPOGRAPHY_PRIMARY,
],
'selector' => '{{WRAPPER}} a',
]
);
$this->add_control(
'color',
[
'label' => __( 'Colour', 'propertyhive' ),
'type' => \Elementor\Controls_Manager::COLOR,
'global' => [
'default' => \Elementor\Core\Kits\Documents\Tabs\Global_Colors::COLOR_PRIMARY,
],
'selectors' => [
'{{WRAPPER}} a' => 'color: {{VALUE}}',
],
]
);
$this->add_control(
'text_align',
[
'label' => __( 'Alignment', 'propertyhive' ),
'type' => \Elementor\Controls_Manager::CHOOSE,
'options' => [
'left' => [
'title' => __( 'Left', 'propertyhive' ),
'icon' => 'eicon-text-align-left',
],
'center' => [
'title' => __( 'Center', 'propertyhive' ),
'icon' => 'eicon-text-align-center',
],
'right' => [
'title' => __( 'Right', 'propertyhive' ),
'icon' => 'eicon-text-align-right',
],
],
'default' => 'center',
'toggle' => true,
'selectors' => [
'{{WRAPPER}}' => 'text-align: {{VALUE}}',
],
]
);
$this->add_control(
'background_color',
[
'label' => __( 'Background Colour', 'propertyhive' ),
'type' => \Elementor\Controls_Manager::COLOR,
'global' => [
'default' => \Elementor\Core\Kits\Documents\Tabs\Global_Colors::COLOR_SECONDARY,
],
'selectors' => [
'{{WRAPPER}} a' => 'background: {{VALUE}}',
],
]
);
$this->add_control(
'padding',
[
'label' => __( 'Link Padding', 'propertyhive' ),
'type' => \Elementor\Controls_Manager::DIMENSIONS,
'size_units' => [ 'px' ],
'selectors' => [
'{{WRAPPER}} a' => 'display:inline-block; padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
],
'default' => [
'top' => 5,
'right' => 5,
'bottom' => 5,
'left' => 5,
'isLinked' => true,
],
]
);
$this->end_controls_section();
}
protected function render() {
global $property;
$settings = $this->get_settings_for_display();
if ( !isset($property->id) ) {
return;
}
if ( get_option('propertyhive_epcs_stored_as', '') == 'urls' )
{
$epc_urls = $property->epc_urls;
if ( !is_array($epc_urls) ) { $epc_urls = array(); }
if ( !empty($epc_urls) )
{
$i = 0;
foreach ( $epc_urls as $epc )
{
$image_extensions = array( 'jpg', 'jpeg', 'png', 'gif', 'bmp' );
$image = false;
foreach ( $image_extensions as $image_extension )
{
if ( strpos(strtolower($epc['url']), '.' . $image_extension) )
{
$image = true;
}
}
if ( $image )
{
echo ' 0 ? ' style="display:none"' : '' ) . ' href="' . esc_url($epc['url']) . '" data-fancybox="epcs" rel="nofollow">' . esc_html( ( count($epc_urls) > 1 ? __( 'EPCs', 'propertyhive' ) : __( 'EPC', 'propertyhive' ) ) ) . '';
++$i;
}
else
{
echo '' . esc_html( ( count($epc_urls) > 1 ? __( 'EPCs', 'propertyhive' ) : __( 'EPC', 'propertyhive' ) ) ) . '';
}
}
}
}
else
{
$epc_attachment_ids = $property->get_epc_attachment_ids();
if ( !empty($epc_attachment_ids) )
{
$i = 0;
foreach ( $epc_attachment_ids as $attachment_id )
{
echo ' 0 ? ' style="display:none"' : '' ) . ' href="' . esc_url(wp_get_attachment_url($attachment_id)) . '" data-fancybox="epc" rel="nofollow">' . esc_html( ( count($epc_attachment_ids) > 1 ? __( 'EPCs', 'propertyhive' ) : __( 'EPC', 'propertyhive' ) ) ) . '';
++$i;
}
}
}
}
}