Origin commit

This commit is contained in:
Hoang Huu
2019-09-10 11:27:33 +07:00
commit 499e068e4f
844 changed files with 188705 additions and 0 deletions

View File

@@ -0,0 +1,12 @@
<?php
$layout = 'collapse-city';
$settings = array();
?>
<div class="opalestate-archive-search-block">
<div class="container">
<div class="search-properies-form">
<?php echo opalestate_load_template_path( 'search-box/'.$layout , $settings ); ?>
</div>
</div>
</div>

View File

@@ -0,0 +1,17 @@
<?php global $wp_query; ?>
<div class="opalesate-archive-top"><div class="<?php echo apply_filters('opalestate_row_container_class', 'opal-row');?>">
<div class="col-lg-6 col-md-6 col-sm-6">
<div class="opalestate-results">
<?php if( $wp_query->found_posts ): ?>
<span><?php echo sprintf( esc_html__( 'Found %s Properties', 'opalestate-pro' ) , $wp_query->found_posts ); ?></span>
<?php endif; ?>
</div>
</div>
<div class="col-lg-6 col-md-6 col-sm-6 text-right">
<div class="opalestate-sortable">
<?php echo opalestate_render_sortable_dropdown(); ?>
</div>
<?php opalestate_show_display_modes(); ?>
</div>
</div></div>

View File

@@ -0,0 +1,29 @@
<?php
$selected = '';
$mode = isset($mode)?$mode:'';
?>
<div class="opalesate-archive-top">
<div class="<?php echo apply_filters('opalestate_row_container_class', 'opal-row');?>">
<div class="col-lg-8 col-md-7 col-sm-6">
<?php opalestate_show_display_status();
?>
</div>
<div class="col-lg-4 col-md-5 col-sm-6 space-margin-top-10p">
<div class="opalestate-sortable pull-right">
<?php echo opalestate_render_sortable_dropdown( $selected ); ?>
</div>
<div class="pull-right">
<?php opalestate_show_display_modes( $mode ); ?>
</div>
</div>
</div>
</div>

View File

@@ -0,0 +1,9 @@
<?php
global $property;
if ( ! $property->is_featured() ) {
return;
}
?>
<span class="label-featured label"><?php esc_html_e( 'Featured', 'opalestate-pro' ); ?></span>

View File

@@ -0,0 +1,5 @@
<div class="opal-has-warning">
<p class="warning warning-danger">
<?php esc_html_e( 'Hi! you could not edit/create a property at this time, you have not permission to do.', 'opalestate-pro' ); ?>
<p>
</div>

View File

@@ -0,0 +1,27 @@
<?php
$package_id = get_the_ID();
$pack_listings = get_post_meta( $package_id, OPALMEMBERSHIP_PACKAGES_PREFIX.'package_listings', true );
$pack_featured_listings = get_post_meta( $package_id, OPALMEMBERSHIP_PACKAGES_PREFIX.'package_featured_listings', true );
$pack_unlimited_listings = get_post_meta( $package_id, OPALMEMBERSHIP_PACKAGES_PREFIX.'unlimited_listings', true );
$unlimited_listings = $pack_unlimited_listings == 'on' ? 0 : 1;
?>
<div class="pricing-more-info">
<div class="item-info">
<span>
<?php if( !empty($pack_listings) && $unlimited_listings == 0 ): ?>
<?php echo trim( $pack_listings); ?><?php esc_html_e( ' Listings' , 'opalestate-pro' );?>
<?php else: ?>
<?php esc_html_e('Unlimited', 'opalestate-pro');?><?php esc_html_e( ' Listings' , 'opalestate-pro' );?>
<?php endif; ?>
</span>
</div>
<div class="item-info">
<span>
<?php if( !empty($pack_featured_listings) && $unlimited_listings == 0 ): ?>
<?php echo trim( $pack_featured_listings); ?><?php esc_html_e( ' Featured' , 'opalestate-pro' );?>
<?php else: ?>
<?php esc_html_e('Unlimited', 'opalestate-pro');?><?php esc_html_e( ' Featured' , 'opalestate-pro' );?>
<?php endif; ?>
</span>
</div>
</div>

View File

@@ -0,0 +1,6 @@
<?php if( !opalesate_check_has_add_listing( $user_id ) ): ?>
<div class="alert alert-warning">
<p><?php esc_html_e( 'Your package has 0 left listing, you could not add any more. Please upgrade now', 'opalestate-pro' );?></p>
<p><a href="<?php echo opalmembership_get_membership_page_uri();?>" class="btn btn-primary"><?php esc_html_e( 'Click to this link to see plans', 'opalestate-pro' );?></a></p>
</div>
<?php endif; ?>

