<?php
namespace Elementor;

/**
 * Elementor Widget
 * @package Geroz
 * @since 1.0.0
 */ 
 
class Footer_Style_1 extends Widget_Base {

	/**
	 * Get widget name.
	 * Retrieve button widget name.
	 *
	 * @since  1.0.0
	 * @access public
	 * @return string Widget name.
	 */
	public function get_name() {
		return 'geroz-footer-style-1-widget';
	}

	/**
	 * Get widget title.
	 * Retrieve button widget title.
	 *
	 * @since  1.0.0
	 * @access public
	 * @return string Widget title.
	 */
	public function get_title() {
		return esc_html__( 'Footer Style 1', 'geroz-core' );
	}

	/**
	 * Get widget icon.
	 * Retrieve button widget icon.
	 *
	 * @since  1.0.0
	 * @access public
	 * @return string Widget icon.
	 */
	public function get_icon() {
		return 'eicon-flash';
	}

	/**
	 * Get widget categories.
	 * Retrieve the list of categories the button widget belongs to.
	 * Used to determine where to display the widget in the editor.
	 *
	 * @since  2.0.0
	 * @access public
	 * @return array Widget categories.
	 */
	public function get_categories()
    {
        return ['geroz_widgets'];
    }
	
	/**
	 * Register button widget controls.
	 * Adds different input fields to allow the user to change and customize the widget settings.
	 *
	 * @since  1.0.0
	 * @access protected
	 */
	protected function register_controls() {

		// Tab Start - 1

		$this->start_controls_section(
			'footer-cta-1',
			[
				'label' => esc_html__( 'Footer Top CTA', 'geroz-core' ),
			]
		);	

		$this->add_control(
			'cta_image',
			[
				'label' => esc_html__( 'CTA Image', 'geroz-core' ),
				'type' => Controls_Manager::MEDIA,
				'default' => 
					[
						'url' => Utils::get_placeholder_image_src(),
					],
			]
		);

		$this->add_control(
			'cta_subtitle',
			[
				'label' => esc_html__( 'CTA Subtitle', 'geroz-core' ),
				'type' => Controls_Manager::TEXT,
				'default' => esc_html__( 'Get in Touch', 'geroz-core' ),
			]
		);

		$this->add_control(
			'cta_title',
			[
				'label' => esc_html__( 'CTA Title', 'geroz-core' ),
				'type' => Controls_Manager::TEXT,
				'default' => esc_html__( 'We are here to help you', 'geroz-core' ),
			]
		);

		$this->add_control(
			'cta_text',
			[
				'label' => esc_html__( 'CTA Text', 'geroz-core' ),
				'type' => Controls_Manager::TEXTAREA,
				'default' => esc_html__( 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.', 'geroz-core' ),
			]
		);

		$this->add_control(
			'cta_button_link',
			[
				'label' => esc_html__( 'CTA Button Link', 'geroz-core' ),
				'type' => Controls_Manager::URL,
				'default' => 
					[
						'url' => '#',
						'is_external' => '',
						'nofollow' => '',
					],
				'description' => esc_html__( 'Enter the URL for the CTA button.', 'geroz-core' ),
			]
		);

		$this->add_control(
			'circle_text',
			[
				'label' => esc_html__( 'Circle Text', 'geroz-core' ),
				'type' => Controls_Manager::TEXT,
				'default' => esc_html__( 'Contact Us', 'geroz-core' ),
				'description' => esc_html__( 'Enter the text to display in the circle.', 'geroz-core' ),
			]
		);

		$this->end_controls_section();

		$this->start_controls_section(
			'footer-style-1',
			[
				'label' => esc_html__( 'Footer Style 1', 'geroz-core' ),
			]
		);	

		$this->add_control(
			'image',
			[
				'label' => esc_html__( 'Footer Image', 'geroz-core' ),
				'type' => Controls_Manager::MEDIA,
				'default' => 
					[
						'url' => Utils::get_placeholder_image_src(),
					],
			]
		);

		$this->add_control(
			'image2',
			[
				'label' => esc_html__( 'Footer Image 2', 'geroz-core' ),
				'type' => Controls_Manager::MEDIA,
				'default' => 
					[
						'url' => Utils::get_placeholder_image_src(),
					],
			]
		);

		$this->add_control(
			'logo_image',
			[
				'label' => esc_html__( 'Logo Image', 'geroz-core' ),
				'type' => Controls_Manager::MEDIA,
				'default' => 
					[
						'url' => Utils::get_placeholder_image_src(),
					],
			]
		);

		$this->add_control(
			'contact_form',
			[
				'label' => esc_html__( 'Contact Form Shortcode', 'geroz-core' ),
				'type' => Controls_Manager::TEXT,
				'default' => '[contact-form-7 id="123" title="Contact form 1"]',
				'description' => esc_html__( 'Enter your contact form shortcode here.', 'geroz-core' ),
			]
		);

		$this->add_control(
			'text',
			[
				'label' => esc_html__( 'Text', 'geroz-core' ),
				'type' => Controls_Manager::TEXTAREA,
				'default' => esc_html__( 'We will never spam you.', 'geroz-core' ),
				'description' => esc_html__( 'Enter the text to display in the footer.', 'geroz-core' ),
			]
		);

		$this->add_control(
			'copyright_text',
			[
				'label' => esc_html__( 'Copyright Text', 'geroz-core' ),
				'type' => Controls_Manager::TEXTAREA,
				'default' => esc_html__( '© 2025 Geroz. All rights reserved.', 'geroz-core' ),
				'description' => esc_html__( 'Enter the copyright text to display in the footer.', 'geroz-core' ),
			]
		);

		$this->end_controls_section();

		// Tab Start - 2

		$this->start_controls_section(
			'content_section',
			[
				'label' => __( 'Block', 'geroz-core' ),
				'tab' => \Elementor\Controls_Manager::TAB_CONTENT,
			]
		);
		$this->add_control(
		  'repeat', 
			[
				'type' => Controls_Manager::REPEATER,
				'separator' => 'before',
				'default' => 
					[
						['section_title' => esc_html__('Hello World', 'geroz-core')],
					],
				'fields' => 
					[	
						'section_icons' =>
						[
							'name' => 'section_icons',
							'label' => esc_html__('Icon', 'geroz-core'),
							'type' => Controls_Manager::ICONS,
							'default' => 
								[
									'value' => 'fas fa-home',
									'library' => 'fa-solid',
								],
						],

						'section_title' =>
						[
							'name' => 'section_title',
							'label' => esc_html__('Section Title', 'geroz-core'),
							'type' => Controls_Manager::TEXTAREA,
							'default' => esc_html__('', 'geroz-core')
						],

						'section_subtitle' =>
						[
							'name' => 'section_subtitle',
							'label' => esc_html__('Section Subtitle', 'geroz-core'),
							'type' => Controls_Manager::TEXTAREA,
							'default' => esc_html__('', 'geroz-core')
						],

						'section_col_number' =>
						[
							'name' => 'section_col_number',
							'label' => __( 'Select Column', 'geroz-core' ),
							'type' => Controls_Manager::SELECT,
							'options' => [
								'col-xl-12' => __( 'Col XL 12', 'geroz-core' ),
								'col-xl-9' => __( 'Col XL 9', 'geroz-core' ),
								'col-xl-8' => __( 'Col XL 8', 'geroz-core' ),
								'col-xl-7' => __( 'Col XL 7', 'geroz-core' ),
								'col-xl-6' => __( 'Col XL 6', 'geroz-core' ),
								'col-xl-5' => __( 'Col XL 5', 'geroz-core' ),
								'col-xl-4' => __( 'Col XL 4', 'geroz-core' ),
								'col-xl-3' => __( 'Col XL 3', 'geroz-core' ),
								'col-xl-2' => __( 'Col XL 2', 'geroz-core' ),
								],
								'default' => 'col-xl-3',
						],

						'section_class' =>
						[
							'name' => 'section_class',
							'label' => esc_html__('Section Class', 'geroz-core'),
							'type' => Controls_Manager::TEXT,
							'default' => esc_html__('ps-xl-5', 'geroz-core'),
							'description' => esc_html__('Add custom class for styling', 'geroz-core'),
						]
					],
				'title_field' => '{{section_title}}',
			 ]
		);

		$this->add_control(
		  'repeat_1', 
			[
				'type' => Controls_Manager::REPEATER,
				'separator' => 'before',
				'default' => 
					[
						['section_icons_socials' => esc_html__('Facebook', 'geroz-core')],
					],
				'fields' => 
					[

						'section_icons_socials' =>
						[
							'name' => 'section_icons_socials',
							'label' => esc_html__('Icon', 'geroz-core'),
							'type' => Controls_Manager::ICONS,
							'default' => 
								[
									'value' => 'fas fa-facebook-f',
									'library' => 'fa-solid',
								],
						],

						'section_button_link' =>
						[
							'name' => 'section_button_link',
							'label' => esc_html__('Link', 'geroz-core'),
							'type' => Controls_Manager::URL,
							'default' => 
								[
									'url' => '#',
									'is_external' => '',
									'nofollow' => '',
								],
						],
						
					],
				'title_field' => '{{section_icons_socials.value}}',
			 ]
		);
		
		
		$this->end_controls_section();	

	
		}

	/**
	 * Render button widget output on the frontend.
	 * Written in PHP and used to generate the final HTML.
	 *
	 * @since  1.0.0
	 * @access protected
	 */
	protected function render() {
		$settings = $this->get_settings_for_display();
		$allowed_tags = wp_kses_allowed_html('post');
		?>


  <section class="cta-wrapper cta-1">
	<div class="container">
		<div class="cta-inner wow fadeInUp" data-wow-delay="300ms">
			<div class="shape">
			<?php  if ( !empty(esc_url($settings['cta_image']['id']) )) : ?>   
				<img class="shape-1" src="<?php echo wp_get_attachment_url($settings['cta_image']['id']);?>" alt=""/>
			<?php endif;?>
			</div>
			<div class="row align-items-center justify-content-between">
				<div class="col-xl-7 col-lg-6 col-12">
					<div class="section-title">
						<div class="sub-title">
							<div class="dot"></div> <span><?php echo $settings['cta_subtitle'];?></span>
						</div>
						<h2 class="text-white pb-4 text-nowrap"><?php echo $settings['cta_title'];?></h2>
					</div>
					<p class="text"><?php echo $settings['cta_text'];?></p>
				</div>
				<div class="col-xl-5 col-lg-6 col-12">
					<a href="<?php echo esc_url($settings['cta_button_link']['url']);?>" class="circle">
						<div class="dot"></div>
						<div class="circle-icon"><i class="far fa-long-arrow-right"></i></div>
						<div class="circle-text">
							<p>
								<?php echo $settings['circle_text'];?>
							</p>
						</div>
					</a>
					<div class="cta-arrow">
						<svg width="146" height="147" viewBox="0 0 146 147" fill="none"
							xmlns="http://www.w3.org/2000/svg">
							<path class="arrow-path"
								d="M13.2675 151.978C-14.9941 96.7215 11.0094 10.7142 56.7816 55.219C85.3472 82.9936 17.441 74.5293 41.1041 38.8724C60.0347 10.347 114.229 6.96293 138.959 8.83675L123.22 21.4655C129.971 18.3438 143.616 11.4648 144.185 8.92165C144.755 6.37851 129.378 3.31736 121.619 2.10438"
								stroke="white" stroke-width="3" />
						</svg>
					</div>
				</div>
			</div>
		</div>
	</div>
</section>

   <footer class="footer-wrapper footer-1 section-padding pb-0 section-bg-2">
		<div class="shape">
			<?php  if ( !empty(esc_url($settings['image']['id']) )) : ?>   
				<img class="shape-1" src="<?php echo wp_get_attachment_url($settings['image']['id']);?>" alt=""/>
			<?php endif;?>
			<?php  if ( !empty(esc_url($settings['image2']['id']) )) : ?>   
				<img class="shape-2" src="<?php echo wp_get_attachment_url($settings['image2']['id']);?>" alt=""/>
			<?php endif;?>
		</div>
		<div class="container">
			<div class="footer-widgets-inner">
				<div class="footer-logo">
				<?php  if ( !empty(esc_url($settings['logo_image']['id']) )) : ?>   
					<img src="<?php echo wp_get_attachment_url($settings['logo_image']['id']);?>" alt=""/>
				<?php endif;?>
				</div>
				<div class="row">
					<?php foreach($settings['repeat'] as $item):?>	
					<div class="<?php echo esc_attr($item['section_col_number']); ?> col-lg-6 col-md-6 wow fadeInUp" data-wow-delay="600ms">
						<div class="signle-footer-widgets mt-5 <?php echo esc_attr($item['section_class']); ?>">
							<div class="icon"><i class="<?php echo str_replace("icon ", " ", esc_attr( $item['section_icons']['value']));?>"></i></div>
							<span><?php echo wp_kses($item['section_subtitle'], $allowed_tags);?></span>
							<h5><?php echo wp_kses($item['section_title'], $allowed_tags);?></h5>
						</div>
					</div>
					<?php endforeach; ?>
					<div class="col-xl-4 col-lg-6 col-md-6 wow fadeInUp" data-wow-delay="800ms">
						<div class="signle-footer-widgets newsletter ps-xl-3">
							<h4>Stay in Touch</h4>
							
							<?php echo do_shortcode( $settings['contact_form'] );?>

							<p class="pt-3"><i class="fal fa-check pe-2"></i><?php echo $settings['text'];?></p>
							<div class="social-icon mt-4 pt-2">
							<?php foreach($settings['repeat_1'] as $item):?>	
								<a href="<?php echo esc_url($item['section_button_link']['url']);?>"><i class="<?php echo str_replace("icon ", " ", esc_attr( $item['section_icons_socials']['value']));?>"></i></a>
							<?php endforeach; ?>
							</div>
						</div>
					</div>
				</div>
			</div>
		</div>
		<div class="footer-bottom section-padding pb-0 section-bg-2">
			<div class="inner">
				<div class="container">
					<p class="text-center">
						<?php echo $settings['copyright_text'];?>
					</p>
				</div>
			</div>
		</div>
	</footer>

	<?php
	$back_top_enable = cs_get_option('back_top_enable') !== null ? cs_get_option('back_top_enable') : true;
	?>
        
    <?php if ($back_top_enable) :?>
	<div class="scroll-up">
		<svg class="scroll-circle svg-content" width="100%" height="100%" viewBox="-1 -1 102 102">
			<path d="M50,1 a49,49 0 0,1 0,98 a49,49 0 0,1 0,-98" />
		</svg>
	</div>
	<?php endif;?>

             
		<?php 
	}


}

Plugin::instance()->widgets_manager->register_widget_type(new Footer_Style_1());