Test Failed
Push — master ( c4c7aa...3e3ca1 )
by Stiofan
17:48 queued 15s
created
geodirectory-functions/custom_fields_functions.php 1 patch
Indentation   +2288 added lines, -2288 removed lines patch added patch discarded remove patch
@@ -10,52 +10,52 @@  discard block
 block discarded – undo
10 10
 global $wpdb, $table_prefix;
11 11
 
12 12
 if (!function_exists('geodir_column_exist')) {
13
-    /**
14
-     * Check table column exist or not.
15
-     *
16
-     * @since 1.0.0
17
-     * @package GeoDirectory
18
-     * @global object $wpdb WordPress Database object.
19
-     * @param string $db The table name.
20
-     * @param string $column The column name.
21
-     * @return bool If column exists returns true. Otherwise false.
22
-     */
23
-    function geodir_column_exist($db, $column)
24
-    {
25
-        global $wpdb;
26
-        $exists = false;
27
-        $columns = $wpdb->get_col("show columns from $db");
28
-        foreach ($columns as $c) {
29
-            if ($c == $column) {
30
-                $exists = true;
31
-                break;
32
-            }
33
-        }
34
-        return $exists;
35
-    }
13
+	/**
14
+	 * Check table column exist or not.
15
+	 *
16
+	 * @since 1.0.0
17
+	 * @package GeoDirectory
18
+	 * @global object $wpdb WordPress Database object.
19
+	 * @param string $db The table name.
20
+	 * @param string $column The column name.
21
+	 * @return bool If column exists returns true. Otherwise false.
22
+	 */
23
+	function geodir_column_exist($db, $column)
24
+	{
25
+		global $wpdb;
26
+		$exists = false;
27
+		$columns = $wpdb->get_col("show columns from $db");
28
+		foreach ($columns as $c) {
29
+			if ($c == $column) {
30
+				$exists = true;
31
+				break;
32
+			}
33
+		}
34
+		return $exists;
35
+	}
36 36
 }
37 37
 
38 38
 if (!function_exists('geodir_add_column_if_not_exist')) {
39
-    /**
40
-     * Add column if table column not exist.
41
-     *
42
-     * @since 1.0.0
43
-     * @package GeoDirectory
44
-     * @global object $wpdb WordPress Database object.
45
-     * @param string $db The table name.
46
-     * @param string $column The column name.
47
-     * @param string $column_attr The column attributes.
48
-     */
49
-    function geodir_add_column_if_not_exist($db, $column, $column_attr = "VARCHAR( 255 ) NOT NULL")
50
-    {
51
-        global $wpdb;
52
-        $result = 0;// no rows affected
53
-        if (!geodir_column_exist($db, $column)) {
54
-            if (!empty($db) && !empty($column))
55
-                $result = $wpdb->query("ALTER TABLE `$db` ADD `$column`  $column_attr");
56
-        }
57
-        return $result;
58
-    }
39
+	/**
40
+	 * Add column if table column not exist.
41
+	 *
42
+	 * @since 1.0.0
43
+	 * @package GeoDirectory
44
+	 * @global object $wpdb WordPress Database object.
45
+	 * @param string $db The table name.
46
+	 * @param string $column The column name.
47
+	 * @param string $column_attr The column attributes.
48
+	 */
49
+	function geodir_add_column_if_not_exist($db, $column, $column_attr = "VARCHAR( 255 ) NOT NULL")
50
+	{
51
+		global $wpdb;
52
+		$result = 0;// no rows affected
53
+		if (!geodir_column_exist($db, $column)) {
54
+			if (!empty($db) && !empty($column))
55
+				$result = $wpdb->query("ALTER TABLE `$db` ADD `$column`  $column_attr");
56
+		}
57
+		return $result;
58
+	}
59 59
 }
60 60
 
61 61
 /**
@@ -72,716 +72,716 @@  discard block
 block discarded – undo
72 72
  */
73 73
 function geodir_post_custom_fields($package_id = '', $default = 'all', $post_type = 'gd_place', $fields_location = 'none')
74 74
 {
75
-    global $wpdb, $geodir_post_custom_fields_cache;
76
-
77
-    $cache_stored = $post_type . '_' . $package_id . '_' . $default . '_' . $fields_location;
78
-
79
-    if (array_key_exists($cache_stored, $geodir_post_custom_fields_cache)) {
80
-        return $geodir_post_custom_fields_cache[$cache_stored];
81
-    }
82
-
83
-    $default_query = '';
84
-
85
-    if ($default == 'default')
86
-        $default_query .= " and is_admin IN ('1') ";
87
-    elseif ($default == 'custom')
88
-        $default_query .= " and is_admin = '0' ";
89
-
90
-    if ($fields_location == 'none') {
91
-    } else{
92
-        $fields_location = esc_sql( $fields_location );
93
-        $default_query .= " and show_in LIKE '%%[$fields_location]%%' ";
94
-    }
95
-
96
-    $post_meta_info = $wpdb->get_results(
97
-        $wpdb->prepare(
98
-            "select * from " . GEODIR_CUSTOM_FIELDS_TABLE . " where is_active = '1' and post_type = %s {$default_query} order by sort_order asc,admin_title asc",
99
-            array($post_type)
100
-        )
101
-    );
102
-
103
-
104
-    $return_arr = array();
105
-    if ($post_meta_info) {
106
-
107
-        foreach ($post_meta_info as $post_meta_info_obj) {
108
-
109
-            $custom_fields = array(
110
-                "name" => $post_meta_info_obj->htmlvar_name,
111
-                "label" => $post_meta_info_obj->clabels,
112
-                "default" => $post_meta_info_obj->default_value,
113
-                "type" => $post_meta_info_obj->field_type,
114
-                "desc" => $post_meta_info_obj->admin_desc);
115
-
116
-            if ($post_meta_info_obj->field_type) {
117
-                $options = explode(',', $post_meta_info_obj->option_values);
118
-                $custom_fields["options"] = $options;
119
-            }
120
-
121
-            foreach ($post_meta_info_obj as $key => $val) {
122
-                $custom_fields[$key] = $val;
123
-            }
124
-
125
-            $pricearr = array();
126
-            $pricearr = explode(',', $post_meta_info_obj->packages);
127
-
128
-            if ($package_id != '' && in_array($package_id, $pricearr)) {
129
-                $return_arr[$post_meta_info_obj->sort_order] = $custom_fields;
130
-            } elseif ($package_id == '') {
131
-                $return_arr[$post_meta_info_obj->sort_order] = $custom_fields;
132
-            }
133
-        }
134
-    }
135
-    $geodir_post_custom_fields_cache[$cache_stored] = $return_arr;
136
-
137
-    if (has_filter('geodir_filter_geodir_post_custom_fields')) {
138
-        /**
139
-         * Filter the post custom fields array.
140
-         *
141
-         * @since 1.0.0
142
-         *
143
-         * @param array $return_arr Post custom fields array.
144
-         * @param int|string $package_id The package ID.
145
-         * @param string $post_type Optional. The wordpress post type.
146
-         * @param string $fields_location Optional. Where exactly are you going to place this custom fields?.
147
-         */
148
-        $return_arr = apply_filters('geodir_filter_geodir_post_custom_fields', $return_arr, $package_id, $post_type, $fields_location);
149
-    }
150
-
151
-    return $return_arr;
75
+	global $wpdb, $geodir_post_custom_fields_cache;
76
+
77
+	$cache_stored = $post_type . '_' . $package_id . '_' . $default . '_' . $fields_location;
78
+
79
+	if (array_key_exists($cache_stored, $geodir_post_custom_fields_cache)) {
80
+		return $geodir_post_custom_fields_cache[$cache_stored];
81
+	}
82
+
83
+	$default_query = '';
84
+
85
+	if ($default == 'default')
86
+		$default_query .= " and is_admin IN ('1') ";
87
+	elseif ($default == 'custom')
88
+		$default_query .= " and is_admin = '0' ";
89
+
90
+	if ($fields_location == 'none') {
91
+	} else{
92
+		$fields_location = esc_sql( $fields_location );
93
+		$default_query .= " and show_in LIKE '%%[$fields_location]%%' ";
94
+	}
95
+
96
+	$post_meta_info = $wpdb->get_results(
97
+		$wpdb->prepare(
98
+			"select * from " . GEODIR_CUSTOM_FIELDS_TABLE . " where is_active = '1' and post_type = %s {$default_query} order by sort_order asc,admin_title asc",
99
+			array($post_type)
100
+		)
101
+	);
102
+
103
+
104
+	$return_arr = array();
105
+	if ($post_meta_info) {
106
+
107
+		foreach ($post_meta_info as $post_meta_info_obj) {
108
+
109
+			$custom_fields = array(
110
+				"name" => $post_meta_info_obj->htmlvar_name,
111
+				"label" => $post_meta_info_obj->clabels,
112
+				"default" => $post_meta_info_obj->default_value,
113
+				"type" => $post_meta_info_obj->field_type,
114
+				"desc" => $post_meta_info_obj->admin_desc);
115
+
116
+			if ($post_meta_info_obj->field_type) {
117
+				$options = explode(',', $post_meta_info_obj->option_values);
118
+				$custom_fields["options"] = $options;
119
+			}
120
+
121
+			foreach ($post_meta_info_obj as $key => $val) {
122
+				$custom_fields[$key] = $val;
123
+			}
124
+
125
+			$pricearr = array();
126
+			$pricearr = explode(',', $post_meta_info_obj->packages);
127
+
128
+			if ($package_id != '' && in_array($package_id, $pricearr)) {
129
+				$return_arr[$post_meta_info_obj->sort_order] = $custom_fields;
130
+			} elseif ($package_id == '') {
131
+				$return_arr[$post_meta_info_obj->sort_order] = $custom_fields;
132
+			}
133
+		}
134
+	}
135
+	$geodir_post_custom_fields_cache[$cache_stored] = $return_arr;
136
+
137
+	if (has_filter('geodir_filter_geodir_post_custom_fields')) {
138
+		/**
139
+		 * Filter the post custom fields array.
140
+		 *
141
+		 * @since 1.0.0
142
+		 *
143
+		 * @param array $return_arr Post custom fields array.
144
+		 * @param int|string $package_id The package ID.
145
+		 * @param string $post_type Optional. The wordpress post type.
146
+		 * @param string $fields_location Optional. Where exactly are you going to place this custom fields?.
147
+		 */
148
+		$return_arr = apply_filters('geodir_filter_geodir_post_custom_fields', $return_arr, $package_id, $post_type, $fields_location);
149
+	}
150
+
151
+	return $return_arr;
152 152
 }
153 153
 
154
-    /**
155
-     * Adds admin html for custom fields.
156
-     *
157
-     * @since 1.0.0
158
-     * @package GeoDirectory
159
-     * @global object $wpdb WordPress Database object.
160
-     * @param string $field_type The form field type.
161
-     * @param object|int $result_str The custom field results object or row id.
162
-     * @param string $field_ins_upd When set to "submit" displays form.
163
-     * @param string $field_type_key The key of the custom field.
164
-     */
165
-    function geodir_custom_field_adminhtml($field_type, $result_str, $field_ins_upd = '', $field_type_key ='')
166
-    {
167
-        global $wpdb;
168
-        $cf = $result_str;
169
-        if (!is_object($cf)) {
170
-
171
-            $field_info = $wpdb->get_row($wpdb->prepare("select * from " . GEODIR_CUSTOM_FIELDS_TABLE . " where id= %d", array($cf)));
172
-
173
-        } else {
174
-            $field_info = $cf;
175
-            $result_str = $cf->id;
176
-        }
177
-        /**
178
-         * Contains custom field html.
179
-         *
180
-         * @since 1.0.0
181
-         */
182
-        include('custom_field_html.php');
183
-
184
-    }
154
+	/**
155
+	 * Adds admin html for custom fields.
156
+	 *
157
+	 * @since 1.0.0
158
+	 * @package GeoDirectory
159
+	 * @global object $wpdb WordPress Database object.
160
+	 * @param string $field_type The form field type.
161
+	 * @param object|int $result_str The custom field results object or row id.
162
+	 * @param string $field_ins_upd When set to "submit" displays form.
163
+	 * @param string $field_type_key The key of the custom field.
164
+	 */
165
+	function geodir_custom_field_adminhtml($field_type, $result_str, $field_ins_upd = '', $field_type_key ='')
166
+	{
167
+		global $wpdb;
168
+		$cf = $result_str;
169
+		if (!is_object($cf)) {
170
+
171
+			$field_info = $wpdb->get_row($wpdb->prepare("select * from " . GEODIR_CUSTOM_FIELDS_TABLE . " where id= %d", array($cf)));
172
+
173
+		} else {
174
+			$field_info = $cf;
175
+			$result_str = $cf->id;
176
+		}
177
+		/**
178
+		 * Contains custom field html.
179
+		 *
180
+		 * @since 1.0.0
181
+		 */
182
+		include('custom_field_html.php');
183
+
184
+	}
185 185
 
186 186
 
187 187
 if (!function_exists('geodir_custom_field_delete')) {
188
-    /**
189
-     * Delete custom field using field id.
190
-     *
191
-     * @since 1.0.0
192
-     * @since 1.5.7 Delete field from sorting fields table when custom field deleted.
193
-     * @package GeoDirectory
194
-     * @global object $wpdb WordPress Database object.
195
-     * @global string $plugin_prefix Geodirectory plugin table prefix.
196
-     * @param string $field_id The custom field ID.
197
-     * @return int|string If field deleted successfully, returns field id. Otherwise returns 0.
198
-     */
199
-    function geodir_custom_field_delete($field_id = '') {
200
-        global $wpdb, $plugin_prefix;
201
-
202
-        if ($field_id != '') {
203
-            $cf = trim($field_id, '_');
204
-
205
-            if ($field = $wpdb->get_row($wpdb->prepare("select htmlvar_name,post_type,field_type from " . GEODIR_CUSTOM_FIELDS_TABLE . " where id= %d", array($cf)))) {
206
-                $wpdb->query($wpdb->prepare("delete from " . GEODIR_CUSTOM_FIELDS_TABLE . " where id= %d ", array($cf)));
207
-
208
-                $post_type = $field->post_type;
209
-                $htmlvar_name = $field->htmlvar_name;
210
-
211
-                if ($post_type != '' && $htmlvar_name != '') {
212
-                    $wpdb->query($wpdb->prepare("DELETE FROM " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " WHERE htmlvar_name=%s AND post_type=%s LIMIT 1", array($htmlvar_name, $post_type)));
213
-                }
214
-
215
-                /**
216
-                 * Called after a custom field is deleted.
217
-                 *
218
-                 * @since 1.0.0
219
-                 * @param string $cf The fields ID.
220
-                 * @param string $field->htmlvar_name The html variable name for the field.
221
-                 * @param string $post_type The post type the field belongs to.
222
-                 */
223
-                do_action('geodir_after_custom_field_deleted', $cf, $field->htmlvar_name, $post_type);
224
-
225
-                if ($field->field_type == 'address') {
226
-                    $wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_address`");
227
-                    $wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_city`");
228
-                    $wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_region`");
229
-                    $wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_country`");
230
-                    $wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_zip`");
231
-                    $wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_latitude`");
232
-                    $wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_longitude`");
233
-                    $wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_mapview`");
234
-                    $wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_mapzoom`");
235
-                } else {
236
-                    if ($field->field_type != 'fieldset') {
237
-                        $wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "`");
238
-                    }
239
-                }
240
-
241
-                return $field_id;
242
-            } else
243
-                return 0;
244
-        } else
245
-            return 0;
246
-    }
188
+	/**
189
+	 * Delete custom field using field id.
190
+	 *
191
+	 * @since 1.0.0
192
+	 * @since 1.5.7 Delete field from sorting fields table when custom field deleted.
193
+	 * @package GeoDirectory
194
+	 * @global object $wpdb WordPress Database object.
195
+	 * @global string $plugin_prefix Geodirectory plugin table prefix.
196
+	 * @param string $field_id The custom field ID.
197
+	 * @return int|string If field deleted successfully, returns field id. Otherwise returns 0.
198
+	 */
199
+	function geodir_custom_field_delete($field_id = '') {
200
+		global $wpdb, $plugin_prefix;
201
+
202
+		if ($field_id != '') {
203
+			$cf = trim($field_id, '_');
204
+
205
+			if ($field = $wpdb->get_row($wpdb->prepare("select htmlvar_name,post_type,field_type from " . GEODIR_CUSTOM_FIELDS_TABLE . " where id= %d", array($cf)))) {
206
+				$wpdb->query($wpdb->prepare("delete from " . GEODIR_CUSTOM_FIELDS_TABLE . " where id= %d ", array($cf)));
207
+
208
+				$post_type = $field->post_type;
209
+				$htmlvar_name = $field->htmlvar_name;
210
+
211
+				if ($post_type != '' && $htmlvar_name != '') {
212
+					$wpdb->query($wpdb->prepare("DELETE FROM " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " WHERE htmlvar_name=%s AND post_type=%s LIMIT 1", array($htmlvar_name, $post_type)));
213
+				}
214
+
215
+				/**
216
+				 * Called after a custom field is deleted.
217
+				 *
218
+				 * @since 1.0.0
219
+				 * @param string $cf The fields ID.
220
+				 * @param string $field->htmlvar_name The html variable name for the field.
221
+				 * @param string $post_type The post type the field belongs to.
222
+				 */
223
+				do_action('geodir_after_custom_field_deleted', $cf, $field->htmlvar_name, $post_type);
224
+
225
+				if ($field->field_type == 'address') {
226
+					$wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_address`");
227
+					$wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_city`");
228
+					$wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_region`");
229
+					$wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_country`");
230
+					$wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_zip`");
231
+					$wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_latitude`");
232
+					$wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_longitude`");
233
+					$wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_mapview`");
234
+					$wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "_mapzoom`");
235
+				} else {
236
+					if ($field->field_type != 'fieldset') {
237
+						$wpdb->query("ALTER TABLE " . $plugin_prefix . $post_type . "_detail DROP `" . $field->htmlvar_name . "`");
238
+					}
239
+				}
240
+
241
+				return $field_id;
242
+			} else
243
+				return 0;
244
+		} else
245
+			return 0;
246
+	}
247 247
 }
248 248
 
