Update hooks & settings
This commit is contained in:
parent
044ef293da
commit
7fe9e71ec0
@ -63,7 +63,8 @@ class Opalestate_Settings_General_Tab extends Opalestate_Settings_Base_Tab {
|
||||
],
|
||||
[
|
||||
'name' => esc_html__( 'Enable Message Database', 'opalestate-pro' ),
|
||||
'desc' => esc_html__( 'Allow User send message Contact/Equire via email and saved into database to exchange theirs message direct in User Message Management', 'opalestate-pro' ),
|
||||
'desc' => esc_html__( 'Allow User send message Contact/Equire via email and saved into database to exchange theirs message direct in User Message Management',
|
||||
'opalestate-pro' ),
|
||||
'id' => 'message_log',
|
||||
'type' => 'switch',
|
||||
'options' => [
|
||||
@ -72,7 +73,7 @@ class Opalestate_Settings_General_Tab extends Opalestate_Settings_Base_Tab {
|
||||
],
|
||||
|
||||
],
|
||||
|
||||
|
||||
[
|
||||
'name' => esc_html__( 'Maximun Upload Image Size', 'opalestate-pro' ),
|
||||
'desc' => esc_html__( 'Set maximun volumn size having < x MB', 'opalestate-pro' ),
|
||||
@ -95,16 +96,16 @@ class Opalestate_Settings_General_Tab extends Opalestate_Settings_Base_Tab {
|
||||
|
||||
'id' => 'upload_other_max_size',
|
||||
'type' => 'text',
|
||||
'default' => '0.8'
|
||||
'default' => '0.8',
|
||||
],
|
||||
[
|
||||
'name' => esc_html__( 'Maximun Upload Other Files', 'opalestate-pro' ),
|
||||
'desc' => esc_html__( 'Set maximun volumn size having < x MB for upload docx, pdf...', 'opalestate-pro' ),
|
||||
|
||||
'id' => 'upload_other_max_files',
|
||||
'type' => 'text',
|
||||
'default' => '10',
|
||||
'after_row' => '<hr>'
|
||||
'id' => 'upload_other_max_files',
|
||||
'type' => 'text',
|
||||
'default' => '10',
|
||||
'after_row' => '<hr>',
|
||||
],
|
||||
[
|
||||
'name' => esc_html__( 'Agent Image Size', 'opalestate-pro' ),
|
||||
@ -147,7 +148,7 @@ class Opalestate_Settings_General_Tab extends Opalestate_Settings_Base_Tab {
|
||||
'type' => 'select',
|
||||
'default' => 'full',
|
||||
'options' => opalestate_get_featured_image_sizes(),
|
||||
'after_row' => '<em>' . esc_html__( 'To generate images with new image sizes, you can use this <a href="https://goo.gl/FuXFex" target="_blank">Force Regenerate Thumbnails</a>',
|
||||
'after_row' => '<em>' . __( 'To generate images with new image sizes, you can use this <a href="https://goo.gl/FuXFex" target="_blank">Force Regenerate Thumbnails</a>',
|
||||
'opalestate-pro' ) . '</em>',
|
||||
],
|
||||
[
|
||||
@ -232,16 +233,11 @@ class Opalestate_Settings_General_Tab extends Opalestate_Settings_Base_Tab {
|
||||
],
|
||||
[
|
||||
'name' => esc_html__( 'Measurement Unit', 'opalestate-pro' ),
|
||||
'desc' => esc_html__( 'Measurement Unit', 'opalestate-pro' ),
|
||||
'desc' => esc_html__( 'Select a measurement unit.', 'opalestate-pro' ),
|
||||
'id' => 'measurement_unit',
|
||||
'type' => 'select',
|
||||
'options' => apply_filters( 'opalestate_measurement_unit', [
|
||||
'sq ft' => esc_html__( 'sq ft', 'opalestate-pro' ),
|
||||
'sq m' => esc_html__( 'sq m', 'opalestate-pro' ),
|
||||
'mq' => esc_html__( 'mq', 'opalestate-pro' ),
|
||||
'm2' => esc_html__( 'm2', 'opalestate-pro' ),
|
||||
] ),
|
||||
'default' => 'sq ft',
|
||||
'options' => opalestate_get_measurement_units(),
|
||||
'default' => 'sqft',
|
||||
],
|
||||
[
|
||||
'name' => esc_html__( 'Google Map API', 'opalestate-pro' ),
|
||||
|
@ -90,7 +90,7 @@ class Opalestate_Install {
|
||||
$options['test_mode'] = 1;
|
||||
$options['currency'] = 'USD';
|
||||
$options['currency_position'] = 'before';
|
||||
$options['measurement_unit'] = 'sq ft';
|
||||
$options['measurement_unit'] = 'sqft';
|
||||
$options['google_map_api_keys'] = 'AIzaSyCfMVNIa7khIqYHCw6VBn8ShUWWm4tjbG8';
|
||||
$options['admin_approve'] = 'on';
|
||||
$options['require_input_price'] = 'on';
|
||||
@ -131,7 +131,6 @@ class Opalestate_Install {
|
||||
$options['enable_submission_tab_facilities'] = 'on';
|
||||
$options['enable_submission_tab_apartments'] = 'on';
|
||||
$options['enable_submission_tab_floor_plans'] = 'on';
|
||||
|
||||
}
|
||||
|
||||
// Checks if the Success Page option exists AND that the page exists
|
||||
@ -140,7 +139,7 @@ class Opalestate_Install {
|
||||
$profile_page = wp_insert_post(
|
||||
[
|
||||
'post_title' => esc_html__( 'User Dashboard Page', 'opalestate-pro' ),
|
||||
'post_content' => esc_html__( '', 'opalestate-pro' ),
|
||||
'post_content' => '',
|
||||
'post_status' => 'publish',
|
||||
'post_author' => 1,
|
||||
'post_type' => 'page',
|
||||
|
@ -1133,3 +1133,17 @@ function opalestate_add_hidden_multilingual() {
|
||||
}
|
||||
|
||||
add_action( 'opalestate_after_search_properties_form', 'opalestate_add_hidden_multilingual' );
|
||||
|
||||
/**
|
||||
* Gets measurement units.
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
function opalestate_get_measurement_units() {
|
||||
return apply_filters( 'opalestate_measurement_unit', [
|
||||
'sqft' => esc_html__( 'sq ft', 'opalestate-pro' ),
|
||||
'sqm' => esc_html__( 'sq m', 'opalestate-pro' ),
|
||||
'mq' => esc_html__( 'mq', 'opalestate-pro' ),
|
||||
'm2' => esc_html__( 'm2', 'opalestate-pro' ),
|
||||
] );
|
||||
}
|
||||
|
@ -293,7 +293,6 @@ class Opalestate_Property_MetaBox {
|
||||
$prefix = OPALESTATE_PROPERTY_PREFIX;
|
||||
|
||||
$fields = [
|
||||
|
||||
[
|
||||
'name' => esc_html__( 'Built year', 'opalestate-pro' ),
|
||||
'id' => $prefix . 'builtyear',
|
||||
@ -302,9 +301,7 @@ class Opalestate_Property_MetaBox {
|
||||
|
||||
'before_row' => '<div class="row-group-features group-has-three group-property-info clearfix"><h3>' . ( is_admin() ? "" : esc_html__( 'Property Information', 'opalestate-pro' ) ) . '</h3>',
|
||||
// callback
|
||||
|
||||
],
|
||||
|
||||
[
|
||||
'name' => esc_html__( 'Parking', 'opalestate-pro' ),
|
||||
'id' => $prefix . 'parking',
|
||||
|
@ -168,11 +168,9 @@ class Opalestate_Property {
|
||||
$fields = Opalestate_Property_MetaBox::metaboxes_info_fields();
|
||||
|
||||
foreach ( $fields as $a => $field ) {
|
||||
|
||||
$id = str_replace( OPALESTATE_PROPERTY_PREFIX, "", $field['id'] );
|
||||
$id = str_replace( OPALESTATE_PROPERTY_PREFIX, '', $field['id'] );
|
||||
|
||||
if ( $field['type'] == 'multicheck' || $field['type'] == 'select' ) {
|
||||
|
||||
$opt_values = (array) get_post_meta( $this->post_id, $field['id'] );
|
||||
if ( ! empty( $opt_values ) && isset( $field['options'] ) ) {
|
||||
$tmp = [];
|
||||
@ -194,7 +192,7 @@ class Opalestate_Property {
|
||||
}
|
||||
}
|
||||
|
||||
return $this->metabox_info;
|
||||
return apply_filters( 'opalestate_property_metabox_info', $this->metabox_info );
|
||||
}
|
||||
|
||||
public function get_id() {
|
||||
@ -240,6 +238,7 @@ class Opalestate_Property {
|
||||
$prop->icon = OPALESTATE_PLUGIN_URL . '/assets/map/market_icon.png';
|
||||
}
|
||||
|
||||
$prop->icon = apply_filters( 'opalestate_prop_icon', $prop->icon );
|
||||
|
||||
$prop->featured = $this->featured;
|
||||
|
||||
@ -281,7 +280,6 @@ class Opalestate_Property {
|
||||
if ( ! empty( $meta ) ) {
|
||||
$fields = $this->get_meta_fullinfo();
|
||||
foreach ( $meta as $key => $value ) {
|
||||
|
||||
if ( isset( $fields[ $value ] ) ) {
|
||||
$output[ $value ] = $fields[ $value ];
|
||||
}
|
||||
@ -446,7 +444,7 @@ class Opalestate_Property {
|
||||
break;
|
||||
}
|
||||
|
||||
$avatar = $data['avatar'] ? $data['avatar'] : opalestate_get_image_avatar_placehold();
|
||||
$avatar = $data['avatar'] ? $data['avatar'] : opalestate_get_image_avatar_placehold();
|
||||
$avatar = '<img class="avatar" src="' . esc_url( $avatar ) . '" alt="' . $data['name'] . '" />';
|
||||
|
||||
return '<a href="' . $data['link'] . '" aria-label="' . $data['name'] . '" class="author-link"><span aria-label="' . $data['name'] . '" class="author-avatar hint--top">' . $avatar . '</span><span class="author-name">' . $data['name'] . '</span></a>';
|
||||
|
@ -1,7 +1,7 @@
|
||||
<?php
|
||||
<?php
|
||||
|
||||
function opalestate_submssion_list_page( $args = [] ) {
|
||||
return opalestate_get_user_management_page_uri( array('tab' => 'submission_list') );
|
||||
return opalestate_get_user_management_page_uri( [ 'tab' => 'submission_list' ] );
|
||||
}
|
||||
|
||||
function opalestate_get_user_management_page_uri( $args = [] ) {
|
||||
@ -24,33 +24,34 @@ function opalestate_get_user_management_page_uri( $args = [] ) {
|
||||
|
||||
function opalestate_get_current_url( $args = [] ) {
|
||||
global $wp;
|
||||
if( isset($_GET['tab']) && $_GET['tab'] ) {
|
||||
$args['tab'] = $_GET['tab'];
|
||||
}
|
||||
if ( isset( $_GET['tab'] ) && $_GET['tab'] ) {
|
||||
$args['tab'] = $_GET['tab'];
|
||||
}
|
||||
$current_url = home_url( add_query_arg( $args, $wp->request ) );
|
||||
|
||||
return $current_url;
|
||||
}
|
||||
|
||||
|
||||
function opalestate_get_user_tab_uri( $tab ) {
|
||||
$args['tab'] = $tab ;
|
||||
$args['tab'] = $tab;
|
||||
|
||||
return opalestate_get_current_url( $args );
|
||||
}
|
||||
|
||||
|
||||
|
||||
function opalestate_management_show_content_page_tab() {
|
||||
|
||||
$tab = isset($_GET['tab']) && $_GET['tab'] ? sanitize_text_field( $_GET['tab'] ): 'dashboard';
|
||||
|
||||
$fnc = 'opalestate_user_content_'.$tab.'_page';
|
||||
$tab = isset( $_GET['tab'] ) && $_GET['tab'] ? sanitize_text_field( $_GET['tab'] ) : 'dashboard';
|
||||
|
||||
$fnc = 'opalestate_user_content_' . $tab . '_page';
|
||||
|
||||
$content = apply_filters( $fnc, '' );
|
||||
|
||||
if( $content ) {
|
||||
if ( $content ) {
|
||||
echo $content;
|
||||
} else {
|
||||
if( function_exists( $fnc ) ) {
|
||||
if ( function_exists( $fnc ) ) {
|
||||
$fnc();
|
||||
} else {
|
||||
opalestate_user_content_dashboard_page();
|
||||
@ -75,45 +76,47 @@ function opalestate_user_savedsearch_page( $args = [] ) {
|
||||
}
|
||||
|
||||
|
||||
function opalestate_my_account_page( $id = false, $args = array() ) {
|
||||
|
||||
function opalestate_my_account_page( $id = false, $args = [] ) {
|
||||
|
||||
$page = get_permalink( opalestate_get_option( 'user_myaccount_page', '/' ) );
|
||||
if ( $id ) {
|
||||
$edit_page_id = opalestate_get_option( 'user_myaccount_page' );
|
||||
$page = $edit_page_id ? get_permalink( $edit_page_id ) : $page;
|
||||
$page = add_query_arg( 'id', $id, $page );
|
||||
}
|
||||
if( $args ){
|
||||
foreach( $args as $key => $value ) {
|
||||
$page = add_query_arg( $key, $value, $page );
|
||||
if ( $args ) {
|
||||
foreach ( $args as $key => $value ) {
|
||||
$page = add_query_arg( $key, $value, $page );
|
||||
}
|
||||
}
|
||||
|
||||
return $page;
|
||||
}
|
||||
|
||||
function opalestate_submssion_page( $id = false, $args = array() ) {
|
||||
function opalestate_submssion_page( $id = false, $args = [] ) {
|
||||
|
||||
|
||||
|
||||
$page = get_permalink( opalestate_get_option( 'submission_page', '/' ) );
|
||||
if ( $id ) {
|
||||
$edit_page_id = opalestate_get_option( 'submission_edit_page' );
|
||||
$page = $edit_page_id ? get_permalink( $edit_page_id ) : $page;
|
||||
$page = add_query_arg( 'id', $id, $page );
|
||||
}
|
||||
if( $args ){
|
||||
foreach( $args as $key => $value ) {
|
||||
$page = add_query_arg( $key, $value, $page );
|
||||
if ( $args ) {
|
||||
foreach ( $args as $key => $value ) {
|
||||
$page = add_query_arg( $key, $value, $page );
|
||||
}
|
||||
}
|
||||
|
||||
return $page;
|
||||
}
|
||||
|
||||
function opalestate_management_user_menu() {
|
||||
function opalestate_management_user_menu() {
|
||||
}
|
||||
|
||||
|
||||
function opalestate_management_user_menu_tabs() {
|
||||
|
||||
|
||||
global $opalestate_options;
|
||||
$menu = [];
|
||||
|
||||
@ -133,29 +136,22 @@ function opalestate_management_user_menu_tabs() {
|
||||
|
||||
$menu['favorite'] = [
|
||||
'icon' => 'fa fa-heart',
|
||||
'link' => 'favorite',
|
||||
'link' => 'favorite',
|
||||
'title' => esc_html__( 'Favorite', 'opalestate-pro' ),
|
||||
'id' => isset( $opalestate_options['favorite_page'] ) ? $opalestate_options['favorite_page'] : 0,
|
||||
];
|
||||
|
||||
$menu['reviews'] = [
|
||||
'icon' => 'fa fa-star',
|
||||
'link' => 'reviews',
|
||||
'link' => 'reviews',
|
||||
'title' => esc_html__( 'Reviews', 'opalestate-pro' ),
|
||||
'id' => isset( $opalestate_options['reviews_page'] ) ? $opalestate_options['reviews_page'] : 0,
|
||||
];
|
||||
|
||||
$menu['reviews'] = [
|
||||
'icon' => 'fa fa-star',
|
||||
'link' => 'reviews',
|
||||
'title' => esc_html__( 'Reviews', 'opalestate-pro' ),
|
||||
'id' => isset( $opalestate_options['reviews_page'] ) ? $opalestate_options['reviews_page'] : 0,
|
||||
];
|
||||
|
||||
if( opalestate_get_option('message_log') ) {
|
||||
if ( opalestate_get_option( 'message_log' ) ) {
|
||||
$menu['messages'] = [
|
||||
'icon' => 'fa fa-envelope',
|
||||
'link' => 'messages',
|
||||
'link' => 'messages',
|
||||
'title' => esc_html__( 'Messages', 'opalestate-pro' ),
|
||||
'id' => isset( $opalestate_options['reviews_page'] ) ? $opalestate_options['reviews_page'] : 0,
|
||||
];
|
||||
@ -186,10 +182,10 @@ function opalestate_management_user_menu_tabs() {
|
||||
$current_tab = isset( $_GET['tab'] ) && $_GET['tab'] ? sanitize_text_field( $_GET['tab'] ) : 'dashboard';
|
||||
|
||||
foreach ( $menu as $key => $item ) {
|
||||
if( preg_match("#http#", $item['link']) ){
|
||||
$link = $item['link'];
|
||||
if ( preg_match( "#http#", $item['link'] ) ) {
|
||||
$link = $item['link'];
|
||||
} else {
|
||||
$link = $uri . '?tab=' . $item['link'];
|
||||
$link = $uri . '?tab=' . $item['link'];
|
||||
}
|
||||
|
||||
$output .= '<li class="account-links-item' . ( $current_tab == $item['link'] ? ' active' : '' ) . '"><a href="' . $link . '"><i class="' . $item['icon'] . '"></i> ' . $item['title'] . '</a></li>';
|
||||
@ -202,7 +198,7 @@ function opalestate_management_user_menu_tabs() {
|
||||
echo $output;
|
||||
}
|
||||
|
||||
function opalestate_user_content_dashboard_page(){
|
||||
function opalestate_user_content_dashboard_page() {
|
||||
echo opalestate_load_template_path( 'user/dashboard' );
|
||||
}
|
||||
|
||||
@ -259,5 +255,5 @@ if ( ! function_exists( 'opalestate_create_user' ) ) {
|
||||
return $user_id;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
?>
|
||||
|
@ -12,7 +12,8 @@ Opal Real Estate Plugin is an ideal solution and brilliant choice for you to set
|
||||
|
||||
== Description ==
|
||||
|
||||
Whether you want to create a website for your real estate business and you are meeting difficulties to pick a suitable real estate plugin to install in your property site. Opal real estate plugin Pro will be your best choice to help you control your site in a perfect way.
|
||||
Whether you want to create a website for your real estate business and you are meeting difficulties to pick a suitable real estate plugin to install in your property site. Opal Estate Pro plugin will
|
||||
be your best choice to help you control your site in a perfect way.
|
||||
|
||||
The plugin will not make you disappointed with ease of use, friendly & flexible with users, high advanced functions and a range of powerful feature updated insight. They are created for selling, buying or renting an apartment, villa, house, flat, etc. Scroll down to see how awesome it is!
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user