View File

@@ -0,0 +1,39 @@
<?php
$_id = 'posts-block-' . rand( 1, 9 );
$item = apply_filters( 'opalesate_carousel_property_column', 3, isset( $args ) ? $args : [] );
$data = [
'slidesPerView' => $item,
'spaceBetween' => 30,
'slidesPerGroup' => $item,
'loop' => false,
];
$template_style = isset( $args['style'] ) && $args['style'] ? sanitize_text_field( $args['style'] ) : 'content-property-grid';
?>
<div class="opalestate-box-content opalesate-related-properties">
<h4 class="outbox-title"><?php echo esc_html( $heading ); ?></h4>
<div class="opalesate-archive-bottom opalestate-rows">
<?php if ( $query->have_posts() ) : ?>
<div class="opalestate-swiper-play swiper-container" id="postcarousel-<?php echo esc_attr( $_id ); ?>" data-swiper="<?php echo esc_attr( wp_json_encode( $data ) ); ?>">
<div class="swiper-wrapper">
<?php
$column = isset( $column ) ? $column : apply_filters( 'opalestate_properties_column_row', 3 );
$clscol = floor( 12 / $column );
while ( $query->have_posts() ) : $query->the_post(); ?>
<div class="swiper-slide">
<?php echo opalestate_load_template_path( $template_style, null, $style ); ?>
</div>
<?php endwhile; ?>
</div>
<?php if ( absint( $query->post_count ) > absint( $item ) ) : ?>
<div class="swiper-pagination"></div>
<div class="swiper-button-prev"></div>
<div class="swiper-button-next"></div>
<?php endif; ?>
</div>
<?php else: ?>
<?php echo opalestate_load_template_path( 'content-no-results' ); ?>
<?php endif; ?>
</div>
</div>

View File