249 249
 if (!function_exists('geodir_custom_field_save')) {
250
-    /**
251
-     * Save or Update custom fields into the database.
252
-     *
253
-     * @since 1.0.0
254
-     * @since 1.5.6 Fix for saving multiselect custom field "Display Type" on first attempt.
255
-     * @package GeoDirectory
256
-     * @global object $wpdb WordPress Database object.
257
-     * @global string $plugin_prefix Geodirectory plugin table prefix.
258
-     * @param array $request_field {
259
-     *    Attributes of the request field array.
260
-     *
261
-     *    @type string $action Ajax Action name. Default "geodir_ajax_action".
262
-     *    @type string $manage_field_type Field type Default "custom_fields".
263
-     *    @type string $create_field Create field Default "true".
264
-     *    @type string $field_ins_upd Field ins upd Default "submit".
265
-     *    @type string $_wpnonce WP nonce value.
266
-     *    @type string $listing_type Listing type Example "gd_place".
267
-     *    @type string $field_type Field type Example "radio".
268
-     *    @type string $field_id Field id Example "12".
269
-     *    @type string $data_type Data type Example "VARCHAR".
270
-     *    @type string $is_active Either "1" or "0". If "0" is used then the field will not be displayed anywhere.
271
-     *    @type array $show_on_pkg Package list to display this field.
272
-     *    @type string $admin_title Personal comment, it would not be displayed anywhere except in custom field settings.
273
-     *    @type string $site_title Section title which you wish to display in frontend.
274
-     *    @type string $admin_desc Section description which will appear in frontend.
275
-     *    @type string $htmlvar_name Html variable name. This should be a unique name.
276
-     *    @type string $clabels Section Title which will appear in backend.
277
-     *    @type string $default_value The default value (for "link" this will be used as the link text).
278
-     *    @type string $sort_order The display order of this field in backend. e.g. 5.
279
-     *    @type string $is_default Either "1" or "0". If "0" is used then the field will be displayed as main form field or additional field.
280
-     *    @type string $for_admin_use Either "1" or "0". If "0" is used then only site admin can edit this field.
281
-     *    @type string $is_required Use "1" to set field as required.
282
-     *    @type string $required_msg Enter text for error message if field required and have not full fill requirement.
283
-     *    @type string $show_on_listing Want to show this on listing page?.
284
-     *    @type string $show_in What locations to show the custom field in.
285
-     *    @type string $show_on_detail Want to show this in More Info tab on detail page?.
286
-     *    @type string $show_as_tab Want to display this as a tab on detail page? If "1" then "Show on detail page?" must be Yes.
287
-     *    @type string $option_values Option Values should be separated by comma.
288
-     *    @type string $field_icon Upload icon using media and enter its url path, or enter font awesome class.
289
-     *    @type string $css_class Enter custom css class for field custom style.
290
-     *    @type array $extra_fields An array of extra fields to store.
291
-     *
292
-     * }
293
-     * @param bool $default Not yet implemented.
294
-     * @return int|string If field is unique returns inserted row id. Otherwise returns error string.
295
-     */
296
-    function geodir_custom_field_save($request_field = array(), $default = false)
297
-    {
298
-
299
-        global $wpdb, $plugin_prefix;
300
-
301
-        $old_html_variable = '';
302
-
303
-        $data_type = trim($request_field['data_type']);
304
-
305
-        $result_str = isset($request_field['field_id']) ? trim($request_field['field_id']) : '';
306
-
307
-        // some servers fail if a POST value is VARCHAR so we change it.
308
-        if(isset($request_field['data_type']) && $request_field['data_type']=='XVARCHAR'){
309
-            $request_field['data_type'] = 'VARCHAR';
310
-        }
311
-
312
-        $cf = trim($result_str, '_');
313
-
314
-
315
-        /*-------- check duplicate validation --------*/
316
-
317
-        $cehhtmlvar_name = isset($request_field['htmlvar_name']) ? $request_field['htmlvar_name'] : '';
318
-        $post_type = $request_field['listing_type'];
319
-
320
-        if ($request_field['field_type'] != 'address' && $request_field['field_type'] != 'taxonomy' && $request_field['field_type'] != 'fieldset') {
321
-            $cehhtmlvar_name = 'geodir_' . $cehhtmlvar_name;
322
-        }
323
-
324
-        $check_html_variable = $wpdb->get_var(
325
-            $wpdb->prepare(
326
-                "select htmlvar_name from " . GEODIR_CUSTOM_FIELDS_TABLE . " where id <> %d and htmlvar_name = %s and post_type = %s ",
327
-                array($cf, $cehhtmlvar_name, $post_type)
328
-            )
329
-        );
330
-
331
-
332
-        if (!$check_html_variable || $request_field['field_type'] == 'fieldset') {
333
-
334
-            if ($cf != '') {
335
-
336
-                $post_meta_info = $wpdb->get_row(
337
-                    $wpdb->prepare(
338
-                        "select * from " . GEODIR_CUSTOM_FIELDS_TABLE . " where id = %d",
339
-                        array($cf)
340
-                    )
341
-                );
342
-
343
-            }
344
-
345
-            if (!empty($post_meta_info)) {
346
-                $post_val = $post_meta_info;
347
-                $old_html_variable = $post_val->htmlvar_name;
348
-
349
-            }
350
-
351
-
352
-
353
-            if ($post_type == '') $post_type = 'gd_place';
354
-
355
-
356
-            $detail_table = $plugin_prefix . $post_type . '_detail';
357
-
358
-            $admin_title = $request_field['admin_title'];
359
-            $site_title = $request_field['site_title'];
360
-            $data_type = $request_field['data_type'];
361
-            $field_type = $request_field['field_type'];
362
-            $field_type_key = isset($request_field['field_type_key']) ? $request_field['field_type_key'] : $field_type;
363
-            $htmlvar_name = isset($request_field['htmlvar_name']) ? $request_field['htmlvar_name'] : '';
364
-            $admin_desc = $request_field['admin_desc'];
365
-            $clabels = isset($request_field['clabels']) ? $request_field['clabels'] : '';
366
-            $default_value = isset($request_field['default_value']) ? $request_field['default_value'] : '';
367
-            $sort_order = isset($request_field['sort_order']) ? $request_field['sort_order'] : '';
368
-            $is_active = isset($request_field['is_active']) ? $request_field['is_active'] : '';
369
-            $is_required = isset($request_field['is_required']) ? $request_field['is_required'] : '';
370
-            $required_msg = isset($request_field['required_msg']) ? $request_field['required_msg'] : '';
371
-            $css_class = isset($request_field['css_class']) ? $request_field['css_class'] : '';
372
-            $field_icon = isset($request_field['field_icon']) ? $request_field['field_icon'] : '';
373
-            $show_on_listing = isset($request_field['show_on_listing']) ? $request_field['show_on_listing'] : '';
374
-            $show_in = isset($request_field['show_in']) ? $request_field['show_in'] : '';
375
-            $show_on_detail = isset($request_field['show_on_detail']) ? $request_field['show_on_detail'] : '';
376
-            $show_as_tab = isset($request_field['show_as_tab']) ? $request_field['show_as_tab'] : '';
377
-            $decimal_point = isset($request_field['decimal_point']) ? trim($request_field['decimal_point']) : ''; // decimal point for DECIMAL data type
378
-            $decimal_point = $decimal_point > 0 ? ($decimal_point > 10 ? 10 : $decimal_point) : '';
379
-            $validation_pattern = isset($request_field['validation_pattern']) ? $request_field['validation_pattern'] : '';
380
-            $validation_msg = isset($request_field['validation_msg']) ? $request_field['validation_msg'] : '';
381
-            $for_admin_use = isset($request_field['for_admin_use']) ? $request_field['for_admin_use'] : '';
250
+	/**
251
+	 * Save or Update custom fields into the database.
252
+	 *
253
+	 * @since 1.0.0
254
+	 * @since 1.5.6 Fix for saving multiselect custom field "Display Type" on first attempt.
255
+	 * @package GeoDirectory
256
+	 * @global object $wpdb WordPress Database object.
257
+	 * @global string $plugin_prefix Geodirectory plugin table prefix.
258
+	 * @param array $request_field {
259
+	 *    Attributes of the request field array.
260
+	 *
261
+	 *    @type string $action Ajax Action name. Default "geodir_ajax_action".
262
+	 *    @type string $manage_field_type Field type Default "custom_fields".
263
+	 *    @type string $create_field Create field Default "true".
264
+	 *    @type string $field_ins_upd Field ins upd Default "submit".
265
+	 *    @type string $_wpnonce WP nonce value.
266
+	 *    @type string $listing_type Listing type Example "gd_place".
267
+	 *    @type string $field_type Field type Example "radio".
268
+	 *    @type string $field_id Field id Example "12".
269
+	 *    @type string $data_type Data type Example "VARCHAR".
270
+	 *    @type string $is_active Either "1" or "0". If "0" is used then the field will not be displayed anywhere.
271
+	 *    @type array $show_on_pkg Package list to display this field.
272
+	 *    @type string $admin_title Personal comment, it would not be displayed anywhere except in custom field settings.
273
+	 *    @type string $site_title Section title which you wish to display in frontend.
274
+	 *    @type string $admin_desc Section description which will appear in frontend.
275
+	 *    @type string $htmlvar_name Html variable name. This should be a unique name.
276
+	 *    @type string $clabels Section Title which will appear in backend.
277
+	 *    @type string $default_value The default value (for "link" this will be used as the link text).
278
+	 *    @type string $sort_order The display order of this field in backend. e.g. 5.
279
+	 *    @type string $is_default Either "1" or "0". If "0" is used then the field will be displayed as main form field or additional field.
280
+	 *    @type string $for_admin_use Either "1" or "0". If "0" is used then only site admin can edit this field.
281
+	 *    @type string $is_required Use "1" to set field as required.
282
+	 *    @type string $required_msg Enter text for error message if field required and have not full fill requirement.
283
+	 *    @type string $show_on_listing Want to show this on listing page?.
284
+	 *    @type string $show_in What locations to show the custom field in.
285
+	 *    @type string $show_on_detail Want to show this in More Info tab on detail page?.
286
+	 *    @type string $show_as_tab Want to display this as a tab on detail page? If "1" then "Show on detail page?" must be Yes.
287
+	 *    @type string $option_values Option Values should be separated by comma.
288
+	 *    @type string $field_icon Upload icon using media and enter its url path, or enter font awesome class.
289
+	 *    @type string $css_class Enter custom css class for field custom style.
290
+	 *    @type array $extra_fields An array of extra fields to store.
291
+	 *
292
+	 * }
293
+	 * @param bool $default Not yet implemented.
294
+	 * @return int|string If field is unique returns inserted row id. Otherwise returns error string.
295
+	 */
296
+	function geodir_custom_field_save($request_field = array(), $default = false)
297
+	{
298
+
299
+		global $wpdb, $plugin_prefix;
300
+
301
+		$old_html_variable = '';
302
+
303
+		$data_type = trim($request_field['data_type']);
304
+
305
+		$result_str = isset($request_field['field_id']) ? trim($request_field['field_id']) : '';
306
+
307
+		// some servers fail if a POST value is VARCHAR so we change it.
308
+		if(isset($request_field['data_type']) && $request_field['data_type']=='XVARCHAR'){
309
+			$request_field['data_type'] = 'VARCHAR';
310
+		}
311
+
312
+		$cf = trim($result_str, '_');
313
+
314
+
315
+		/*-------- check duplicate validation --------*/
316
+
317
+		$cehhtmlvar_name = isset($request_field['htmlvar_name']) ? $request_field['htmlvar_name'] : '';
318
+		$post_type = $request_field['listing_type'];
319
+
320
+		if ($request_field['field_type'] != 'address' && $request_field['field_type'] != 'taxonomy' && $request_field['field_type'] != 'fieldset') {
321
+			$cehhtmlvar_name = 'geodir_' . $cehhtmlvar_name;
322
+		}
323
+
324
+		$check_html_variable = $wpdb->get_var(
325
+			$wpdb->prepare(
326
+				"select htmlvar_name from " . GEODIR_CUSTOM_FIELDS_TABLE . " where id <> %d and htmlvar_name = %s and post_type = %s ",
327
+				array($cf, $cehhtmlvar_name, $post_type)
328
+			)
329
+		);
330
+
331
+
332
+		if (!$check_html_variable || $request_field['field_type'] == 'fieldset') {
333
+
334
+			if ($cf != '') {
335
+
336
+				$post_meta_info = $wpdb->get_row(
337
+					$wpdb->prepare(
338
+						"select * from " . GEODIR_CUSTOM_FIELDS_TABLE . " where id = %d",
339
+						array($cf)
340
+					)
341
+				);
342
+
343
+			}
344
+
345
+			if (!empty($post_meta_info)) {
346
+				$post_val = $post_meta_info;
347
+				$old_html_variable = $post_val->htmlvar_name;
348
+
349
+			}
350
+
351
+
352
+
353
+			if ($post_type == '') $post_type = 'gd_place';
354
+
355
+
356
+			$detail_table = $plugin_prefix . $post_type . '_detail';
357
+
358
+			$admin_title = $request_field['admin_title'];
359
+			$site_title = $request_field['site_title'];
360
+			$data_type = $request_field['data_type'];
361
+			$field_type = $request_field['field_type'];
362
+			$field_type_key = isset($request_field['field_type_key']) ? $request_field['field_type_key'] : $field_type;
363
+			$htmlvar_name = isset($request_field['htmlvar_name']) ? $request_field['htmlvar_name'] : '';
364
+			$admin_desc = $request_field['admin_desc'];
365
+			$clabels = isset($request_field['clabels']) ? $request_field['clabels'] : '';
366
+			$default_value = isset($request_field['default_value']) ? $request_field['default_value'] : '';
367
+			$sort_order = isset($request_field['sort_order']) ? $request_field['sort_order'] : '';
368
+			$is_active = isset($request_field['is_active']) ? $request_field['is_active'] : '';
369
+			$is_required = isset($request_field['is_required']) ? $request_field['is_required'] : '';
370
+			$required_msg = isset($request_field['required_msg']) ? $request_field['required_msg'] : '';
371
+			$css_class = isset($request_field['css_class']) ? $request_field['css_class'] : '';
372
+			$field_icon = isset($request_field['field_icon']) ? $request_field['field_icon'] : '';
373
+			$show_on_listing = isset($request_field['show_on_listing']) ? $request_field['show_on_listing'] : '';
374
+			$show_in = isset($request_field['show_in']) ? $request_field['show_in'] : '';
375
+			$show_on_detail = isset($request_field['show_on_detail']) ? $request_field['show_on_detail'] : '';
376
+			$show_as_tab = isset($request_field['show_as_tab']) ? $request_field['show_as_tab'] : '';
377
+			$decimal_point = isset($request_field['decimal_point']) ? trim($request_field['decimal_point']) : ''; // decimal point for DECIMAL data type
378
+			$decimal_point = $decimal_point > 0 ? ($decimal_point > 10 ? 10 : $decimal_point) : '';
379
+			$validation_pattern = isset($request_field['validation_pattern']) ? $request_field['validation_pattern'] : '';
380
+			$validation_msg = isset($request_field['validation_msg']) ? $request_field['validation_msg'] : '';
381
+			$for_admin_use = isset($request_field['for_admin_use']) ? $request_field['for_admin_use'] : '';
382 382
 
383 383
             
384
-            if(is_array($show_in)){
385
-                $show_in = implode(",", $request_field['show_in']);
386
-            }
384
+			if(is_array($show_in)){
385
+				$show_in = implode(",", $request_field['show_in']);
386
+			}
387 387
             
388
-            if ($field_type != 'address' && $field_type != 'taxonomy' && $field_type != 'fieldset') {
389
-                $htmlvar_name = 'geodir_' . $htmlvar_name;
390
-            }
388
+			if ($field_type != 'address' && $field_type != 'taxonomy' && $field_type != 'fieldset') {
389
+				$htmlvar_name = 'geodir_' . $htmlvar_name;
390
+			}
391 391
 
392
-            $option_values = '';
393
-            if (isset($request_field['option_values']))
394
-                $option_values = $request_field['option_values'];
392
+			$option_values = '';
393
+			if (isset($request_field['option_values']))
394
+				$option_values = $request_field['option_values'];
395 395
 
396
-            $cat_sort = isset($request_field['cat_sort']) ? $request_field['cat_sort'] : '0';
396
+			$cat_sort = isset($request_field['cat_sort']) ? $request_field['cat_sort'] : '0';
397 397
 
398
-            $cat_filter = isset($request_field['cat_filter']) ? $request_field['cat_filter'] : '0';
398
+			$cat_filter = isset($request_field['cat_filter']) ? $request_field['cat_filter'] : '0';
399 399
 
400
-            if (isset($request_field['show_on_pkg']) && !empty($request_field['show_on_pkg']))
401
-                $price_pkg = implode(",", $request_field['show_on_pkg']);
402
-            else {
403
-                $package_info = array();
400
+			if (isset($request_field['show_on_pkg']) && !empty($request_field['show_on_pkg']))
401
+				$price_pkg = implode(",", $request_field['show_on_pkg']);
402
+			else {
403
+				$package_info = array();
404 404
 
405
-                $package_info = geodir_post_package_info($package_info, '', $post_type);
406
-                $price_pkg = !empty($package_info->pid) ? $package_info->pid : '';
407
-            }
405
+				$package_info = geodir_post_package_info($package_info, '', $post_type);
406
+				$price_pkg = !empty($package_info->pid) ? $package_info->pid : '';
407
+			}
408 408
 
409 409
 
410
-            if (isset($request_field['extra']) && !empty($request_field['extra']))
411
-                $extra_fields = $request_field['extra'];
410
+			if (isset($request_field['extra']) && !empty($request_field['extra']))
411
+				$extra_fields = $request_field['extra'];
412 412
 
413
-            if (isset($request_field['is_default']) && $request_field['is_default'] != '')
414
-                $is_default = $request_field['is_default'];
415
-            else
416
-                $is_default = '0';
413
+			if (isset($request_field['is_default']) && $request_field['is_default'] != '')
414
+				$is_default = $request_field['is_default'];
415
+			else
416
+				$is_default = '0';
417 417
 
418
-            if (isset($request_field['is_admin']) && $request_field['is_admin'] != '')
419
-                $is_admin = $request_field['is_admin'];
420
-            else
421
-                $is_admin = '0';
418
+			if (isset($request_field['is_admin']) && $request_field['is_admin'] != '')
419
+				$is_admin = $request_field['is_admin'];
420
+			else
421
+				$is_admin = '0';
422 422
 
423 423
 
424
-            if ($is_active == '') $is_active = 1;
425
-            if ($is_required == '') $is_required = 0;
424
+			if ($is_active == '') $is_active = 1;
425
+			if ($is_required == '') $is_required = 0;
426 426
 
427 427
 
428
-            if ($sort_order == '') {
428
+			if ($sort_order == '') {
429 429
 
430
-                $last_order = $wpdb->get_var("SELECT MAX(sort_order) as last_order FROM " . GEODIR_CUSTOM_FIELDS_TABLE);
430
+				$last_order = $wpdb->get_var("SELECT MAX(sort_order) as last_order FROM " . GEODIR_CUSTOM_FIELDS_TABLE);
431 431
 
432
-                $sort_order = (int)$last_order + 1;
433
-            }
432
+				$sort_order = (int)$last_order + 1;
433
+			}
434 434
 
435
-            $default_value_add = '';
435
+			$default_value_add = '';
436 436
 
437 437
 
438
-            if (!empty($post_meta_info)) {
439
-                switch ($field_type):
438
+			if (!empty($post_meta_info)) {
439
+				switch ($field_type):
440 440
 
441
-                    case 'address':
441
+					case 'address':
442 442
 
443
-                        if ($htmlvar_name != '') {
444
-                            $prefix = $htmlvar_name . '_';
445
-                        }
446
-                        $old_prefix = $old_html_variable . '_';
443
+						if ($htmlvar_name != '') {
444
+							$prefix = $htmlvar_name . '_';
445
+						}
446
+						$old_prefix = $old_html_variable . '_';
447 447
 
448 448
 
449
-                        $meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "address` `" . $prefix . "address` VARCHAR( 254 ) NULL";
449
+						$meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "address` `" . $prefix . "address` VARCHAR( 254 ) NULL";
450 450
 
451
-                        if ($default_value != '') {
452
-                            $meta_field_add .= " DEFAULT '" . $default_value . "'";
453
-                        }
451
+						if ($default_value != '') {
452
+							$meta_field_add .= " DEFAULT '" . $default_value . "'";
453
+						}
454 454
 
455
-                        $wpdb->query($meta_field_add);
455
+						$wpdb->query($meta_field_add);
456 456
 
457
-                        if ($extra_fields != '') {
457
+						if ($extra_fields != '') {
458 458
 
459
-                            if (isset($extra_fields['show_city']) && $extra_fields['show_city']) {
459
+							if (isset($extra_fields['show_city']) && $extra_fields['show_city']) {
460 460
 
461
-                                $is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "city'");
462
-                                if ($is_column) {
463
-                                    $meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "city` `" . $prefix . "city` VARCHAR( 50 ) NULL";
461
+								$is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "city'");
462
+								if ($is_column) {
463
+									$meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "city` `" . $prefix . "city` VARCHAR( 50 ) NULL";
464 464
 
465
-                                    if ($default_value != '') {
466
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
467
-                                    }
465
+									if ($default_value != '') {
466
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
467
+									}
468 468
 
469
-                                    $wpdb->query($meta_field_add);
470
-                                } else {
469
+									$wpdb->query($meta_field_add);
470
+								} else {
471 471
 
472
-                                    $meta_field_add = "VARCHAR( 50 ) NULL";
473
-                                    if ($default_value != '') {
474
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
475
-                                    }
476
-                                    geodir_add_column_if_not_exist($detail_table, $prefix . "city", $meta_field_add);
472
+									$meta_field_add = "VARCHAR( 50 ) NULL";
473
+									if ($default_value != '') {
474
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
475
+									}
476
+									geodir_add_column_if_not_exist($detail_table, $prefix . "city", $meta_field_add);
477 477
 
478
-                                }
478
+								}
479 479
 
480 480
 
481
-                            }
481
+							}
482 482
 
483 483
 
484
-                            if (isset($extra_fields['show_region']) && $extra_fields['show_region']) {
484
+							if (isset($extra_fields['show_region']) && $extra_fields['show_region']) {
485 485
 
486
-                                $is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "region'");
486
+								$is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "region'");
487 487
 
488
-                                if ($is_column) {
489
-                                    $meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "region` `" . $prefix . "region` VARCHAR( 50 ) NULL";
488
+								if ($is_column) {
489
+									$meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "region` `" . $prefix . "region` VARCHAR( 50 ) NULL";
490 490
 
491
-                                    if ($default_value != '') {
492
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
493
-                                    }
491
+									if ($default_value != '') {
492
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
493
+									}
494 494
 
495
-                                    $wpdb->query($meta_field_add);
496
-                                } else {
497
-                                    $meta_field_add = "VARCHAR( 50 ) NULL";
498
-                                    if ($default_value != '') {
499
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
500
-                                    }
495
+									$wpdb->query($meta_field_add);
496
+								} else {
497
+									$meta_field_add = "VARCHAR( 50 ) NULL";
498
+									if ($default_value != '') {
499
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
500
+									}
501 501
 
502
-                                    geodir_add_column_if_not_exist($detail_table, $prefix . "region", $meta_field_add);
503
-                                }
502
+									geodir_add_column_if_not_exist($detail_table, $prefix . "region", $meta_field_add);
503
+								}
504 504
 
505
-                            }
506
-                            if (isset($extra_fields['show_country']) && $extra_fields['show_country']) {
505
+							}
506
+							if (isset($extra_fields['show_country']) && $extra_fields['show_country']) {
507 507
 
508
-                                $is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "country'");
508
+								$is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "country'");
509 509
 
510
-                                if ($is_column) {
510
+								if ($is_column) {
511 511
 
512
-                                    $meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "country` `" . $prefix . "country` VARCHAR( 50 ) NULL";
512
+									$meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "country` `" . $prefix . "country` VARCHAR( 50 ) NULL";
513 513
 
514
-                                    if ($default_value != '') {
515
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
516
-                                    }
514
+									if ($default_value != '') {
515
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
516
+									}
517 517
 
518
-                                    $wpdb->query($meta_field_add);
519
-                                } else {
518
+									$wpdb->query($meta_field_add);
519
+								} else {
520 520
 
521
-                                    $meta_field_add = "VARCHAR( 50 ) NULL";
522
-                                    if ($default_value != '') {
523
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
524
-                                    }
521
+									$meta_field_add = "VARCHAR( 50 ) NULL";
522
+									if ($default_value != '') {
523
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
524
+									}
525 525
 
526
-                                    geodir_add_column_if_not_exist($detail_table, $prefix . "country", $meta_field_add);
526
+									geodir_add_column_if_not_exist($detail_table, $prefix . "country", $meta_field_add);
527 527
 
528
-                                }
528
+								}
529 529
 
530
-                            }
531
-                            if (isset($extra_fields['show_zip']) && $extra_fields['show_zip']) {
530
+							}
531
+							if (isset($extra_fields['show_zip']) && $extra_fields['show_zip']) {
532 532
 
533
-                                $is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "zip'");
533
+								$is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "zip'");
534 534
 
535
-                                if ($is_column) {
535
+								if ($is_column) {
536 536
 
537
-                                    $meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "zip` `" . $prefix . "zip` VARCHAR( 50 ) NULL";
537
+									$meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "zip` `" . $prefix . "zip` VARCHAR( 50 ) NULL";
538 538
 
539
-                                    if ($default_value != '') {
540
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
541
-                                    }
539
+									if ($default_value != '') {
540
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
541
+									}
542 542
 
543
-                                    $wpdb->query($meta_field_add);
544
-                                } else {
543
+									$wpdb->query($meta_field_add);
544
+								} else {
545 545
 
546
-                                    $meta_field_add = "VARCHAR( 50 ) NULL";
547
-                                    if ($default_value != '') {
548
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
549
-                                    }
546
+									$meta_field_add = "VARCHAR( 50 ) NULL";
547
+									if ($default_value != '') {
548
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
549
+									}
550 550
 
551
-                                    geodir_add_column_if_not_exist($detail_table, $prefix . "zip", $meta_field_add);
551
+									geodir_add_column_if_not_exist($detail_table, $prefix . "zip", $meta_field_add);
552 552
 
553
-                                }
553
+								}
554 554
 
555
-                            }
556
-                            if (isset($extra_fields['show_map']) && $extra_fields['show_map']) {
555
+							}
556
+							if (isset($extra_fields['show_map']) && $extra_fields['show_map']) {
557 557
 
558
-                                $is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "latitude'");
559
-                                if ($is_column) {
558
+								$is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "latitude'");
559
+								if ($is_column) {
560 560
 
561
-                                    $meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "latitude` `" . $prefix . "latitude` VARCHAR( 20 ) NULL";
561
+									$meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "latitude` `" . $prefix . "latitude` VARCHAR( 20 ) NULL";
562 562
 
563
-                                    if ($default_value != '') {
564
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
565
-                                    }
563
+									if ($default_value != '') {
564
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
565
+									}
566 566
 
567
-                                    $wpdb->query($meta_field_add);
568
-                                } else {
567
+									$wpdb->query($meta_field_add);
568
+								} else {
569 569
 
570
-                                    $meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "latitude` VARCHAR( 20 ) NULL";
571
-                                    $meta_field_add = "VARCHAR( 20 ) NULL";
572
-                                    if ($default_value != '') {
573
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
574
-                                    }
570
+									$meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "latitude` VARCHAR( 20 ) NULL";
571
+									$meta_field_add = "VARCHAR( 20 ) NULL";
572
+									if ($default_value != '') {
573
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
574
+									}
575 575
 
576
-                                    geodir_add_column_if_not_exist($detail_table, $prefix . "latitude", $meta_field_add);
576
+									geodir_add_column_if_not_exist($detail_table, $prefix . "latitude", $meta_field_add);
577 577
 
578
-                                }
578
+								}
579 579
 
580 580
 
581
-                                $is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "longitude'");
581
+								$is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "longitude'");
582 582
 
583
-                                if ($is_column) {
584
-                                    $meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "longitude` `" . $prefix . "longitude` VARCHAR( 20 ) NULL";
583
+								if ($is_column) {
584
+									$meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "longitude` `" . $prefix . "longitude` VARCHAR( 20 ) NULL";
585 585
 
586
-                                    if ($default_value != '') {
587
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
588
-                                    }
586
+									if ($default_value != '') {
587
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
588
+									}
589 589
 
590
-                                    $wpdb->query($meta_field_add);
591
-                                } else {
590
+									$wpdb->query($meta_field_add);
591
+								} else {
592 592
 
593
-                                    $meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "longitude` VARCHAR( 20 ) NULL";
594
-                                    $meta_field_add = "VARCHAR( 20 ) NULL";
595
-                                    if ($default_value != '') {
596
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
597
-                                    }
593
+									$meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "longitude` VARCHAR( 20 ) NULL";
594
+									$meta_field_add = "VARCHAR( 20 ) NULL";
595
+									if ($default_value != '') {
596
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
597
+									}
598 598
 
599
-                                    geodir_add_column_if_not_exist($detail_table, $prefix . "longitude", $meta_field_add);
600
-                                }
599
+									geodir_add_column_if_not_exist($detail_table, $prefix . "longitude", $meta_field_add);
600
+								}
601 601
 
602
-                            }
603
-                            if (isset($extra_fields['show_mapview']) && $extra_fields['show_mapview']) {
602
+							}
603
+							if (isset($extra_fields['show_mapview']) && $extra_fields['show_mapview']) {
604 604
 
605
-                                $is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "mapview'");
605
+								$is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "mapview'");
606 606
 
607
-                                if ($is_column) {
608
-                                    $meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "mapview` `" . $prefix . "mapview` VARCHAR( 15 ) NULL";
607
+								if ($is_column) {
608
+									$meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "mapview` `" . $prefix . "mapview` VARCHAR( 15 ) NULL";
609 609
 
610
-                                    if ($default_value != '') {
611
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
612
-                                    }
610
+									if ($default_value != '') {
611
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
612
+									}
613 613
 
614
-                                    $wpdb->query($meta_field_add);
615
-                                } else {
614
+									$wpdb->query($meta_field_add);
615
+								} else {
616 616
 
617
-                                    $meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "mapview` VARCHAR( 15 ) NULL";
617
+									$meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "mapview` VARCHAR( 15 ) NULL";
618 618
 
619
-                                    $meta_field_add = "VARCHAR( 15 ) NULL";
620
-                                    if ($default_value != '') {
621
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
622
-                                    }
619
+									$meta_field_add = "VARCHAR( 15 ) NULL";
620
+									if ($default_value != '') {
621
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
622
+									}
623 623
 
624
-                                    geodir_add_column_if_not_exist($detail_table, $prefix . "mapview", $meta_field_add);
625
-                                }
624
+									geodir_add_column_if_not_exist($detail_table, $prefix . "mapview", $meta_field_add);
625
+								}
626 626
 
627 627
 
628
-                            }
629
-                            if (isset($extra_fields['show_mapzoom']) && $extra_fields['show_mapzoom']) {
628
+							}
629
+							if (isset($extra_fields['show_mapzoom']) && $extra_fields['show_mapzoom']) {
630 630
 
631
-                                $is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "mapzoom'");
632
-                                if ($is_column) {
633
-                                    $meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "mapzoom` `" . $prefix . "mapzoom` VARCHAR( 3 ) NULL";
631
+								$is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "mapzoom'");
632
+								if ($is_column) {
633
+									$meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "mapzoom` `" . $prefix . "mapzoom` VARCHAR( 3 ) NULL";
634 634
 
635
-                                    if ($default_value != '') {
636
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
637
-                                    }
635
+									if ($default_value != '') {
636
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
637
+									}
638 638
 
639
-                                    $wpdb->query($meta_field_add);
639
+									$wpdb->query($meta_field_add);
640 640
 
641
-                                } else {
641
+								} else {
642 642
 
643
-                                    $meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "mapzoom` VARCHAR( 3 ) NULL";
643
+									$meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "mapzoom` VARCHAR( 3 ) NULL";
644 644
 
645
-                                    $meta_field_add = "VARCHAR( 3 ) NULL";
646
-                                    if ($default_value != '') {
647
-                                        $meta_field_add .= " DEFAULT '" . $default_value . "'";
648
-                                    }
645
+									$meta_field_add = "VARCHAR( 3 ) NULL";
646
+									if ($default_value != '') {
647
+										$meta_field_add .= " DEFAULT '" . $default_value . "'";
648
+									}
649 649
 
650
-                                    geodir_add_column_if_not_exist($detail_table, $prefix . "mapzoom", $meta_field_add);
651
-                                }
650
+									geodir_add_column_if_not_exist($detail_table, $prefix . "mapzoom", $meta_field_add);
651
+								}
652 652
 
653
-                            }
654
-                            // show lat lng
655
-                            if (isset($extra_fields['show_latlng']) && $extra_fields['show_latlng']) {
656
-                                $is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "latlng'");
653
+							}
654
+							// show lat lng
655
+							if (isset($extra_fields['show_latlng']) && $extra_fields['show_latlng']) {
656
+								$is_column = $wpdb->get_var("SHOW COLUMNS FROM " . $detail_table . " where field='" . $old_prefix . "latlng'");
657 657
 
658
-                                if ($is_column) {
659
-                                    $meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "latlng` `" . $prefix . "latlng` VARCHAR( 3 ) NULL";
660
-                                    $meta_field_add .= " DEFAULT '1'";
658
+								if ($is_column) {
659
+									$meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_prefix . "latlng` `" . $prefix . "latlng` VARCHAR( 3 ) NULL";
660
+									$meta_field_add .= " DEFAULT '1'";
661 661
 
662
-                                    $wpdb->query($meta_field_add);
663
-                                } else {
664
-                                    $meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "latlng` VARCHAR( 3 ) NULL";
662
+									$wpdb->query($meta_field_add);
663
+								} else {
664
+									$meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "latlng` VARCHAR( 3 ) NULL";
665 665
 
666
-                                    $meta_field_add = "VARCHAR( 3 ) NULL";
667
-                                    $meta_field_add .= " DEFAULT '1'";
666
+									$meta_field_add = "VARCHAR( 3 ) NULL";
667
+									$meta_field_add .= " DEFAULT '1'";
668 668
 
669
-                                    geodir_add_column_if_not_exist($detail_table, $prefix . "latlng", $meta_field_add);
670
-                                }
669
+									geodir_add_column_if_not_exist($detail_table, $prefix . "latlng", $meta_field_add);
670
+								}
671 671
 
672
-                            }
673
-                        }// end extra
672
+							}
673
+						}// end extra
674 674
 
675
-                        break;
675
+						break;
676 676
 
677
-                    case 'checkbox':
678
-                        $default_value_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_html_variable . "` `" . $htmlvar_name . "` TINYINT(1) NOT NULL";
677
+					case 'checkbox':
678
+						$default_value_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_html_variable . "` `" . $htmlvar_name . "` TINYINT(1) NOT NULL";
679 679
 						if ($default_value != '') {
680 680
 							$default_value_add .= " DEFAULT '" . $default_value . "'";
681 681
 						}
682 682
 
683
-                        $alter_result = $wpdb->query($default_value_add);
684
-                        if ( $alter_result === false) {
685
-                            return __('Column change failed, you may have too many columns.', 'geodirectory');
686
-                        }
687
-                        break;
688
-                    case 'multiselect':
689
-                    case 'select':
690
-                    case 'taxonomy':
691
-
692
-                        $op_size = '500';
693
-
694
-                        // only make the field as big as it needs to be.
695
-                        if(isset($option_values) && $option_values && $field_type=='select'){
696
-                            $option_values_arr = explode(',',$option_values);
697
-                            if(is_array($option_values_arr)){
698
-                                $op_max = 0;
699
-                                foreach($option_values_arr as $op_val){
700
-                                    if(strlen($op_val) && strlen($op_val)>$op_max){$op_max = strlen($op_val);}
701
-                                }
702
-                                if($op_max){$op_size =$op_max; }
703
-                            }
704
-                        }elseif(isset($option_values) && $option_values && $field_type=='multiselect'){
705
-                            if(strlen($option_values)){
706
-                                $op_size =  strlen($option_values);
707
-                            }
708
-                        }
709
-
710
-                        $meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_html_variable . "` `" . $htmlvar_name . "`VARCHAR( $op_size ) NULL";
711
-
712
-                        if ($default_value != '') {
713
-                            $meta_field_add .= " DEFAULT '" . $default_value . "'";
714
-                        }
715
-
716
-                        $alter_result = $wpdb->query($meta_field_add);
717
-                        if($alter_result===false){
718
-                            return __('Column change failed, you may have too many columns.','geodirectory');
719
-                        }
720
-
721
-                        if (isset($request_field['cat_display_type']))
722
-                            $extra_fields = $request_field['cat_display_type'];
723
-
724
-                        if (isset($request_field['multi_display_type']))
725
-                            $extra_fields = $request_field['multi_display_type'];
726
-
727
-
728
-                        break;
729
-
730
-                    case 'textarea':
731
-                    case 'html':
732
-                    case 'url':
733
-                    case 'file':
734
-
735
-                        $alter_result = $wpdb->query("ALTER TABLE " . $detail_table . " CHANGE `" . $old_html_variable . "` `" . $htmlvar_name . "` TEXT NULL");
736
-                        if($alter_result===false){
737
-                            return __('Column change failed, you may have too many columns.','geodirectory');
738
-                        }
739
-                        if (isset($request_field['advanced_editor']))
740
-                            $extra_fields = $request_field['advanced_editor'];
741
-
742
-                        break;
743
-
744
-                    case 'fieldset':
745
-                        // Nothing happened for fieldset
746
-                        break;
747
-
748
-                    default:
749
-                        if ($data_type != 'VARCHAR' && $data_type != '') {
750
-                            if ($data_type == 'FLOAT' && $decimal_point > 0) {
751
-                                $default_value_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_html_variable . "` `" . $htmlvar_name . "` DECIMAL(11, " . (int)$decimal_point . ") NULL";
752
-                            } else {
753
-                                $default_value_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_html_variable . "` `" . $htmlvar_name . "` " . $data_type . " NULL";
754
-                            }
755
-
756
-                            if (is_numeric($default_value) && $default_value != '') {
757
-                                $default_value_add .= " DEFAULT '" . $default_value . "'";
758
-                            }
759
-                        } else {
760
-                            $default_value_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_html_variable . "` `" . $htmlvar_name . "` VARCHAR( 254 ) NULL";
761
-                            if ($default_value != '') {
762
-                                $default_value_add .= " DEFAULT '" . $default_value . "'";
763
-                            }
764
-                        }
765
-
766
-                        $alter_result = $wpdb->query($default_value_add);
767
-                        if($alter_result===false){
768
-                            return __('Column change failed, you may have too many columns.','geodirectory');
769
-                        }
770
-                        break;
771
-                endswitch;
772
-
773
-                $extra_field_query = '';
774
-                if (!empty($extra_fields)) {
775
-                    $extra_field_query = serialize($extra_fields);
776
-                }
777
-
778
-                $decimal_point = $field_type == 'text' && $data_type == 'FLOAT' ? $decimal_point : '';
779
-
780
-                $wpdb->query(
781
-
782
-                    $wpdb->prepare(
783
-
784
-                        "update " . GEODIR_CUSTOM_FIELDS_TABLE . " set 
683
+						$alter_result = $wpdb->query($default_value_add);
684
+						if ( $alter_result === false) {
685
+							return __('Column change failed, you may have too many columns.', 'geodirectory');
686
+						}
687
+						break;
688
+					case 'multiselect':
689
+					case 'select':
690
+					case 'taxonomy':
691
+
692
+						$op_size = '500';
693
+
694
+						// only make the field as big as it needs to be.
695
+						if(isset($option_values) && $option_values && $field_type=='select'){
696
+							$option_values_arr = explode(',',$option_values);
697
+							if(is_array($option_values_arr)){
698
+								$op_max = 0;
699
+								foreach($option_values_arr as $op_val){
700
+									if(strlen($op_val) && strlen($op_val)>$op_max){$op_max = strlen($op_val);}
701
+								}
702
+								if($op_max){$op_size =$op_max; }
703
+							}
704
+						}elseif(isset($option_values) && $option_values && $field_type=='multiselect'){
705
+							if(strlen($option_values)){
706
+								$op_size =  strlen($option_values);
707
+							}
708
+						}
709
+
710
+						$meta_field_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_html_variable . "` `" . $htmlvar_name . "`VARCHAR( $op_size ) NULL";
711
+
712
+						if ($default_value != '') {
713
+							$meta_field_add .= " DEFAULT '" . $default_value . "'";
714
+						}
715
+
716
+						$alter_result = $wpdb->query($meta_field_add);
717
+						if($alter_result===false){
718
+							return __('Column change failed, you may have too many columns.','geodirectory');
719
+						}
720
+
721
+						if (isset($request_field['cat_display_type']))
722
+							$extra_fields = $request_field['cat_display_type'];
723
+
724
+						if (isset($request_field['multi_display_type']))
725
+							$extra_fields = $request_field['multi_display_type'];
726
+
727
+
728
+						break;
729
+
730
+					case 'textarea':
731
+					case 'html':
732
+					case 'url':
733
+					case 'file':
734
+
735
+						$alter_result = $wpdb->query("ALTER TABLE " . $detail_table . " CHANGE `" . $old_html_variable . "` `" . $htmlvar_name . "` TEXT NULL");
736
+						if($alter_result===false){
737
+							return __('Column change failed, you may have too many columns.','geodirectory');
738
+						}
739
+						if (isset($request_field['advanced_editor']))
740
+							$extra_fields = $request_field['advanced_editor'];
741
+
742
+						break;
743
+
744
+					case 'fieldset':
745
+						// Nothing happened for fieldset
746
+						break;
747
+
748
+					default:
749
+						if ($data_type != 'VARCHAR' && $data_type != '') {
750
+							if ($data_type == 'FLOAT' && $decimal_point > 0) {
751
+								$default_value_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_html_variable . "` `" . $htmlvar_name . "` DECIMAL(11, " . (int)$decimal_point . ") NULL";
752
+							} else {
753
+								$default_value_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_html_variable . "` `" . $htmlvar_name . "` " . $data_type . " NULL";
754
+							}
755
+
756
+							if (is_numeric($default_value) && $default_value != '') {
757
+								$default_value_add .= " DEFAULT '" . $default_value . "'";
758
+							}
759
+						} else {
760
+							$default_value_add = "ALTER TABLE " . $detail_table . " CHANGE `" . $old_html_variable . "` `" . $htmlvar_name . "` VARCHAR( 254 ) NULL";
761
+							if ($default_value != '') {
762
+								$default_value_add .= " DEFAULT '" . $default_value . "'";
763
+							}
764
+						}
765
+
766
+						$alter_result = $wpdb->query($default_value_add);
767
+						if($alter_result===false){
768
+							return __('Column change failed, you may have too many columns.','geodirectory');
769
+						}
770
+						break;
771
+				endswitch;
772
+
773
+				$extra_field_query = '';
774
+				if (!empty($extra_fields)) {
775
+					$extra_field_query = serialize($extra_fields);
776
+				}
777
+
778
+				$decimal_point = $field_type == 'text' && $data_type == 'FLOAT' ? $decimal_point : '';
779
+
780
+				$wpdb->query(
781
+
782
+					$wpdb->prepare(
783
+
784
+						"update " . GEODIR_CUSTOM_FIELDS_TABLE . " set 
785 785
 					post_type = %s,
786 786
 					admin_title = %s,
787 787
 					site_title = %s,
@@ -815,308 +815,308 @@  discard block
 block discarded – undo
815 815
 					for_admin_use = %s
816 816
 					where id = %d",
817 817
 
818
-                        array($post_type, $admin_title, $site_title, $field_type, $field_type_key, $htmlvar_name, $admin_desc, $clabels, $default_value, $sort_order, $is_active, $is_default, $is_required, $required_msg, $css_class, $field_icon, $field_icon, $show_on_listing, $show_in, $show_on_detail, $show_as_tab, $option_values, $price_pkg, $cat_sort, $cat_filter, $data_type, $extra_field_query, $decimal_point,$validation_pattern,$validation_msg, $for_admin_use, $cf)
819
-                    )
818
+						array($post_type, $admin_title, $site_title, $field_type, $field_type_key, $htmlvar_name, $admin_desc, $clabels, $default_value, $sort_order, $is_active, $is_default, $is_required, $required_msg, $css_class, $field_icon, $field_icon, $show_on_listing, $show_in, $show_on_detail, $show_as_tab, $option_values, $price_pkg, $cat_sort, $cat_filter, $data_type, $extra_field_query, $decimal_point,$validation_pattern,$validation_msg, $for_admin_use, $cf)
819
+					)
820 820
 
821
-                );
821
+				);
822 822
 
823
-                $lastid = trim($cf);
823
+				$lastid = trim($cf);
824 824
 
825 825
 
