| @@ -146,10 +146,23 @@ | ||
| 146 | 146 | $this->data['lng'] = wdk_get_option('wdk_default_lng', -0.09); |
| 147 | 147 | $this->data['wdk_listing_id'] = $wdk_listing_id; |
| 148 | 148 | |
| 149 | 149 | if(!Plugin::$instance->editor->is_edit_mode() && !empty($wdk_listing_id)) { |
| 150 | - $this->data['lat'] = wdk_field_value ('lat', $wdk_listing_id); | |
| 151 | - $this->data['lng'] = wdk_field_value ('lng', $wdk_listing_id); | |
| 150 | + $this->data['lat'] = $this->data['lng'] = NULL; | |
| 151 | + if(!empty($this->data['settings']['field_id'])) { | |
| 152 | + if(strpos($this->data['settings']['field_id'],'__') !== FALSE){ | |
| 153 | + $this->data['settings']['field_id'] = substr($this->data['settings']['field_id'], strpos($this->data['settings']['field_id'],'__')+2); | |
| 154 | + } | |
| 155 | + | |
| 156 | + $gps = wdk_get_gps(wdk_field_value ($this->data['settings']['field_id'], $wdk_listing_id)); | |
| 157 | + if($gps) { | |
| 158 | + $this->data['lat'] = $gps['lat']; | |
| 159 | + $this->data['lng'] = $gps['lng']; | |
| 160 | + } | |
| 161 | + } else { | |
| 162 | + $this->data['lat'] = wdk_field_value ('lat', $wdk_listing_id); | |
| 163 | + $this->data['lng'] = wdk_field_value ('lng', $wdk_listing_id); | |
| 164 | + } | |
| 152 | 165 | } else { |
| 153 | 166 | |
| 154 | 167 | } |
| 155 | 168 | |
| @@ -157,13 +170,14 @@ | ||
| 157 | 170 | if(Plugin::$instance->editor->is_edit_mode() || empty($wdk_listing_id)) { |
| 158 | 171 | $this->data['is_edit_mode']= true; |
| 159 | 172 | } |
| 160 | 173 | |
| 161 | - echo $this->view('wdk-listing-map', $this->data); | |
| 174 | + $this->view('wdk-listing-map', $this->data, true); | |
| 162 | 175 | } |
| 163 | 176 | |
| 164 | 177 | private function generate_controls_conf() { |
| 165 | 178 | if(true){ |
| 179 | + | |
| 166 | 180 | $this->start_controls_section( |
| 167 | 181 | 'conf_custom_map', |
| 168 | 182 | [ |
| 169 | 183 | 'label' => esc_html__('Map', 'wpdirectorykit'), |
| @@ -170,8 +184,97 @@ | ||
| 170 | 184 | 'tab' => '1', |
| 171 | 185 | ] |
| 172 | 186 | ); |
| 173 | 187 | |
| 188 | + | |
| 189 | + $this->add_control( | |
| 190 | + 'enable_router_suggest', | |
| 191 | + [ | |
| 192 | + 'label' => esc_html__( 'Enable Router Suggestion', 'wpdirectorykit' ), | |
| 193 | + 'type' => Controls_Manager::SWITCHER, | |
| 194 | + 'none' => esc_html__( 'True', 'wpdirectorykit' ), | |
| 195 | + 'block' => esc_html__( 'False', 'wpdirectorykit' ), | |
| 196 | + 'render_type' => 'template', | |
| 197 | + 'return_value' => 'yes', | |
| 198 | + 'default' => '', | |
| 199 | + ] | |
| 200 | + ); | |
| 201 | + | |
| 202 | + $this->add_control( | |
| 203 | + 'text_suggestion_route_placeholder', | |
| 204 | + [ | |
| 205 | + 'label' => __( 'Suggestion route placeholder', 'wpdirectorykit' ), | |
| 206 | + 'type' => \Elementor\Controls_Manager::TEXT, | |
| 207 | + 'rows' => 5, | |
| 208 | + 'default' => __( 'Type your address', 'wpdirectorykit' ), | |
| 209 | + 'conditions' => [ | |
| 210 | + 'terms' => [ | |
| 211 | + [ | |
| 212 | + 'name' => 'enable_router_suggest', | |
| 213 | + 'operator' => '==', | |
| 214 | + 'value' => 'yes', | |
| 215 | + ] | |
| 216 | + ], | |
| 217 | + ], | |
| 218 | + ] | |
| 219 | + ); | |
| 220 | + | |
| 221 | + $this->add_control( | |
| 222 | + 'text_suggestion_route', | |
| 223 | + [ | |
| 224 | + 'label' => __( 'Suggestion route button', 'wpdirectorykit' ), | |
| 225 | + 'type' => \Elementor\Controls_Manager::TEXT, | |
| 226 | + 'rows' => 5, | |
| 227 | + 'default' => __( 'Suggest Route', 'wpdirectorykit' ), | |
| 228 | + 'conditions' => [ | |
| 229 | + 'terms' => [ | |
| 230 | + [ | |
| 231 | + 'name' => 'enable_router_suggest', | |
| 232 | + 'operator' => '==', | |
| 233 | + 'value' => 'yes', | |
| 234 | + ] | |
| 235 | + ], | |
| 236 | + ], | |
| 237 | + ] | |
| 238 | + ); | |
| 239 | + | |
| 240 | + $fields_data = wdk_cached_field_get(); | |
| 241 | + $fields_list = array('' => esc_html__('Not Selected', 'wpdirectorykit')); | |
| 242 | + $order_i = 0; | |
| 243 | + | |
| 244 | + $fields_list [(++$order_i).'__section'] = esc_html__('-- Section Custom fields --', 'wpdirectorykit'); | |
| 245 | + $fields_list [(++$order_i).'__idlisting'] = esc_html__('Id listing', 'wpdirectorykit'); | |
| 246 | + $fields_list [(++$order_i).'__post_id'] = esc_html__('Post Id', 'wpdirectorykit'); | |
| 247 | + $fields_list [(++$order_i).'__counter_views'] = esc_html__('Views counter', 'wpdirectorykit'); | |
| 248 | + $fields_list [(++$order_i).'__lat'] = esc_html__('Gps Lat', 'wpdirectorykit'); | |
| 249 | + $fields_list [(++$order_i).'__lng'] = esc_html__('Gps Lng', 'wpdirectorykit'); | |
| 250 | + $fields_list [(++$order_i).'__date'] = esc_html__('Date', 'wpdirectorykit'); | |
| 251 | + $fields_list [(++$order_i).'__date_modified'] = esc_html__('Date Modified', 'wpdirectorykit'); | |
| 252 | + $fields_list [(++$order_i).'__post_title'] = esc_html__('WP Title', 'wpdirectorykit'); | |
| 253 | + $fields_list [(++$order_i).'__post_content'] = esc_html__('WP Content', 'wpdirectorykit'); | |
| 254 | + $fields_list [(++$order_i).'__address'] = esc_html__('Address', 'wpdirectorykit'); | |
| 255 | + $fields_list [(++$order_i).'__category_id'] = esc_html__('Category', 'wpdirectorykit'); | |
| 256 | + $fields_list [(++$order_i).'__location_id'] = esc_html__('Location', 'wpdirectorykit'); | |
| 257 | + | |
| 258 | + foreach($fields_data as $field) | |
| 259 | + { | |
| 260 | + if(wmvc_show_data('field_type', $field) == 'SECTION') { | |
| 261 | + $fields_list [(++$order_i).'section__'.wmvc_show_data('idfield', $field)] = '-- '.esc_html__('Section', 'wpdirectorykit').' '.wmvc_show_data('field_label', $field).' --'; | |
| 262 | + } else { | |
| 263 | + $fields_list[(++$order_i).'__'.wmvc_show_data('idfield', $field)] = '#'.wmvc_show_data('idfield', $field).' '.wmvc_show_data('field_label', $field).'['.wmvc_show_data('field_type', $field).']'; | |
| 264 | + } | |
| 265 | + } | |
| 266 | + $this->add_control( | |
| 267 | + 'field_id', | |
| 268 | + [ | |
| 269 | + 'label' => __( 'Marker position based on field with address (Detected gps by api)', 'wpdirectorykit' ), | |
| 270 | + 'type' => \Elementor\Controls_Manager::SELECT2, | |
| 271 | + 'default' => '', | |
| 272 | + 'options' => $fields_list, | |
| 273 | + 'separator' => 'after', | |
| 274 | + ] | |
| 275 | + ); | |
| 276 | + | |
| 174 | 277 | $this->add_responsive_control( |
| 175 | 278 | 'conf_custom_map_height', |
| 176 | 279 | [ |
| 177 | 280 | 'label' => esc_html__('Height', 'wpdirectorykit'), |
| @@ -262,9 +365,8 @@ | ||
| 262 | 365 | ] |
| 263 | 366 | ] |
| 264 | 367 | ); |
| 265 | 368 | |
| 266 | - | |
| 267 | 369 | $this->add_control( |
| 268 | 370 | 'conf_custom_map_styles_h', |
| 269 | 371 | [ |
| 270 | 372 | 'label' => __( 'Map Styles', 'wpdirectorykit' ), |
| @@ -282,20 +384,133 @@ | ||
| 282 | 384 | '' => esc_html__('Default', 'wpdirectorykit'), |
| 283 | 385 | 'custom' => esc_html__('Custom', 'wpdirectorykit'), |
| 284 | 386 | 'https://cartodb-basemaps-{s}.global.ssl.fastly.net/light_all/{z}/{x}/{y}{r}.png' => esc_html__('Light', 'wpdirectorykit'), |
| 285 | 387 | 'https://{s}.tile.openstreetmap.fr/hot/{z}/{x}/{y}.png' => esc_html__('Osmde', 'wpdirectorykit'), |
| 388 | + 'https://{s}.tile.openstreetmap.fr/osmfr/{z}/{x}/{y}.png' => esc_html__('Osmde Fr', 'wpdirectorykit'), | |
| 389 | + 'https://tile.openstreetmap.de/{z}/{x}/{y}.png' => esc_html__('Osmde De', 'wpdirectorykit'), | |
| 390 | + 'https://tile.openstreetmap.org/{z}/{x}/{y}.png' => esc_html__('Mapnik', 'wpdirectorykit'), | |
| 286 | 391 | 'https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png' => esc_html__('OpenTopoMap', 'wpdirectorykit'), |
| 287 | - 'https://{s}.tile.thunderforest.com/cycle/{z}/{x}/{y}.png' => esc_html__('OpenCycleMap', 'wpdirectorykit'), | |
| 288 | 392 | 'https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}' => esc_html__('WorldImagery', 'wpdirectorykit'), |
| 289 | 393 | 'https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png' => esc_html__('Carto DarkMatter', 'wpdirectorykit'), |
| 290 | 394 | 'https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png' => esc_html__('Carto Voyager', 'wpdirectorykit'), |
| 291 | 395 | 'https://cartodb-basemaps-{s}.global.ssl.fastly.net/dark_all/{z}/{x}/{y}{r}.png' => esc_html__('Maptiler dark (demo)', 'wpdirectorykit'), |
| 396 | + 'https://{s}.tile.thunderforest.com/mobile-atlas/{z}/{x}/{y}.png' => esc_html__('Thunderforest MobileAtlas', 'wpdirectorykit'), | |
| 397 | + 'https://{s}.tile.thunderforest.com/cycle/{z}/{x}/{y}.png' => esc_html__('Thunderforest OpenCycleMap', 'wpdirectorykit'), | |
| 398 | + 'https://{s}.tile.thunderforest.com/transport-dark/{z}/{x}/{y}.png' => esc_html__('Thunderforest TransportDark', 'wpdirectorykit'), | |
| 399 | + 'https://{s}.tile.thunderforest.com/landscape/{z}/{x}/{y}.png' => esc_html__('Thunderforest Landscape', 'wpdirectorykit'), | |
| 400 | + 'https://{s}.tile.thunderforest.com/outdoors/{z}/{x}/{y}.png' => esc_html__('Thunderforest Outdoors', 'wpdirectorykit'), | |
| 401 | + 'https://{s}.tile.thunderforest.com/pioneer/{z}/{x}/{y}.png' => esc_html__('Thunderforest Pioneer', 'wpdirectorykit'), | |
| 402 | + 'https://{s}.tile.thunderforest.com/neighbourhood/{z}/{x}/{y}.png' => esc_html__('Thunderforest Neighbourhood', 'wpdirectorykit'), | |
| 403 | + 'https://{s}.tile-cyclosm.openstreetmap.fr/cyclosm/{z}/{x}/{y}.png' => esc_html__('CyclOSM', 'wpdirectorykit'), | |
| 404 | + 'https://{s}.tile.jawg.io/jawg-terrain/{z}/{x}/{y}{r}.png' => esc_html__('Jawg Streets', 'wpdirectorykit'), | |
| 405 | + 'https://{s}.tile.jawg.io/jawg-streets/{z}/{x}/{y}{r}.png' => esc_html__('Jawg Sunny', 'wpdirectorykit'), | |
| 406 | + 'https://{s}.tile.jawg.io/jawg-dark/{z}/{x}/{y}{r}.png' => esc_html__('Jawg Dark', 'wpdirectorykit'), | |
| 407 | + 'https://{s}.tile.jawg.io/jawg-light/{z}/{x}/{y}{r}.png' => esc_html__('Jawg Light', 'wpdirectorykit'), | |
| 408 | + 'https://server.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer/tile/{z}/{y}/{x}' => esc_html__('World Top oMap', 'wpdirectorykit'), | |
| 409 | + 'google_map' => esc_html__('Google Map Layout', 'wpdirectorykit'), | |
| 292 | 410 | ], |
| 293 | 411 | 'default' => '', |
| 294 | 412 | ] |
| 295 | 413 | ); |
| 414 | + | |
| 415 | + $this->add_control( | |
| 416 | + 'jawg_map_key', | |
| 417 | + [ | |
| 418 | + 'label' => __( 'Jawg Map API Key', 'wpdirectorykit' ), | |
| 419 | + /* translators: 1: URL. */ | |
| 420 | + 'description' => wdk_sprintf(__( 'Please follow link and get API key <a href="%1$s" target="_blank"> here </a>', 'wpdirectorykit' ), 'https://www.jawg.io/en/pricing') | |
| 421 | + /* translators: 1: URL. */ | |
| 422 | + .' '.wdk_sprintf(__( 'or check demo maps <a href="%1$s" target="_blank"> here </a>', 'wpdirectorykit' ), 'https://www.jawg.io/en/maps'), | |
| 423 | + 'type' => \Elementor\Controls_Manager::TEXT, | |
| 424 | + 'default' => '', | |
| 425 | + 'condition' => [ | |
| 426 | + 'conf_custom_map_style' => [ | |
| 427 | + 'https://{s}.tile.jawg.io/jawg-terrain/{z}/{x}/{y}{r}.png', | |
| 428 | + 'https://{s}.tile.jawg.io/jawg-streets/{z}/{x}/{y}{r}.png', | |
| 429 | + 'https://{s}.tile.jawg.io/jawg-dark/{z}/{x}/{y}{r}.png', | |
| 430 | + 'https://{s}.tile.jawg.io/jawg-light/{z}/{x}/{y}{r}.png', | |
| 431 | + ], | |
| 432 | + ], | |
| 433 | + ] | |
| 434 | + ); | |
| 435 | + | |
| 436 | + $this->add_control( | |
| 437 | + 'carto_map_key', | |
| 438 | + [ | |
| 439 | + 'label' => __( 'Carto Map API Key', 'wpdirectorykit' ), | |
| 440 | + /* translators: 1: URL. */ | |
| 441 | + 'description' => wdk_sprintf(__( 'Please follow link and get API key <a href="%1$s" target="_blank"> here </a>', 'wpdirectorykit' ), 'https://carto.com/basemaps/apikey/'), | |
| 442 | + 'type' => \Elementor\Controls_Manager::TEXT, | |
| 443 | + 'default' => '', | |
| 444 | + 'condition' => [ | |
| 445 | + 'conf_custom_map_style' => [ | |
| 446 | + 'https://cartodb-basemaps-{s}.global.ssl.fastly.net/light_all/{z}/{x}/{y}{r}.png', | |
| 447 | + 'https://{s}.basemaps.cartocdn.com/light_all/{z}/{x}/{y}{r}.png', | |
| 448 | + 'https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png', | |
| 449 | + 'https://cartodb-basemaps-{s}.global.ssl.fastly.net/dark_all/{z}/{x}/{y}{r}.png', | |
| 450 | + ], | |
| 451 | + ], | |
| 452 | + ] | |
| 453 | + ); | |
| 454 | + | |
| 455 | + $this->add_control( | |
| 456 | + 'thunderforest_map_key', | |
| 457 | + [ | |
| 458 | + 'label' => __( 'Thunderforest Map API Key', 'wpdirectorykit' ), | |
| 459 | + /* translators: 1: URL. */ | |
| 460 | + 'description' => wdk_sprintf(__( 'Please follow link and get API key <a href="%1$s" target="_blank"> here </a>', 'wpdirectorykit' ), 'https://www.thunderforest.com/pricing/'), | |
| 461 | + 'type' => \Elementor\Controls_Manager::TEXT, | |
| 462 | + 'default' => '', | |
| 463 | + 'condition' => [ | |
| 464 | + 'conf_custom_map_style' => [ | |
| 465 | + 'https://{s}.tile.thunderforest.com/mobile-atlas/{z}/{x}/{y}.png', | |
| 466 | + 'https://{s}.tile.thunderforest.com/cycle/{z}/{x}/{y}.png', | |
| 467 | + 'https://{s}.tile.thunderforest.com/transport-dark/{z}/{x}/{y}.png', | |
| 468 | + 'https://{s}.tile.thunderforest.com/landscape/{z}/{x}/{y}.png', | |
| 469 | + 'https://{s}.tile.thunderforest.com/outdoors/{z}/{x}/{y}.png', | |
| 470 | + 'https://{s}.tile.thunderforest.com/pioneer/{z}/{x}/{y}.png', | |
| 471 | + 'https://{s}.tile.thunderforest.com/neighbourhood/{z}/{x}/{y}.png', | |
| 472 | + ], | |
| 473 | + ], | |
| 474 | + ] | |
| 475 | + ); | |
| 296 | 476 | |
| 297 | 477 | $this->add_control( |
| 478 | + 'google_map_key', | |
| 479 | + [ | |
| 480 | + 'label' => __( 'Google Map API Key', 'wpdirectorykit' ), | |
| 481 | + /* translators: 1: URL. */ | |
| 482 | + 'description' => wdk_sprintf(__( 'Please follow link and get API key <a href="%1$s" target="_blank"> here </a>', 'wpdirectorykit' ), 'https://developers.google.com/maps/documentation/javascript/get-api-key'), | |
| 483 | + 'type' => \Elementor\Controls_Manager::TEXT, | |
| 484 | + 'default' => '', | |
| 485 | + 'condition' => [ | |
| 486 | + 'conf_custom_map_style' => ['google_map'], | |
| 487 | + ], | |
| 488 | + ] | |
| 489 | + ); | |
| 490 | + | |
| 491 | + $this->add_control( | |
| 492 | + 'google_map_default_type', | |
| 493 | + [ | |
| 494 | + 'label' => __( 'Default Type', 'wpdirectorykit' ), | |
| 495 | + 'type' => \Elementor\Controls_Manager::SELECT, | |
| 496 | + 'default' => 'roadmap', | |
| 497 | + 'options' => array( | |
| 498 | + 'roadmap' => __( 'Roadmap', 'wpdirectorykit' ), | |
| 499 | + 'aerial' => __( 'Aerial', 'wpdirectorykit' ), | |
| 500 | + 'terrain' => __( 'Terrain', 'wpdirectorykit' ), | |
| 501 | + 'hybrid' => __( 'Hybrid', 'wpdirectorykit' ), | |
| 502 | + 'satellite' => __( 'Satellite', 'wpdirectorykit' ), | |
| 503 | + 'traffic' => __( 'Traffic', 'wpdirectorykit' ), | |
| 504 | + 'transit' => __( 'Transit', 'wpdirectorykit' ), | |
| 505 | + ), | |
| 506 | + 'condition' => [ | |
| 507 | + 'conf_custom_map_style' => ['google_map'], | |
| 508 | + ], | |
| 509 | + ] | |
| 510 | + ); | |
| 511 | + | |
| 512 | + $this->add_control( | |
| 298 | 513 | 'conf_custom_map_style_self', |
| 299 | 514 | [ |
| 300 | 515 | 'label' => esc_html__('Link to custom Map Style', 'wpdirectorykit'), |
| 301 | 516 | 'description' => esc_html__( 'You can add some custom map by link example https://leaflet-extras.github.io/leaflet-providers/preview/ or create your custom style and put link for example on maps.cloudmade.com/editor', 'wpdirectorykit' ), |
| @@ -335,11 +550,9 @@ | ||
| 335 | 550 | ] |
| 336 | 551 | ] |
| 337 | 552 | ); |
| 338 | 553 | |
| 339 | - $WMVC = &wdk_get_instance(); | |
| 340 | - $WMVC->model('field_m'); | |
| 341 | - $fields_data = $WMVC->field_m->get(); | |
| 554 | + $fields_data = wdk_cached_field_get(); | |
| 342 | 555 | $fields_list = array('' => esc_html__('Not Selected', 'wpdirectorykit')); |
| 343 | 556 | $order_i = 0; |
| 344 | 557 | |
| 345 | 558 | $fields_list [(++$order_i).'__section'] = esc_html__('-- Section Custom fields --', 'wpdirectorykit'); |
| @@ -367,9 +580,9 @@ | ||
| 367 | 580 | $this->add_control( |
| 368 | 581 | 'title_field_id', |
| 369 | 582 | [ |
| 370 | 583 | 'label' => __( 'Title Field', 'wpdirectorykit' ), |
| 371 | - 'type' => \Elementor\Controls_Manager::SELECT, | |
| 584 | + 'type' => \Elementor\Controls_Manager::SELECT2, | |
| 372 | 585 | 'default' => '', |
| 373 | 586 | 'options' => $fields_list, |
| 374 | 587 | ] |
| 375 | 588 | ); |
| @@ -377,9 +590,9 @@ | ||
| 377 | 590 | $this->add_control( |
| 378 | 591 | 'content_field_id', |
| 379 | 592 | [ |
| 380 | 593 | 'label' => __( 'Content Field', 'wpdirectorykit' ), |
| 381 | - 'type' => \Elementor\Controls_Manager::SELECT, | |
| 594 | + 'type' => \Elementor\Controls_Manager::SELECT2, | |
| 382 | 595 | 'default' => '', |
| 383 | 596 | 'options' => $fields_list, |
| 384 | 597 | ] |
| 385 | 598 | ); |
| @@ -540,8 +753,190 @@ | ||
| 540 | 753 | $this->end_controls_tab(); |
| 541 | 754 | |
| 542 | 755 | $this->end_controls_tabs(); |
| 543 | 756 | $this->end_controls_section(); |
| 757 | + | |
| 758 | + $this->start_controls_section( | |
| 759 | + 'section_form_suggestion', | |
| 760 | + [ | |
| 761 | + 'label' => __( 'Form Suggestion Route', 'wpdirectorykit' ), | |
| 762 | + 'tab' => Controls_Manager::TAB_STYLE, | |
| 763 | + 'conditions' => [ | |
| 764 | + 'terms' => [ | |
| 765 | + [ | |
| 766 | + 'name' => 'enable_router_suggest', | |
| 767 | + 'operator' => '==', | |
| 768 | + 'value' => 'yes', | |
| 769 | + ] | |
| 770 | + ], | |
| 771 | + ], | |
| 772 | + ] | |
| 773 | + ); | |
| 774 | + | |
| 775 | + | |
| 776 | + $this->add_responsive_control ( | |
| 777 | + 'form_suggestion_style_align', | |
| 778 | + [ | |
| 779 | + 'label' => __( 'Position', 'wpdirectorykit' ), | |
| 780 | + 'type' => Controls_Manager::CHOOSE, | |
| 781 | + 'options' => [ | |
| 782 | + 'left' => [ | |
| 783 | + 'title' => esc_html__( 'Left', 'wpdirectorykit' ), | |
| 784 | + 'icon' => 'eicon-text-align-left', | |
| 785 | + ], | |
| 786 | + 'center' => [ | |
| 787 | + 'title' => esc_html__( 'Center', 'wpdirectorykit' ), | |
| 788 | + 'icon' => 'eicon-text-align-center', | |
| 789 | + ], | |
| 790 | + 'right' => [ | |
| 791 | + 'title' => esc_html__( 'Right', 'wpdirectorykit' ), | |
| 792 | + 'icon' => 'eicon-text-align-right', | |
| 793 | + ], | |
| 794 | + 'justify' => [ | |
| 795 | + 'title' => esc_html__( 'Default', 'wpdirectorykit' ), | |
| 796 | + 'icon' => 'eicon-text-align-justify', | |
| 797 | + ] , | |
| 798 | + ], | |
| 799 | + 'render_type' => 'ui', | |
| 800 | + 'selectors_dictionary' => [ | |
| 801 | + 'left' => 'flex-start', | |
| 802 | + 'center' => 'center', | |
| 803 | + 'right' => 'flex-end', | |
| 804 | + 'justify' => 'space-between', | |
| 805 | + ], | |
| 806 | + 'selectors' => [ | |
| 807 | + '{{WRAPPER}} .route_suggestion' => 'justify-content:{{VALUE}};', | |
| 808 | + ], | |
| 809 | + ] | |
| 810 | + ); | |
| 811 | + | |
| 812 | + $this->add_responsive_control( | |
| 813 | + 'form_suggestion_column_direct', | |
| 814 | + [ | |
| 815 | + 'label' => __( 'Direction', 'wpdirectorykit' ), | |
| 816 | + 'type' => Controls_Manager::SELECT, | |
| 817 | + 'options' => [ | |
| 818 | + '' => esc_html__('Default', 'wpdirectorykit'), | |
| 819 | + 'row' => esc_html__('Row', 'wpdirectorykit'), | |
| 820 | + 'row-reverse' => esc_html__('Row reverse', 'wpdirectorykit'), | |
| 821 | + 'column' => esc_html__('Column', 'wpdirectorykit'), | |
| 822 | + 'column-reverse' => esc_html__('Column reverse', 'wpdirectorykit'), | |
| 823 | + ], | |
| 824 | + 'selectors' => [ | |
| 825 | + '{{WRAPPER}} .route_suggestion' => 'flex-direction: {{UNIT}}', | |
| 826 | + ], | |
| 827 | + 'separator' => 'before', | |
| 828 | + ] | |
| 829 | + ); | |
| 830 | + | |
| 831 | + $this->add_responsive_control( | |
| 832 | + 'form_suggestion_column_gap', | |
| 833 | + [ | |
| 834 | + 'label' => esc_html__('Columns Gap', 'wpdirectorykit'), | |
| 835 | + 'type' => Controls_Manager::SLIDER, | |
| 836 | + 'default' => [ | |
| 837 | + 'size' => 10, | |
| 838 | + ], | |
| 839 | + 'range' => [ | |
| 840 | + 'px' => [ | |
| 841 | + 'min' => 0, | |
| 842 | + 'max' => 60, | |
| 843 | + ], | |
| 844 | + ], | |
| 845 | + 'selectors' => [ | |
| 846 | + '{{WRAPPER}} .route_suggestion > *' => 'padding-left: {{SIZE}}{{UNIT}};padding-right: {{SIZE}}{{UNIT}};;', | |
| 847 | + '{{WRAPPER}} .route_suggestion' => 'margin-left: -{{SIZE}}{{UNIT}};margin-right: -{{SIZE}}{{UNIT}};', | |
| 848 | + ], | |
| 849 | + ] | |
| 850 | + ); | |
| 851 | + | |
| 852 | + $this->add_responsive_control( | |
| 853 | + 'form_suggestion_row_gap', | |
| 854 | + [ | |
| 855 | + 'label' => esc_html__('Rows Gap', 'wpdirectorykit'), | |
| 856 | + 'type' => Controls_Manager::SLIDER, | |
| 857 | + 'default' => [ | |
| 858 | + 'size' => 10, | |
| 859 | + ], | |
| 860 | + 'range' => [ | |
| 861 | + 'px' => [ | |
| 862 | + 'min' => 0, | |
| 863 | + 'max' => 60, | |
| 864 | + ], | |
| 865 | + ], | |
| 866 | + 'selectors' => [ | |
| 867 | + '{{WRAPPER}} .route_suggestion > *' => 'margin-bottom: {{SIZE}}{{UNIT}};', | |
| 868 | + '{{WRAPPER}} .route_suggestion ' => 'margin-bottom: -{{SIZE}}{{UNIT}};', | |
| 869 | + ], | |
| 870 | + ] | |
| 871 | + ); | |
| 872 | + | |
| 873 | + | |
| 874 | + $this->add_responsive_control( | |
| 875 | + 'form_suggestion_space_top', | |
| 876 | + [ | |
| 877 | + 'label' => esc_html__('Space Top', 'wpdirectorykit'), | |
| 878 | + 'type' => Controls_Manager::SLIDER, | |
| 879 | + 'default' => [ | |
| 880 | + 'size' => 25, | |
| 881 | + ], | |
| 882 | + 'range' => [ | |
| 883 | + 'px' => [ | |
| 884 | + 'min' => 0, | |
| 885 | + 'max' => 500, | |
| 886 | + ], | |
| 887 | + ], | |
| 888 | + 'selectors' => [ | |
| 889 | + '{{WRAPPER}} .route_suggestion' => 'margin-top: {{SIZE}}{{UNIT}};', | |
| 890 | + ], | |
| 891 | + ] | |
| 892 | + ); | |
| 893 | + | |
| 894 | + $this->add_control( | |
| 895 | + 'form_suggestion_header_1', | |
| 896 | + [ | |
| 897 | + 'label' => __( 'Input', 'wpdirectorykit' ), | |
| 898 | + 'type' => Controls_Manager::HEADING, | |
| 899 | + ] | |
| 900 | + ); | |
| 901 | + | |
| 902 | + $selectors = array( | |
| 903 | + 'normal' => '{{WRAPPER}} .route_suggestion .input_text', | |
| 904 | + ); | |
| 905 | + | |
| 906 | + $this->generate_renders_tabs($selectors, 'form_suggestion_input_dynamic', ['typo','color','background','border','border_radius','padding','shadow','transition', 'height', 'width']); | |
| 907 | + | |
| 908 | + | |
| 909 | + $this->add_control( | |
| 910 | + 'form_suggestion_header_2', | |
| 911 | + [ | |
| 912 | + 'label' => __( 'Placeholder', 'wpdirectorykit' ), | |
| 913 | + 'type' => Controls_Manager::HEADING, | |
| 914 | + ] | |
| 915 | + ); | |
| 916 | + | |
| 917 | + $selectors = array( | |
| 918 | + 'normal' => '{{WRAPPER}} .route_suggestion .input_text::placeholder', | |
| 919 | + ); | |
| 920 | + | |
| 921 | + $this->generate_renders_tabs($selectors, 'form_suggestion_input_pl_dynamic', ['align','typo','color']); | |
| 922 | + | |
| 923 | + $this->add_control( | |
| 924 | + 'form_suggestion_header_3', | |
| 925 | + [ | |
| 926 | + 'label' => __( 'Submit Button', 'wpdirectorykit' ), | |
| 927 | + 'type' => Controls_Manager::HEADING, | |
| 928 | + ] | |
| 929 | + ); | |
| 930 | + | |
| 931 | + $selectors = array( | |
| 932 | + 'normal' => '{{WRAPPER}} .route_suggestion .wdk-btn', | |
| 933 | + 'hover' => '{{WRAPPER}} .route_suggestion .wdk-btn%1$s', | |
| 934 | + ); | |
| 935 | + | |
| 936 | + $this->generate_renders_tabs($selectors, 'form_suggestion_btn_dynamic', ['typo', 'color', 'border', 'border_radius', 'shadow', 'transition', 'background_group','padding']); | |
| 937 | + | |
| 938 | + $this->end_controls_section(); | |
| 544 | 939 | } |
| 545 | 940 | |
| 546 | 941 | private function generate_controls_content() { |
| 547 | 942 | } |
| @@ -565,6 +960,12 @@ | ||
| 565 | 960 | |
| 566 | 961 | wp_enqueue_style('wdk-notify'); |
| 567 | 962 | wp_enqueue_script('wdk-notify'); |
| 568 | 963 | wp_enqueue_style( 'wdk-listings-map' ); |
| 964 | + | |
| 965 | + wp_enqueue_style('slick'); | |
| 966 | + wp_enqueue_style('slick-theme'); | |
| 967 | + wp_enqueue_style('wdk-hover'); | |
| 968 | + wp_enqueue_script('slick'); | |
| 969 | + wp_enqueue_script('leaflet-googlemutant'); | |
| 569 | 970 | } |
| 570 | 971 | } |