<?php
/**
 * Custom Contact us Widget
 */

class Laundry_Business_Contact_Widget extends WP_Widget {
	function __construct() {
		parent::__construct(
			'Laundry_Business_Contact_Widget', 
			__('VW Contact us', 'laundry-business'),
			array( 'description' => __( 'Widget for contact us section in sidebar', 'laundry-business' ), ) 
		);
	}
	
	public function widget( $laundry_business_args, $laundry_business_instance ) {
		?>
		<aside class="widget">
			<?php
			$laundry_business_title = isset( $laundry_business_instance['title'] ) ? $laundry_business_instance['title'] : '';
			$laundry_business_phone = isset( $laundry_business_instance['phone'] ) ? $laundry_business_instance['phone'] : '';
			$laundry_business_email = isset( $laundry_business_instance['email'] ) ? $laundry_business_instance['email'] : '';
			$laundry_business_address = isset( $laundry_business_instance['address'] ) ? $laundry_business_instance['address'] : '';
			$laundry_business_timing = isset( $laundry_business_instance['timing'] ) ? $laundry_business_instance['timing'] : '';
			$laundry_business_longitude = isset( $laundry_business_instance['longitude'] ) ? $laundry_business_instance['longitude'] : '';
			$laundry_business_latitude = isset( $laundry_business_instance['latitude'] ) ? $laundry_business_instance['latitude'] : '';
			$laundry_business_contact_form = isset( $laundry_business_instance['contact_form'] ) ? $laundry_business_instance['contact_form'] : '';

	        echo '<div class="custom-contact-us">';
	        if(!empty($laundry_business_title) ){ ?><h3 class="custom_title1"><?php echo esc_html($laundry_business_title); ?></h3><?php } ?>
		        <?php if(!empty($laundry_business_phone) ){ ?>
		        	<div class="row contact-detail">
		        		<div class="col-lg-2 col-md-2 align-self-center">
		        			<span class="custom_details"><i class="fa-solid fa-phone-volume me-2"></i></span>
		        		</div>
		        		<div class="col-lg-10 col-md-10 align-self-center">
		        			<span class="contact-title"><?php echo esc_html('Contact', 'laundry-business'); ?></span><span class="custom_desc"><?php echo esc_html($laundry_business_phone); ?></span>
		        		</div>		        		
		        	</div>
		        <?php } ?>
		        <?php if(!empty($laundry_business_email) ){ ?>
		        	<div class="row contact-detail">
		        		<div class="col-lg-2 col-md-2 align-self-center">
		        			<span class="custom_details"><i class="fa-regular fa-envelope me-2"></i></span>
		        		</div>
		        		<div class="col-lg-10 col-md-10 align-self-center">
		        			<span class="contact-title"><?php echo esc_html('Mail Address', 'laundry-business'); ?></span><span class="custom_desc"><?php echo esc_html($laundry_business_email); ?></span>
		        		</div>
		        	</div>
		        <?php } ?>
		        <?php if(!empty($laundry_business_address) ){ ?>
		        	<div class="row contact-detail">
		        		<div class="col-lg-2 col-md-2 align-self-center">
		        			<span class="custom_details"><i class="fa-solid fa-location-dot me-2"></i></span>
		        		</div>
			        	<div class="col-lg-10 col-md-10 align-self-center">
			        		<span class="contact-title"><?php echo esc_html('Location', 'laundry-business'); ?></span><span class="custom_desc"><?php echo esc_html($laundry_business_address); ?></span>
			        	</div>
			        </div>
			    <?php } ?> 
		        <?php if(!empty($laundry_business_timing) ){ ?><p><span class="custom_details"><?php esc_html_e('Opening Time: ','laundry-business'); ?></span><span class="custom_desc"><?php echo esc_html($laundry_business_timing); ?></span></p><?php } ?>
		        <?php if(!empty($laundry_business_longitude) ){ ?><embed width="100%" height="200px" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="https://maps.google.com/maps?q=<?php echo esc_html($laundry_business_longitude); ?>,<?php echo esc_html($laundry_business_latitude); ?>&hl=es;z=14&amp;output=embed"></embed><?php } ?>
		        <?php if(!empty($laundry_business_contact_form) ){ ?><?php echo do_shortcode($laundry_business_contact_form); ?><?php } ?>
	        <?php echo '</div>';
			?>
		</aside>
		<?php
	}
	