826
-                $wpdb->query(
827
-                    $wpdb->prepare(
828
-                        "update " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " set 
826
+				$wpdb->query(
827
+					$wpdb->prepare(
828
+						"update " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " set 
829 829
 					 	site_title=%s
830 830
 					where post_type = %s and htmlvar_name = %s",
831
-                        array($site_title, $post_type, $htmlvar_name)
832
-                    )
833
-                );
834
-
835
-
836
-                if ($cat_sort == '')
837
-                    $wpdb->query($wpdb->prepare("delete from " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " where post_type = %s and htmlvar_name = %s", array($post_type, $htmlvar_name)));
838
-
839
-
840
-                /**
841
-                 * Called after all custom fields are saved for a post.
842
-                 *
843
-                 * @since 1.0.0
844
-                 * @param int $lastid The post ID.
845
-                 */
846
-                do_action('geodir_after_custom_fields_updated', $lastid);
847
-
848
-            } else {
849
-
850
-                switch ($field_type):
851
-
852
-                    case 'address':
853
-
854
-                        $data_type = '';
855
-
856
-                        if ($htmlvar_name != '') {
857
-                            $prefix = $htmlvar_name . '_';
858
-                        }
859
-                        $old_prefix = $old_html_variable;
860
-
861
-                        //$meta_field_add = "ALTER TABLE ".$detail_table." ADD `".$prefix."address` VARCHAR( 254 ) NULL";
862
-
863
-                        $meta_field_add = "VARCHAR( 254 ) NULL";
864
-                        if ($default_value != '') {
865
-                            $meta_field_add .= " DEFAULT '" . $default_value . "'";
866
-                        }
867
-
868
-                        geodir_add_column_if_not_exist($detail_table, $prefix . "address", $meta_field_add);
869
-                        //$wpdb->query($meta_field_add);
870
-
871
-
872
-                        if (!empty($extra_fields)) {
831
+						array($site_title, $post_type, $htmlvar_name)
832
+					)
833
+				);
834
+
835
+
836
+				if ($cat_sort == '')
837
+					$wpdb->query($wpdb->prepare("delete from " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " where post_type = %s and htmlvar_name = %s", array($post_type, $htmlvar_name)));
838
+
839
+
840
+				/**
841
+				 * Called after all custom fields are saved for a post.
842
+				 *
843
+				 * @since 1.0.0
844
+				 * @param int $lastid The post ID.
845
+				 */
846
+				do_action('geodir_after_custom_fields_updated', $lastid);
847
+
848
+			} else {
873 849
 
874
-                            if (isset($extra_fields['show_city']) && $extra_fields['show_city']) {
875
-                                $meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "city` VARCHAR( 30 ) NULL";
876
-                                $meta_field_add = "VARCHAR( 50 ) NULL";
877
-                                if ($default_value != '') {
878
-                                    $meta_field_add .= " DEFAULT '" . $default_value . "'";
879
-                                }
880
-
881
-                                geodir_add_column_if_not_exist($detail_table, $prefix . "city", $meta_field_add);
882
-                                //$wpdb->query($meta_field_add);
883
-                            }
884
-                            if (isset($extra_fields['show_region']) && $extra_fields['show_region']) {
885
-                                $meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "region` VARCHAR( 30 ) NULL";
886
-                                $meta_field_add = "VARCHAR( 50 ) NULL";
887
-                                if ($default_value != '') {
888
-                                    $meta_field_add .= " DEFAULT '" . $default_value . "'";
889
-                                }
890
-
891
-                                geodir_add_column_if_not_exist($detail_table, $prefix . "region", $meta_field_add);
892
-                                //$wpdb->query($meta_field_add);
893
-                            }
894
-                            if (isset($extra_fields['show_country']) && $extra_fields['show_country']) {
895
-                                $meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "country` VARCHAR( 30 ) NULL";
896
-
897
-                                $meta_field_add = "VARCHAR( 30 ) NULL";
898
-                                if ($default_value != '') {
899
-                                    $meta_field_add .= " DEFAULT '" . $default_value . "'";
900
-                                }
901
-
902
-                                geodir_add_column_if_not_exist($detail_table, $prefix . "country", $meta_field_add);
903
-                                //$wpdb->query($meta_field_add);
904
-                            }
905
-                            if (isset($extra_fields['show_zip']) && $extra_fields['show_zip']) {
906
-                                $meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "zip` VARCHAR( 15 ) NULL";
907
-                                $meta_field_add = "VARCHAR( 15 ) NULL";
908
-                                if ($default_value != '') {
909
-                                    $meta_field_add .= " DEFAULT '" . $default_value . "'";
910
-                                }
911
-
912
-                                geodir_add_column_if_not_exist($detail_table, $prefix . "zip", $meta_field_add);
913
-                                //$wpdb->query($meta_field_add);
914
-                            }
915
-                            if (isset($extra_fields['show_map']) && $extra_fields['show_map']) {
916
-                                $meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "latitude` VARCHAR( 20 ) NULL";
917
-                                $meta_field_add = "VARCHAR( 20 ) NULL";
918
-                                if ($default_value != '') {
919
-                                    $meta_field_add .= " DEFAULT '" . $default_value . "'";
920
-                                }
921
-
922
-                                geodir_add_column_if_not_exist($detail_table, $prefix . "latitude", $meta_field_add);
923
-                                //$wpdb->query($meta_field_add);
924
-
925
-                                $meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "longitude` VARCHAR( 20 ) NULL";
926
-
927
-                                $meta_field_add = "VARCHAR( 20 ) NULL";
928
-                                if ($default_value != '') {
929
-                                    $meta_field_add .= " DEFAULT '" . $default_value . "'";
930
-                                }
931
-
932
-                                geodir_add_column_if_not_exist($detail_table, $prefix . "longitude", $meta_field_add);
933
-
934
-                                //$wpdb->query($meta_field_add);
935
-                            }
936
-                            if (isset($extra_fields['show_mapview']) && $extra_fields['show_mapview']) {
937
-                                $meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "mapview` VARCHAR( 15 ) NULL";
938
-
939
-                                $meta_field_add = "VARCHAR( 15 ) NULL";
940
-                                if ($default_value != '') {
941
-                                    $meta_field_add .= " DEFAULT '" . $default_value . "'";
942
-                                }
943
-
944
-                                geodir_add_column_if_not_exist($detail_table, $prefix . "mapview", $meta_field_add);
945
-
946
-                                //$wpdb->query($meta_field_add);
947
-                            }
948
-                            if (isset($extra_fields['show_mapzoom']) && $extra_fields['show_mapzoom']) {
949
-                                $meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "mapzoom` VARCHAR( 3 ) NULL";
950
-
951
-                                $meta_field_add = "VARCHAR( 3 ) NULL";
952
-                                if ($default_value != '') {
953
-                                    $meta_field_add .= " DEFAULT '" . $default_value . "'";
954
-                                }
955
-
956
-                                geodir_add_column_if_not_exist($detail_table, $prefix . "mapzoom", $meta_field_add);
957
-
958
-                                //$wpdb->query($meta_field_add);
959
-                            }
960
-                            // show lat lng
961
-                            if (isset($extra_fields['show_latlng']) && $extra_fields['show_latlng']) {
962
-                                $meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "latlng` VARCHAR( 3 ) NULL";
963
-
964
-                                $meta_field_add = "VARCHAR( 3 ) NULL";
965
-                                $meta_field_add .= " DEFAULT '1'";
966
-
967
-                                geodir_add_column_if_not_exist($detail_table, $prefix . "latlng", $meta_field_add);
968
-                                //$wpdb->query($meta_field_add);
969
-                            }
970
-                        }
971
-
972
-                        break;
973
-
974
-                    case 'checkbox':
975
-                        $data_type = 'TINYINT';
976
-
977
-                        $meta_field_add = $data_type . "( 1 ) NOT NULL ";
978
-                        if ((int)$default_value === 1) {
979
-                            $meta_field_add .= " DEFAULT '1'";
980
-                        }
981
-
982
-                        $add_result = geodir_add_column_if_not_exist($detail_table, $htmlvar_name, $meta_field_add);
983
-                        if ($add_result === false) {
984
-                            return __('Column creation failed, you may have too many columns or the default value does not match with field data type.', 'geodirectory');
985
-                        }
986
-                        break;
987
-                    case 'multiselect':
988
-                    case 'select':
989
-                        $data_type = 'VARCHAR';
990
-                        $op_size = '500';
991
-
992
-                        // only make the field as big as it needs to be.
993
-                        if (isset($option_values) && $option_values && $field_type == 'select') {
994
-                            $option_values_arr = explode(',', $option_values);
995
-
996
-                            if (is_array($option_values_arr)) {
997
-                                $op_max = 0;
998
-
999
-                                foreach ($option_values_arr as $op_val) {
1000
-                                    if (strlen($op_val) && strlen($op_val) > $op_max) {
1001
-                                        $op_max = strlen($op_val);
1002
-                                    }
1003
-                                }
1004
-
1005
-                                if ($op_max) {
1006
-                                    $op_size = $op_max;
1007
-                                }
1008
-                            }
1009
-                        } elseif (isset($option_values) && $option_values && $field_type == 'multiselect') {
1010
-                            if (strlen($option_values)) {
1011
-                                $op_size =  strlen($option_values);
1012
-                            }
1013
-
1014
-                            if (isset($request_field['multi_display_type'])) {
1015
-                                $extra_fields = $request_field['multi_display_type'];
1016
-                            }
1017
-                        }
1018
-
1019
-                        $meta_field_add = $data_type . "( $op_size ) NULL ";
1020
-                        if ($default_value != '') {
1021
-                            $meta_field_add .= " DEFAULT '" . $default_value . "'";
1022
-                        }
1023
-
1024
-                        $add_result = geodir_add_column_if_not_exist($detail_table, $htmlvar_name, $meta_field_add);
1025
-                        if ($add_result === false) {
1026
-                            return __('Column creation failed, you may have too many columns or the default value does not match with field data type.', 'geodirectory');
1027
-                        }
1028
-                        break;
1029
-                    case 'textarea':
1030
-                    case 'html':
1031
-                    case 'url':
1032
-                    case 'file':
1033
-
1034
-                        $data_type = 'TEXT';
1035
-
1036
-                        $default_value_add = " `" . $htmlvar_name . "` " . $data_type . " NULL ";
1037
-
1038
-                        $meta_field_add = $data_type . " NULL ";
1039
-                        /*if($default_value != '')
850
+				switch ($field_type):
851
+
852
+					case 'address':
853
+
854
+						$data_type = '';
855
+
856
+						if ($htmlvar_name != '') {
857
+							$prefix = $htmlvar_name . '_';
858
+						}
859
+						$old_prefix = $old_html_variable;
860
+
861
+						//$meta_field_add = "ALTER TABLE ".$detail_table." ADD `".$prefix."address` VARCHAR( 254 ) NULL";
862
+
863
+						$meta_field_add = "VARCHAR( 254 ) NULL";
864
+						if ($default_value != '') {
865
+							$meta_field_add .= " DEFAULT '" . $default_value . "'";
866
+						}
867
+
868
+						geodir_add_column_if_not_exist($detail_table, $prefix . "address", $meta_field_add);
869
+						//$wpdb->query($meta_field_add);
870
+
871
+
872
+						if (!empty($extra_fields)) {
873
+
874
+							if (isset($extra_fields['show_city']) && $extra_fields['show_city']) {
875
+								$meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "city` VARCHAR( 30 ) NULL";
876
+								$meta_field_add = "VARCHAR( 50 ) NULL";
877
+								if ($default_value != '') {
878
+									$meta_field_add .= " DEFAULT '" . $default_value . "'";
879
+								}
880
+
881
+								geodir_add_column_if_not_exist($detail_table, $prefix . "city", $meta_field_add);
882
+								//$wpdb->query($meta_field_add);
883
+							}
884
+							if (isset($extra_fields['show_region']) && $extra_fields['show_region']) {
885
+								$meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "region` VARCHAR( 30 ) NULL";
886
+								$meta_field_add = "VARCHAR( 50 ) NULL";
887
+								if ($default_value != '') {
888
+									$meta_field_add .= " DEFAULT '" . $default_value . "'";
889
+								}
890
+
891
+								geodir_add_column_if_not_exist($detail_table, $prefix . "region", $meta_field_add);
892
+								//$wpdb->query($meta_field_add);
893
+							}
894
+							if (isset($extra_fields['show_country']) && $extra_fields['show_country']) {
895
+								$meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "country` VARCHAR( 30 ) NULL";
896
+
897
+								$meta_field_add = "VARCHAR( 30 ) NULL";
898
+								if ($default_value != '') {
899
+									$meta_field_add .= " DEFAULT '" . $default_value . "'";
900
+								}
901
+
902
+								geodir_add_column_if_not_exist($detail_table, $prefix . "country", $meta_field_add);
903
+								//$wpdb->query($meta_field_add);
904
+							}
905
+							if (isset($extra_fields['show_zip']) && $extra_fields['show_zip']) {
906
+								$meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "zip` VARCHAR( 15 ) NULL";
907
+								$meta_field_add = "VARCHAR( 15 ) NULL";
908
+								if ($default_value != '') {
909
+									$meta_field_add .= " DEFAULT '" . $default_value . "'";
910
+								}
911
+
912
+								geodir_add_column_if_not_exist($detail_table, $prefix . "zip", $meta_field_add);
913
+								//$wpdb->query($meta_field_add);
914
+							}
915
+							if (isset($extra_fields['show_map']) && $extra_fields['show_map']) {
916
+								$meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "latitude` VARCHAR( 20 ) NULL";
917
+								$meta_field_add = "VARCHAR( 20 ) NULL";
918
+								if ($default_value != '') {
919
+									$meta_field_add .= " DEFAULT '" . $default_value . "'";
920
+								}
921
+
922
+								geodir_add_column_if_not_exist($detail_table, $prefix . "latitude", $meta_field_add);
923
+								//$wpdb->query($meta_field_add);
924
+
925
+								$meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "longitude` VARCHAR( 20 ) NULL";
926
+
927
+								$meta_field_add = "VARCHAR( 20 ) NULL";
928
+								if ($default_value != '') {
929
+									$meta_field_add .= " DEFAULT '" . $default_value . "'";
930
+								}
931
+
932
+								geodir_add_column_if_not_exist($detail_table, $prefix . "longitude", $meta_field_add);
933
+
934
+								//$wpdb->query($meta_field_add);
935
+							}
936
+							if (isset($extra_fields['show_mapview']) && $extra_fields['show_mapview']) {
937
+								$meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "mapview` VARCHAR( 15 ) NULL";
938
+
939
+								$meta_field_add = "VARCHAR( 15 ) NULL";
940
+								if ($default_value != '') {
941
+									$meta_field_add .= " DEFAULT '" . $default_value . "'";
942
+								}
943
+
944
+								geodir_add_column_if_not_exist($detail_table, $prefix . "mapview", $meta_field_add);
945
+
946
+								//$wpdb->query($meta_field_add);
947
+							}
948
+							if (isset($extra_fields['show_mapzoom']) && $extra_fields['show_mapzoom']) {
949
+								$meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "mapzoom` VARCHAR( 3 ) NULL";
950
+
951
+								$meta_field_add = "VARCHAR( 3 ) NULL";
952
+								if ($default_value != '') {
953
+									$meta_field_add .= " DEFAULT '" . $default_value . "'";
954
+								}
955
+
956
+								geodir_add_column_if_not_exist($detail_table, $prefix . "mapzoom", $meta_field_add);
957
+
958
+								//$wpdb->query($meta_field_add);
959
+							}
960
+							// show lat lng
961
+							if (isset($extra_fields['show_latlng']) && $extra_fields['show_latlng']) {
962
+								$meta_field_add = "ALTER TABLE " . $detail_table . " ADD `" . $prefix . "latlng` VARCHAR( 3 ) NULL";
963
+
964
+								$meta_field_add = "VARCHAR( 3 ) NULL";
965
+								$meta_field_add .= " DEFAULT '1'";
966
+
967
+								geodir_add_column_if_not_exist($detail_table, $prefix . "latlng", $meta_field_add);
968
+								//$wpdb->query($meta_field_add);
969
+							}
970
+						}
971
+
972
+						break;
973
+
974
+					case 'checkbox':
975
+						$data_type = 'TINYINT';
976
+
977
+						$meta_field_add = $data_type . "( 1 ) NOT NULL ";
978
+						if ((int)$default_value === 1) {
979
+							$meta_field_add .= " DEFAULT '1'";
980
+						}
981
+
982
+						$add_result = geodir_add_column_if_not_exist($detail_table, $htmlvar_name, $meta_field_add);
983
+						if ($add_result === false) {
984
+							return __('Column creation failed, you may have too many columns or the default value does not match with field data type.', 'geodirectory');
985
+						}
986
+						break;
987
+					case 'multiselect':
988
+					case 'select':
989
+						$data_type = 'VARCHAR';
990
+						$op_size = '500';
991
+
992
+						// only make the field as big as it needs to be.
993
+						if (isset($option_values) && $option_values && $field_type == 'select') {
994
+							$option_values_arr = explode(',', $option_values);
995
+
996
+							if (is_array($option_values_arr)) {
997
+								$op_max = 0;
998
+
999
+								foreach ($option_values_arr as $op_val) {
1000
+									if (strlen($op_val) && strlen($op_val) > $op_max) {
1001
+										$op_max = strlen($op_val);
1002
+									}
1003
+								}
1004
+
1005
+								if ($op_max) {
1006
+									$op_size = $op_max;
1007
+								}
1008
+							}
1009
+						} elseif (isset($option_values) && $option_values && $field_type == 'multiselect') {
1010
+							if (strlen($option_values)) {
1011
+								$op_size =  strlen($option_values);
1012
+							}
1013
+
1014
+							if (isset($request_field['multi_display_type'])) {
1015
+								$extra_fields = $request_field['multi_display_type'];
1016
+							}
1017
+						}
1018
+
1019
+						$meta_field_add = $data_type . "( $op_size ) NULL ";
1020
+						if ($default_value != '') {
1021
+							$meta_field_add .= " DEFAULT '" . $default_value . "'";
1022
+						}
1023
+
1024
+						$add_result = geodir_add_column_if_not_exist($detail_table, $htmlvar_name, $meta_field_add);
1025
+						if ($add_result === false) {
1026
+							return __('Column creation failed, you may have too many columns or the default value does not match with field data type.', 'geodirectory');
1027
+						}
1028
+						break;
1029
+					case 'textarea':
1030
+					case 'html':
1031
+					case 'url':
1032
+					case 'file':
1033
+
1034
+						$data_type = 'TEXT';
1035
+
1036
+						$default_value_add = " `" . $htmlvar_name . "` " . $data_type . " NULL ";
1037
+
1038
+						$meta_field_add = $data_type . " NULL ";
1039
+						/*if($default_value != '')
1040 1040
 					{ $meta_field_add .= " DEFAULT '".$default_value."'"; }*/
1041 1041
 
1042
-                        $add_result = geodir_add_column_if_not_exist($detail_table, $htmlvar_name, $meta_field_add);
1043
-                        if ($add_result === false) {
1044
-                            return __('Column creation failed, you may have too many columns or the default value does not match with field data type.', 'geodirectory');
1045
-                        }
1042
+						$add_result = geodir_add_column_if_not_exist($detail_table, $htmlvar_name, $meta_field_add);
1043
+						if ($add_result === false) {
1044
+							return __('Column creation failed, you may have too many columns or the default value does not match with field data type.', 'geodirectory');
1045
+						}
1046 1046
 
1047
-                        break;
1047
+						break;
1048 1048
 
1049
-                    case 'datepicker':
1049
+					case 'datepicker':
1050 1050
 
1051
-                        $data_type = 'DATE';
1051
+						$data_type = 'DATE';
1052 1052
 
1053
-                        $default_value_add = " `" . $htmlvar_name . "` " . $data_type . " NULL ";
1053
+						$default_value_add = " `" . $htmlvar_name . "` " . $data_type . " NULL ";
1054 1054
 
1055
-                        $meta_field_add = $data_type . " NULL ";
1055
+						$meta_field_add = $data_type . " NULL ";
1056 1056
 
1057
-                        $add_result = geodir_add_column_if_not_exist($detail_table, $htmlvar_name, $meta_field_add);
1058
-                        if ($add_result === false) {
1059
-                            return __('Column creation failed, you may have too many columns or the default value might have a invalid date format.', 'geodirectory');
1060
-                        }
1057
+						$add_result = geodir_add_column_if_not_exist($detail_table, $htmlvar_name, $meta_field_add);
1058
+						if ($add_result === false) {
1059
+							return __('Column creation failed, you may have too many columns or the default value might have a invalid date format.', 'geodirectory');
1060
+						}
1061 1061
 
1062
-                        break;
1062
+						break;
1063 1063
 
1064
-                    case 'time':
1064
+					case 'time':
1065 1065
 
1066
-                        $data_type = 'TIME';
1066
+						$data_type = 'TIME';
1067 1067
 
1068
-                        $default_value_add = " `" . $htmlvar_name . "` " . $data_type . " NULL ";
1068
+						$default_value_add = " `" . $htmlvar_name . "` " . $data_type . " NULL ";
1069 1069
 
1070
-                        $meta_field_add = $data_type . " NULL ";
1070
+						$meta_field_add = $data_type . " NULL ";
1071 1071
 
1072
-                        $add_result = geodir_add_column_if_not_exist($detail_table, $htmlvar_name, $meta_field_add);
1073
-                        if ($add_result === false) {
1074
-                            return __('Column creation failed, you may have too many columns or the default value might have a invalid time format.', 'geodirectory');
1075
-                        }
1072
+						$add_result = geodir_add_column_if_not_exist($detail_table, $htmlvar_name, $meta_field_add);
1073
+						if ($add_result === false) {
1074
+							return __('Column creation failed, you may have too many columns or the default value might have a invalid time format.', 'geodirectory');
1075
+						}
1076 1076
 
1077
-                        break;
1077
+						break;
1078 1078
 
1079
-                    default:
1079
+					default:
1080 1080
 
1081
-                        if ($data_type != 'VARCHAR' && $data_type != '') {
1082
-                            $meta_field_add = $data_type . " NULL ";
1081
+						if ($data_type != 'VARCHAR' && $data_type != '') {
1082
+							$meta_field_add = $data_type . " NULL ";
1083 1083
 
1084
-                            if ($data_type == 'FLOAT' && $decimal_point > 0) {
1085
-                                $meta_field_add = "DECIMAL(11, " . (int)$decimal_point . ") NULL ";
1086
-                            }
1084
+							if ($data_type == 'FLOAT' && $decimal_point > 0) {
1085
+								$meta_field_add = "DECIMAL(11, " . (int)$decimal_point . ") NULL ";
1086
+							}
1087 1087
 
1088
-                            if (is_numeric($default_value) && $default_value != '') {
1089
-                                $default_value_add .= " DEFAULT '" . $default_value . "'";
1090
-                                $meta_field_add .= " DEFAULT '" . $default_value . "'";
1091
-                            }
1092
-                        } else {
1093
-                            $meta_field_add = " VARCHAR( 254 ) NULL ";
1088
+							if (is_numeric($default_value) && $default_value != '') {
1089
+								$default_value_add .= " DEFAULT '" . $default_value . "'";
1090
+								$meta_field_add .= " DEFAULT '" . $default_value . "'";
1091
+							}
1092
+						} else {
1093
+							$meta_field_add = " VARCHAR( 254 ) NULL ";
1094 1094
 
1095
-                            if ($default_value != '') {
1096
-                                $default_value_add .= " DEFAULT '" . $default_value . "'";
1097
-                                $meta_field_add .= " DEFAULT '" . $default_value . "'";
1098
-                            }
1099
-                        }
1095
+							if ($default_value != '') {
1096
+								$default_value_add .= " DEFAULT '" . $default_value . "'";
1097
+								$meta_field_add .= " DEFAULT '" . $default_value . "'";
1098
+							}
1099
+						}
1100 1100
 
1101
-                        $add_result = geodir_add_column_if_not_exist($detail_table, $htmlvar_name, $meta_field_add);
1102
-                        if ($add_result === false) {
1103
-                            return __('Column creation failed, you may have too many columns or the default value does not match with field data type.', 'geodirectory');
1104
-                        }
1105
-                        break;
1106
-                endswitch;
1101
+						$add_result = geodir_add_column_if_not_exist($detail_table, $htmlvar_name, $meta_field_add);
1102
+						if ($add_result === false) {
1103
+							return __('Column creation failed, you may have too many columns or the default value does not match with field data type.', 'geodirectory');
1104
+						}
1105
+						break;
1106
+				endswitch;
1107 1107
 
1108
-                $extra_field_query = '';
1109
-                if (!empty($extra_fields)) {
1110
-                    $extra_field_query = serialize($extra_fields);
1111
-                }
1108
+				$extra_field_query = '';
1109
+				if (!empty($extra_fields)) {
1110
+					$extra_field_query = serialize($extra_fields);
1111
+				}
1112 1112
 
1113
-                $decimal_point = $field_type == 'text' && $data_type == 'FLOAT' ? $decimal_point : '';
1113
+				$decimal_point = $field_type == 'text' && $data_type == 'FLOAT' ? $decimal_point : '';
1114 1114
 
1115
-                $wpdb->query(
1115
+				$wpdb->query(
1116 1116
 
1117
-                    $wpdb->prepare(
1117
+					$wpdb->prepare(
1118 1118
 
1119
-                        "insert into " . GEODIR_CUSTOM_FIELDS_TABLE . " set 
1119
+						"insert into " . GEODIR_CUSTOM_FIELDS_TABLE . " set 
1120 1120
 					post_type = %s,
1121 1121
 					admin_title = %s,
1122 1122
 					site_title = %s,
@@ -1149,26 +1149,26 @@  discard block
 block discarded – undo
1149 1149
 					validation_msg = %s,
1150 1150
 					for_admin_use = %s ",
1151 1151
 
1152
-                        array($post_type, $admin_title, $site_title, $field_type, $field_type_key, $htmlvar_name, $admin_desc, $clabels, $default_value, $sort_order, $is_active, $is_default, $is_admin, $is_required, $required_msg, $css_class, $field_icon, $show_on_listing,$show_in, $show_on_detail, $show_as_tab, $option_values, $price_pkg, $cat_sort, $cat_filter, $data_type, $extra_field_query, $decimal_point,$validation_pattern,$validation_msg, $for_admin_use)
1152
+						array($post_type, $admin_title, $site_title, $field_type, $field_type_key, $htmlvar_name, $admin_desc, $clabels, $default_value, $sort_order, $is_active, $is_default, $is_admin, $is_required, $required_msg, $css_class, $field_icon, $show_on_listing,$show_in, $show_on_detail, $show_as_tab, $option_values, $price_pkg, $cat_sort, $cat_filter, $data_type, $extra_field_query, $decimal_point,$validation_pattern,$validation_msg, $for_admin_use)
1153 1153
 
1154
-                    )
1154
+					)
1155 1155
 
1156
-                );
1156
+				);
1157 1157
 
1158
-                $lastid = $wpdb->insert_id;
1158
+				$lastid = $wpdb->insert_id;
1159 1159
 
1160
-                $lastid = trim($lastid);
1160
+				$lastid = trim($lastid);
1161 1161
 
1162
-            }
1162
+			}
1163 1163
 
1164
-            return (int)$lastid;
1164
+			return (int)$lastid;
1165 1165
 
1166 1166
 
1167
-        } else {
1168
-            return 'HTML Variable Name should be a unique name';
1169
-        }
1167
+		} else {
1168
+			return 'HTML Variable Name should be a unique name';
1169
+		}
1170 1170
 
1171
-    }
1171
+	}
1172 1172
 }
1173 1173
 
1174 1174
 /**
@@ -1183,63 +1183,63 @@  discard block
 block discarded – undo
1183 1183
 function godir_set_field_order($field_ids = array())
1184 1184
 {
1185 1185
 
1186
-    global $wpdb;
1186
+	global $wpdb;
1187 1187
 
1188
-    $count = 0;
1189
-    if (!empty($field_ids)):
1190
-        $post_meta_info = false;
1191
-        foreach ($field_ids as $id) {
1188
+	$count = 0;
1189
+	if (!empty($field_ids)):
1190
+		$post_meta_info = false;
1191
+		foreach ($field_ids as $id) {
1192 1192
 
1193
-            $cf = trim($id, '_');
1193
+			$cf = trim($id, '_');
1194 1194
 
1195
-            $post_meta_info = $wpdb->query(
1196
-                $wpdb->prepare(
1197
-                    "update " . GEODIR_CUSTOM_FIELDS_TABLE . " set 
1195
+			$post_meta_info = $wpdb->query(
1196
+				$wpdb->prepare(
1197
+					"update " . GEODIR_CUSTOM_FIELDS_TABLE . " set 
1198 1198
 															sort_order=%d 
1199 1199
 															where id= %d",
1200
-                    array($count, $cf)
1201
-                )
1202
-            );
1203
-            $count++;
1204
-        }
1205
-
1206
-        return $post_meta_info;
1207
-    else:
1208
-        return false;
1209
-    endif;
1200
+					array($count, $cf)
1201
+				)
1202
+			);
1203
+			$count++;
1204
+		}
1205
+
1206
+		return $post_meta_info;
1207
+	else:
1208
+		return false;
1209
+	endif;
1210 1210
 }
1211 1211
 
1212 1212
 function geodir_get_cf_value($cf) {
1213
-    global $gd_session;
1214
-    $value = '';
1215
-    if (is_admin()) {
1216
-        global $post;
1217
-
1218
-        if (isset($_REQUEST['post'])) {
1219
-            $_REQUEST['pid'] = (int)$_REQUEST['post'];
1220
-        }
1221
-    }
1222
-
1223
-    if (isset($_REQUEST['backandedit']) && $_REQUEST['backandedit'] && $gd_ses_listing = $gd_session->get('listing')) {
1224
-        $post = $gd_ses_listing;
1225
-        $value = isset($post[$cf['name']]) ? $post[$cf['name']] : '';
1226
-    } elseif (isset($_REQUEST['pid']) && $_REQUEST['pid'] != '') {
1227
-        $value = geodir_get_post_meta($_REQUEST['pid'], $cf['name'], true);
1228
-    } else {
1229
-        if ($value == '') {
1230
-            $value = $cf['default'];
1231
-        }
1232
-    }
1213
+	global $gd_session;
1214
+	$value = '';
1215
+	if (is_admin()) {
1216
+		global $post;
1217
+
1218
+		if (isset($_REQUEST['post'])) {
1219
+			$_REQUEST['pid'] = (int)$_REQUEST['post'];
1220
+		}
1221
+	}
1222
+
1223
+	if (isset($_REQUEST['backandedit']) && $_REQUEST['backandedit'] && $gd_ses_listing = $gd_session->get('listing')) {
1224
+		$post = $gd_ses_listing;
1225
+		$value = isset($post[$cf['name']]) ? $post[$cf['name']] : '';
1226
+	} elseif (isset($_REQUEST['pid']) && $_REQUEST['pid'] != '') {
1227
+		$value = geodir_get_post_meta($_REQUEST['pid'], $cf['name'], true);
1228
+	} else {
1229
+		if ($value == '') {
1230
+			$value = $cf['default'];
1231
+		}
1232
+	}
1233 1233
     
1234
-    /**
1235
-     * Filter the custom field value.
1236
-     *
1237
-     * @since 1.6.20
1238
-     * 
1239
-     * @param mixed $value Custom field value.
1240
-     * @param array $cf Custom field info.
1241
-     */
1242
-    return apply_filters( 'geodir_get_cf_value', $value, $cf );
1234
+	/**
1235
+	 * Filter the custom field value.
1236
+	 *
1237
+	 * @since 1.6.20
1238
+	 * 
1239
+	 * @param mixed $value Custom field value.
1240
+	 * @param array $cf Custom field info.
1241
+	 */
1242
+	return apply_filters( 'geodir_get_cf_value', $value, $cf );
1243 1243
 }
1244 1244
 
1245 1245
 /**
@@ -1258,424 +1258,424 @@  discard block
 block discarded – undo
1258 1258
  * @param string $post_type Optional. The wordpress post type.
1259 1259
  */