@@ -0,0 +1,180 @@
<?php
/**
* Mortgage widget template.
*
* @version 1.0.0
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
global $property;
$currency = opalestate_currency_symbol();
wp_enqueue_script( 'opalestate-mortgage-calculator', OPALESTATE_PLUGIN_URL . 'assets/js/mortgage.js', [ 'jquery' ], OPALESTATE_VERSION, true );
wp_enqueue_style( 'opalestate-mortgage-calculator', OPALESTATE_PLUGIN_URL . 'assets/mortgage.css', [], OPALESTATE_VERSION );
wp_localize_script( 'opalestate-scripts', 'opalestate_mortgage',
[
'ajax_url' => admin_url( 'admin-ajax.php' ),
'currency' => esc_attr__( $currency ),
'loan_amount_text' => esc_html__( 'Loan Amount', 'opalestate-pro' ),
'your_payment_text' => esc_html__( 'Your payment', 'opalestate-pro' ),
]
);
$max_price = intval( $property && $property->get_price() ) ? $property->get_price() : opalestate_options( 'search_max_price', 10000000 );
$max_price = str_replace( ",", "", $max_price );
$max_price = str_replace( ".", "", $max_price );
$start_price = $max_price;
$max_price = $max_price + ( $max_price * 20 / 100 );
$rate_start = 10;
$interest_rate_start = $rate_start / 100;
$years_start = 2;
$deposit_start = $max_price / 2;
$loan_amount = $max_price - $deposit_start;
$interest_rate_month = $interest_rate_start / 12;
$number_of_payments_month = $years_start * 12;
$monthly = round( ( $loan_amount * $interest_rate_month ) / ( 1 - pow( 1 + $interest_rate_month, -$number_of_payments_month ) ), 2 );
$total = $deposit_start + ( $monthly * $number_of_payments_month );
$price_percent = $loan_amount / $total * 100;
$deposit_percent = $deposit_start / $total * 100;
$deposit_color = apply_filters( 'opalestate_deposit_color', '#2f73e9' );
$data_sale_price = [
'id' => 'sale_price',
'decimals' => opalestate_get_price_decimals(),
'unit' => $currency,
'ranger_min' => 0,
'ranger_max' => $max_price,
'input_min' => 0,
'input_max' => $max_price,
'mode' => 1,
'start' => $start_price,
];
$data_deposit = [
'id' => 'deposit',
'decimals' => opalestate_get_price_decimals(),
'unit' => $currency,
'ranger_min' => 0,
'ranger_max' => $max_price,
'input_min' => 0,
'input_max' => $max_price,
'mode' => 1,
'start' => $deposit_start,
];
$data_interest_rate = [
'id' => 'interest_rate',
'unit' => '%',
'ranger_min' => 0,
'ranger_max' => 100,
'input_min' => 0,
'input_max' => 100,
'mode' => 1,
'start' => $rate_start,
];
$data_years = [
'id' => 'years',
'ranger_min' => 0,
'ranger_max' => 30,
'input_min' => 0,
'input_max' => 30,
'mode' => 1,
'start' => $years_start,
];
if ( opalestate_options( 'currency_position', 'before' ) == 'before' ) {
$data_sale_price['unit_position'] = 'prefix';
$data_deposit['unit_position'] = 'prefix';
}
?>
<div class="opalestate-box-content box-mortgage">
<h4 class="outbox-title"><?php esc_html_e( 'Mortgage Payment Calculator', 'opalestate-pro' ); ?></h4>
<div class="opalestate-box">
<div class="opalestate-mortgage-widget-wrap">
<form class="opalestate-mortgage-form">
<div class="opalestate-mortgage-chart-container">
<div class="opalestate-mortgage-chart">
<div class="opalestate-mortgage-chart-svg">
<svg viewBox="0 0 64 64" class="pie">
<circle r="25%" cx="50%" cy="50%" style="stroke-dasharray: <?php echo esc_attr( $price_percent ); ?> 100">
</circle>
<circle r="25%" cx="50%" cy="50%" style="stroke-dasharray: <?php echo esc_attr( $deposit_percent ); ?> 100; stroke: <?php echo esc_attr( $deposit_color ); ?>; stroke-dashoffset:
-<?php echo esc_attr( $price_percent ); ?>; animation-delay: 0.25s">
</circle>
</svg>
</div>
</div>
<div class="opalestate-mortgage-chart-desc">
<div class="opalestate-mortgage-chart-results">
<div class="opalestate-mortgage-output">
<div class='opalestate-mortgage-output-item opalestate-monthly'>
<label> <?php esc_html_e( 'Your payment', 'opalestate-pro' ); ?></label>
<span class="opalestate-monthly-value">
<?php echo esc_html( $currency ); ?><?php echo esc_html( $monthly ); ?>
</span> /
<small><?php esc_html_e( 'month', 'opalestate-pro' ); ?></small>
</div>
<div class='opalestate-mortgage-output-item opalestate-loan-amount'>
<label><?php esc_html_e( 'Loan Amount', 'opalestate-pro' ); ?></label>
<span class="opalestate-loan-amount-value">
<?php echo esc_html( $currency ); ?><?php echo esc_html( $loan_amount ); ?>
</span>
</div>
<div class="opalestate-mortgage-chart-notice">
<ul>
<li><span style="background-color:#02ce76;"></span><?php esc_html_e( 'Your price', 'opalestate-pro' ); ?></li>
<li><span style="background-color:<?php echo esc_attr( $deposit_color ); ?>;"></span><?php esc_html_e( 'Your deposit', 'opalestate-pro' ); ?></li>
<li><span style="background-color:#f06;"></span><?php esc_html_e( 'Your interest', 'opalestate-pro' ); ?></li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="opalestate-mortgage-form-inputs">
<div class="form-group opalestate-mortgage-item">
<div class="opalestate-mortgage-label">
<?php opalesate_property_slide_ranger_template( esc_html__( 'Sale Price', 'opalestate-pro' ), $data_sale_price ); ?>
</div>
</div>
<div class="form-group opalestate-mortgage-item">
<div class="opalestate-mortgage-label">
<?php opalesate_property_slide_ranger_template( esc_html__( 'Deposit', 'opalestate-pro' ), $data_deposit ); ?>
</div>
</div>
<div class="form-group opalestate-mortgage-item">
<div class="opalestate-mortgage-label">
<?php opalesate_property_slide_ranger_template( esc_html__( 'Annual Interest', 'opalestate-pro' ), $data_interest_rate ); ?>
</div>
</div>
<div class="form-group opalestate-mortgage-item">
<div class="opalestate-mortgage-label">
<?php opalesate_property_slide_ranger_template( esc_html__( 'Years', 'opalestate-pro' ), $data_years ); ?>
</div>
</div>
<div class="mortgage-notes">
<span><?php esc_html_e( 'All calculation are based on tentative and estimated figure and shall not replace any financial advice', 'opalestate-pro' ); ?></span>
</div>
</div>
</form>
</div>
</div>
</div>

View File

@@ -0,0 +1,9 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
?>
<div class="alert alert-warning">
<?php echo esc_html__( 'You are not allowed to access this page.', 'opalestate-pro' ); ?>
</div>

23
templates/parts/pagination.php Executable file
View File

@@ -0,0 +1,23 @@
<?php
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
global $wp_query;
if ( $wp_query->max_num_pages <= 1 ) {
return;
}
$args = apply_filters( 'opalestate_pagination_args', [
'prev_text' => __( '&laquo;' ),
'next_text' => __( '&raquo;' ),
'type' => 'list',
] );
?>
<nav class="opalestate-pagination">
<?php print paginate_links( $args ); // WPCS: xss ok. ?>
</nav>

View File

@@ -0,0 +1,6 @@
<?php
global $property;
echo get_the_term_list( $property->get_id(), 'property_category', '<div class="property-categories-list"><span class="property-categories-list__label">' . esc_html__( 'Categories:', 'opalestate-pro'
) .
'</span>', ', ', '</div>' );

View File

@@ -0,0 +1,19 @@
<?php
global $property;
opalestate_property_featured_label();
$labels = $property->get_labels();
if ( is_wp_error( $labels ) || ! $labels ) {
return;
}
?>
<ul class="property-label">
<?php foreach ( $labels as $key => $value ) : ?>
<li class="property-label-item property-label-<?php echo esc_attr( $value->slug ); ?>">
<span class="label-label label"><?php echo esc_html( $value->name ); ?></span>
</li>
<?php endforeach; ?>
</ul>

View File

@@ -0,0 +1,36 @@
<?php
/**
* Price HTML.
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
global $property;
?>
<div class="property-price">
<?php if ( 'on' == $property->get_price_oncall() ): ?>
<div class="call-to-price"><?php esc_html_e( 'Call to Price', 'opalestate-pro' ); ?></div>
<?php elseif ( $property->get_price() ): ?>
<?php if ( $property->get_before_price_label() ): ?>
<span class="property-before-price-label"><?php echo esc_html( $property->get_before_price_label() ); ?></span>
<?php endif; ?>
<?php if ( $property->get_sale_price() ): ?>
<span class="property-regular-price has-saleprice">
<del><?php echo opalestate_price_format( $property->get_price() ); ?></del>
</span>
<span class="property-saleprice"><?php echo opalestate_price_format( $property->get_sale_price() ); ?></span>
<?php else : ?>
<span class="property-regular-price"><?php echo opalestate_price_format( $property->get_price() ); ?></span>
<?php endif; ?>
<?php if ( $property->get_price_label() ): ?>
<span class="property-price-label"><?php echo esc_html( $property->get_price_label() ); ?></span>
<?php endif; ?>
<?php else: ?>
<div class="property-no-price"><?php esc_html_e( 'Contact Property', 'opalestate-pro' ); ?></div>
<?php endif; ?>
</div>

View File

@@ -0,0 +1,33 @@
<?php
/**
* Short meta HTML.
*/
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
global $property;
$meta_content = apply_filters( 'opalestate_loop_meta_info', '' );
if ( empty( $meta_content ) ) {
$meta = $property->get_meta_shortinfo();
?>
<div class="property-meta">
<ul class="property-meta-list list-inline">
<?php if ( $meta ) : ?>
<?php foreach ( $meta as $key => $info ) : ?>
<?php if ( trim( $info['value'] ) ) : ?>
<li class="property-label-<?php echo esc_attr( $key ); ?>" title="<?php echo esc_attr( $info['label'] ); ?>">
<span class="hint--top" aria-label="<?php echo esc_attr( $info['label'] ); ?>" title="<?php echo esc_attr( $info['label'] ); ?>"><i class="icon-property-<?php echo esc_attr( $key ); ?>"></i></span>
<span class="label-property"><?php echo esc_html( $info['label'] ); ?></span>
<span class="label-content"><?php echo apply_filters( 'opalestate-pro' . $key . '_unit_format', trim( $info['value'] ) ); ?></span>
</li>
<?php endif; ?>
<?php endforeach; ?>
<?php endif; ?>
</ul>
</div>
<?php
} else {
echo wp_kses_post( $meta_content );
}

