<?php
/**
 * $Desc
 *
 * @version    $Id$
 * @package    wpbase
 * @author      Team <info@wpopal.com >
 * @copyright  Copyright (C) 2019  wpopal.com. All Rights Reserved.
 * @license    GNU/GPL v2 or later http://www.gnu.org/licenses/gpl-2.0.html
 *
 * @website  http://www.wpopal.com
 * @support  http://www.wpopal.com/questions/
 */

class Opalestate_sammeprice_properties_Widget extends WP_Widget{

    public function __construct() {
         parent::__construct(
            // Base ID of your widget
            'opalestate_samepriceproperties_widget',
            // Widget name will appear in UI
            esc_html__('Estate: Same Price', 'opalestate-pro'),
            // Widget description
            array( 'description' => esc_html__( 'Similar Properties By Same Price with configured range and Status', 'opalestate-pro' ), )
        );
    }

    public function widget(  $instance , $args ) { 
        $default = array(
            'num'   => 5,
            'range_price' => 100,
        );
        $args = array_merge( $default , $args );
        extract( $args );
	    extract( $instance );
        //Check
        $tpl = OPALESTATE_THEMER_WIDGET_TEMPLATES .'widgets/sameprice-properties.php';
        $tpl_default = OPALESTATE_PLUGIN_DIR .'templates/widgets/sameprice-properties.php';

        if(  is_file($tpl) ) {
            $tpl_default = $tpl;
        }
        require $tpl_default;
    }


    // Form

    public function form( $instance ) {
        //Set up some default widget settings.
        $defaults = array(
            'title'         => esc_html__('Same Price', 'opalestate-pro'),
            'num'           => '5',
            'range_price'   => 1000
        );
        $instance = wp_parse_args( (array) $instance, $defaults ); ?>
        <p>
            <label for="<?php echo esc_attr($this->get_field_id( 'title' )); ?>"><?php esc_html_e('Title:', 'opalestate-pro'); ?></label>
            <input type="text" id="<?php echo esc_attr($this->get_field_id( 'title' )); ?>" name="<?php echo esc_attr($this->get_field_name( 'title' )); ?>" value="<?php echo esc_attr($instance['title']); ?>" style="width:100%;" />
        </p>

        <p>
            <label for="<?php echo esc_attr($this->get_field_id('num')); ?>"><?php echo esc_html_e('Limit:', 'opalestate-pro'); ?></label>
            <br>
            <input id="<?php echo esc_attr($this->get_field_id('num')); ?>" name="<?php echo esc_attr($this->get_field_name('num')); ?>" type="text" value="<?php echo esc_attr( $instance['num'] ); ?>" />
        </p>

         <p>
            <label for="<?php echo esc_attr($this->get_field_id('range_price')); ?>"><?php echo esc_html__('Range Price:', 'opalestate-pro'); ?></label>
            <br>
            <input id="<?php echo esc_attr($this->get_field_id('range_price')); ?>" name="<?php echo esc_attr($this->get_field_name('range_price')); ?>" type="text" value="<?php echo esc_attr( $instance['range_price'] ); ?>" />
        </p>

    <?php
    }

    //Update the widget

    public function update( $new_instance, $old_instance ) {
        $instance = $old_instance;
        //Strip tags from title and name to remove HTML
        $instance['title']      = strip_tags( $new_instance['title'] );
        $instance['num'] = $new_instance['num'];
        $instance['range_price'] = $new_instance['range_price'];
        return $instance;
    }

}

register_widget( 'Opalestate_sammeprice_properties_Widget' );

?>