1260 1260
 function geodir_get_custom_fields_html($package_id = '', $default = 'custom', $post_type = 'gd_place') {
1261
-    global $is_default, $mapzoom, $gd_session;
1261
+	global $is_default, $mapzoom, $gd_session;
1262 1262
 
1263
-    $listing_type = $post_type;
1263
+	$listing_type = $post_type;
1264 1264
 
1265
-    $custom_fields = geodir_post_custom_fields($package_id, $default, $post_type);
1265
+	$custom_fields = geodir_post_custom_fields($package_id, $default, $post_type);
1266 1266
 
1267
-    foreach ($custom_fields as $key => $val) {
1268
-        if(isset($val['extra_fields'])){$extra_fields = $val['extra_fields'];}
1269
-        $val = stripslashes_deep($val); // strip slashes from labels
1270
-        if(isset($val['extra_fields'])){$val['extra_fields'] = $extra_fields;}
1267
+	foreach ($custom_fields as $key => $val) {
1268
+		if(isset($val['extra_fields'])){$extra_fields = $val['extra_fields'];}
1269
+		$val = stripslashes_deep($val); // strip slashes from labels
1270
+		if(isset($val['extra_fields'])){$val['extra_fields'] = $extra_fields;}
1271 1271
 
1272
-        $name = $val['name'];
1273
-        $type = $val['type'];
1274
-        $is_default = $val['is_default'];
1272
+		$name = $val['name'];
1273
+		$type = $val['type'];
1274
+		$is_default = $val['is_default'];
1275 1275
 
1276
-        /* field available to site admin only for edit */
1277
-        $for_admin_use = isset($val['for_admin_use']) && (int)$val['for_admin_use'] == 1 ? true : false;
1278
-        if ($for_admin_use && !is_super_admin()) {
1279
-            continue;
1280
-        }
1276
+		/* field available to site admin only for edit */
1277
+		$for_admin_use = isset($val['for_admin_use']) && (int)$val['for_admin_use'] == 1 ? true : false;
1278
+		if ($for_admin_use && !is_super_admin()) {
1279
+			continue;
1280
+		}
1281 1281
 
1282
-        if (is_admin()) {
1283
-            global $post;
1282
+		if (is_admin()) {
1283
+			global $post;
1284 1284
 
1285
-            if (isset($_REQUEST['post']))
1286
-                $_REQUEST['pid'] = $_REQUEST['post'];
1287
-        }
1285
+			if (isset($_REQUEST['post']))
1286
+				$_REQUEST['pid'] = $_REQUEST['post'];
1287
+		}
1288 1288
 
1289 1289
         
1290 1290
 
1291
-        /**
1292
-         * Called before the custom fields info is output for submitting a post.
1293
-         *
1294
-         * Used dynamic hook type geodir_before_custom_form_field_$name.
1295
-         *
1296
-         * @since 1.0.0
1297
-         * @param string $listing_type The post post type.
1298
-         * @param int $package_id The price package ID for the post.
1299
-         * @param array $val The settings array for the field. {@see geodir_custom_field_save()}.
1300
-         * @see 'geodir_after_custom_form_field_$name'
1301
-         */
1302
-        do_action('geodir_before_custom_form_field_' . $name, $listing_type, $package_id, $val);
1303
-
1304
-
1305
-        $custom_field = $val;
1306
-        $html ='';
1307
-        /**
1308
-         * Filter the output for custom fields.
1309
-         *
1310
-         * Here we can remove or add new functions depending on the field type.
1311
-         *
1312
-         * @param string $html The html to be filtered (blank).
1313
-         * @param array $custom_field The custom field array values.
1314
-         */
1315
-        echo apply_filters("geodir_custom_field_input_{$type}",$html,$custom_field);
1316
-
1317
-
1318
-
1319
-        /**
1320
-         * Called after the custom fields info is output for submitting a post.
1321
-         *
1322
-         * Used dynamic hook type geodir_after_custom_form_field_$name.
1323
-         *
1324
-         * @since 1.0.0
1325
-         * @param string $listing_type The post post type.
1326
-         * @param int $package_id The price package ID for the post.
1327
-         * @param array $val The settings array for the field. {@see geodir_custom_field_save()}.
1328
-         * @see 'geodir_before_custom_form_field_$name'
1329
-         */
1330
-        do_action('geodir_after_custom_form_field_' . $name, $listing_type, $package_id, $val);
1331
-
1332
-    }
1291
+		/**
1292
+		 * Called before the custom fields info is output for submitting a post.
1293
+		 *
1294
+		 * Used dynamic hook type geodir_before_custom_form_field_$name.
1295
+		 *
1296
+		 * @since 1.0.0
1297
+		 * @param string $listing_type The post post type.
1298
+		 * @param int $package_id The price package ID for the post.
1299
+		 * @param array $val The settings array for the field. {@see geodir_custom_field_save()}.
1300
+		 * @see 'geodir_after_custom_form_field_$name'
1301
+		 */
1302
+		do_action('geodir_before_custom_form_field_' . $name, $listing_type, $package_id, $val);
1303
+
1304
+
1305
+		$custom_field = $val;
1306
+		$html ='';
1307
+		/**
1308
+		 * Filter the output for custom fields.
1309
+		 *
1310
+		 * Here we can remove or add new functions depending on the field type.
1311
+		 *
1312
+		 * @param string $html The html to be filtered (blank).
1313
+		 * @param array $custom_field The custom field array values.
1314
+		 */
1315
+		echo apply_filters("geodir_custom_field_input_{$type}",$html,$custom_field);
1316
+
1317
+
1318
+
1319
+		/**
1320
+		 * Called after the custom fields info is output for submitting a post.
1321
+		 *
1322
+		 * Used dynamic hook type geodir_after_custom_form_field_$name.
1323
+		 *
1324
+		 * @since 1.0.0
1325
+		 * @param string $listing_type The post post type.
1326
+		 * @param int $package_id The price package ID for the post.
1327
+		 * @param array $val The settings array for the field. {@see geodir_custom_field_save()}.
1328
+		 * @see 'geodir_before_custom_form_field_$name'
1329
+		 */
1330
+		do_action('geodir_after_custom_form_field_' . $name, $listing_type, $package_id, $val);
1331
+
1332
+	}
1333 1333
 
1334 1334
 }
1335 1335
 
1336 1336
 
1337 1337
 if (!function_exists('geodir_get_field_infoby')) {
1338
-    /**
1339
-     * Get custom field using key and value.
1340
-     *
1341
-     * @since 1.0.0
1342
-     * @package GeoDirectory
1343
-     * @global object $wpdb WordPress Database object.
1344
-     * @param string $key The key you want to look for.
1345
-     * @param string $value The value of the key you want to look for.
1346
-     * @param string $geodir_post_type The post type.
1347
-     * @return bool|mixed Returns field info when available. otherwise returns false.
1348
-     */
1349
-    function geodir_get_field_infoby($key = '', $value = '', $geodir_post_type = '')
1350
-    {
1351
-
1352
-        global $wpdb;
1353
-
1354
-        $filter = $wpdb->get_row(
1355
-            $wpdb->prepare(
1356
-                "SELECT * FROM " . GEODIR_CUSTOM_FIELDS_TABLE . " WHERE post_type=%s AND " . $key . "='" . $value . "'",
1357
-                array($geodir_post_type)
1358
-            ),ARRAY_A
1359
-        );
1360
-
1361
-        if ($filter) {
1362
-            return $filter;
1363
-        } else {
1364
-            return false;
1365
-        }
1366
-
1367
-    }
1338
+	/**
1339
+	 * Get custom field using key and value.
1340
+	 *
1341
+	 * @since 1.0.0
1342
+	 * @package GeoDirectory
1343
+	 * @global object $wpdb WordPress Database object.
1344
+	 * @param string $key The key you want to look for.
1345
+	 * @param string $value The value of the key you want to look for.
1346
+	 * @param string $geodir_post_type The post type.
1347
+	 * @return bool|mixed Returns field info when available. otherwise returns false.
1348
+	 */
1349
+	function geodir_get_field_infoby($key = '', $value = '', $geodir_post_type = '')
1350
+	{
1351
+
1352
+		global $wpdb;
1353
+
1354
+		$filter = $wpdb->get_row(
1355
+			$wpdb->prepare(
1356
+				"SELECT * FROM " . GEODIR_CUSTOM_FIELDS_TABLE . " WHERE post_type=%s AND " . $key . "='" . $value . "'",
1357
+				array($geodir_post_type)
1358
+			),ARRAY_A
1359
+		);
1360
+
1361
+		if ($filter) {
1362
+			return $filter;
1363
+		} else {
1364
+			return false;
1365
+		}
1366
+
1367
+	}
1368 1368
 }
1369 1369
 
1370 1370
 
1371 1371
 function geodir_field_icon_proccess($cf){
1372 1372
 
1373 1373
 
1374
-    if (strpos($cf['field_icon'], 'http') !== false) {
1375
-        $field_icon = ' background: url(' . $cf['field_icon'] . ') no-repeat left center;background-size:18px 18px;padding-left: 21px;';
1376
-    } elseif (strpos($cf['field_icon'], 'fa fa-') !== false) {
1377
-        $field_icon = '<i class="' . $cf['field_icon'] . '"></i>';
1378
-    }else{
1379
-        $field_icon = $cf['field_icon'];
1380
-    }
1374
+	if (strpos($cf['field_icon'], 'http') !== false) {
1375
+		$field_icon = ' background: url(' . $cf['field_icon'] . ') no-repeat left center;background-size:18px 18px;padding-left: 21px;';
1376
+	} elseif (strpos($cf['field_icon'], 'fa fa-') !== false) {
1377
+		$field_icon = '<i class="' . $cf['field_icon'] . '"></i>';
1378
+	}else{
1379
+		$field_icon = $cf['field_icon'];
1380
+	}
1381 1381
 
1382
-    return $field_icon;
1382
+	return $field_icon;
1383 1383
 }
1384 1384
 
1385 1385
 if (!function_exists('geodir_show_listing_info')) {
1386
-    /**
1387
-     * Show listing info depending on field location.
1388
-     *
1389
-     * @since 1.0.0
1390
-     * @since 1.5.7 Custom fields option values added to db translation.
1391
-     *              Changes to display url fields title.
1392
-     * @package GeoDirectory
1393
-     * @global object $wpdb WordPress Database object.
1394
-     * @global object $post The current post object.
1395
-     *
1396
-     * @param string $fields_location In which page you are going to place this custom fields?. Ex: listing, detail etc.
1397
-     * @return string Returns listing info html.
1398
-     */
1399
-    function geodir_show_listing_info($fields_location = '') {
1400
-        global $post, $preview, $wpdb;
1401
-
1402
-        $package_info = array();
1403
-
1404
-        if(!isset($post->post_id)){
1405
-            $post = geodir_get_post_info($post->ID);
1406
-        }
1407
-
1408
-        $package_info = geodir_post_package_info($package_info, $post);
1409
-        $post_package_id = !empty($package_info->pid) ? $package_info->pid : '';
1410
-        $p_type = !empty($post->post_type) ? $post->post_type : geodir_get_current_posttype();
1411
-
1412
-        ob_start();
1413
-        $fields_info = geodir_post_custom_fields($post_package_id, 'all', $p_type, $fields_location);
1414
-
1415
-        if (!empty($fields_info)) {
1416
-            $post = stripslashes_deep($post); // strip slashes
1386
+	/**
1387
+	 * Show listing info depending on field location.
1388
+	 *
1389
+	 * @since 1.0.0
1390
+	 * @since 1.5.7 Custom fields option values added to db translation.
1391
+	 *              Changes to display url fields title.
1392
+	 * @package GeoDirectory
1393
+	 * @global object $wpdb WordPress Database object.
1394
+	 * @global object $post The current post object.
1395
+	 *
1396
+	 * @param string $fields_location In which page you are going to place this custom fields?. Ex: listing, detail etc.
1397
+	 * @return string Returns listing info html.
1398
+	 */
1399
+	function geodir_show_listing_info($fields_location = '') {
1400
+		global $post, $preview, $wpdb;
1401
+
1402
+		$package_info = array();
1403
+
1404
+		if(!isset($post->post_id)){
1405
+			$post = geodir_get_post_info($post->ID);
1406
+		}
1407
+
1408
+		$package_info = geodir_post_package_info($package_info, $post);
1409
+		$post_package_id = !empty($package_info->pid) ? $package_info->pid : '';
1410
+		$p_type = !empty($post->post_type) ? $post->post_type : geodir_get_current_posttype();
1411
+
1412
+		ob_start();
1413
+		$fields_info = geodir_post_custom_fields($post_package_id, 'all', $p_type, $fields_location);
1414
+
1415
+		if (!empty($fields_info)) {
1416
+			$post = stripslashes_deep($post); // strip slashes
1417 1417
             
1418
-            //echo '<div class="geodir-company_info field-group">';
1419
-            global $field_set_start;
1420
-            $field_set_start = 0;
1421
-
1422
-
1423
-
1424
-            foreach ($fields_info as $type) {
1425
-                if(isset($type['extra_fields'])){$extra_fields= $type['extra_fields'];}
1426
-                $type = stripslashes_deep($type); // strip slashes
1427
-                if(isset($type['extra_fields'])){$type['extra_fields'] = $extra_fields;}
1428
-                $html = '';
1429
-                $field_icon = geodir_field_icon_proccess($type);
1430
-                $filed_type = $type['type'];
1431
-                $html_var = isset($type['htmlvar_name']) ? $type['htmlvar_name'] : '';
1432
-                if($html_var=='post'){$html_var='post_address';}
1433
-
1434
-                /**
1435
-                 * Filter the output for custom fields.
1436
-                 *
1437
-                 * Here we can remove or add new functions depending on the field type.
1438
-                 *
1439
-                 * @param string $html The html to be filtered (blank).
1440
-                 * @param string $fields_location The location the field is to be show.
1441
-                 * @param array $type The array of field values.
1442
-                 */
1443
-                $html = apply_filters("geodir_custom_field_output_{$filed_type}",$html,$fields_location,$type);
1444
-
1445
-                $variables_array = array();
1446
-
1447
-
1448
-                if ($type['type'] != 'fieldset'):
1449
-                    $variables_array['post_id'] = !empty($post->ID) ? $post->ID : (!empty($post->pid) ? $post->pid : NULL);
1450
-                    $variables_array['label'] = __($type['site_title'], 'geodirectory');
1451
-                    $variables_array['value'] = '';
1452
-                    if (isset($post->{$type['htmlvar_name']}))
1453
-                        $variables_array['value'] = $post->{$type['htmlvar_name']};
1454
-                endif;
1455
-
1456
-
1457
-                if ($html):
1458
-
1459
-                    /**
1460
-                     * Called before a custom fields is output on the frontend.
1461
-                     *
1462
-                     * @since 1.0.0
1463
-                     * @param string $html_var The HTML variable name for the field.
1464
-                     */
1465
-                    do_action("geodir_before_show_{$html_var}");
1466
-                    /**
1467
-                     * Filter custom field output.
1468
-                     *
1469
-                     * @since 1.0.0
1470
-                     *
1471
-                     * @param string $html_var The HTML variable name for the field.
1472
-                     * @param string $html Custom field unfiltered HTML.
1473
-                     * @param array $variables_array Custom field variables array.
1474
-                     */
1475
-                    if ($html) echo apply_filters("geodir_show_{$html_var}", $html, $variables_array);
1476
-
1477
-                    /**
1478
-                     * Called after a custom fields is output on the frontend.
1479
-                     *
1480
-                     * @since 1.0.0
1481
-                     * @param string $html_var The HTML variable name for the field.
1482
-                     */
1483
-                    do_action("geodir_after_show_{$html_var}");
1484
-
1485
-                endif;
1486
-
1487
-            }
1488
-
1489
-            //echo '</div>';
1490
-
1491
-        }
1492
-
1493
-
1494
-        $html = ob_get_clean();
1495
-
1496
-        /**
1497
-         * Filter the custom fields over all output.
1498
-         *
1499
-         * @param string $html The html of the custom fields.
1500
-         * @param string $fields_location The location the fields are being output.
1501
-         * @since 1.6.9
1502
-         */
1503
-        return apply_filters('geodir_show_listing_info',$html,$fields_location);
1504
-
1505
-    }
1418
+			//echo '<div class="geodir-company_info field-group">';
1419
+			global $field_set_start;
1420
+			$field_set_start = 0;
1421
+
1422
+
1423
+
1424
+			foreach ($fields_info as $type) {
1425
+				if(isset($type['extra_fields'])){$extra_fields= $type['extra_fields'];}
1426
+				$type = stripslashes_deep($type); // strip slashes
1427
+				if(isset($type['extra_fields'])){$type['extra_fields'] = $extra_fields;}
1428
+				$html = '';
1429
+				$field_icon = geodir_field_icon_proccess($type);
1430
+				$filed_type = $type['type'];
1431
+				$html_var = isset($type['htmlvar_name']) ? $type['htmlvar_name'] : '';
1432
+				if($html_var=='post'){$html_var='post_address';}
1433
+
1434
+				/**
1435
+				 * Filter the output for custom fields.
1436
+				 *
1437
+				 * Here we can remove or add new functions depending on the field type.
1438
+				 *
1439
+				 * @param string $html The html to be filtered (blank).
1440
+				 * @param string $fields_location The location the field is to be show.
1441
+				 * @param array $type The array of field values.
1442
+				 */
1443
+				$html = apply_filters("geodir_custom_field_output_{$filed_type}",$html,$fields_location,$type);
1444
+
1445
+				$variables_array = array();
1446
+
1447
+
1448
+				if ($type['type'] != 'fieldset'):
1449
+					$variables_array['post_id'] = !empty($post->ID) ? $post->ID : (!empty($post->pid) ? $post->pid : NULL);
1450
+					$variables_array['label'] = __($type['site_title'], 'geodirectory');
1451
+					$variables_array['value'] = '';
1452
+					if (isset($post->{$type['htmlvar_name']}))
1453
+						$variables_array['value'] = $post->{$type['htmlvar_name']};
1454
+				endif;
1455
+
1456
+
1457
+				if ($html):
1458
+
1459
+					/**
1460
+					 * Called before a custom fields is output on the frontend.
1461
+					 *
1462
+					 * @since 1.0.0
1463
+					 * @param string $html_var The HTML variable name for the field.
1464
+					 */
1465
+					do_action("geodir_before_show_{$html_var}");
1466
+					/**
1467
+					 * Filter custom field output.
1468
+					 *
1469
+					 * @since 1.0.0
1470
+					 *
1471
+					 * @param string $html_var The HTML variable name for the field.
1472
+					 * @param string $html Custom field unfiltered HTML.
1473
+					 * @param array $variables_array Custom field variables array.
1474
+					 */
1475
+					if ($html) echo apply_filters("geodir_show_{$html_var}", $html, $variables_array);
1476
+
1477
+					/**
1478
+					 * Called after a custom fields is output on the frontend.
1479
+					 *
1480
+					 * @since 1.0.0
1481
+					 * @param string $html_var The HTML variable name for the field.
1482
+					 */
1483
+					do_action("geodir_after_show_{$html_var}");
1484
+
1485
+				endif;
1486
+
1487
+			}
1488
+
1489
+			//echo '</div>';
1490
+
1491
+		}
1492
+
1493
+
1494
+		$html = ob_get_clean();
1495
+
1496
+		/**
1497
+		 * Filter the custom fields over all output.
1498
+		 *
1499
+		 * @param string $html The html of the custom fields.
1500
+		 * @param string $fields_location The location the fields are being output.
1501
+		 * @since 1.6.9
1502
+		 */
1503
+		return apply_filters('geodir_show_listing_info',$html,$fields_location);
1504
+
1505
+	}
1506 1506
 }
1507 1507
 
1508 1508
 if (!function_exists('geodir_default_date_format')) {
1509
-    /**
1510
-     * Returns default date format.
1511
-     *
1512
-     * @since 1.0.0
1513
-     * @package GeoDirectory
1514
-     * @return mixed|string|void Returns default date format.
1515
-     */
1516
-    function geodir_default_date_format()
1517
-    {
1518
-        if ($format = get_option('date_format'))
1519
-            return $format;
1520
-        else
1521
-            return 'dd-mm-yy';
1522
-    }
1509
+	/**
1510
+	 * Returns default date format.
1511
+	 *
1512
+	 * @since 1.0.0
1513
+	 * @package GeoDirectory
1514
+	 * @return mixed|string|void Returns default date format.
1515
+	 */
1516
+	function geodir_default_date_format()
1517
+	{
1518
+		if ($format = get_option('date_format'))
1519
+			return $format;
1520
+		else
1521
+			return 'dd-mm-yy';
1522
+	}
1523 1523
 }
1524 1524
 
1525 1525
 if (!function_exists('geodir_get_formated_date')) {
1526
-    /**
1527
-     * Returns formatted date.
1528
-     *
1529
-     * @since 1.0.0
1530
-     * @package GeoDirectory
1531
-     * @param string $date Date string to convert.
1532
-     * @return bool|int|string Returns formatted date.
1533
-     */
1534
-    function geodir_get_formated_date($date)
1535
-    {
1536
-        return mysql2date(get_option('date_format'), $date);
1537
-    }
1526
+	/**
1527
+	 * Returns formatted date.
1528
+	 *
1529
+	 * @since 1.0.0
1530
+	 * @package GeoDirectory
1531
+	 * @param string $date Date string to convert.
1532
+	 * @return bool|int|string Returns formatted date.
1533
+	 */
1534
+	function geodir_get_formated_date($date)
1535
+	{
1536
+		return mysql2date(get_option('date_format'), $date);
1537
+	}
1538 1538
 }
1539 1539
 
1540 1540
 if (!function_exists('geodir_get_formated_time')) {
1541
-    /**
1542
-     * Returns formatted time.
1543
-     *
1544
-     * @since 1.0.0
1545
-     * @package GeoDirectory
1546
-     * @param string $time Time string to convert.
1547
-     * @return bool|int|string Returns formatted time.
1548
-     */
1549
-    function geodir_get_formated_time($time)
1550
-    {
1551
-        return mysql2date(get_option('time_format'), $time, $translate = true);
1552
-    }
1541
+	/**
1542
+	 * Returns formatted time.
1543
+	 *
1544
+	 * @since 1.0.0
1545
+	 * @package GeoDirectory
1546
+	 * @param string $time Time string to convert.
1547
+	 * @return bool|int|string Returns formatted time.
1548
+	 */
1549
+	function geodir_get_formated_time($time)
1550
+	{
1551
+		return mysql2date(get_option('time_format'), $time, $translate = true);
1552
+	}
1553 1553
 }
1554 1554
 
1555 1555
 
1556 1556
 if (!function_exists('geodir_save_post_file_fields')) {
1557
-    /**
1558
-     * Save post file fields
1559
-     *
1560
-     * @since 1.0.0
1561
-     * @since 1.4.7 Added `$extra_fields` parameter.
1562
-     * @package GeoDirectory
1563
-     * @global object $wpdb WordPress Database object.
1564
-     * @global string $plugin_prefix Geodirectory plugin table prefix.
1565
-     * @global object $current_user Current user object.
1566
-     * @param int $post_id
1567
-     * @param string $field_id
1568
-     * @param array $post_image
1569
-     * @param array $extra_fields Array of extra fields.
1570
-     */
1571
-    function geodir_save_post_file_fields($post_id = 0, $field_id = '', $post_image = array(), $extra_fields = array())
1572
-    {
1557
+	/**
1558
+	 * Save post file fields
1559
+	 *
1560
+	 * @since 1.0.0
1561
+	 * @since 1.4.7 Added `$extra_fields` parameter.
1562
+	 * @package GeoDirectory
1563
+	 * @global object $wpdb WordPress Database object.
1564
+	 * @global string $plugin_prefix Geodirectory plugin table prefix.
1565
+	 * @global object $current_user Current user object.
1566
+	 * @param int $post_id
1567
+	 * @param string $field_id
1568
+	 * @param array $post_image
1569
+	 * @param array $extra_fields Array of extra fields.
1570
+	 */
1571
+	function geodir_save_post_file_fields($post_id = 0, $field_id = '', $post_image = array(), $extra_fields = array())
1572
+	{
1573 1573
 
1574
-        global $wpdb, $plugin_prefix, $current_user;
1574
+		global $wpdb, $plugin_prefix, $current_user;
1575 1575
 
1576
-        $post_type = get_post_type($post_id);
1577
-        //echo $field_id; exit;
1578
-        $table = $plugin_prefix . $post_type . '_detail';
1576
+		$post_type = get_post_type($post_id);
1577
+		//echo $field_id; exit;
1578
+		$table = $plugin_prefix . $post_type . '_detail';
1579 1579
 
1580
-        $postcurr_images = array();
1581
-        $postcurr_images = geodir_get_post_meta($post_id, $field_id, true);
1582
-        $file_urls = '';
1580
+		$postcurr_images = array();
1581
+		$postcurr_images = geodir_get_post_meta($post_id, $field_id, true);
1582
+		$file_urls = '';
1583 1583
 
1584
-        if (!empty($post_image)) {
1584
+		if (!empty($post_image)) {
1585 1585
 
1586
-            $invalid_files = array();
1586
+			$invalid_files = array();
1587 1587
 
1588
-            //Get and remove all old images of post from database to set by new order
1589
-            $geodir_uploaddir = '';
1590
-            $uploads = wp_upload_dir();
1591
-            $uploads_dir = $uploads['path'];
1588
+			//Get and remove all old images of post from database to set by new order
1589
+			$geodir_uploaddir = '';
1590
+			$uploads = wp_upload_dir();
1591
+			$uploads_dir = $uploads['path'];
1592 1592
 
1593
-            $geodir_uploadpath = $uploads['path'];
1594
-            $geodir_uploadurl = $uploads['url'];
1595
-            $sub_dir = $uploads['subdir'];
1593
+			$geodir_uploadpath = $uploads['path'];
1594
+			$geodir_uploadurl = $uploads['url'];
1595
+			$sub_dir = $uploads['subdir'];
1596 1596
 
1597
-            $allowed_file_types = !empty($extra_fields['gd_file_types']) && is_array($extra_fields['gd_file_types']) && !in_array("*", $extra_fields['gd_file_types'] ) ? $extra_fields['gd_file_types'] : '';
1597
+			$allowed_file_types = !empty($extra_fields['gd_file_types']) && is_array($extra_fields['gd_file_types']) && !in_array("*", $extra_fields['gd_file_types'] ) ? $extra_fields['gd_file_types'] : '';
1598 1598
 
1599
-            for ($m = 0; $m < count($post_image); $m++) {
1599
+			for ($m = 0; $m < count($post_image); $m++) {
1600 1600
 
1601
-                /* --------- start ------- */
1601
+				/* --------- start ------- */
1602 1602
 
1603
-                if (!$find_image = $wpdb->get_var($wpdb->prepare("SELECT post_id FROM " . $table . " WHERE $field_id = %s AND post_id = %d", array($post_image[$m], $post_id)))) {
1603
+				if (!$find_image = $wpdb->get_var($wpdb->prepare("SELECT post_id FROM " . $table . " WHERE $field_id = %s AND post_id = %d", array($post_image[$m], $post_id)))) {
1604 1604
 
1605 1605
 
1606
-                    $curr_img_url = $post_image[$m];
1607
-                    $image_name_arr = explode('/', $curr_img_url);
1608
-                    $curr_img_dir = $image_name_arr[count($image_name_arr) - 2];
1609
-                    $filename = end($image_name_arr);
1610
-                    $img_name_arr = explode('.', $filename);
1606
+					$curr_img_url = $post_image[$m];
1607
+					$image_name_arr = explode('/', $curr_img_url);
1608
+					$curr_img_dir = $image_name_arr[count($image_name_arr) - 2];
1609
+					$filename = end($image_name_arr);
1610
+					$img_name_arr = explode('.', $filename);
1611 1611
 
1612
-                    $arr_file_type = wp_check_filetype($filename);
1612
+					$arr_file_type = wp_check_filetype($filename);
1613 1613
 
1614
-                    if (empty($arr_file_type['ext']) || empty($arr_file_type['type'])) {
1615
-                        continue;
1616
-                    }
1614
+					if (empty($arr_file_type['ext']) || empty($arr_file_type['type'])) {
1615
+						continue;
1616
+					}
1617 1617
 
1618
-                    $uploaded_file_type = $arr_file_type['type'];
1619
-                    $uploaded_file_ext = $arr_file_type['ext'];
1618
+					$uploaded_file_type = $arr_file_type['type'];
1619
+					$uploaded_file_ext = $arr_file_type['ext'];
1620 1620
 
1621
-                    if (!empty($allowed_file_types) && !in_array($uploaded_file_ext, $allowed_file_types)) {
1622
-                        continue; // Invalid file type.
1623
-                    }
1621
+					if (!empty($allowed_file_types) && !in_array($uploaded_file_ext, $allowed_file_types)) {
1622
+						continue; // Invalid file type.
1623
+					}
1624 1624
 
1625
-                    // Set an array containing a list of acceptable formats
1626
-                    //$allowed_file_types = array('image/jpg', 'image/jpeg', 'image/gif', 'image/png', 'application/pdf', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'application/octet-stream', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'text/csv', 'text/plain');
1625
+					// Set an array containing a list of acceptable formats
1626
+					//$allowed_file_types = array('image/jpg', 'image/jpeg', 'image/gif', 'image/png', 'application/pdf', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 'application/octet-stream', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'text/csv', 'text/plain');
1627 1627
 
1628
-                    if (!function_exists('wp_handle_upload'))
1629
-                        require_once(ABSPATH . 'wp-admin/includes/file.php');
1628
+					if (!function_exists('wp_handle_upload'))
1629
+						require_once(ABSPATH . 'wp-admin/includes/file.php');
1630 1630
 
1631
-                    if (!is_dir($geodir_uploadpath))
1632
-                        mkdir($geodir_uploadpath);
1631
+					if (!is_dir($geodir_uploadpath))
1632
+						mkdir($geodir_uploadpath);
1633 1633
 
1634
-                    $new_name = $post_id . '_' . $field_id . '_' . $img_name_arr[0] . '.' . $img_name_arr[1];
1635
-                    $explode_sub_dir = explode("/", $sub_dir);
1636
-                    if ($curr_img_dir == end($explode_sub_dir)) {
1637
-                        $img_path = $geodir_uploadpath . '/' . $filename;
1638
-                        $img_url = $geodir_uploadurl . '/' . $filename;
1639
-                    } else {
1640
-                        $img_path = $uploads_dir . '/temp_' . $current_user->data->ID . '/' . $filename;
1641
-                        $img_url = $uploads['url'] . '/temp_' . $current_user->data->ID . '/' . $filename;
1642
-                    }
1634
+					$new_name = $post_id . '_' . $field_id . '_' . $img_name_arr[0] . '.' . $img_name_arr[1];
1635
+					$explode_sub_dir = explode("/", $sub_dir);
1636
+					if ($curr_img_dir == end($explode_sub_dir)) {
1637
+						$img_path = $geodir_uploadpath . '/' . $filename;
1638
+						$img_url = $geodir_uploadurl . '/' . $filename;
1639
+					} else {
1640
+						$img_path = $uploads_dir . '/temp_' . $current_user->data->ID . '/' . $filename;
1641
+						$img_url = $uploads['url'] . '/temp_' . $current_user->data->ID . '/' . $filename;
1642
+					}
1643 1643
 
1644
-                    $uploaded_file = '';
1645
-                    if (file_exists($img_path))
1646
-                        $uploaded_file = copy($img_path, $geodir_uploadpath . '/' . $new_name);
1644
+					$uploaded_file = '';
1645
+					if (file_exists($img_path))
1646
+						$uploaded_file = copy($img_path, $geodir_uploadpath . '/' . $new_name);
1647 1647
 
1648
-                    if ($curr_img_dir != $geodir_uploaddir) {
1649
-                        if (file_exists($img_path))
1650
-                            unlink($img_path);
1651
-                    }
1648
+					if ($curr_img_dir != $geodir_uploaddir) {
1649
+						if (file_exists($img_path))
1650
+							unlink($img_path);
1651
+					}
1652 1652
 
1653
-                    if (!empty($uploaded_file))
1654
-                        $file_urls = $geodir_uploadurl . '/' . $new_name;
1653
+					if (!empty($uploaded_file))
1654
+						$file_urls = $geodir_uploadurl . '/' . $new_name;
1655 1655
 
1656
-                } else {
1657
-                    $file_urls = $post_image[$m];
1658
-                }
1659
-            }
1656
+				} else {
1657
+					$file_urls = $post_image[$m];
1658
+				}
1659
+			}
1660 1660
 
1661 1661
 
1662
-        }
1662
+		}
1663 1663
 
1664
-        //Remove all old attachments and temp images
1665
-        if (!empty($postcurr_images)) {
1664
+		//Remove all old attachments and temp images
1665
+		if (!empty($postcurr_images)) {
1666 1666
 
1667
-            if ($file_urls != $postcurr_images) {
1668
-                $invalid_files[] = (object)array('src' => $postcurr_images);
1669
-                $invalid_files = (object)$invalid_files;
1670
-            }
1671
-        }
1667
+			if ($file_urls != $postcurr_images) {
1668
+				$invalid_files[] = (object)array('src' => $postcurr_images);
1669
+				$invalid_files = (object)$invalid_files;
1670
+			}
1671
+		}
1672 1672
 
1673
-        geodir_save_post_meta($post_id, $field_id, $file_urls);
1673
+		geodir_save_post_meta($post_id, $field_id, $file_urls);
1674 1674
 
1675
-        if (!empty($invalid_files))
1676
-            geodir_remove_attachments($invalid_files);
1675
+		if (!empty($invalid_files))
1676
+			geodir_remove_attachments($invalid_files);
1677 1677
 
1678
-    }
1678
+	}
1679 1679
 }