View File

@@ -0,0 +1,16 @@
<?php
global $property;
$statuses = $property->get_status();
if ( is_wp_error( $statuses ) || ! $statuses ) {
return;
}
?>
<ul class="property-status">
<?php foreach ( $statuses as $key => $value ) : ?>
<li class="property-status-item property-status-<?php echo esc_attr( $value->slug ); ?>">
<span class="label-status label"><?php echo esc_html( $value->name ); ?></span>
</li>
<?php endforeach; ?>
</ul>

View File

@@ -0,0 +1,5 @@
<?php
global $property;
echo get_the_term_list( $property->get_id(), 'opalestate_types', '<div class="property-types-list"><span class="property-types-list__label">' . esc_html__( 'Types:', 'opalestate-pro' ) . '</span>',
', ', '</div>' );

View File

@@ -0,0 +1,44 @@
<?php
$fields = OpalEstate_Search::get_setting_search_fields();
$stypes = isset($_GET['types'])? sanitize_text_field( $_GET['types'] ) : -1;
if( isset($current_uri) && $current_uri == true ) {
$uri = opalestate_get_current_uri();
} else {
$uri = opalestate_search_agent_uri();
}
?>
<form id="opalestate-search-agency-form" class="opalestate-search-agency-form opalestate-search-form" action="<?php echo esc_attr( $uri ); ?>" method="get">
<div class="<?php echo apply_filters('opalestate_row_container_class', 'opal-row');?>">
<div class="col-lg-6 col-md-6 col-sm-12">
<p class="search-agent-title"><?php esc_html_e( 'Find an experienced agent with:' ,'opalestate-pro'); ?></p>
</div>
<div class="col-lg-6 col-md-6 hidden-sm hidden-xs">
<p class="search-agent-title hide"><?php esc_html_e( 'Who sale between:' ,'opalestate-pro'); ?></p>
</div>
</div>
<div class="<?php echo apply_filters('opalestate_row_container_class', 'opal-row');?>">
<div class="col-lg-7 col-md-3 col-sm-7">
<?php echo opalestate_load_template_path( 'search-box/fields/search-city-text' ); ?>
</div>
<div class="col-lg-3 col-md-3 col-sm-3">
<?php Opalestate_Taxonomy_Type::dropdown_list( $stypes ); ?>
</div>
<div class="col-lg-2 col-md-2 col-sm-2">
<input type="hidden" name="s_agency" value="1">
<button type="submit" class="btn btn-secondary btn-block btn-search btn-3d">
<i class="fa fa-search"></i>
<span><?php esc_html_e('Search','opalestate-pro'); ?></span>
</button>
</div>
</div>
</form>