	// Widget Backend 
	public function form( $laundry_business_instance ) {

		$laundry_business_title= ''; $laundry_business_phone= ''; $laundry_business_email = ''; $laundry_business_address = ''; $laundry_business_timing = ''; $laundry_business_longitude = ''; $laundry_business_latitude = ''; $laundry_business_contact_form = ''; 
		
		$laundry_business_title = isset( $laundry_business_instance['title'] ) ? $laundry_business_instance['title'] : '';
		$laundry_business_phone = isset( $laundry_business_instance['phone'] ) ? $laundry_business_instance['phone'] : '';
		$laundry_business_email = isset( $laundry_business_instance['email'] ) ? $laundry_business_instance['email'] : '';
		$laundry_business_address = isset( $laundry_business_instance['address'] ) ? $laundry_business_instance['address'] : '';
		$laundry_business_timing = isset( $laundry_business_instance['timing'] ) ? $laundry_business_instance['timing'] : '';
		$laundry_business_longitude = isset( $laundry_business_instance['longitude'] ) ? $laundry_business_instance['longitude'] : '';
		$laundry_business_latitude = isset( $laundry_business_instance['latitude'] ) ? $laundry_business_instance['latitude'] : '';
		$laundry_business_contact_form = isset( $laundry_business_instance['contact_form'] ) ? $laundry_business_instance['contact_form'] : '';
		
		?>

		<p>
        	<label for="<?php echo esc_attr($this->get_field_id('title')); ?>"><?php esc_html_e('Title:','laundry-business'); ?></label>
        	<input class="widefat" id="<?php echo esc_attr($this->get_field_id('title')); ?>" name="<?php echo esc_attr($this->get_field_name('title')); ?>" type="text" value="<?php echo esc_attr($laundry_business_title); ?>">
    	</p>
    	<p>
        	<label for="<?php echo esc_attr($this->get_field_id('phone')); ?>"><?php esc_html_e('Phone Number:','laundry-business'); ?></label>
        	<input class="widefat" id="<?php echo esc_attr($this->get_field_id('phone')); ?>" name="<?php echo esc_attr($this->get_field_name('phone')); ?>" type="text" value="<?php echo esc_attr($laundry_business_phone); ?>">
    	</p>
    	<p>
        	<label for="<?php echo esc_attr($this->get_field_id('email')); ?>"><?php esc_html_e('Email id:','laundry-business'); ?></label>
        	<input class="widefat" id="<?php echo esc_attr($this->get_field_id('email')); ?>" name="<?php echo esc_attr($this->get_field_name('email')); ?>" type="text" value="<?php echo esc_attr($laundry_business_email); ?>">
    	</p>
    	<p>
        	<label for="<?php echo esc_attr($this->get_field_id('address')); ?>"><?php esc_html_e('Address:','laundry-business'); ?></label>
        	<input class="widefat" id="<?php echo esc_attr($this->get_field_id('address')); ?>" name="<?php echo esc_attr($this->get_field_name('address')); ?>" type="text" value="<?php echo esc_attr($laundry_business_address); ?>">
    	</p>
    	<p>
        	<label for="<?php echo esc_attr($this->get_field_id('timing')); ?>"><?php esc_html_e('Opening Time:','laundry-business'); ?></label>
        	<input class="widefat" id="<?php echo esc_attr($this->get_field_id('timing')); ?>" name="<?php echo esc_attr($this->get_field_name('timing')); ?>" type="text" value="<?php echo esc_attr($laundry_business_timing); ?>">
    	</p>
    	<p>
        	<label for="<?php echo esc_attr($this->get_field_id('longitude')); ?>"><?php esc_html_e('Longitude:','laundry-business'); ?></label>
        	<input class="widefat" id="<?php echo esc_attr($this->get_field_id('longitude')); ?>" name="<?php echo esc_attr($this->get_field_name('longitude')); ?>" type="text" value="<?php echo esc_attr($laundry_business_longitude); ?>">
    	</p>
    	<p>
        	<label for="<?php echo esc_attr($this->get_field_id('latitude')); ?>"><?php esc_html_e('Latitude:','laundry-business'); ?></label>
        	<input class="widefat" id="<?php echo esc_attr($this->get_field_id('latitude')); ?>" name="<?php echo esc_attr($this->get_field_name('latitude')); ?>" type="text" value="<?php echo esc_attr($laundry_business_latitude); ?>">
    	</p>
    	<p>
        	<label for="<?php echo esc_attr($this->get_field_id('contact_form')); ?>"><?php esc_html_e('Contact Form Shortcode:','laundry-business'); ?></label>
        	<input class="widefat" id="<?php echo esc_attr($this->get_field_id('contact_form')); ?>" name="<?php echo esc_attr($this->get_field_name('contact_form')); ?>" type="text" value="<?php echo esc_attr($laundry_business_contact_form); ?>">
    	</p>
		
		<?php 
	}
	
	// Updating widget replacing old instances with new
	public function update( $laundry_business_new_instance, $laundry_business_old_instance ) {
		$laundry_business_instance = array();	
		$laundry_business_instance['title'] = (!empty($laundry_business_new_instance['title']) ) ? strip_tags($laundry_business_new_instance['title']) : '';
		$laundry_business_instance['phone'] = (!empty($laundry_business_new_instance['phone']) ) ? laundry_business_sanitize_phone_number($laundry_business_new_instance['phone']) : '';
		$laundry_business_instance['email'] = (!empty($laundry_business_new_instance['email']) ) ? sanitize_email($laundry_business_new_instance['email']) : '';
		$laundry_business_instance['address'] = (!empty($laundry_business_new_instance['address']) ) ? strip_tags($laundry_business_new_instance['address']) : '';
		$laundry_business_instance['timing'] = (!empty($laundry_business_new_instance['timing']) ) ? strip_tags($laundry_business_new_instance['timing']) : '';
		$laundry_business_instance['longitude'] = (!empty($laundry_business_new_instance['longitude']) ) ? strip_tags($laundry_business_new_instance['longitude']) : '';
		$laundry_business_instance['latitude'] = (!empty($laundry_business_new_instance['latitude']) ) ? strip_tags($laundry_business_new_instance['latitude']) : '';
		$laundry_business_instance['contact_form'] = (!empty($laundry_business_new_instance['contact_form']) ) ? strip_tags($laundry_business_new_instance['contact_form']) : '';
        
		return $laundry_business_instance;
	}
}
// Register and load the widget
function laundry_business_contact_custom_load_widget() {
	register_widget( 'Laundry_Business_Contact_Widget' );
}
add_action( 'widgets_init', 'laundry_business_contact_custom_load_widget' );