1680 1680
 
1681 1681
 
@@ -1690,76 +1690,76 @@  discard block
 block discarded – undo
1690 1690
  */
1691 1691
 function geodir_custom_upload_mimes($existing_mimes = array())
1692 1692
 {
1693
-    $existing_mimes['wif'] = 'text/plain';
1694
-    $existing_mimes['jpg|jpeg'] = 'image/jpeg';
1695
-    $existing_mimes['gif'] = 'image/gif';
1696
-    $existing_mimes['png'] = 'image/png';
1697
-    $existing_mimes['pdf'] = 'application/pdf';
1698
-    $existing_mimes['txt'] = 'text/text';
1699
-    $existing_mimes['csv'] = 'application/octet-stream';
1700
-    $existing_mimes['doc'] = 'application/msword';
1701
-    $existing_mimes['xla|xls|xlt|xlw'] = 'application/vnd.ms-excel';
1702
-    $existing_mimes['docx'] = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document';
1703
-    $existing_mimes['xlsx'] = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';
1704
-    return $existing_mimes;
1693
+	$existing_mimes['wif'] = 'text/plain';
1694
+	$existing_mimes['jpg|jpeg'] = 'image/jpeg';
1695
+	$existing_mimes['gif'] = 'image/gif';
1696
+	$existing_mimes['png'] = 'image/png';
1697
+	$existing_mimes['pdf'] = 'application/pdf';
1698
+	$existing_mimes['txt'] = 'text/text';
1699
+	$existing_mimes['csv'] = 'application/octet-stream';
1700
+	$existing_mimes['doc'] = 'application/msword';
1701
+	$existing_mimes['xla|xls|xlt|xlw'] = 'application/vnd.ms-excel';
1702
+	$existing_mimes['docx'] = 'application/vnd.openxmlformats-officedocument.wordprocessingml.document';
1703
+	$existing_mimes['xlsx'] = 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet';
1704
+	return $existing_mimes;
1705 1705
 }
1706 1706
 
1707 1707
 if (!function_exists('geodir_plupload_action')) {
1708 1708
 
1709
-    /**
1710
-     * Get upload directory path details
1711
-     *
1712
-     * @since 1.0.0
1713
-     * @package GeoDirectory
1714
-     * @global object $current_user Current user object.
1715
-     * @param array $upload Array of upload directory data with keys of 'path','url', 'subdir, 'basedir', and 'error'.
1716
-     * @return mixed Returns upload directory details as an array.
1717
-     */
1718
-    function geodir_upload_dir($upload)
1719
-    {
1720
-        global $current_user;
1721
-        $upload['subdir'] = $upload['subdir'] . '/temp_' . $current_user->data->ID;
1722
-        $upload['path'] = $upload['basedir'] . $upload['subdir'];
1723
-        $upload['url'] = $upload['baseurl'] . $upload['subdir'];
1724
-        return $upload;
1725
-    }
1726
-
1727
-    /**
1728
-     * Handles place file and image upload.
1729
-     *
1730
-     * @since 1.0.0
1731
-     * @package GeoDirectory
1732
-     */
1733
-    function geodir_plupload_action()
1734
-    {
1735
-        // check ajax nonce
1736
-        $imgid = $_POST["imgid"];
1737
-
1738
-        check_ajax_referer($imgid . 'pluploadan');
1739
-
1740
-        // handle custom file uploaddir
1741
-        add_filter('upload_dir', 'geodir_upload_dir');
1742
-
1743
-        // change file orientation if needed
1744
-        $fixed_file = geodir_exif($_FILES[$imgid . 'async-upload']);
1745
-
1746
-        // handle file upload
1747
-        $status = wp_handle_upload($fixed_file, array('test_form' => true, 'action' => 'plupload_action'));
1748
-        // remove handle custom file uploaddir
1749
-        remove_filter('upload_dir', 'geodir_upload_dir');
1750
-
1751
-        if(!isset($status['url']) && isset($status['error'])){
1752
-            print_r($status);
1753
-        }
1754
-
1755
-        // send the uploaded file url in response
1756
-        if (isset($status['url'])) {
1757
-            echo $status['url'];
1758
-        } else {
1759
-            echo 'x';
1760
-        }
1761
-        exit;
1762
-    }
1709
+	/**
1710
+	 * Get upload directory path details
1711
+	 *
1712
+	 * @since 1.0.0
1713
+	 * @package GeoDirectory
1714
+	 * @global object $current_user Current user object.
1715
+	 * @param array $upload Array of upload directory data with keys of 'path','url', 'subdir, 'basedir', and 'error'.
1716
+	 * @return mixed Returns upload directory details as an array.
1717
+	 */
1718
+	function geodir_upload_dir($upload)
1719
+	{
1720
+		global $current_user;
1721
+		$upload['subdir'] = $upload['subdir'] . '/temp_' . $current_user->data->ID;
1722
+		$upload['path'] = $upload['basedir'] . $upload['subdir'];
1723
+		$upload['url'] = $upload['baseurl'] . $upload['subdir'];
1724
+		return $upload;
1725
+	}
1726
+
1727
+	/**
1728
+	 * Handles place file and image upload.
1729
+	 *
1730
+	 * @since 1.0.0
1731
+	 * @package GeoDirectory
1732
+	 */
1733
+	function geodir_plupload_action()
1734
+	{
1735
+		// check ajax nonce
1736
+		$imgid = $_POST["imgid"];
1737
+
1738
+		check_ajax_referer($imgid . 'pluploadan');
1739
+
1740
+		// handle custom file uploaddir
1741
+		add_filter('upload_dir', 'geodir_upload_dir');
1742
+
1743
+		// change file orientation if needed
1744
+		$fixed_file = geodir_exif($_FILES[$imgid . 'async-upload']);
1745
+
1746
+		// handle file upload
1747
+		$status = wp_handle_upload($fixed_file, array('test_form' => true, 'action' => 'plupload_action'));
1748
+		// remove handle custom file uploaddir
1749
+		remove_filter('upload_dir', 'geodir_upload_dir');
1750
+
1751
+		if(!isset($status['url']) && isset($status['error'])){
1752
+			print_r($status);
1753
+		}
1754
+
1755
+		// send the uploaded file url in response
1756
+		if (isset($status['url'])) {
1757
+			echo $status['url'];
1758
+		} else {
1759
+			echo 'x';
1760
+		}
1761
+		exit;
1762
+	}
1763 1763
 }
1764 1764
 
1765 1765
 /**
@@ -1774,17 +1774,17 @@  discard block
 block discarded – undo
1774 1774
  */
1775 1775
 function geodir_get_video($post_id)
1776 1776
 {
1777
-    global $wpdb, $plugin_prefix;
1777
+	global $wpdb, $plugin_prefix;
1778 1778
 
1779
-    $post_type = get_post_type($post_id);
1779
+	$post_type = get_post_type($post_id);
1780 1780
 
1781
-    $table = $plugin_prefix . $post_type . '_detail';
1781
+	$table = $plugin_prefix . $post_type . '_detail';
1782 1782
 
1783
-    $results = $wpdb->get_results($wpdb->prepare("SELECT geodir_video FROM " . $table . " WHERE post_id=%d", array($post_id)));
1783
+	$results = $wpdb->get_results($wpdb->prepare("SELECT geodir_video FROM " . $table . " WHERE post_id=%d", array($post_id)));
1784 1784
 
1785
-    if ($results) {
1786
-        return $results[0]->geodir_video;
1787
-    }
1785
+	if ($results) {
1786
+		return $results[0]->geodir_video;
1787
+	}
1788 1788
 
1789 1789
 }
1790 1790
 
@@ -1800,40 +1800,40 @@  discard block
 block discarded – undo
1800 1800
  */
1801 1801
 function geodir_get_special_offers($post_id)
1802 1802
 {
1803
-    global $wpdb, $plugin_prefix;
1803
+	global $wpdb, $plugin_prefix;
1804 1804
 
1805
-    $post_type = get_post_type($post_id);
1805
+	$post_type = get_post_type($post_id);
1806 1806
 
1807
-    $table = $plugin_prefix . $post_type . '_detail';
1807
+	$table = $plugin_prefix . $post_type . '_detail';
1808 1808
 
1809
-    $results = $wpdb->get_results($wpdb->prepare("SELECT geodir_special_offers FROM " . $table . " WHERE post_id=%d", array($post_id)));
1809
+	$results = $wpdb->get_results($wpdb->prepare("SELECT geodir_special_offers FROM " . $table . " WHERE post_id=%d", array($post_id)));
1810 1810
 
1811
-    if ($results) {
1812
-        return $results[0]->geodir_special_offers;
1813
-    }
1811
+	if ($results) {
1812
+		return $results[0]->geodir_special_offers;
1813
+	}
1814 1814
 
1815 1815
 }
1816 1816
 
1817 1817
 if (!function_exists('geodir_max_upload_size')) {
1818
-    /**
1819
-     * Get max upload file size
1820
-     *
1821
-     * @since 1.0.0
1822
-     * @package GeoDirectory
1823
-     * @return mixed|void Returns max upload file size.
1824
-     */
1825
-    function geodir_max_upload_size()
1826
-    {
1827
-        $max_filesize = (float)get_option('geodir_upload_max_filesize', 2);
1828
-
1829
-        if ($max_filesize > 0 && $max_filesize < 1) {
1830
-            $max_filesize = (int)($max_filesize * 1024) . 'kb';
1831
-        } else {
1832
-            $max_filesize = $max_filesize > 0 ? $max_filesize . 'mb' : '2mb';
1833
-        }
1834
-        /** Filter documented in geodirectory-functions/general_functions.php **/
1835
-        return apply_filters('geodir_default_image_upload_size_limit', $max_filesize);
1836
-    }
1818
+	/**
1819
+	 * Get max upload file size
1820
+	 *
1821
+	 * @since 1.0.0
1822
+	 * @package GeoDirectory
1823
+	 * @return mixed|void Returns max upload file size.
1824
+	 */
1825
+	function geodir_max_upload_size()
1826
+	{
1827
+		$max_filesize = (float)get_option('geodir_upload_max_filesize', 2);
1828
+
1829
+		if ($max_filesize > 0 && $max_filesize < 1) {
1830
+			$max_filesize = (int)($max_filesize * 1024) . 'kb';
1831
+		} else {
1832
+			$max_filesize = $max_filesize > 0 ? $max_filesize . 'mb' : '2mb';
1833
+		}
1834
+		/** Filter documented in geodirectory-functions/general_functions.php **/
1835
+		return apply_filters('geodir_default_image_upload_size_limit', $max_filesize);
1836
+	}
1837 1837
 }
1838 1838
 
1839 1839
 
@@ -1851,33 +1851,33 @@  discard block
 block discarded – undo
1851 1851
  */
1852 1852
 function geodir_add_custom_sort_options($fields, $post_type)
1853 1853
 {
1854
-    global $wpdb;
1854
+	global $wpdb;
1855 1855
 
1856
-    if ($post_type != '') {
1856
+	if ($post_type != '') {
1857 1857
 
1858
-        $all_postypes = geodir_get_posttypes();
1858
+		$all_postypes = geodir_get_posttypes();
1859 1859
 
1860
-        if (in_array($post_type, $all_postypes)) {
1860
+		if (in_array($post_type, $all_postypes)) {
1861 1861
 
1862
-            $custom_fields = $wpdb->get_results(
1863
-                $wpdb->prepare(
1864
-                    "select post_type,data_type,field_type,site_title,admin_title,htmlvar_name,field_icon from " . GEODIR_CUSTOM_FIELDS_TABLE . " where post_type = %s and is_active='1' and cat_sort='1' AND field_type != 'address' order by sort_order asc",
1865
-                    array($post_type)
1866
-                ), 'ARRAY_A'
1867
-            );
1862
+			$custom_fields = $wpdb->get_results(
1863
+				$wpdb->prepare(
1864
+					"select post_type,data_type,field_type,site_title,admin_title,htmlvar_name,field_icon from " . GEODIR_CUSTOM_FIELDS_TABLE . " where post_type = %s and is_active='1' and cat_sort='1' AND field_type != 'address' order by sort_order asc",
1865
+					array($post_type)
1866
+				), 'ARRAY_A'
1867
+			);
1868 1868
 
1869
-            if (!empty($custom_fields)) {
1869
+			if (!empty($custom_fields)) {
1870 1870
 
1871
-                foreach ($custom_fields as $val) {
1872
-                    $fields[] = $val;
1873
-                }
1874
-            }
1871
+				foreach ($custom_fields as $val) {
1872
+					$fields[] = $val;
1873
+				}
1874
+			}
1875 1875
 
1876
-        }
1876
+		}
1877 1877
 
1878
-    }
1878
+	}
1879 1879
 
1880
-    return $fields;
1880
+	return $fields;
1881 1881
 }
1882 1882
 
1883 1883
 
@@ -1893,76 +1893,76 @@  discard block
 block discarded – undo
1893 1893
 function geodir_get_custom_sort_options($post_type = '')
1894 1894
 {
1895 1895
 
1896
-    global $wpdb;
1897
-
1898
-    if ($post_type != '') {
1899
-
1900
-        $all_postypes = geodir_get_posttypes();
1901
-
1902
-        if (!in_array($post_type, $all_postypes))
1903
-            return false;
1904
-
1905
-        $fields = array();
1906
-
1907
-        $fields[] = array(
1908
-            'post_type' => $post_type,
1909
-            'data_type' => '',
1910
-            'field_type' => 'random',
1911
-            'site_title' => 'Random',
1912
-            'htmlvar_name' => 'post_title',
1913
-            'field_icon' =>  'fa fa-random',
1914
-            'description' =>  __('Random sort (not recommended for large sites)', 'geodirectory')
1915
-        );
1916
-
1917
-        $fields[] = array(
1918
-            'post_type' => $post_type,
1919
-            'data_type' => '',
1920
-            'field_type' => 'datetime',
1921
-            'site_title' => __('Add date', 'geodirectory'),
1922
-            'htmlvar_name' => 'post_date',
1923
-            'field_icon' =>  'fa fa-calendar',
1924
-            'description' =>  __('Sort by date added', 'geodirectory')
1925
-        );
1926
-        $fields[] = array(
1927
-            'post_type' => $post_type,
1928
-            'data_type' => '',
1929
-            'field_type' => 'bigint',
1930
-            'site_title' => __('Review', 'geodirectory'),
1931
-            'htmlvar_name' => 'comment_count',
1932
-            'field_icon' =>  'fa fa-commenting-o',
1933
-            'description' =>  __('Sort by the number of reviews', 'geodirectory')
1934
-        );
1935
-        $fields[] = array(
1936
-            'post_type' => $post_type,
1937
-            'data_type' => '',
1938
-            'field_type' => 'float',
1939
-            'site_title' => __('Rating', 'geodirectory'),
1940
-            'htmlvar_name' => 'overall_rating',
1941
-            'field_icon' =>  'fa fa-star-o',
1942
-            'description' =>  __('Sort by the overall rating value', 'geodirectory')
1943
-        );
1944
-        $fields[] = array(
1945
-            'post_type' => $post_type,
1946
-            'data_type' => '',
1947
-            'field_type' => 'text',
1948
-            'site_title' => __('Title', 'geodirectory'),
1949
-            'htmlvar_name' => 'post_title',
1950
-            'field_icon' =>  'fa fa-sort-alpha-desc',
1951
-            'description' =>  __('Sort alphabetically by title', 'geodirectory')
1952
-        );
1953
-
1954
-        /**
1955
-         * Hook to add custom sort options.
1956
-         *
1957
-         * @since 1.0.0
1958
-         * @param array $fields Unmodified sort options array.
1959
-         * @param string $post_type Post type.
1960
-         */
1961
-        return $fields = apply_filters('geodir_add_custom_sort_options', $fields, $post_type);
1962
-
1963
-    }
1964
-
1965
-    return false;
1896
+	global $wpdb;
1897
+
1898
+	if ($post_type != '') {
1899
+
1900
+		$all_postypes = geodir_get_posttypes();
1901
+
1902
+		if (!in_array($post_type, $all_postypes))
1903
+			return false;
1904
+
1905
+		$fields = array();
1906
+
1907
+		$fields[] = array(
1908
+			'post_type' => $post_type,
1909
+			'data_type' => '',
1910
+			'field_type' => 'random',
1911
+			'site_title' => 'Random',
1912
+			'htmlvar_name' => 'post_title',
1913
+			'field_icon' =>  'fa fa-random',
1914
+			'description' =>  __('Random sort (not recommended for large sites)', 'geodirectory')
1915
+		);
1916
+
1917
+		$fields[] = array(
1918
+			'post_type' => $post_type,
1919
+			'data_type' => '',
1920
+			'field_type' => 'datetime',
1921
+			'site_title' => __('Add date', 'geodirectory'),
1922
+			'htmlvar_name' => 'post_date',
1923
+			'field_icon' =>  'fa fa-calendar',
1924
+			'description' =>  __('Sort by date added', 'geodirectory')
1925
+		);
1926
+		$fields[] = array(
1927
+			'post_type' => $post_type,
1928
+			'data_type' => '',
1929
+			'field_type' => 'bigint',
1930
+			'site_title' => __('Review', 'geodirectory'),
1931
+			'htmlvar_name' => 'comment_count',
1932
+			'field_icon' =>  'fa fa-commenting-o',
1933
+			'description' =>  __('Sort by the number of reviews', 'geodirectory')
1934
+		);
1935
+		$fields[] = array(
1936
+			'post_type' => $post_type,
1937
+			'data_type' => '',
1938
+			'field_type' => 'float',
1939
+			'site_title' => __('Rating', 'geodirectory'),
1940
+			'htmlvar_name' => 'overall_rating',
1941
+			'field_icon' =>  'fa fa-star-o',
1942
+			'description' =>  __('Sort by the overall rating value', 'geodirectory')
1943
+		);
1944
+		$fields[] = array(
1945
+			'post_type' => $post_type,
1946
+			'data_type' => '',
1947
+			'field_type' => 'text',
1948
+			'site_title' => __('Title', 'geodirectory'),
1949
+			'htmlvar_name' => 'post_title',
1950
+			'field_icon' =>  'fa fa-sort-alpha-desc',
1951
+			'description' =>  __('Sort alphabetically by title', 'geodirectory')
1952
+		);
1953
+
1954
+		/**
1955
+		 * Hook to add custom sort options.
1956
+		 *
1957
+		 * @since 1.0.0
1958
+		 * @param array $fields Unmodified sort options array.
1959
+		 * @param string $post_type Post type.
1960
+		 */
1961
+		return $fields = apply_filters('geodir_add_custom_sort_options', $fields, $post_type);
1962
+
1963
+	}
1964
+
1965
+	return false;
1966 1966
 }
1967 1967
 
1968 1968
 
@@ -1978,117 +1978,117 @@  discard block
 block discarded – undo
1978 1978
 function godir_set_sort_field_order($field_ids = array())
1979 1979
 {
1980 1980
 
1981
-    global $wpdb;
1981
+	global $wpdb;
1982 1982
 
1983
-    $count = 0;
1984
-    if (!empty($field_ids)):
1985
-        foreach ($field_ids as $id) {
1983
+	$count = 0;
1984
+	if (!empty($field_ids)):
1985
+		foreach ($field_ids as $id) {
1986 1986
 
1987
-            $cf = trim($id, '_');
1987
+			$cf = trim($id, '_');
1988 1988
 
1989
-            $post_meta_info = $wpdb->query(
1990
-                $wpdb->prepare(
1991
-                    "update " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " set 
1989
+			$post_meta_info = $wpdb->query(
1990
+				$wpdb->prepare(
1991
+					"update " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " set 
1992 1992
 															sort_order=%d 
1993 1993
 															where id= %d",
1994
-                    array($count, $cf)
1995
-                )
1996
-            );
1997
-            $count++;
1998
-        }
1999
-
2000
-        return $field_ids;
2001
-    else:
2002
-        return false;
2003
-    endif;
1994
+					array($count, $cf)
1995
+				)
1996
+			);
1997
+			$count++;
1998
+		}
1999
+
2000
+		return $field_ids;
2001
+	else:
2002
+		return false;
2003
+	endif;
2004 2004
 }
2005 2005
 
2006 2006
 
2007 2007
 if (!function_exists('geodir_custom_sort_field_save')) {
2008
-    /**
2009
-     * Save or Update custom sort fields into the database.
2010
-     *
2011
-     * @since 1.0.0
2012
-     * @package GeoDirectory
2013
-     * @global object $wpdb WordPress Database object.
2014
-     * @global string $plugin_prefix Geodirectory plugin table prefix.
2015
-     * @param array $request_field {
2016
-     *    Attributes of the Request field.
2017
-     *
2018
-     *    @type string $action Ajax action name.
2019
-     *    @type string $manage_field_type Manage field type Default "sorting_options".
2020
-     *    @type string $create_field Do you want to create this field?.
2021
-     *    @type string $field_ins_upd Field created or updated?.
2022
-     *    @type string $_wpnonce Nonce value.
2023
-     *    @type string $listing_type The Post type.
2024
-     *    @type string $field_type Field Type.
2025
-     *    @type string $field_id Field ID.
2026
-     *    @type string $data_type Data Type.
2027
-     *    @type string $htmlvar_name HTML variable name.
2028
-     *    @type string $site_title Section title which you wish to display in frontend.
2029
-     *    @type string $is_default Is this default sorting?.
2030
-     *    @type string $is_active If not active then the field will not be displayed anywhere.
2031
-     *    @type string $sort_order Sort Order.
2032
-     *
2033
-     * }
2034
-     * @param bool $default Not yet implemented.
2035
-     * @return int Returns the last affected db table row id.
2036
-     */
2037
-    function geodir_custom_sort_field_save($request_field = array(), $default = false)
2038
-    {
2039
-
2040
-        global $wpdb, $plugin_prefix;
2041
-
2042
-        $result_str = isset($request_field['field_id']) ? trim($request_field['field_id']) : '';
2043
-
2044
-        $cf = trim($result_str, '_');
2045
-
2046
-        /*-------- check duplicate validation --------*/
2047
-
2048
-        $field_type = isset($request_field['field_type']) ? $request_field['field_type'] : '';
2049
-        $cehhtmlvar_name = isset($request_field['htmlvar_name']) ? $request_field['htmlvar_name'] : '';
2050
-
2051
-        $post_type = $request_field['listing_type'];
2052
-        $data_type = isset($request_field['data_type']) ? $request_field['data_type'] : '';
2053
-        $field_type = isset($request_field['field_type']) ? $request_field['field_type'] : '';
2054
-        $site_title = isset($request_field['site_title']) ? $request_field['site_title'] : '';
2055
-        $htmlvar_name = isset($request_field['htmlvar_name']) ? $request_field['htmlvar_name'] : '';
2056
-        $sort_order = isset($request_field['sort_order']) ? $request_field['sort_order'] : 0;
2057
-        $is_active = isset($request_field['is_active']) ? $request_field['is_active'] : 0;
2058
-        $is_default = isset($request_field['is_default']) ? $request_field['is_default'] : '';
2059
-        $asc = isset($request_field['asc']) ? $request_field['asc'] : 0;
2060
-        $desc = isset($request_field['desc']) ? $request_field['desc'] : 0;
2061
-        $asc_title = isset($request_field['asc_title']) ? $request_field['asc_title'] : '';
2062
-        $desc_title = isset($request_field['desc_title']) ? $request_field['desc_title'] : '';
2063
-
2064
-        $default_order = '';
2065
-        if ($is_default != '') {
2066
-            $default_order = $is_default;
2067
-            $is_default = '1';
2068
-        }
2069
-
2070
-
2071
-        $check_html_variable = $wpdb->get_var(
2072
-            $wpdb->prepare(
2073
-                "select htmlvar_name from " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " where htmlvar_name = %s and post_type = %s and field_type=%s ",
2074
-                array($cehhtmlvar_name, $post_type, $field_type)
2075
-            )
2076
-        );
2077
-
2078
-        if ($is_default == 1) {
2079
-
2080
-            $wpdb->query($wpdb->prepare("update " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " set is_default='0', default_order='' where post_type = %s", array($post_type)));
2081
-
2082
-        }
2083
-
2084
-
2085
-        if (!$check_html_variable) {
2086
-
2087
-            $wpdb->query(
2088
-
2089
-                $wpdb->prepare(
2090
-
2091
-                    "insert into " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " set 
2008
+	/**
2009
+	 * Save or Update custom sort fields into the database.
2010
+	 *
2011
+	 * @since 1.0.0
2012
+	 * @package GeoDirectory
2013
+	 * @global object $wpdb WordPress Database object.
2014
+	 * @global string $plugin_prefix Geodirectory plugin table prefix.
2015
+	 * @param array $request_field {
2016
+	 *    Attributes of the Request field.
2017
+	 *
2018
+	 *    @type string $action Ajax action name.
2019
+	 *    @type string $manage_field_type Manage field type Default "sorting_options".
2020
+	 *    @type string $create_field Do you want to create this field?.
2021
+	 *    @type string $field_ins_upd Field created or updated?.
2022
+	 *    @type string $_wpnonce Nonce value.
2023
+	 *    @type string $listing_type The Post type.
2024
+	 *    @type string $field_type Field Type.
2025
+	 *    @type string $field_id Field ID.
2026
+	 *    @type string $data_type Data Type.
2027
+	 *    @type string $htmlvar_name HTML variable name.
2028
+	 *    @type string $site_title Section title which you wish to display in frontend.
2029
+	 *    @type string $is_default Is this default sorting?.
2030
+	 *    @type string $is_active If not active then the field will not be displayed anywhere.
2031
+	 *    @type string $sort_order Sort Order.
2032
+	 *
2033
+	 * }
2034
+	 * @param bool $default Not yet implemented.
2035
+	 * @return int Returns the last affected db table row id.
2036
+	 */
2037
+	function geodir_custom_sort_field_save($request_field = array(), $default = false)
2038
+	{
2039
+
2040
+		global $wpdb, $plugin_prefix;
2041
+
2042
+		$result_str = isset($request_field['field_id']) ? trim($request_field['field_id']) : '';
2043
+
2044
+		$cf = trim($result_str, '_');
2045
+
2046
+		/*-------- check duplicate validation --------*/
2047
+
2048
+		$field_type = isset($request_field['field_type']) ? $request_field['field_type'] : '';
2049
+		$cehhtmlvar_name = isset($request_field['htmlvar_name']) ? $request_field['htmlvar_name'] : '';
2050
+
2051
+		$post_type = $request_field['listing_type'];
2052
+		$data_type = isset($request_field['data_type']) ? $request_field['data_type'] : '';
2053
+		$field_type = isset($request_field['field_type']) ? $request_field['field_type'] : '';
2054
+		$site_title = isset($request_field['site_title']) ? $request_field['site_title'] : '';
2055
+		$htmlvar_name = isset($request_field['htmlvar_name']) ? $request_field['htmlvar_name'] : '';
2056
+		$sort_order = isset($request_field['sort_order']) ? $request_field['sort_order'] : 0;
2057
+		$is_active = isset($request_field['is_active']) ? $request_field['is_active'] : 0;
2058
+		$is_default = isset($request_field['is_default']) ? $request_field['is_default'] : '';
2059
+		$asc = isset($request_field['asc']) ? $request_field['asc'] : 0;
2060
+		$desc = isset($request_field['desc']) ? $request_field['desc'] : 0;
2061
+		$asc_title = isset($request_field['asc_title']) ? $request_field['asc_title'] : '';
2062
+		$desc_title = isset($request_field['desc_title']) ? $request_field['desc_title'] : '';
2063
+
2064
+		$default_order = '';
2065
+		if ($is_default != '') {
2066
+			$default_order = $is_default;
2067
+			$is_default = '1';
2068
+		}
2069
+
2070
+
2071
+		$check_html_variable = $wpdb->get_var(
2072
+			$wpdb->prepare(
2073
+				"select htmlvar_name from " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " where htmlvar_name = %s and post_type = %s and field_type=%s ",
2074
+				array($cehhtmlvar_name, $post_type, $field_type)
2075
+			)
2076
+		);
2077
+
2078
+		if ($is_default == 1) {
2079
+
2080
+			$wpdb->query($wpdb->prepare("update " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " set is_default='0', default_order='' where post_type = %s", array($post_type)));
2081
+
2082
+		}
2083
+
2084
+
2085
+		if (!$check_html_variable) {
2086
+
2087
+			$wpdb->query(
2088
+
2089
+				$wpdb->prepare(
2090
+
2091
+					"insert into " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " set 
2092 2092
 				post_type = %s,
2093 2093
 				data_type = %s,
2094 2094
 				field_type = %s,
@@ -2103,23 +2103,23 @@  discard block
 block discarded – undo
2103 2103
 				asc_title = %s,
2104 2104
 				desc_title = %s",
2105 2105
 
2106
-                    array($post_type, $data_type, $field_type, $site_title, $htmlvar_name, $sort_order, $is_active, $is_default, $default_order, $asc, $desc, $asc_title, $desc_title)
2107
-                )
2106
+					array($post_type, $data_type, $field_type, $site_title, $htmlvar_name, $sort_order, $is_active, $is_default, $default_order, $asc, $desc, $asc_title, $desc_title)
2107
+				)
2108 2108
 
2109
-            );
2109
+			);
2110 2110
 
2111 2111
 
2112
-            $lastid = $wpdb->insert_id;
2112
+			$lastid = $wpdb->insert_id;
2113 2113
 
2114
-            $lastid = trim($lastid);
2114
+			$lastid = trim($lastid);
2115 2115
 
2116
-        } else {
2116
+		} else {
2117 2117
 
2118
-            $wpdb->query(
2118
+			$wpdb->query(
2119 2119
 
2120
-                $wpdb->prepare(
2120
+				$wpdb->prepare(
2121 2121
 
2122
-                    "update " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " set 
2122
+					"update " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " set 
2123 2123
 				post_type = %s,
2124 2124
 				data_type = %s,
2125 2125
 				field_type = %s,
@@ -2135,123 +2135,123 @@  discard block
 block discarded – undo
2135 2135
 				desc_title = %s
2136 2136
 				where id = %d",
2137 2137
 
2138
-                    array($post_type, $data_type, $field_type, $site_title, $htmlvar_name, $sort_order, $is_active, $is_default, $default_order, $asc, $desc, $asc_title, $desc_title, $cf)
2139
-                )
2138
+					array($post_type, $data_type, $field_type, $site_title, $htmlvar_name, $sort_order, $is_active, $is_default, $default_order, $asc, $desc, $asc_title, $desc_title, $cf)
2139
+				)
2140 2140
 
2141
-            );
2141
+			);
2142 2142
 
2143
-            $lastid = trim($cf);
2143
+			$lastid = trim($cf);
2144 2144
 
2145
-        }
2145
+		}
2146 2146
 
2147 2147
 
2148
-        return (int)$lastid;
2148
+		return (int)$lastid;
2149 2149
 
2150
-    }
2150
+	}
2151 2151
 }