View File

@@ -0,0 +1,32 @@
<?php
$fields = OpalEstate_Search::get_setting_search_fields();
$slocation = isset($_GET['location'])? sanitize_text_field( $_GET['location'] ): opalestate_get_session_location_val();
$search_text = isset($_GET['search_text'])? sanitize_text_field( $_GET['search_text'] ):'';
if( isset($current_uri) && $current_uri == true ) {
$uri = opalestate_get_current_uri();
} else {
$uri = opalestate_search_agency_uri();
}
?>
<form id="opalestate-search-agency-form" class="opalestate-search-agency-form opalestate-search-form" action="<?php echo esc_url( $uri ); ?>" method="get">
<div class="<?php echo apply_filters('opalestate_row_container_class', 'opal-row');?>">
<div class="col-lg-4 col-md-4 col-sm-4">
<?php Opalestate_Taxonomy_Location::dropdown_list( $slocation );?>
</div>
<div class="col-lg-6 col-md-6 col-sm-6">
<label class="opalestate-label opalestate-label--geo-location"><?php esc_html_e( 'Agency', 'opalestate-pro' ); ?></label>
<input name="search_text" value="<?php echo esc_attr($search_text); ?>" maxlength="40" class="form-control input-large input-search" size="20" placeholder="<?php esc_html_e( 'Enter Agency Name', 'opalestate-pro' ); ?>" type="text">
</div>
<div class="col-lg-2 col-md-2 col-sm-2">
<input type="hidden" name="s_agency" value="1">
<button type="submit" class="btn btn-secondary btn-block btn-search btn-3d">
<i class="fa fa-search"></i>
<span><?php esc_html_e('Search','opalestate-pro'); ?></span>
</button>
</div>
</div>
</form>

View File