2152 2152
 
2153 2153
 
2154 2154
 if (!function_exists('geodir_custom_sort_field_delete')) {
2155
-    /**
2156
-     * Delete a custom sort field using field id.
2157
-     * @since 1.0.0
2158
-     * @package GeoDirectory
2159
-     * @global object $wpdb WordPress Database object.
2160
-     * @global string $plugin_prefix Geodirectory plugin table prefix.
2161
-     * @param string $field_id The field ID.
2162
-     * @return int|string Returns field id when successful deletion, else returns 0.
2163
-     */
2164
-    function geodir_custom_sort_field_delete($field_id = '')
2165
-    {
2166
-
2167
-        global $wpdb, $plugin_prefix;
2168
-        if ($field_id != '') {
2169
-            $cf = trim($field_id, '_');
2170
-
2171
-            $wpdb->query($wpdb->prepare("delete from " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " where id= %d ", array($cf)));
2172
-
2173
-            return $field_id;
2174
-
2175
-        } else
2176
-            return 0;
2177
-
2178
-    }
2155
+	/**
2156
+	 * Delete a custom sort field using field id.
2157
+	 * @since 1.0.0
2158
+	 * @package GeoDirectory
2159
+	 * @global object $wpdb WordPress Database object.
2160
+	 * @global string $plugin_prefix Geodirectory plugin table prefix.
2161
+	 * @param string $field_id The field ID.
2162
+	 * @return int|string Returns field id when successful deletion, else returns 0.
2163
+	 */
2164
+	function geodir_custom_sort_field_delete($field_id = '')
2165
+	{
2166
+
2167
+		global $wpdb, $plugin_prefix;
2168
+		if ($field_id != '') {
2169
+			$cf = trim($field_id, '_');
2170
+
2171
+			$wpdb->query($wpdb->prepare("delete from " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " where id= %d ", array($cf)));
2172
+
2173
+			return $field_id;
2174
+
2175
+		} else
2176
+			return 0;
2177
+
2178
+	}
2179 2179
 }
2180 2180
 
2181 2181
 
2182 2182
 if (!function_exists('geodir_custom_sort_field_adminhtml')) {
2183
-    /**
2184
-     * Custom sort field admin html.
2185
-     *
2186
-     * @since 1.0.0
2187
-     * @package GeoDirectory
2188
-     * @global object $wpdb WordPress Database object.
2189
-     * @param string $field_type The form field type.
2190
-     * @param object|int $result_str The custom field results object or row id.
2191
-     * @param string $field_ins_upd When set to "submit" displays form.
2192
-     * @param bool $default when set to true field will be for admin use only.
2193
-     */
2194
-    function geodir_custom_sort_field_adminhtml($field_type, $result_str, $field_ins_upd = '', $field_type_key='')
2195
-    {
2196
-        global $wpdb;
2197
-        $cf = $result_str;
2198
-        if (!is_object($cf)) {
2199
-            $field_info = $wpdb->get_row($wpdb->prepare("SELECT * FROM " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " WHERE id = %d", array($cf)));
2200
-        } else {
2201
-            $field_info = $cf;
2202
-            $result_str = $cf->id;
2203
-        }
2204
-
2205
-        $field_info = stripslashes_deep($field_info); // strip slashes
2206
-
2207
-        if (!isset($field_info->post_type)) {
2208
-            $post_type = sanitize_text_field($_REQUEST['listing_type']);
2209
-        } else {
2210
-            $post_type = $field_info->post_type;
2211
-        }
2212
-
2213
-
2214
-        $htmlvar_name = isset($field_type_key) ? $field_type_key : '';
2215
-
2216
-        $site_title = '';
2217
-        if ($site_title == '')
2218
-            $site_title = isset($field_info->site_title) ? $field_info->site_title : '';
2219
-
2220
-        if ($site_title == '') {
2221
-            $fields = geodir_get_custom_sort_options($post_type);
2222
-
2223
-            foreach ($fields as $val) {
2224
-                $val = stripslashes_deep($val); // strip slashes
2225
-
2226
-                if ($val['field_type'] == $field_type && $val['htmlvar_name'] == $htmlvar_name) {
2227
-                    $site_title = isset($val['site_title']) ? $val['site_title'] : '';
2228
-                }
2229
-            }
2230
-        }
2231
-
2232
-        if ($htmlvar_name == '')
2233
-            $htmlvar_name = isset($field_info->htmlvar_name) ? $field_info->htmlvar_name : '';
2234
-
2235
-        $nonce = wp_create_nonce('custom_fields_' . $result_str);
2236
-
2237
-        $field_icon = '<i class="fa fa-cog" aria-hidden="true"></i>';
2238
-        $cso_arr = geodir_get_custom_sort_options($post_type);
2239
-
2240
-        $cur_field_type = (isset($cf->field_type)) ? $cf->field_type : esc_html($_REQUEST['field_type']);
2241
-        foreach($cso_arr as $cso){
2242
-            if($cur_field_type==$cso['field_type']){
2243
-
2244
-                if (isset($cso['field_icon']) && strpos($cso['field_icon'], 'fa fa-') !== false) {
2245
-                    $field_icon = '<i class="'.$cso['field_icon'].'" aria-hidden="true"></i>';
2246
-                }elseif(isset($cso['field_icon']) && $cso['field_icon']){
2247
-                    $field_icon = '<b class="gd-cf-icon" style="background-image: url(\''.$cso['field_icon'].'\')"></b>';
2248
-                }
2249
-
2250
-            }
2251
-        }
2252
-
2253
-        $radio_id = (isset($field_info->htmlvar_name)) ? $field_info->htmlvar_name.$field_type : rand(5, 500);
2254
-        ?>
2183
+	/**
2184
+	 * Custom sort field admin html.
2185
+	 *
2186
+	 * @since 1.0.0
2187
+	 * @package GeoDirectory
2188
+	 * @global object $wpdb WordPress Database object.
2189
+	 * @param string $field_type The form field type.
2190
+	 * @param object|int $result_str The custom field results object or row id.
2191
+	 * @param string $field_ins_upd When set to "submit" displays form.
2192
+	 * @param bool $default when set to true field will be for admin use only.
2193
+	 */
2194
+	function geodir_custom_sort_field_adminhtml($field_type, $result_str, $field_ins_upd = '', $field_type_key='')
2195
+	{
2196
+		global $wpdb;
2197
+		$cf = $result_str;
2198
+		if (!is_object($cf)) {
2199
+			$field_info = $wpdb->get_row($wpdb->prepare("SELECT * FROM " . GEODIR_CUSTOM_SORT_FIELDS_TABLE . " WHERE id = %d", array($cf)));
2200
+		} else {
2201
+			$field_info = $cf;
2202
+			$result_str = $cf->id;
2203
+		}
2204
+
2205
+		$field_info = stripslashes_deep($field_info); // strip slashes
2206
+
2207
+		if (!isset($field_info->post_type)) {
2208
+			$post_type = sanitize_text_field($_REQUEST['listing_type']);
2209
+		} else {
2210
+			$post_type = $field_info->post_type;
2211
+		}
2212
+
2213
+
2214
+		$htmlvar_name = isset($field_type_key) ? $field_type_key : '';
2215
+
2216
+		$site_title = '';
2217
+		if ($site_title == '')
2218
+			$site_title = isset($field_info->site_title) ? $field_info->site_title : '';
2219
+
2220
+		if ($site_title == '') {
2221
+			$fields = geodir_get_custom_sort_options($post_type);
2222
+
2223
+			foreach ($fields as $val) {
2224
+				$val = stripslashes_deep($val); // strip slashes
2225
+
2226
+				if ($val['field_type'] == $field_type && $val['htmlvar_name'] == $htmlvar_name) {
2227
+					$site_title = isset($val['site_title']) ? $val['site_title'] : '';
2228
+				}
2229
+			}
2230
+		}
2231
+
2232
+		if ($htmlvar_name == '')
2233
+			$htmlvar_name = isset($field_info->htmlvar_name) ? $field_info->htmlvar_name : '';
2234
+
2235
+		$nonce = wp_create_nonce('custom_fields_' . $result_str);
2236
+
2237
+		$field_icon = '<i class="fa fa-cog" aria-hidden="true"></i>';
2238
+		$cso_arr = geodir_get_custom_sort_options($post_type);
2239
+
2240
+		$cur_field_type = (isset($cf->field_type)) ? $cf->field_type : esc_html($_REQUEST['field_type']);
2241
+		foreach($cso_arr as $cso){
2242
+			if($cur_field_type==$cso['field_type']){
2243
+
2244
+				if (isset($cso['field_icon']) && strpos($cso['field_icon'], 'fa fa-') !== false) {
2245
+					$field_icon = '<i class="'.$cso['field_icon'].'" aria-hidden="true"></i>';
2246
+				}elseif(isset($cso['field_icon']) && $cso['field_icon']){
2247
+					$field_icon = '<b class="gd-cf-icon" style="background-image: url(\''.$cso['field_icon'].'\')"></b>';
2248
+				}
2249
+
2250
+			}
2251
+		}
2252
+
2253
+		$radio_id = (isset($field_info->htmlvar_name)) ? $field_info->htmlvar_name.$field_type : rand(5, 500);
2254
+		?>
2255 2255
 
2256 2256
         <li class="text" id="licontainer_<?php echo $result_str;?>">
2257 2257
             <form><!-- we need to wrap in a form so we can use radio buttons with same name -->
@@ -2260,7 +2260,7 @@  discard block
 block discarded – undo
2260 2260
                  ondblclick="show_hide('field_frm<?php echo $result_str;?>')">
2261 2261
                 <?php
2262 2262
 
2263
-                ?>
2263
+				?>
2264 2264
 
2265 2265
                 <div title="<?php _e('Click to remove field', 'geodirectory');?>"
2266 2266
                      onclick="delete_sort_field('<?php echo $result_str;?>', '<?php echo $nonce;?>', this)"
@@ -2275,17 +2275,17 @@  discard block
 block discarded – undo
2275 2275
 
2276 2276
             <div id="field_frm<?php echo $result_str;?>" class="field_frm"
2277 2277
                  style="display:<?php if ($field_ins_upd == 'submit') {
2278
-                     echo 'block;';
2279
-                 } else {
2280
-                     echo 'none;';
2281
-                 } ?>">
2278
+					 echo 'block;';
2279
+				 } else {
2280
+					 echo 'none;';
2281
+				 } ?>">
2282 2282
                 <input type="hidden" name="_wpnonce" value="<?php echo $nonce; ?>"/>
2283 2283
                 <input type="hidden" name="listing_type" id="listing_type" value="<?php echo $post_type;?>"/>
2284 2284
                 <input type="hidden" name="field_type" id="field_type" value="<?php echo $field_type;?>"/>
2285 2285
                 <input type="hidden" name="field_id" id="field_id" value="<?php echo $result_str;?>"/>
2286 2286
                 <input type="hidden" name="data_type" id="data_type" value="<?php if (isset($field_info->data_type)) {
2287
-                    echo $field_info->data_type;
2288
-                }?>"/>
2287
+					echo $field_info->data_type;
2288
+				}?>"/>
2289 2289
                 <input type="hidden" name="htmlvar_name" id="htmlvar_name" value="<?php echo $htmlvar_name;?>"/>
2290 2290
 
2291 2291
 
@@ -2308,14 +2308,14 @@  discard block
 block discarded – undo
2308 2308
 
2309 2309
                                 <input type="radio" id="asc_yes<?php echo $radio_id;?>" name="asc" class="gdri-enabled"  value="1"
2310 2310
                                     <?php if ($value == '1') {
2311
-                                        echo 'checked';
2312
-                                    } ?>/>
2311
+										echo 'checked';
2312
+									} ?>/>
2313 2313
                                 <label onclick="show_hide_radio(this,'show','cfs-asc-title');" for="asc_yes<?php echo $radio_id;?>" class="gdcb-enable"><span><?php _e('Yes', 'geodirectory'); ?></span></label>
2314 2314
 
2315 2315
                                 <input type="radio" id="asc_no<?php echo $radio_id;?>" name="asc" class="gdri-disabled" value="0"
2316 2316
                                     <?php if ($value == '0' || !$value) {
2317
-                                        echo 'checked';
2318
-                                    } ?>/>
2317
+										echo 'checked';
2318
+									} ?>/>
2319 2319
                                 <label onclick="show_hide_radio(this,'hide','cfs-asc-title');" for="asc_no<?php echo $radio_id;?>" class="gdcb-disable"><span><?php _e('No', 'geodirectory'); ?></span></label>
2320 2320
 
2321 2321
                             </div>
@@ -2352,8 +2352,8 @@  discard block
 block discarded – undo
2352 2352
 
2353 2353
                                 <input type="radio" name="is_default"
2354 2354
                                        value="<?php echo $htmlvar_name; ?>_asc" <?php if (isset($field_info->default_order) && $field_info->default_order == $htmlvar_name . '_asc') {
2355
-                                    echo 'checked="checked"';
2356
-                                } ?>/>
2355
+									echo 'checked="checked"';
2356
+								} ?>/>
2357 2357
                             </div>
2358 2358
 
2359 2359
                         </li>
@@ -2373,14 +2373,14 @@  discard block
 block discarded – undo
2373 2373
 
2374 2374
                                 <input type="radio" id="desc_yes<?php echo $radio_id;?>" name="desc" class="gdri-enabled"  value="1"
2375 2375
                                     <?php if ($value == '1') {
2376
-                                        echo 'checked';
2377
-                                    } ?>/>
2376
+										echo 'checked';
2377
+									} ?>/>
2378 2378
                                 <label onclick="show_hide_radio(this,'show','cfs-desc-title');" for="desc_yes<?php echo $radio_id;?>" class="gdcb-enable"><span><?php _e('Yes', 'geodirectory'); ?></span></label>
2379 2379
 
2380 2380
                                 <input type="radio" id="desc_no<?php echo $radio_id;?>" name="desc" class="gdri-disabled" value="0"
2381 2381
                                     <?php if ($value == '0' || !$value) {
2382
-                                        echo 'checked';
2383
-                                    } ?>/>
2382
+										echo 'checked';
2383
+									} ?>/>
2384 2384
                                 <label onclick="show_hide_radio(this,'hide','cfs-desc-title');" for="desc_no<?php echo $radio_id;?>" class="gdcb-disable"><span><?php _e('No', 'geodirectory'); ?></span></label>
2385 2385
 
2386 2386
                             </div>
@@ -2416,8 +2416,8 @@  discard block
 block discarded – undo
2416 2416
 
2417 2417
                                 <input type="radio" name="is_default"
2418 2418
                                        value="<?php echo $htmlvar_name; ?>_desc" <?php if (isset($field_info->default_order) && $field_info->default_order == $htmlvar_name . '_desc') {
2419
-                                    echo 'checked="checked"';
2420
-                                } ?>/>
2419
+									echo 'checked="checked"';
2420
+								} ?>/>
2421 2421
                             </div>
2422 2422
 
2423 2423
                         </li>
@@ -2459,8 +2459,8 @@  discard block
 block discarded – undo
2459 2459
 
2460 2460
                                 <input type="checkbox" name="is_default"
2461 2461
                                        value="<?php echo $field_type; ?>"  <?php if (isset($value) && $value == '1') {
2462
-                                    echo 'checked="checked"';
2463
-                                } ?>/>
2462
+									echo 'checked="checked"';
2463
+								} ?>/>
2464 2464
                             </div>
2465 2465
 
2466 2466
 
@@ -2483,14 +2483,14 @@  discard block
 block discarded – undo
2483 2483
 
2484 2484
                             <input type="radio" id="is_active_yes<?php echo $radio_id;?>" name="is_active" class="gdri-enabled"  value="1"
2485 2485
                                 <?php if ($value == '1') {
2486
-                                    echo 'checked';
2487
-                                } ?>/>
2486
+									echo 'checked';
2487
+								} ?>/>
2488 2488
                             <label for="is_active_yes<?php echo $radio_id;?>" class="gdcb-enable"><span><?php _e('Yes', 'geodirectory'); ?></span></label>
2489 2489
 
2490 2490
                             <input type="radio" id="is_active_no<?php echo $radio_id;?>" name="is_active" class="gdri-disabled" value="0"
2491 2491
                                 <?php if ($value == '0' || !$value) {
2492
-                                    echo 'checked';
2493
-                                } ?>/>
2492
+									echo 'checked';
2493
+								} ?>/>
2494 2494
                             <label for="is_active_no<?php echo $radio_id;?>" class="gdcb-disable"><span><?php _e('No', 'geodirectory'); ?></span></label>
2495 2495
 
2496 2496
                         </div>
@@ -2500,8 +2500,8 @@  discard block
 block discarded – undo
2500 2500
 
2501 2501
                     <input type="hidden" readonly="readonly" name="sort_order" id="sort_order"
2502 2502
                                                 value="<?php if (isset($field_info->sort_order)) {
2503
-                                                    echo esc_attr($field_info->sort_order);
2504
-                                                }?>" size="50"/>
2503
+													echo esc_attr($field_info->sort_order);
2504
+												}?>" size="50"/>
2505 2505
 
2506 2506
 
2507 2507
 
@@ -2525,38 +2525,38 @@  discard block
 block discarded – undo
2525 2525
             </form>
2526 2526
         </li> <?php
2527 2527
 
2528
-    }
2528
+	}
2529 2529
 }
2530 2530
 
2531 2531
 if (!function_exists('check_field_visibility')) {
2532
-    /**
2533
-     * Check field visibility as per price package.
2534
-     *
2535
-     * @since 1.0.0
2536
-     * @package GeoDirectory
2537
-     * @global object $wpdb WordPress Database object.
2538
-     * @global array $geodir_addon_list List of active GeoDirectory extensions.
2539
-     * @param int|string $package_id The package ID.
2540
-     * @param string $field_name The field name.
2541
-     * @param string $post_type Optional. The wordpress post type.
2542
-     * @return bool Returns true when field visible, otherwise false.
2543
-     */
2544
-    function check_field_visibility($package_id, $field_name, $post_type)
2545
-    {
2546
-        global $wpdb, $geodir_addon_list;
2547
-        if (!(isset($geodir_addon_list['geodir_payment_manager']) && $geodir_addon_list['geodir_payment_manager'] == 'yes')) {
2548
-            return true;
2549
-        }
2550
-        if (!$package_id || !$field_name || !$post_type) {
2551
-            return true;
2552
-        }
2553
-        $sql = $wpdb->prepare("SELECT id FROM " . GEODIR_CUSTOM_FIELDS_TABLE . " WHERE is_active='1' AND htmlvar_name=%s AND post_type=%s AND FIND_IN_SET(%s, packages)", array($field_name, $post_type, (int)$package_id));
2554
-
2555
-        if ($wpdb->get_var($sql)) {
2556
-            return true;
2557
-        }
2558
-        return false;
2559
-    }
2532
+	/**
2533
+	 * Check field visibility as per price package.
2534
+	 *
2535
+	 * @since 1.0.0
2536
+	 * @package GeoDirectory
2537
+	 * @global object $wpdb WordPress Database object.
2538
+	 * @global array $geodir_addon_list List of active GeoDirectory extensions.
2539
+	 * @param int|string $package_id The package ID.
2540
+	 * @param string $field_name The field name.
2541
+	 * @param string $post_type Optional. The wordpress post type.
2542
+	 * @return bool Returns true when field visible, otherwise false.
2543
+	 */
2544
+	function check_field_visibility($package_id, $field_name, $post_type)
2545
+	{
2546
+		global $wpdb, $geodir_addon_list;
2547
+		if (!(isset($geodir_addon_list['geodir_payment_manager']) && $geodir_addon_list['geodir_payment_manager'] == 'yes')) {
2548
+			return true;
2549
+		}
2550
+		if (!$package_id || !$field_name || !$post_type) {
2551
+			return true;
2552
+		}
2553
+		$sql = $wpdb->prepare("SELECT id FROM " . GEODIR_CUSTOM_FIELDS_TABLE . " WHERE is_active='1' AND htmlvar_name=%s AND post_type=%s AND FIND_IN_SET(%s, packages)", array($field_name, $post_type, (int)$package_id));
2554
+
2555
+		if ($wpdb->get_var($sql)) {
2556
+			return true;
2557
+		}
2558
+		return false;
2559
+	}
2560 2560
 }
2561 2561
 
2562 2562
 /**
@@ -2572,43 +2572,43 @@  discard block
 block discarded – undo
2572 2572
  */
2573 2573
 function geodir_string_to_options($input = '', $translated = false)
2574 2574
 {
2575
-    $return = array();
2576
-    if ($input != '') {
2577
-        $input = trim($input);
2578
-        $input = rtrim($input, ",");
2579
-        $input = ltrim($input, ",");
2580
-        $input = trim($input);
2581
-    }
2582
-
2583
-    $input_arr = explode(',', $input);
2584
-
2585
-    if (!empty($input_arr)) {
2586
-        foreach ($input_arr as $input_str) {
2587
-            $input_str = trim($input_str);
2588
-
2589
-            if (strpos($input_str, "/") !== false) {
2590
-                $input_str = explode("/", $input_str, 2);
2591
-                $label = trim($input_str[0]);
2592
-                if ($translated && $label != '') {
2593
-                    $label = __($label, 'geodirectory');
2594
-                }
2595
-                $label = geodir_utf8_ucfirst($label);
2596
-                $value = trim($input_str[1]);
2597
-            } else {
2598
-                $value = $input_str;
2599
-                if ($translated && $input_str != '') {
2600
-                    $input_str = __($input_str, 'geodirectory');
2601
-                }
2602
-                $label = geodir_utf8_ucfirst($input_str);
2603
-            }
2604
-
2605
-            if ($label != '') {
2606
-                $return[] = array('label' => $label, 'value' => $value, 'optgroup' => NULL);
2607
-            }
2608
-        }
2609
-    }
2610
-
2611
-    return $return;
2575
+	$return = array();
2576
+	if ($input != '') {
2577
+		$input = trim($input);
2578
+		$input = rtrim($input, ",");
2579
+		$input = ltrim($input, ",");
2580
+		$input = trim($input);
2581
+	}
2582
+
2583
+	$input_arr = explode(',', $input);
2584
+
2585
+	if (!empty($input_arr)) {
2586
+		foreach ($input_arr as $input_str) {
2587
+			$input_str = trim($input_str);
2588
+
2589
+			if (strpos($input_str, "/") !== false) {
2590
+				$input_str = explode("/", $input_str, 2);
2591
+				$label = trim($input_str[0]);
2592
+				if ($translated && $label != '') {
2593
+					$label = __($label, 'geodirectory');
2594
+				}
2595
+				$label = geodir_utf8_ucfirst($label);
2596
+				$value = trim($input_str[1]);
2597
+			} else {
2598
+				$value = $input_str;
2599
+				if ($translated && $input_str != '') {
2600
+					$input_str = __($input_str, 'geodirectory');
2601
+				}
2602
+				$label = geodir_utf8_ucfirst($input_str);
2603
+			}
2604
+
2605
+			if ($label != '') {
2606
+				$return[] = array('label' => $label, 'value' => $value, 'optgroup' => NULL);
2607
+			}
2608
+		}
2609
+	}
2610
+
2611
+	return $return;
2612 2612
 }
2613 2613
 
2614 2614
 /**
@@ -2623,66 +2623,66 @@  discard block
 block discarded – undo
2623 2623
  */
2624 2624
 function geodir_string_values_to_options($option_values = '', $translated = false)
2625 2625
 {
2626
-    $options = array();
2627
-    if ($option_values == '') {
2628
-        return NULL;
2629
-    }
2630
-
2631
-    if (strpos($option_values, "{/optgroup}") !== false) {
2632
-        $option_values_arr = explode("{/optgroup}", $option_values);
2633
-
2634
-        foreach ($option_values_arr as $optgroup) {
2635
-            if (strpos($optgroup, "{optgroup}") !== false) {
2636
-                $optgroup_arr = explode("{optgroup}", $optgroup);
2637
-
2638
-                $count = 0;
2639
-                foreach ($optgroup_arr as $optgroup_str) {
2640
-                    $count++;
2641
-                    $optgroup_str = trim($optgroup_str);
2642
-
2643
-                    $optgroup_label = '';
2644
-                    if (strpos($optgroup_str, "|") !== false) {
2645
-                        $optgroup_str_arr = explode("|", $optgroup_str, 2);
2646
-                        $optgroup_label = trim($optgroup_str_arr[0]);
2647
-                        if ($translated && $optgroup_label != '') {
2648
-                            $optgroup_label = __($optgroup_label, 'geodirectory');
2649
-                        }
2650
-                        $optgroup_label = geodir_utf8_ucfirst($optgroup_label);
2651
-                        $optgroup_str = $optgroup_str_arr[1];
2652
-                    }
2653
-
2654
-                    $optgroup3 = geodir_string_to_options($optgroup_str, $translated);
2655
-
2656
-                    if ($count > 1 && $optgroup_label != '' && !empty($optgroup3)) {
2657
-                        $optgroup_start = array(array('label' => $optgroup_label, 'value' => NULL, 'optgroup' => 'start'));
2658
-                        $optgroup_end = array(array('label' => $optgroup_label, 'value' => NULL, 'optgroup' => 'end'));
2659
-                        $optgroup3 = array_merge($optgroup_start, $optgroup3, $optgroup_end);
2660
-                    }
2661
-                    $options = array_merge($options, $optgroup3);
2662
-                }
2663
-            } else {
2664
-                $optgroup1 = geodir_string_to_options($optgroup, $translated);
2665
-                $options = array_merge($options, $optgroup1);
2666
-            }
2667
-        }
2668
-    } else {
2669
-        $options = geodir_string_to_options($option_values, $translated);
2670
-    }
2671
-
2672
-    return $options;
2626
+	$options = array();
2627
+	if ($option_values == '') {
2628
+		return NULL;
2629
+	}
2630
+
2631
+	if (strpos($option_values, "{/optgroup}") !== false) {
2632
+		$option_values_arr = explode("{/optgroup}", $option_values);
2633
+
2634
+		foreach ($option_values_arr as $optgroup) {
2635
+			if (strpos($optgroup, "{optgroup}") !== false) {
2636
+				$optgroup_arr = explode("{optgroup}", $optgroup);
2637
+
2638
+				$count = 0;
2639
+				foreach ($optgroup_arr as $optgroup_str) {
2640
+					$count++;
2641
+					$optgroup_str = trim($optgroup_str);
2642
+
2643
+					$optgroup_label = '';
2644
+					if (strpos($optgroup_str, "|") !== false) {
2645
+						$optgroup_str_arr = explode("|", $optgroup_str, 2);
2646
+						$optgroup_label = trim($optgroup_str_arr[0]);
2647
+						if ($translated && $optgroup_label != '') {
2648
+							$optgroup_label = __($optgroup_label, 'geodirectory');
2649
+						}
2650
+						$optgroup_label = geodir_utf8_ucfirst($optgroup_label);
2651
+						$optgroup_str = $optgroup_str_arr[1];
2652
+					}
2653
+
2654
+					$optgroup3 = geodir_string_to_options($optgroup_str, $translated);
2655
+
2656
+					if ($count > 1 && $optgroup_label != '' && !empty($optgroup3)) {
2657
+						$optgroup_start = array(array('label' => $optgroup_label, 'value' => NULL, 'optgroup' => 'start'));
2658
+						$optgroup_end = array(array('label' => $optgroup_label, 'value' => NULL, 'optgroup' => 'end'));
2659
+						$optgroup3 = array_merge($optgroup_start, $optgroup3, $optgroup_end);
2660
+					}
2661
+					$options = array_merge($options, $optgroup3);
2662
+				}
2663
+			} else {
2664
+				$optgroup1 = geodir_string_to_options($optgroup, $translated);
2665
+				$options = array_merge($options, $optgroup1);
2666
+			}
2667
+		}
2668
+	} else {
2669
+		$options = geodir_string_to_options($option_values, $translated);
2670
+	}
2671
+
2672
+	return $options;
2673 2673
 }
2674 2674
 
2675 2675
 
2676 2676
 function geodir_cfa_data_type_text($output,$result_str,$cf,$field_info){
2677
-    ob_start();
2678
-
2679
-    $dt_value = '';
2680
-    if (isset($field_info->data_type)) {
2681
-        $dt_value  = esc_attr($field_info->data_type);
2682
-    }elseif(isset($cf['defaults']['data_type']) && $cf['defaults']['data_type']){
2683
-        $dt_value  = $cf['defaults']['data_type'];
2684
-    }
2685
-    ?>
2677
+	ob_start();
2678
+
2679
+	$dt_value = '';
2680
+	if (isset($field_info->data_type)) {
2681
+		$dt_value  = esc_attr($field_info->data_type);
2682
+	}elseif(isset($cf['defaults']['data_type']) && $cf['defaults']['data_type']){
2683
+		$dt_value  = $cf['defaults']['data_type'];
2684
+	}
2685
+	?>
2686 2686
     <li>
2687 2687
         <label for="data_type"><?php _e('Field Data Type ? :', 'geodirectory'); ?></label>
2688 2688
         <div class="gd-cf-input-wrap">
@@ -2691,16 +2691,16 @@  discard block
 block discarded – undo
2691 2691
                     onchange="javascript:gd_data_type_changed(this, '<?php echo $result_str; ?>');">
2692 2692
                 <option
2693 2693
                     value="XVARCHAR" <?php if ($dt_value  == 'VARCHAR') {
2694
-                    echo 'selected="selected"';
2695
-                } ?>><?php _e('CHARACTER', 'geodirectory'); ?></option>
2694
+					echo 'selected="selected"';
2695
+				} ?>><?php _e('CHARACTER', 'geodirectory'); ?></option>
2696 2696
                 <option
2697 2697
                     value="INT" <?php if ($dt_value   == 'INT') {
2698
-                    echo 'selected="selected"';
2699
-                } ?>><?php _e('NUMBER', 'geodirectory'); ?></option>
2698
+					echo 'selected="selected"';
2699
+				} ?>><?php _e('NUMBER', 'geodirectory'); ?></option>
2700 2700
                 <option
2701 2701
                     value="FLOAT" <?php if ($dt_value   == 'FLOAT') {
2702
-                    echo 'selected="selected"';
2703
-                } ?>><?php _e('DECIMAL', 'geodirectory'); ?></option>
2702
+					echo 'selected="selected"';
2703
+				} ?>><?php _e('DECIMAL', 'geodirectory'); ?></option>
2704 2704
             </select>
2705 2705
             <br/> <span><?php _e('Select Custom Field type', 'geodirectory'); ?></span>
2706 2706
 
@@ -2708,13 +2708,13 @@  discard block
 block discarded – undo
2708 2708
     </li>
2709 2709
 
2710 2710
     <?php
2711
-    $value = '';
2712
-    if (isset($field_info->decimal_point)) {
2713
-        $value = esc_attr($field_info->decimal_point);
2714
-    }elseif(isset($cf['defaults']['decimal_point']) && $cf['defaults']['decimal_point']){
2715
-        $value = $cf['defaults']['decimal_point'];
2716
-    }
2717
-    ?>
2711
+	$value = '';
2712
+	if (isset($field_info->decimal_point)) {
2713
+		$value = esc_attr($field_info->decimal_point);
2714
+	}elseif(isset($cf['defaults']['decimal_point']) && $cf['defaults']['decimal_point']){
2715
+		$value = $cf['defaults']['decimal_point'];
2716
+	}
2717
+	?>
2718 2718
 
2719 2719
     <li class="decimal-point-wrapper"
2720 2720
         style="<?php echo ($dt_value  == 'FLOAT') ? '' : 'display:none' ?>">
@@ -2723,7 +2723,7 @@  discard block
 block discarded – undo
2723 2723
             <select name="decimal_point" id="decimal_point">
2724 2724
                 <option value=""><?php echo _e('Select', 'geodirectory'); ?></option>
2725 2725
                 <?php for ($i = 1; $i <= 10; $i++) {
2726
-                    $selected = $i == $value ? 'selected="selected"' : ''; ?>
2726
+					$selected = $i == $value ? 'selected="selected"' : ''; ?>
2727 2727
                     <option value="<?php echo $i; ?>" <?php echo $selected; ?>><?php echo $i; ?></option>
2728 2728
                 <?php } ?>
2729 2729
             </select>
@@ -2732,8 +2732,8 @@  discard block
 block discarded – undo
2732 2732
     </li>
2733 2733
 <?php
2734 2734
 
2735
-    $output = ob_get_clean();
2736
-    return $output;
2735
+	$output = ob_get_clean();
2736
+	return $output;
2737 2737
 }
2738 2738
 add_filter('geodir_cfa_data_type_text','geodir_cfa_data_type_text',10,4);
2739 2739
 
@@ -2769,9 +2769,9 @@  discard block
 block discarded – undo
2769 2769
 
2770 2770
 
2771 2771
 function geodir_cfa_advanced_editor_geodir_special_offers($output,$result_str,$cf,$field_info){
2772
-    if($field_info->htmlvar_name != 'geodir_special_offers'){return '';}
2773
-    ob_start();
2774
-    ?>
2772
+	if($field_info->htmlvar_name != 'geodir_special_offers'){return '';}
2773
+	ob_start();
2774
+	?>
2775 2775
     <li>
2776 2776
         <label for="advanced_editor" class="gd-cf-tooltip-wrap"><i class="fa fa-info-circle" aria-hidden="true"></i> <?php _e('Show advanced editor :', 'geodirectory'); ?>
2777 2777
             <div class="gdcf-tooltip">
@@ -2782,13 +2782,13 @@  discard block
 block discarded – undo
2782 2782
         <div class="gd-cf-input-wrap">
2783 2783
 
2784 2784
             <?php
2785
-            $selected = '';
2786
-            if (isset($field_info->extra_fields))
2787
-                $advanced_editor = unserialize($field_info->extra_fields);
2785
+			$selected = '';
2786
+			if (isset($field_info->extra_fields))
2787
+				$advanced_editor = unserialize($field_info->extra_fields);
2788 2788
 
2789
-            if (!empty($advanced_editor) && is_array($advanced_editor) && in_array('1', $advanced_editor))
2790
-                $selected = 'checked="checked"';
2791
-            ?>
2789
+			if (!empty($advanced_editor) && is_array($advanced_editor) && in_array('1', $advanced_editor))
2790
+				$selected = 'checked="checked"';
2791
+			?>
2792 2792
 
2793 2793
             <input type="checkbox" name="advanced_editor[]" id="advanced_editor"
2794 2794
                    value="1" <?php echo $selected; ?>/>
@@ -2797,22 +2797,22 @@  discard block
 block discarded – undo
2797 2797
     </li>
2798 2798
     <?php
2799 2799
 
2800
-    $output = ob_get_clean();
2801
-    return $output;
2800
+	$output = ob_get_clean();
2801
+	return $output;
2802 2802
 }
2803 2803
 add_filter('geodir_cfa_advanced_editor_textarea','geodir_cfa_advanced_editor_geodir_special_offers',10,4);
2804 2804
 
2805 2805
 
2806 2806
 function geodir_cfa_validation_pattern_text($output,$result_str,$cf,$field_info){
2807
-    ob_start();
2808
-
2809
-    $value = '';
2810
-    if (isset($field_info->validation_pattern)) {
2811
-        $value = esc_attr($field_info->validation_pattern);
2812
-    }elseif(isset($cf['defaults']['validation_pattern']) && $cf['defaults']['validation_pattern']){
2813
-        $value = esc_attr($cf['defaults']['validation_pattern']);
2814
-    }
2815
-    ?>
2807
+	ob_start();
2808
+
2809
+	$value = '';
2810
+	if (isset($field_info->validation_pattern)) {
2811
+		$value = esc_attr($field_info->validation_pattern);
2812
+	}elseif(isset($cf['defaults']['validation_pattern']) && $cf['defaults']['validation_pattern']){
2813
+		$value = esc_attr($cf['defaults']['validation_pattern']);
2814
+	}
2815
+	?>
2816 2816
     <li>
2817 2817
         <label for="validation_pattern" class="gd-cf-tooltip-wrap">
2818 2818
             <i class="fa fa-info-circle" aria-hidden="true"></i> <?php _e('Validation Pattern:', 'geodirectory'); ?>
@@ -2826,13 +2826,13 @@  discard block
 block discarded – undo
2826 2826
         </div>
2827 2827
     </li>
2828 2828
     <?php
2829
-    $value = '';
2830
-    if (isset($field_info->validation_msg)) {
2831
-        $value = esc_attr($field_info->validation_msg);
2832
-    }elseif(isset($cf['defaults']['validation_msg']) && $cf['defaults']['validation_msg']){
2833
-        $value = esc_attr($cf['defaults']['validation_msg']);
2834
-    }
2835
-    ?>
2829
+	$value = '';
2830
+	if (isset($field_info->validation_msg)) {
2831
+		$value = esc_attr($field_info->validation_msg);
2832
+	}elseif(isset($cf['defaults']['validation_msg']) && $cf['defaults']['validation_msg']){
2833
+		$value = esc_attr($cf['defaults']['validation_msg']);
2834
+	}
2835
+	?>
2836 2836
     <li>
2837 2837
         <label for="validation_msg" class="gd-cf-tooltip-wrap">
2838 2838
             <i class="fa fa-info-circle" aria-hidden="true"></i> <?php _e('Validation Message:', 'geodirectory'); ?>
@@ -2847,21 +2847,21 @@  discard block
 block discarded – undo
2847 2847
     </li>
2848 2848
     <?php
2849 2849
 
2850
-    $output = ob_get_clean();
2851
-    return $output;
2850
+	$output = ob_get_clean();
2851
+	return $output;
2852 2852
 }
2853 2853
 add_filter('geodir_cfa_validation_pattern_text','geodir_cfa_validation_pattern_text',10,4);
2854 2854
 
2855 2855
 
2856 2856
 function geodir_cfa_htmlvar_name_taxonomy($output,$result_str,$cf,$field_info){
2857
-    ob_start();
2858
-    global $post_type;
2859
-
2860
-    if (!isset($field_info->post_type)) {
2861
-        $post_type = sanitize_text_field($_REQUEST['listing_type']);
2862
-    } else
2863
-        $post_type = $field_info->post_type;
2864
-    ?>
2857
+	ob_start();
2858
+	global $post_type;
2859
+
2860
+	if (!isset($field_info->post_type)) {
2861
+		$post_type = sanitize_text_field($_REQUEST['listing_type']);
2862
+	} else
2863
+		$post_type = $field_info->post_type;
2864
+	?>
2865 2865
     <li style="display: none;">
2866 2866
         <label for="htmlvar_name" class="gd-cf-tooltip-wrap">
2867 2867
             <i class="fa fa-info-circle" aria-hidden="true"></i> <?php _e('Select taxonomy:', 'geodirectory'); ?>
@@ -2872,15 +2872,15 @@  discard block
 block discarded – undo
2872 2872
         <div class="gd-cf-input-wrap">
2873 2873
             <select name="htmlvar_name" id="htmlvar_name">
2874 2874
                 <?php
2875
-                $gd_taxonomy = geodir_get_taxonomies($post_type);
2875
+				$gd_taxonomy = geodir_get_taxonomies($post_type);
2876 2876
 
2877
-                foreach ($gd_taxonomy as $gd_tax) {
2878
-                    ?>
2877
+				foreach ($gd_taxonomy as $gd_tax) {
2878
+					?>
2879 2879
                     <option <?php if (isset($field_info->htmlvar_name) && $field_info->htmlvar_name == $gd_tax) {
2880
-                        echo 'selected="selected"';
2881
-                    }?> id="<?php echo $gd_tax;?>"><?php echo $gd_tax;?></option><?php
2882
-                }
2883
-                ?>
2880
+						echo 'selected="selected"';
2881
+					}?> id="<?php echo $gd_tax;?>"><?php echo $gd_tax;?></option><?php
2882
+				}
2883
+				?>
2884 2884
             </select>
2885 2885
         </div>
2886 2886
     </li>
@@ -2896,49 +2896,49 @@  discard block
 block discarded – undo
2896 2896
 
2897 2897
             <select name="cat_display_type" id="cat_display_type">
2898 2898
                 <option <?php if (isset($field_info->extra_fields) && unserialize($field_info->extra_fields) == 'ajax_chained') {
2899
-                    echo 'selected="selected"';
2900
-                }?> value="ajax_chained"><?php _e('Ajax Chained', 'geodirectory');?></option>
2899
+					echo 'selected="selected"';
2900
+				}?> value="ajax_chained"><?php _e('Ajax Chained', 'geodirectory');?></option>
2901 2901
                 <option <?php if (isset($field_info->extra_fields) && unserialize($field_info->extra_fields) == 'select') {
2902
-                    echo 'selected="selected"';
2903
-                }?> value="select"><?php _e('Select', 'geodirectory');?></option>
2902
+					echo 'selected="selected"';
2903
+				}?> value="select"><?php _e('Select', 'geodirectory');?></option>
2904 2904
                 <option <?php if (isset($field_info->extra_fields) && unserialize($field_info->extra_fields) == 'multiselect') {
2905
-                    echo 'selected="selected"';
2906
-                }?> value="multiselect"><?php _e('Multiselect', 'geodirectory');?></option>
2905
+					echo 'selected="selected"';
2906
+				}?> value="multiselect"><?php _e('Multiselect', 'geodirectory');?></option>
2907 2907
                 <option <?php if (isset($field_info->extra_fields) && unserialize($field_info->extra_fields) == 'checkbox') {
2908
-                    echo 'selected="selected"';
2909
-                }?> value="checkbox"><?php _e('Checkbox', 'geodirectory');?></option>
2908
+					echo 'selected="selected"';
2909
+				}?> value="checkbox"><?php _e('Checkbox', 'geodirectory');?></option>
2910 2910
                 <option <?php if (isset($field_info->extra_fields) && unserialize($field_info->extra_fields) == 'radio') {
2911
-                    echo 'selected="selected"';
2912
-                }?> value="radio"><?php _e('Radio', 'geodirectory');?></option>
2911
+					echo 'selected="selected"';
2912
+				}?> value="radio"><?php _e('Radio', 'geodirectory');?></option>
2913 2913
             </select>
2914 2914
         </div>
2915 2915
     </li>
2916 2916
     <?php
2917 2917
 
2918
-    $output = ob_get_clean();
2919
-    return $output;
2918
+	$output = ob_get_clean();
2919
+	return $output;
2920 2920
 }
2921 2921
 add_filter('geodir_cfa_htmlvar_name_taxonomy','geodir_cfa_htmlvar_name_taxonomy',10,4);
2922 2922
 
2923 2923
 
2924 2924
 function geodir_cfa_extra_fields_address($output,$result_str,$cf,$field_info){
2925 2925
 
2926
-    ob_start();
2927
-    if (isset($field_info->extra_fields) && $field_info->extra_fields != '') {
2928
-        $address = stripslashes_deep(unserialize($field_info->extra_fields));
2929
-    }
2926
+	ob_start();
2927
+	if (isset($field_info->extra_fields) && $field_info->extra_fields != '') {
2928
+		$address = stripslashes_deep(unserialize($field_info->extra_fields));
2929
+	}
2930 2930
 
2931
-    $radio_id = (isset($field_info->htmlvar_name)) ? $field_info->htmlvar_name : rand(5, 500);
2932
-    ?>
2931
+	$radio_id = (isset($field_info->htmlvar_name)) ? $field_info->htmlvar_name : rand(5, 500);
2932
+	?>
2933 2933
     <?php
2934
-    /**
2935
-     * Called on the add custom fields settings page before the address field is output.
2936
-     *
2937
-     * @since 1.0.0
2938
-     * @param array $address The address settings array.
2939
-     * @param object $field_info Extra fields info.
2940
-     */
2941
-    do_action('geodir_address_extra_admin_fields', $address, $field_info); ?>
2934
+	/**
2935
+	 * Called on the add custom fields settings page before the address field is output.
2936
+	 *
2937
+	 * @since 1.0.0
2938
+	 * @param array $address The address settings array.
2939
+	 * @param object $field_info Extra fields info.
2940
+	 */
2941
+	do_action('geodir_address_extra_admin_fields', $address, $field_info); ?>
2942 2942
 
2943 2943
     <li>
2944 2944
         <label for="show_zip" class="gd-cf-tooltip-wrap">
@@ -2951,14 +2951,14 @@  discard block
 block discarded – undo
2951 2951
 
2952 2952
             <input type="radio" id="show_zip_yes<?php echo $radio_id;?>" name="extra[show_zip]" class="gdri-enabled"  value="1"
2953 2953
                 <?php if (isset($address['show_zip']) && $address['show_zip'] == '1') {
2954
-                    echo 'checked';
2955
-                } ?>/>
2954
+					echo 'checked';
2955
+				} ?>/>
2956 2956
             <label onclick="show_hide_radio(this,'show','cf-zip-lable');" for="show_zip_yes<?php echo $radio_id;?>" class="gdcb-enable"><span><?php _e('Yes', 'geodirectory'); ?></span></label>
2957 2957
 
2958 2958
             <input type="radio" id="show_zip_no<?php echo $radio_id;?>" name="extra[show_zip]" class="gdri-disabled" value="0"
2959 2959
                 <?php if ((isset($address['show_zip']) && !$address['show_zip']) || !isset($address['show_zip'])) {
2960
-                    echo 'checked';
2961
-                } ?>/>
2960
+					echo 'checked';
2961
+				} ?>/>
2962 2962
             <label onclick="show_hide_radio(this,'hide','cf-zip-lable');" for="show_zip_no<?php echo $radio_id;?>" class="gdcb-disable"><span><?php _e('No', 'geodirectory'); ?></span></label>
2963 2963
 
2964 2964
 
@@ -2975,8 +2975,8 @@  discard block
 block discarded – undo
2975 2975
         <div class="gd-cf-input-wrap">
2976 2976
             <input type="text" name="extra[zip_lable]" id="zip_lable"
2977 2977
                    value="<?php if (isset($address['zip_lable'])) {
2978
-                       echo esc_attr($address['zip_lable']);
2979
-                   }?>"/>
2978
+					   echo esc_attr($address['zip_lable']);
2979
+				   }?>"/>
2980 2980
         </div>
2981 2981
     </li>
2982 2982
 
@@ -2993,8 +2993,8 @@  discard block
 block discarded – undo
2993 2993
         <div class="gd-cf-input-wrap">
2994 2994
             <input type="text" name="extra[map_lable]" id="map_lable"
2995 2995
                    value="<?php if (isset($address['map_lable'])) {
2996
-                       echo esc_attr($address['map_lable']);
2997
-                   }?>"/>
2996
+					   echo esc_attr($address['map_lable']);
2997
+				   }?>"/>
2998 2998
         </div>
2999 2999
     </li>
3000 3000
 
@@ -3009,14 +3009,14 @@  discard block
 block discarded – undo
3009 3009
 
3010 3010
             <input type="radio" id="show_mapzoom_yes<?php echo $radio_id;?>" name="extra[show_mapzoom]" class="gdri-enabled"  value="1"
3011 3011
                 <?php if (isset($address['show_mapzoom']) && $address['show_mapzoom'] == '1') {
3012
-                    echo 'checked';
3013
-                } ?>/>
3012
+					echo 'checked';
3013
+				} ?>/>
3014 3014
             <label for="show_mapzoom_yes<?php echo $radio_id;?>" class="gdcb-enable"><span><?php _e('Yes', 'geodirectory'); ?></span></label>
3015 3015
 
3016 3016
             <input type="radio" id="show_mapzoom_no<?php echo $radio_id;?>" name="extra[show_mapzoom]" class="gdri-disabled" value="0"
3017 3017
                 <?php if ((isset($address['show_mapzoom']) && !$address['show_mapzoom']) || !isset($address['show_mapzoom'])) {
3018
-                    echo 'checked';
3019
-                } ?>/>
3018
+					echo 'checked';
3019
+				} ?>/>
3020 3020
             <label for="show_mapzoom_no<?php echo $radio_id;?>" class="gdcb-disable"><span><?php _e('No', 'geodirectory'); ?></span></label>
3021 3021
 
3022 3022
         </div>
@@ -3033,14 +3033,14 @@  discard block
 block discarded – undo
3033 3033
 
3034 3034
             <input type="radio" id="show_mapview_yes<?php echo $radio_id;?>" name="extra[show_mapview]" class="gdri-enabled"  value="1"
3035 3035
                 <?php if (isset($address['show_mapview']) && $address['show_mapview'] == '1') {
3036
-                    echo 'checked';
3037
-                } ?>/>
3036
+					echo 'checked';
3037
+				} ?>/>
3038 3038
             <label for="show_mapview_yes<?php echo $radio_id;?>" class="gdcb-enable"><span><?php _e('Yes', 'geodirectory'); ?></span></label>
3039 3039
 
3040 3040
             <input type="radio" id="show_mapview_no<?php echo $radio_id;?>" name="extra[show_mapview]" class="gdri-disabled" value="0"
3041 3041
                 <?php if ((isset($address['show_mapview']) && !$address['show_mapview']) || !isset($address['show_mapview'])) {
3042
-                    echo 'checked';
3043
-                } ?>/>
3042
+					echo 'checked';
3043
+				} ?>/>
3044 3044
             <label for="show_mapview_no<?php echo $radio_id;?>" class="gdcb-disable"><span><?php _e('No', 'geodirectory'); ?></span></label>
3045 3045
 
3046 3046
         </div>
@@ -3057,8 +3057,8 @@  discard block
 block discarded – undo
3057 3057
         <div class="gd-cf-input-wrap">
3058 3058
             <input type="text" name="extra[mapview_lable]" id="mapview_lable"
3059 3059
                    value="<?php if (isset($address['mapview_lable'])) {
3060
-                       echo esc_attr($address['mapview_lable']);
3061
-                   }?>"/>
3060
+					   echo esc_attr($address['mapview_lable']);
3061
+				   }?>"/>
3062 3062
         </div>
3063 3063
     </li>
3064 3064
     <li>
@@ -3072,29 +3072,29 @@  discard block
 block discarded – undo
3072 3072
 
3073 3073
             <input type="radio" id="show_latlng_yes<?php echo $radio_id;?>" name="extra[show_latlng]" class="gdri-enabled"  value="1"
3074 3074
                 <?php if (isset($address['show_latlng']) && $address['show_latlng'] == '1') {
3075
-                    echo 'checked';
3076
-                } ?>/>
3075
+					echo 'checked';
3076
+				} ?>/>
3077 3077
             <label for="show_latlng_yes<?php echo $radio_id;?>" class="gdcb-enable"><span><?php _e('Yes', 'geodirectory'); ?></span></label>
3078 3078
 
3079 3079
             <input type="radio" id="show_latlng_no<?php echo $radio_id;?>" name="extra[show_latlng]" class="gdri-disabled" value="0"
3080 3080
                 <?php if ((isset($address['show_latlng']) && !$address['show_latlng']) || !isset($address['show_latlng'])) {
3081
-                    echo 'checked';
3082
-                } ?>/>
3081
+					echo 'checked';
3082
+				} ?>/>
3083 3083
             <label for="show_latlng_no<?php echo $radio_id;?>" class="gdcb-disable"><span><?php _e('No', 'geodirectory'); ?></span></label>
3084 3084
 
3085 3085
         </div>
3086 3086
     </li>
3087 3087
     <?php
3088 3088
 
3089
-    $html = ob_get_clean();
3090
-    return $output.$html;
3089
+	$html = ob_get_clean();
3090
+	return $output.$html;
3091 3091
 }
3092 3092
 add_filter('geodir_cfa_extra_fields_address','geodir_cfa_extra_fields_address',10,4);
3093 3093
 
3094 3094
 
3095 3095
 function geodir_cfa_extra_fields_multiselect($output,$result_str,$cf,$field_info){
3096
-    ob_start();
3097
-    ?>
3096
+	ob_start();
3097
+	?>
3098 3098
     <li>
3099 3099
         <label for="multi_display_type" class="gd-cf-tooltip-wrap">
3100 3100
             <i class="fa fa-info-circle" aria-hidden="true"></i> <?php _e('Multiselect display type :', 'geodirectory'); ?>
@@ -3106,14 +3106,14 @@  discard block
 block discarded – undo
3106 3106
 
3107 3107
             <select name="multi_display_type" id="multi_display_type">
3108 3108
                 <option <?php if (isset($field_info->extra_fields) && unserialize($field_info->extra_fields) == 'select') {
3109
-                    echo 'selected="selected"';
3110
-                }?> value="select"><?php _e('Select', 'geodirectory');?></option>
3109
+					echo 'selected="selected"';
3110
+				}?> value="select"><?php _e('Select', 'geodirectory');?></option>
3111 3111
                 <option <?php if (isset($field_info->extra_fields) && unserialize($field_info->extra_fields) == 'checkbox') {
3112
-                    echo 'selected="selected"';
3113
-                }?> value="checkbox"><?php _e('Checkbox', 'geodirectory');?></option>
3112
+					echo 'selected="selected"';
3113
+				}?> value="checkbox"><?php _e('Checkbox', 'geodirectory');?></option>
3114 3114
                 <option <?php if (isset($field_info->extra_fields) && unserialize($field_info->extra_fields) == 'radio') {
3115
-                    echo 'selected="selected"';
3116
-                }?> value="radio"><?php _e('Radio', 'geodirectory');?></option>
3115
+					echo 'selected="selected"';
3116
+				}?> value="radio"><?php _e('Radio', 'geodirectory');?></option>
3117 3117
             </select>
3118 3118
 
3119 3119
             <br/>
@@ -3121,25 +3121,25 @@  discard block
 block discarded – undo
3121 3121
     </li>
3122 3122
     <?php
3123 3123
 
3124
-    $html = ob_get_clean();
3125
-    return $output.$html;
3124
+	$html = ob_get_clean();
3125
+	return $output.$html;
3126 3126
 }
3127 3127
 add_filter('geodir_cfa_extra_fields_multiselect','geodir_cfa_extra_fields_multiselect',10,4);
3128 3128
 
3129 3129
 
3130 3130
 function geodir_cfa_extra_fields_smr($output,$result_str,$cf,$field_info){
3131 3131
 
3132
-    ob_start();
3132
+	ob_start();
3133 3133
 
3134
-    $value = '';
3135
-    if (isset($field_info->option_values)) {
3136
-        $value = esc_attr($field_info->option_values);
3137
-    }elseif(isset($cf['defaults']['option_values']) && $cf['defaults']['option_values']){
3138
-        $value = esc_attr($cf['defaults']['option_values']);
3139
-    }
3134
+	$value = '';
3135
+	if (isset($field_info->option_values)) {
3136
+		$value = esc_attr($field_info->option_values);
3137
+	}elseif(isset($cf['defaults']['option_values']) && $cf['defaults']['option_values']){
3138
+		$value = esc_attr($cf['defaults']['option_values']);
3139
+	}
3140 3140
 
3141
-    $field_type = isset($field_info->field_type) ? $field_info->field_type : '';
3142
-    ?>
3141
+	$field_type = isset($field_info->field_type) ? $field_info->field_type : '';
3142
+	?>
3143 3143
     <li>
3144 3144
         <label for="option_values" class="gd-cf-tooltip-wrap">
3145 3145
             <i class="fa fa-info-circle" aria-hidden="true"></i> <?php _e('Option Values :', 'geodirectory'); ?>
@@ -3166,8 +3166,8 @@  discard block
 block discarded – undo
3166 3166
     </li>
3167 3167
     <?php
3168 3168
 
3169
-    $html = ob_get_clean();
3170
-    return $output.$html;
3169
+	$html = ob_get_clean();
3170
+	return $output.$html;
3171 3171
 }
3172 3172
 add_filter('geodir_cfa_extra_fields_multiselect','geodir_cfa_extra_fields_smr',10,4);
3173 3173
 add_filter('geodir_cfa_extra_fields_select','geodir_cfa_extra_fields_smr',10,4);
@@ -3175,12 +3175,12 @@  discard block
 block discarded – undo
3175 3175
 
3176 3176
 
3177 3177
 function geodir_cfa_extra_fields_datepicker($output,$result_str,$cf,$field_info){
3178
-    ob_start();
3179
-    $extra = array();
3180
-    if (isset($field_info->extra_fields) && $field_info->extra_fields != '') {
3181
-        $extra = unserialize($field_info->extra_fields);
3182
-    }
3183
-    ?>
3178
+	ob_start();
3179
+	$extra = array();
3180
+	if (isset($field_info->extra_fields) && $field_info->extra_fields != '') {
3181
+		$extra = unserialize($field_info->extra_fields);
3182
+	}
3183
+	?>
3184 3184
     <li>
3185 3185
         <label for="date_format" class="gd-cf-tooltip-wrap">
3186 3186
             <i class="fa fa-info-circle" aria-hidden="true"></i> <?php _e('Date Format :', 'geodirectory'); ?>
@@ -3190,52 +3190,52 @@  discard block
 block discarded – undo
3190 3190
         </label>
3191 3191
         <div class="gd-cf-input-wrap" style="overflow:inherit;">
3192 3192
             <?php
3193
-            $date_formats = array(
3194
-                'm/d/Y',
3195
-                'd/m/Y',
3196
-                'Y/m/d',
3197
-                'm-d-Y',
3198
-                'd-m-Y',
3199
-                'Y-m-d',
3200
-                'F j, Y',
3201
-            );
3202
-            /**
3203
-             * Filter the custom field date format options.
3204
-             *
3205
-             * @since 1.6.5
3206
-             * @param array $date_formats The PHP date format array.
3207
-             */
3208
-            $date_formats = apply_filters('geodir_date_formats',$date_formats);
3209
-            ?>
3193
+			$date_formats = array(
3194
+				'm/d/Y',
3195
+				'd/m/Y',
3196
+				'Y/m/d',
3197
+				'm-d-Y',
3198
+				'd-m-Y',
3199
+				'Y-m-d',
3200
+				'F j, Y',
3201
+			);
3202
+			/**
3203
+			 * Filter the custom field date format options.
3204
+			 *
3205
+			 * @since 1.6.5
3206
+			 * @param array $date_formats The PHP date format array.
3207
+			 */
3208
+			$date_formats = apply_filters('geodir_date_formats',$date_formats);
3209
+			?>
3210 3210
             <select name="extra[date_format]" id="date_format">
3211 3211
                 <?php
3212
-                foreach($date_formats as $format){
3213
-                    $selected = '';
3214
-                    if(!empty($extra) && esc_attr($extra['date_format'])==$format){
3215
-                        $selected = "selected='selected'";
3216
-                    }
3217
-                    echo "<option $selected value='$format'>$format       (".date_i18n( $format, time()).")</option>";
3218
-                }
3219
-                ?>
3212
+				foreach($date_formats as $format){
3213
+					$selected = '';
3214
+					if(!empty($extra) && esc_attr($extra['date_format'])==$format){
3215
+						$selected = "selected='selected'";
3216
+					}
3217
+					echo "<option $selected value='$format'>$format       (".date_i18n( $format, time()).")</option>";
3218
+				}
3219
+				?>
3220 3220
             </select>
3221 3221
 
3222 3222
         </div>
3223 3223
     </li>
3224 3224
     <?php
3225 3225
 
3226
-    $html = ob_get_clean();
3227
-    return $output.$html;
3226
+	$html = ob_get_clean();
3227
+	return $output.$html;
3228 3228
 }
3229 3229
 add_filter('geodir_cfa_extra_fields_datepicker','geodir_cfa_extra_fields_datepicker',10,4);
3230 3230
 
3231 3231
 
3232 3232
 function geodir_cfa_extra_fields_file($output,$result_str,$cf,$field_info){
3233
-    ob_start();
3234
-    $allowed_file_types = geodir_allowed_mime_types();
3233
+	ob_start();
3234
+	$allowed_file_types = geodir_allowed_mime_types();
3235 3235
 
3236
-    $extra_fields = isset($field_info->extra_fields) && $field_info->extra_fields != '' ? maybe_unserialize($field_info->extra_fields) : '';
3237
-    $gd_file_types = !empty($extra_fields) && !empty($extra_fields['gd_file_types']) ? $extra_fields['gd_file_types'] : array('*');
3238
-    ?>
3236
+	$extra_fields = isset($field_info->extra_fields) && $field_info->extra_fields != '' ? maybe_unserialize($field_info->extra_fields) : '';
3237
+	$gd_file_types = !empty($extra_fields) && !empty($extra_fields['gd_file_types']) ? $extra_fields['gd_file_types'] : array('*');
3238
+	?>
3239 3239
     <li>
3240 3240
         <label for="gd_file_types" class="gd-cf-tooltip-wrap">
3241 3241
             <i class="fa fa-info-circle" aria-hidden="true"></i> <?php _e('Allowed file types :', 'geodirectory'); ?>
@@ -3258,33 +3258,33 @@  discard block
 block discarded – undo
3258 3258
     </li>
3259 3259
     <?php
3260 3260
 
3261
-    $html = ob_get_clean();
3262
-    return $output.$html;
3261
+	$html = ob_get_clean();
3262
+	return $output.$html;
3263 3263
 }
3264 3264
 add_filter('geodir_cfa_extra_fields_file','geodir_cfa_extra_fields_file',10,4);
3265 3265
 
3266 3266
 function geodir_cfa_extra_fields_text($output,$result_str,$cf,$field_info){
3267
-    ob_start();
3267
+	ob_start();
3268 3268
 
3269
-    $extra_fields = isset($field_info->extra_fields) && $field_info->extra_fields != '' ? maybe_unserialize($field_info->extra_fields) : '';
3269
+	$extra_fields = isset($field_info->extra_fields) && $field_info->extra_fields != '' ? maybe_unserialize($field_info->extra_fields) : '';
3270 3270
    // print_r($cf);echo '###';
3271 3271
 
3272 3272
 
3273 3273
 
3274
-    $radio_id = (isset($field_info->htmlvar_name)) ? $field_info->htmlvar_name : rand(5, 500);
3274
+	$radio_id = (isset($field_info->htmlvar_name)) ? $field_info->htmlvar_name : rand(5, 500);
3275 3275
 
3276 3276
 
3277
-    $value = '';
3278
-    if ($extra_fields && isset($extra_fields['is_price'])) {
3279
-    $value = esc_attr($extra_fields['is_price']);
3280
-    }elseif(isset($cf['defaults']['extra_fields']['is_price']) && $cf['defaults']['extra_fields']['is_price']){
3281
-    $value = esc_attr($cf['defaults']['extra_fields']['is_price']);
3282
-    }
3277
+	$value = '';
3278
+	if ($extra_fields && isset($extra_fields['is_price'])) {
3279
+	$value = esc_attr($extra_fields['is_price']);
3280
+	}elseif(isset($cf['defaults']['extra_fields']['is_price']) && $cf['defaults']['extra_fields']['is_price']){
3281
+	$value = esc_attr($cf['defaults']['extra_fields']['is_price']);
3282
+	}
3283 3283
 
3284
-    $show_price_extra = ($value==1) ? 1 : 0;
3284
+	$show_price_extra = ($value==1) ? 1 : 0;
3285 3285
 
3286
-    $show_price = (isset($field_info->data_type) && ($field_info->data_type=='INT' && $field_info->data_type=='FLOAT')) ? 1 : 0;
3287
-    ?>
3286
+	$show_price = (isset($field_info->data_type) && ($field_info->data_type=='INT' && $field_info->data_type=='FLOAT')) ? 1 : 0;
3287
+	?>
3288 3288
     <li class="gdcf-price-extra-set" <?php if(!$show_price){ echo "style='display:none;'";}?>>
3289 3289
         <label for="is_price" class="gd-cf-tooltip-wrap">
3290 3290
             <i class="fa fa-info-circle" aria-hidden="true"></i> <?php _e('Display as price? :', 'geodirectory'); ?>
@@ -3296,14 +3296,14 @@  discard block
 block discarded – undo
3296 3296
 
3297 3297
             <input type="radio" id="is_price_yes<?php echo $radio_id;?>" name="extra[is_price]" class="gdri-enabled"  value="1"
3298 3298
                 <?php if ($value == '1') {
3299
-                    echo 'checked';
3300
-                } ?>/>
3299
+					echo 'checked';
3300
+				} ?>/>
3301 3301
             <label onclick="show_hide_radio(this,'show','gdcf-price-extra');" for="is_price_yes<?php echo $radio_id;?>" class="gdcb-enable"><span><?php _e('Yes', 'geodirectory'); ?></span></label>