@@ -0,0 +1,40 @@
<?php
$stypes = isset($_GET['types'])? sanitize_text_field( $_GET['types'] ):-1;
if( isset($current_uri) && $current_uri == true ) {
$uri = opalestate_get_current_uri();
} else {
$uri = opalestate_search_agent_uri();
}
?>
<form id="opalestate-search-agents-form" class="opalestate-search-agents-form opalestate-search-form" action="<?php echo esc_url( $uri ); ?>" method="get">
<div class="<?php echo apply_filters('opalestate_row_container_class', 'opal-row');?>">
<div class="col-lg-6 col-md-6 col-sm-12">
<p class="search-agent-title"><?php esc_html_e( 'Find an experienced agent with:' ,'opalestate-pro'); ?></p>
</div>
<div class="col-lg-6 col-md-6 hidden-sm hidden-xs">
<p class="search-agent-title hide"><?php esc_html_e( 'Who sale between:' ,'opalestate-pro'); ?></p>
</div>
</div>
<div class="<?php echo apply_filters('opalestate_row_container_class', 'opal-row');?>">
<div class="col-lg-7 col-md-3 col-sm-7">
<?php echo opalestate_load_template_path( 'search-box/fields/search-city-text' ); ?>
</div>
<div class="col-lg-3 col-md-3 col-sm-3">
<?php Opalestate_Taxonomy_Type::dropdown_list( $stypes ); ?>
</div>
<div class="col-lg-2 col-md-2 col-sm-2">
<input type="hidden" name="s_agents" value="1">
<button type="submit" class="btn btn-secondary btn-block btn-search btn-3d">
<i class="fa fa-search"></i>
<span><?php esc_html_e('Search','opalestate-pro'); ?></span>
</button>
</div>
</div>
</form>

View File

@@ -0,0 +1,59 @@
<?php
$fields = OpalEstate_Search::get_setting_search_fields();
$slocation = isset($_GET['location'])?$_GET['location']: opalestate_get_session_location_val();
$stypes = isset($_GET['types'])?$_GET['types']:-1;
$sstatus = isset($_GET['status'])?$_GET['status']:-1;
$search_min_price = isset($_GET['min_price']) ? $_GET['min_price'] : opalestate_options( 'search_agent_min_price',0 );
$search_max_price = isset($_GET['max_price']) ? $_GET['max_price'] : opalestate_options( 'search_agent_max_price',10000000 );
if( isset($current_uri) && $current_uri == true ) {
$uri = opalestate_get_current_uri();
} else {
$uri = opalestate_search_agent_uri();
}
?>
<form id="opalestate-search-agents-form" class="opalestate-search-agents-form opalestate-search-form" action="<?php echo esc_url( $uri ); ?>" method="get">
<div class="<?php echo apply_filters('opalestate_row_container_class', 'opal-row');?>">
<div class="col-lg-6 col-md-6 col-sm-12">
<p class="search-agent-title"><?php esc_html_e( 'Find an experienced agent with:' ,'opalestate-pro'); ?></p>
</div>
<div class="col-lg-6 col-md-6 hidden-sm hidden-xs">
<p class="search-agent-title hide"><?php esc_html_e( 'Who sale between:' ,'opalestate-pro'); ?></p>
</div>
</div>
<div class="<?php echo apply_filters('opalestate_row_container_class', 'opal-row');?>">
<div class="col-lg-3 col-md-3 col-sm-3">
<?php Opalestate_Taxonomy_Location::dropdown_list( $slocation );?>
</div>
<div class="col-lg-3 col-md-3 col-sm-3">
<?php Opalestate_Taxonomy_Type::dropdown_list( $stypes ); ?>
</div>
<div class="col-lg-4 col-md-4 col-sm-4">
<?php
$data = array(
'id' => 'price',
'unit' => '$ ',
'ranger_min' => opalestate_options( 'search_agent_min_price',0 ),
'ranger_max' => opalestate_options( 'search_agent_max_price',10000000 ),
'input_min' => $search_min_price,
'input_max' => $search_max_price
);
opalesate_property_slide_ranger_template( esc_html__("Price:",'opalestate-pro'), $data );
?>
</div>
<div class="col-lg-2 col-md-2 col-sm-2">
<input type="hidden" name="s_agents" value="1">
<button type="submit" class="btn btn-secondary btn-block btn-search btn-3d">
<i class="fa fa-search"></i>
<span><?php esc_html_e('Search','opalestate-pro'); ?></span>
</button>
</div>
</div>
</form>