3302 3302
 
3303 3303
             <input type="radio" id="is_price_no<?php echo $radio_id;?>" name="extra[is_price]" class="gdri-disabled" value="0"
3304 3304
                 <?php if ($value == '0' || !$value) {
3305
-                    echo 'checked';
3306
-                } ?>/>
3305
+					echo 'checked';
3306
+				} ?>/>
3307 3307
             <label onclick="show_hide_radio(this,'hide','gdcf-price-extra');" for="is_price_no<?php echo $radio_id;?>" class="gdcb-disable"><span><?php _e('No', 'geodirectory'); ?></span></label>
3308 3308
 
3309 3309
         </div>
@@ -3311,13 +3311,13 @@  discard block
 block discarded – undo
3311 3311
 
3312 3312
     <?php
3313 3313
 
3314
-    $value = '';
3315
-    if ($extra_fields && isset($extra_fields['thousand_separator'])) {
3316
-        $value = esc_attr($extra_fields['thousand_separator']);
3317
-    }elseif(isset($cf['defaults']['extra_fields']['thousand_separator']) && $cf['defaults']['extra_fields']['thousand_separator']){
3318
-        $value = esc_attr($cf['defaults']['extra_fields']['thousand_separator']);
3319
-    }
3320
-    ?>
3314
+	$value = '';
3315
+	if ($extra_fields && isset($extra_fields['thousand_separator'])) {
3316
+		$value = esc_attr($extra_fields['thousand_separator']);
3317
+	}elseif(isset($cf['defaults']['extra_fields']['thousand_separator']) && $cf['defaults']['extra_fields']['thousand_separator']){
3318
+		$value = esc_attr($cf['defaults']['extra_fields']['thousand_separator']);
3319
+	}
3320
+	?>
3321 3321
     <li class="gdcf-price-extra" <?php if(!$show_price_extra){ echo "style='display:none;'";}?>>
3322 3322
         <label for="thousand_separator" class="gd-cf-tooltip-wrap"><i class="fa fa-info-circle" aria-hidden="true"></i> <?php _e('Thousand separator :', 'geodirectory');?>
3323 3323
             <div class="gdcf-tooltip">
@@ -3338,13 +3338,13 @@  discard block
 block discarded – undo
3338 3338
 
3339 3339
     <?php
3340 3340
 
3341
-    $value = '';
3342
-    if ($extra_fields && isset($extra_fields['decimal_separator'])) {
3343
-        $value = esc_attr($extra_fields['decimal_separator']);
3344
-    }elseif(isset($cf['defaults']['extra_fields']['decimal_separator']) && $cf['defaults']['extra_fields']['decimal_separator']){
3345
-        $value = esc_attr($cf['defaults']['extra_fields']['decimal_separator']);
3346
-    }
3347
-    ?>
3341
+	$value = '';
3342
+	if ($extra_fields && isset($extra_fields['decimal_separator'])) {
3343
+		$value = esc_attr($extra_fields['decimal_separator']);
3344
+	}elseif(isset($cf['defaults']['extra_fields']['decimal_separator']) && $cf['defaults']['extra_fields']['decimal_separator']){
3345
+		$value = esc_attr($cf['defaults']['extra_fields']['decimal_separator']);
3346
+	}
3347
+	?>
3348 3348
     <li class="gdcf-price-extra" <?php if(!$show_price_extra){ echo "style='display:none;'";}?>>
3349 3349
         <label for="decimal_separator" class="gd-cf-tooltip-wrap"><i class="fa fa-info-circle" aria-hidden="true"></i> <?php _e('Decimal separator :', 'geodirectory');?>
3350 3350
             <div class="gdcf-tooltip">
@@ -3361,13 +3361,13 @@  discard block
 block discarded – undo
3361 3361
 
3362 3362
     <?php
3363 3363
 
3364
-    $value = '';
3365
-    if ($extra_fields && isset($extra_fields['decimal_display'])) {
3366
-        $value = esc_attr($extra_fields['decimal_display']);
3367
-    }elseif(isset($cf['defaults']['extra_fields']['decimal_display']) && $cf['defaults']['extra_fields']['decimal_display']){
3368
-        $value = esc_attr($cf['defaults']['extra_fields']['decimal_display']);
3369
-    }
3370
-    ?>
3364
+	$value = '';
3365
+	if ($extra_fields && isset($extra_fields['decimal_display'])) {
3366
+		$value = esc_attr($extra_fields['decimal_display']);
3367
+	}elseif(isset($cf['defaults']['extra_fields']['decimal_display']) && $cf['defaults']['extra_fields']['decimal_display']){
3368
+		$value = esc_attr($cf['defaults']['extra_fields']['decimal_display']);
3369
+	}
3370
+	?>
3371 3371
     <li class="gdcf-price-extra" <?php if(!$show_price_extra){ echo "style='display:none;'";}?>>
3372 3372
         <label for="decimal_display" class="gd-cf-tooltip-wrap"><i class="fa fa-info-circle" aria-hidden="true"></i> <?php _e('Decimal display :', 'geodirectory');?>
3373 3373
             <div class="gdcf-tooltip">
@@ -3384,13 +3384,13 @@  discard block
 block discarded – undo
3384 3384
 
3385 3385
     <?php
3386 3386
 
3387
-    $value = '';
3388
-    if ($extra_fields && isset($extra_fields['currency_symbol'])) {
3389
-        $value = esc_attr($extra_fields['currency_symbol']);
3390
-    }elseif(isset($cf['defaults']['extra_fields']['currency_symbol']) && $cf['defaults']['extra_fields']['currency_symbol']){
3391
-        $value = esc_attr($cf['defaults']['extra_fields']['currency_symbol']);
3392
-    }
3393
-    ?>
3387
+	$value = '';
3388
+	if ($extra_fields && isset($extra_fields['currency_symbol'])) {
3389
+		$value = esc_attr($extra_fields['currency_symbol']);
3390
+	}elseif(isset($cf['defaults']['extra_fields']['currency_symbol']) && $cf['defaults']['extra_fields']['currency_symbol']){
3391
+		$value = esc_attr($cf['defaults']['extra_fields']['currency_symbol']);
3392
+	}
3393
+	?>
3394 3394
     <li class="gdcf-price-extra" <?php if(!$show_price_extra){ echo "style='display:none;'";}?>>
3395 3395
         <label for="currency_symbol" class="gd-cf-tooltip-wrap"><i class="fa fa-info-circle" aria-hidden="true"></i> <?php _e('Currency symbol :', 'geodirectory');?>
3396 3396
             <div class="gdcf-tooltip">
@@ -3405,13 +3405,13 @@  discard block
 block discarded – undo
3405 3405
 
3406 3406
     <?php
3407 3407
 
3408
-    $value = '';
3409
-    if ($extra_fields && isset($extra_fields['currency_symbol_placement'])) {
3410
-        $value = esc_attr($extra_fields['currency_symbol_placement']);
3411
-    }elseif(isset($cf['defaults']['extra_fields']['currency_symbol_placement']) && $cf['defaults']['extra_fields']['currency_symbol_placement']){
3412
-        $value = esc_attr($cf['defaults']['extra_fields']['currency_symbol_placement']);
3413
-    }
3414
-    ?>
3408
+	$value = '';
3409
+	if ($extra_fields && isset($extra_fields['currency_symbol_placement'])) {
3410
+		$value = esc_attr($extra_fields['currency_symbol_placement']);
3411
+	}elseif(isset($cf['defaults']['extra_fields']['currency_symbol_placement']) && $cf['defaults']['extra_fields']['currency_symbol_placement']){
3412
+		$value = esc_attr($cf['defaults']['extra_fields']['currency_symbol_placement']);
3413
+	}
3414
+	?>
3415 3415
     <li class="gdcf-price-extra" <?php if(!$show_price_extra){ echo "style='display:none;'";}?>>
3416 3416
         <label for="currency_symbol_placement" class="gd-cf-tooltip-wrap"><i class="fa fa-info-circle" aria-hidden="true"></i> <?php _e('Currency symbol placement :', 'geodirectory');?>
3417 3417
             <div class="gdcf-tooltip">
@@ -3429,225 +3429,225 @@  discard block
 block discarded – undo
3429 3429
 
3430 3430
     <?php
3431 3431
 
3432
-    $html = ob_get_clean();
3433
-    return $output.$html;
3432
+	$html = ob_get_clean();
3433
+	return $output.$html;
3434 3434
 }
3435 3435
 add_filter('geodir_cfa_extra_fields_text','geodir_cfa_extra_fields_text',10,4);
3436 3436
 
3437 3437
 function geodir_default_custom_fields($post_type='gd_place',$package_id=''){
3438
-    $fields = array();
3439
-    $package = ($package_id=='') ? '' : array($package_id);
3440
-
3441
-    $fields[] = array('listing_type' => $post_type,
3442
-                      'data_type' => 'VARCHAR',
3443
-                      'field_type' => 'taxonomy',
3444
-                      'admin_title' => __('Category', 'geodirectory'),
3445
-                      'admin_desc' => __('SELECT listing category FROM here. SELECT at least one CATEGORY', 'geodirectory'),
3446
-                      'site_title' => __('Category', 'geodirectory'),
3447
-                      'htmlvar_name' => $post_type.'category',
3448
-                      'default_value' => '',
3449
-                      'is_default' => '1',
3450
-                      'is_admin' => '1',
3451
-                      'is_required' => '1',
3452
-                      'show_in'   =>  '[detail]',
3453
-                      'show_on_pkg' => $package,
3454
-                      'clabels' => __('Category', 'geodirectory'));
3455
-
3456
-    $fields[] = array('listing_type' => $post_type,
3457
-                      'data_type' => 'VARCHAR',
3458
-                      'field_type' => 'address',
3459
-                      'admin_title' => __('Address', 'geodirectory'),
3460
-                      'admin_desc' => ADDRESS_MSG,
3461
-                      'site_title' => __('Address', 'geodirectory'),
3462
-                      'htmlvar_name' => 'post',
3463
-                      'default_value' => '',
3464
-                      'option_values' => '',
3465
-                      'is_default' => '1',
3466
-                      'is_admin' => '1',
3467
-                      'is_required' => '1',
3468
-                      'show_in'   =>  '[detail],[mapbubble]',
3469
-                      'show_on_pkg' => $package,
3470
-                      'required_msg' => __('Address fields are required', 'geodirectory'),
3471
-                      'clabels' => __('Address', 'geodirectory'),
3472
-                      'extra' => array('show_city' => 1, 'city_lable' => __('City', 'geodirectory'),
3473
-                                       'show_region' => 1, 'region_lable' => __('Region', 'geodirectory'),
3474
-                                       'show_country' => 1, 'country_lable' => __('Country', 'geodirectory'),
3475
-                                       'show_zip' => 1, 'zip_lable' => __('Zip/Post Code', 'geodirectory'),
3476
-                                       'show_map' => 1, 'map_lable' => __('Set Address On Map', 'geodirectory'),
3477
-                                       'show_mapview' => 1, 'mapview_lable' => __('Select Map View', 'geodirectory'),
3478
-                                       'show_mapzoom' => 1, 'mapzoom_lable' => 'hidden',
3479
-                                       'show_latlng' => 1));
3480
-
3481
-    $fields[] = array('listing_type' => $post_type,
3482
-                      'data_type' => 'VARCHAR',
3483
-                      'field_type' => 'text',
3484
-                      'admin_title' => __('Time', 'geodirectory'),
3485
-                      'admin_desc' => __('Enter Business or Listing Timing Information.<br/>eg. : 10.00 am to 6 pm every day', 'geodirectory'),
3486
-                      'site_title' => __('Time', 'geodirectory'),
3487
-                      'htmlvar_name' => 'timing',
3488
-                      'default_value' => '',
3489
-                      'option_values' => '',
3490
-                      'is_default' => '1',
3491
-                      'is_admin' => '1',
3492
-                      'show_in' =>  '[detail],[mapbubble]',
3493
-                      'show_on_pkg' => $package,
3494
-                      'clabels' => __('Time', 'geodirectory'));
3495
-
3496
-    $fields[] = array('listing_type' => $post_type,
3497
-                      'data_type' => 'VARCHAR',
3498
-                      'field_type' => 'phone',
3499
-                      'admin_title' => __('Phone', 'geodirectory'),
3500
-                      'admin_desc' => __('You can enter phone number,cell phone number etc.', 'geodirectory'),
3501
-                      'site_title' => __('Phone', 'geodirectory'),
3502
-                      'htmlvar_name' => 'contact',
3503
-                      'default_value' => '',
3504
-                      'option_values' => '',
3505
-                      'is_default' => '1',
3506
-                      'is_admin' => '1',
3507
-                      'show_in' =>  '[detail],[mapbubble]',
3508
-                      'show_on_pkg' => $package,
3509
-                      'clabels' => __('Phone', 'geodirectory'));
3510
-
3511
-    $fields[] = array('listing_type' => $post_type,
3512
-                      'data_type' => 'VARCHAR',
3513
-                      'field_type' => 'email',
3514
-                      'admin_title' => __('Email', 'geodirectory'),
3515
-                      'admin_desc' => __('You can enter your business or listing email.', 'geodirectory'),
3516
-                      'site_title' => __('Email', 'geodirectory'),
3517
-                      'htmlvar_name' => 'email',
3518
-                      'default_value' => '',
3519
-                      'option_values' => '',
3520
-                      'is_default' => '1',
3521
-                      'is_admin' => '1',
3522
-                      'show_in' => '[detail]',
3523
-                      'show_on_pkg' => $package,
3524
-                      'clabels' => __('Email', 'geodirectory'));
3525
-
3526
-    $fields[] = array('listing_type' => $post_type,
3527
-                      'data_type' => 'VARCHAR',
3528
-                      'field_type' => 'url',
3529
-                      'admin_title' => __('Website', 'geodirectory'),
3530
-                      'admin_desc' => __('You can enter your business or listing website.', 'geodirectory'),
3531
-                      'site_title' => __('Website', 'geodirectory'),
3532
-                      'htmlvar_name' => 'website',
3533
-                      'default_value' => '',
3534
-                      'option_values' => '',
3535
-                      'is_default' => '1',
3536
-                      'is_admin' => '1',
3537
-                      'show_in' => '[detail]',
3538
-                      'show_on_pkg' => $package,
3539
-                      'clabels' => __('Website', 'geodirectory'));
3540
-
3541
-    $fields[] = array('listing_type' => $post_type,
3542
-                      'data_type' => 'VARCHAR',
3543
-                      'field_type' => 'url',
3544
-                      'admin_title' => __('Twitter', 'geodirectory'),
3545
-                      'admin_desc' => __('You can enter your business or listing twitter url.', 'geodirectory'),
3546
-                      'site_title' => __('Twitter', 'geodirectory'),
3547
-                      'htmlvar_name' => 'twitter',
3548
-                      'default_value' => '',
3549
-                      'option_values' => '',
3550
-                      'is_default' => '1',
3551
-                      'is_admin' => '1',
3552
-                      'show_in' => '[detail]',
3553
-                      'show_on_pkg' => $package,
3554
-                      'clabels' => __('Twitter', 'geodirectory'));
3555
-
3556
-    $fields[] = array('listing_type' => $post_type,
3557
-                      'data_type' => 'VARCHAR',
3558
-                      'field_type' => 'url',
3559
-                      'admin_title' => __('Facebook', 'geodirectory'),
3560
-                      'admin_desc' => __('You can enter your business or listing facebook url.', 'geodirectory'),
3561
-                      'site_title' => __('Facebook', 'geodirectory'),
3562
-                      'htmlvar_name' => 'facebook',
3563
-                      'default_value' => '',
3564
-                      'option_values' => '',
3565
-                      'is_default' => '1',
3566
-                      'is_admin' => '1',
3567
-                      'show_in' => '[detail]',
3568
-                      'show_on_pkg' => $package,
3569
-                      'clabels' => __('Facebook', 'geodirectory'));
3570
-
3571
-    $fields[] = array('listing_type' => $post_type,
3572
-                      'data_type' => 'TEXT',
3573
-                      'field_type' => 'textarea',
3574
-                      'admin_title' => __('Video', 'geodirectory'),
3575
-                      'admin_desc' => __('Add video code here, YouTube etc.', 'geodirectory'),
3576
-                      'site_title' => __('Video', 'geodirectory'),
3577
-                      'htmlvar_name' => 'video',
3578
-                      'default_value' => '',
3579
-                      'option_values' => '',
3580
-                      'is_default' => '0',
3581
-                      'is_admin' => '1',
3582
-                      'show_in' => '[owntab]',
3583
-                      'show_on_pkg' => $package,
3584
-                      'clabels' => __('Video', 'geodirectory'));
3585
-
3586
-    $fields[] = array('listing_type' => $post_type,
3587
-                      'data_type' => 'TEXT',
3588
-                      'field_type' => 'textarea',
3589
-                      'admin_title' => __('Special Offers', 'geodirectory'),
3590
-                      'admin_desc' => __('Note: List out any special offers (optional)', 'geodirectory'),
3591
-                      'site_title' => __('Special Offers', 'geodirectory'),
3592
-                      'htmlvar_name' => 'special_offers',
3593
-                      'default_value' => '',
3594
-                      'option_values' => '',
3595
-                      'is_default' => '0',
3596
-                      'is_admin' => '1',
3597
-                      'show_in' => '[owntab]',
3598
-                      'show_on_pkg' => $package,
3599
-                      'clabels' => __('Special Offers', 'geodirectory'));
3600
-
3601
-    /**
3602
-     * Filter the array of default custom fields DB table data.
3603
-     *
3604
-     * @since 1.6.6
3605
-     * @param string $fields The default custom fields as an array.
3606
-     */
3607
-    $fields = apply_filters('geodir_default_custom_fields', $fields);
3608
-
3609
-    return  $fields;
3438
+	$fields = array();
3439
+	$package = ($package_id=='') ? '' : array($package_id);
3440
+
3441
+	$fields[] = array('listing_type' => $post_type,
3442
+					  'data_type' => 'VARCHAR',
3443
+					  'field_type' => 'taxonomy',
3444
+					  'admin_title' => __('Category', 'geodirectory'),
3445
+					  'admin_desc' => __('SELECT listing category FROM here. SELECT at least one CATEGORY', 'geodirectory'),
3446
+					  'site_title' => __('Category', 'geodirectory'),
3447
+					  'htmlvar_name' => $post_type.'category',
3448
+					  'default_value' => '',
3449
+					  'is_default' => '1',
3450
+					  'is_admin' => '1',
3451
+					  'is_required' => '1',
3452
+					  'show_in'   =>  '[detail]',
3453
+					  'show_on_pkg' => $package,
3454
+					  'clabels' => __('Category', 'geodirectory'));
3455
+
3456
+	$fields[] = array('listing_type' => $post_type,
3457
+					  'data_type' => 'VARCHAR',
3458
+					  'field_type' => 'address',
3459
+					  'admin_title' => __('Address', 'geodirectory'),
3460
+					  'admin_desc' => ADDRESS_MSG,
3461
+					  'site_title' => __('Address', 'geodirectory'),
3462
+					  'htmlvar_name' => 'post',
3463
+					  'default_value' => '',
3464
+					  'option_values' => '',
3465
+					  'is_default' => '1',
3466
+					  'is_admin' => '1',
3467
+					  'is_required' => '1',
3468
+					  'show_in'   =>  '[detail],[mapbubble]',
3469
+					  'show_on_pkg' => $package,
3470
+					  'required_msg' => __('Address fields are required', 'geodirectory'),
3471
+					  'clabels' => __('Address', 'geodirectory'),
3472
+					  'extra' => array('show_city' => 1, 'city_lable' => __('City', 'geodirectory'),
3473
+									   'show_region' => 1, 'region_lable' => __('Region', 'geodirectory'),
3474
+									   'show_country' => 1, 'country_lable' => __('Country', 'geodirectory'),
3475
+									   'show_zip' => 1, 'zip_lable' => __('Zip/Post Code', 'geodirectory'),
3476
+									   'show_map' => 1, 'map_lable' => __('Set Address On Map', 'geodirectory'),
3477
+									   'show_mapview' => 1, 'mapview_lable' => __('Select Map View', 'geodirectory'),
3478
+									   'show_mapzoom' => 1, 'mapzoom_lable' => 'hidden',
3479
+									   'show_latlng' => 1));
3480
+
3481
+	$fields[] = array('listing_type' => $post_type,
3482
+					  'data_type' => 'VARCHAR',
3483
+					  'field_type' => 'text',
3484
+					  'admin_title' => __('Time', 'geodirectory'),
3485
+					  'admin_desc' => __('Enter Business or Listing Timing Information.<br/>eg. : 10.00 am to 6 pm every day', 'geodirectory'),
3486
+					  'site_title' => __('Time', 'geodirectory'),
3487
+					  'htmlvar_name' => 'timing',
3488
+					  'default_value' => '',
3489
+					  'option_values' => '',
3490
+					  'is_default' => '1',
3491
+					  'is_admin' => '1',
3492
+					  'show_in' =>  '[detail],[mapbubble]',
3493
+					  'show_on_pkg' => $package,
3494
+					  'clabels' => __('Time', 'geodirectory'));
3495
+
3496
+	$fields[] = array('listing_type' => $post_type,
3497
+					  'data_type' => 'VARCHAR',
3498
+					  'field_type' => 'phone',
3499
+					  'admin_title' => __('Phone', 'geodirectory'),
3500
+					  'admin_desc' => __('You can enter phone number,cell phone number etc.', 'geodirectory'),
3501
+					  'site_title' => __('Phone', 'geodirectory'),
3502
+					  'htmlvar_name' => 'contact',
3503
+					  'default_value' => '',
3504
+					  'option_values' => '',
3505
+					  'is_default' => '1',
3506
+					  'is_admin' => '1',
3507
+					  'show_in' =>  '[detail],[mapbubble]',
3508
+					  'show_on_pkg' => $package,
3509
+					  'clabels' => __('Phone', 'geodirectory'));
3510
+
3511
+	$fields[] = array('listing_type' => $post_type,
3512
+					  'data_type' => 'VARCHAR',
3513
+					  'field_type' => 'email',
3514
+					  'admin_title' => __('Email', 'geodirectory'),
3515
+					  'admin_desc' => __('You can enter your business or listing email.', 'geodirectory'),
3516
+					  'site_title' => __('Email', 'geodirectory'),
3517
+					  'htmlvar_name' => 'email',
3518
+					  'default_value' => '',
3519
+					  'option_values' => '',
3520
+					  'is_default' => '1',
3521
+					  'is_admin' => '1',
3522
+					  'show_in' => '[detail]',
3523
+					  'show_on_pkg' => $package,
3524
+					  'clabels' => __('Email', 'geodirectory'));
3525
+
3526
+	$fields[] = array('listing_type' => $post_type,
3527
+					  'data_type' => 'VARCHAR',
3528
+					  'field_type' => 'url',
3529
+					  'admin_title' => __('Website', 'geodirectory'),
3530
+					  'admin_desc' => __('You can enter your business or listing website.', 'geodirectory'),
3531
+					  'site_title' => __('Website', 'geodirectory'),
3532
+					  'htmlvar_name' => 'website',
3533
+					  'default_value' => '',
3534
+					  'option_values' => '',
3535
+					  'is_default' => '1',
3536
+					  'is_admin' => '1',
3537
+					  'show_in' => '[detail]',
3538
+					  'show_on_pkg' => $package,
3539
+					  'clabels' => __('Website', 'geodirectory'));
3540
+
3541
+	$fields[] = array('listing_type' => $post_type,
3542
+					  'data_type' => 'VARCHAR',
3543
+					  'field_type' => 'url',
3544
+					  'admin_title' => __('Twitter', 'geodirectory'),
3545
+					  'admin_desc' => __('You can enter your business or listing twitter url.', 'geodirectory'),
3546
+					  'site_title' => __('Twitter', 'geodirectory'),
3547
+					  'htmlvar_name' => 'twitter',
3548
+					  'default_value' => '',
3549
+					  'option_values' => '',
3550
+					  'is_default' => '1',
3551
+					  'is_admin' => '1',
3552
+					  'show_in' => '[detail]',
3553
+					  'show_on_pkg' => $package,
3554
+					  'clabels' => __('Twitter', 'geodirectory'));
3555
+
3556
+	$fields[] = array('listing_type' => $post_type,
3557
+					  'data_type' => 'VARCHAR',
3558
+					  'field_type' => 'url',
3559
+					  'admin_title' => __('Facebook', 'geodirectory'),
3560
+					  'admin_desc' => __('You can enter your business or listing facebook url.', 'geodirectory'),
3561
+					  'site_title' => __('Facebook', 'geodirectory'),
3562
+					  'htmlvar_name' => 'facebook',
3563
+					  'default_value' => '',
3564
+					  'option_values' => '',
3565
+					  'is_default' => '1',
3566
+					  'is_admin' => '1',
3567
+					  'show_in' => '[detail]',
3568
+					  'show_on_pkg' => $package,
3569
+					  'clabels' => __('Facebook', 'geodirectory'));
3570
+
3571
+	$fields[] = array('listing_type' => $post_type,
3572
+					  'data_type' => 'TEXT',
3573
+					  'field_type' => 'textarea',
3574
+					  'admin_title' => __('Video', 'geodirectory'),
3575
+					  'admin_desc' => __('Add video code here, YouTube etc.', 'geodirectory'),
3576
+					  'site_title' => __('Video', 'geodirectory'),
3577
+					  'htmlvar_name' => 'video',
3578
+					  'default_value' => '',
3579
+					  'option_values' => '',
3580
+					  'is_default' => '0',
3581
+					  'is_admin' => '1',
3582
+					  'show_in' => '[owntab]',
3583
+					  'show_on_pkg' => $package,
3584
+					  'clabels' => __('Video', 'geodirectory'));
3585
+
3586
+	$fields[] = array('listing_type' => $post_type,
3587
+					  'data_type' => 'TEXT',
3588
+					  'field_type' => 'textarea',
3589
+					  'admin_title' => __('Special Offers', 'geodirectory'),
3590
+					  'admin_desc' => __('Note: List out any special offers (optional)', 'geodirectory'),
3591
+					  'site_title' => __('Special Offers', 'geodirectory'),
3592
+					  'htmlvar_name' => 'special_offers',
3593
+					  'default_value' => '',
3594
+					  'option_values' => '',
3595
+					  'is_default' => '0',
3596
+					  'is_admin' => '1',
3597
+					  'show_in' => '[owntab]',
3598
+					  'show_on_pkg' => $package,
3599
+					  'clabels' => __('Special Offers', 'geodirectory'));
3600
+
3601
+	/**
3602
+	 * Filter the array of default custom fields DB table data.
3603
+	 *
3604
+	 * @since 1.6.6
3605
+	 * @param string $fields The default custom fields as an array.
3606
+	 */
3607
+	$fields = apply_filters('geodir_default_custom_fields', $fields);
3608
+
3609
+	return  $fields;
3610 3610
 }
3611 3611
 
3612 3612
 function geodir_currency_format_number($number='',$cf=''){
3613 3613
 
3614
-    $cs = isset($cf['extra_fields']) ? maybe_unserialize($cf['extra_fields']) : '';
3614
+	$cs = isset($cf['extra_fields']) ? maybe_unserialize($cf['extra_fields']) : '';
3615 3615
 
3616
-    $symbol = isset($cs['currency_symbol']) ? $cs['currency_symbol'] : '$';
3617
-    $decimals = isset($cf['decimal_point']) && $cf['decimal_point'] ? $cf['decimal_point'] : 2;
3618
-    $decimal_display = !empty($cf['decimal_display']) ? $cf['decimal_display'] : (!empty($cs['decimal_display']) ? $cs['decimal_display'] : 'if');
3619
-    $decimalpoint = '.';
3616
+	$symbol = isset($cs['currency_symbol']) ? $cs['currency_symbol'] : '$';
3617
+	$decimals = isset($cf['decimal_point']) && $cf['decimal_point'] ? $cf['decimal_point'] : 2;
3618
+	$decimal_display = !empty($cf['decimal_display']) ? $cf['decimal_display'] : (!empty($cs['decimal_display']) ? $cs['decimal_display'] : 'if');
3619
+	$decimalpoint = '.';
3620 3620
 
3621
-    if(isset($cs['decimal_separator']) && $cs['decimal_separator']=='comma'){
3622
-        $decimalpoint = ',';
3623
-    }
3621
+	if(isset($cs['decimal_separator']) && $cs['decimal_separator']=='comma'){
3622
+		$decimalpoint = ',';
3623
+	}
3624 3624
 
3625
-    $separator = ',';
3625
+	$separator = ',';
3626 3626
 
3627
-    if(isset($cs['thousand_separator'])){
3628
-        if($cs['thousand_separator']=='comma'){$separator = ',';}
3629
-        if($cs['thousand_separator']=='slash'){$separator = '\\';}
3630
-        if($cs['thousand_separator']=='period'){$separator = '.';}
3631
-        if($cs['thousand_separator']=='space'){$separator = ' ';}
3632
-        if($cs['thousand_separator']=='none'){$separator = '';}
3633
-    }
3627
+	if(isset($cs['thousand_separator'])){
3628
+		if($cs['thousand_separator']=='comma'){$separator = ',';}
3629
+		if($cs['thousand_separator']=='slash'){$separator = '\\';}
3630
+		if($cs['thousand_separator']=='period'){$separator = '.';}
3631
+		if($cs['thousand_separator']=='space'){$separator = ' ';}
3632
+		if($cs['thousand_separator']=='none'){$separator = '';}
3633
+	}
3634 3634
 
3635
-    $currency_symbol_placement = isset($cs['currency_symbol_placement']) ? $cs['currency_symbol_placement'] : 'left';
3635
+	$currency_symbol_placement = isset($cs['currency_symbol_placement']) ? $cs['currency_symbol_placement'] : 'left';
3636 3636
 
3637
-    if($decimals>0 && $decimal_display=='if'){
3638
-        if(is_int($number) || floor( $number ) == $number)
3639
-            $decimals = 0;
3640
-    }
3637
+	if($decimals>0 && $decimal_display=='if'){
3638
+		if(is_int($number) || floor( $number ) == $number)
3639
+			$decimals = 0;
3640
+	}
3641 3641
 
3642
-    $number = number_format($number,$decimals,$decimalpoint,$separator);
3642
+	$number = number_format($number,$decimals,$decimalpoint,$separator);
3643 3643
 
3644 3644
 
3645 3645
 
3646
-    if($currency_symbol_placement=='left'){
3647
-        $number = $symbol . $number;
3648
-    }else{
3649
-        $number = $number . $symbol;
3650
-    }
3646
+	if($currency_symbol_placement=='left'){
3647
+		$number = $symbol . $number;
3648
+	}else{
3649
+		$number = $number . $symbol;
3650
+	}
3651 3651
 
3652 3652
 
3653 3653
    return $number;
Please login to merge, or discard this patch.