From af98273bf0f5bb9ea501782502afc22fca0f9bd1 Mon Sep 17 00:00:00 2001 From: Nathan Bullivant Date: Sat, 2 Sep 2023 17:12:14 +0800 Subject: [PATCH 1/2] Update MarkerExtension.php Add conditional logic to only display the mapbox if the override option isn't ticked. --- src/MarkerExtension.php | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/MarkerExtension.php b/src/MarkerExtension.php index 06b8c1f..9a7dcce 100644 --- a/src/MarkerExtension.php +++ b/src/MarkerExtension.php @@ -36,8 +36,19 @@ class MarkerExtension extends Geocodable $fields->addFieldsToTab('Root.Map', [ CheckboxField::create('LatLngOverride', 'Override Latitude and Longitude?') ->setDescription('Check this box and save to be able to set the latitude and longitude manually.'), - MapboxField::create('Map', 'Choose a location', 'Lat', 'Lng'), ]); + #Show map, or coordinates if override is ticked. + if ($record->LatLngOverride) { + $fields->addFieldsToTab('Root.Map', [ + TextField::create('Lat', 'Latitude'), + TextField::create('Lng', 'Longitude'), + ]); + } + else { + $fields->addFieldsToTab('Root.Map', [ + MapboxField::create('Map', 'Choose a location', 'Lat', 'Lng'), + ]); + } } public function getDirectionsURL() From 5bae62a619885e155e341208d0933f811bbd3580 Mon Sep 17 00:00:00 2001 From: Nathan Bullivant Date: Sat, 2 Sep 2023 17:53:45 +0800 Subject: [PATCH 2/2] Update MarkerExtension.php Add conditional logic to MarkerExtension - display coordinates or MapBox --- src/MarkerExtension.php | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/src/MarkerExtension.php b/src/MarkerExtension.php index 9a7dcce..a05b3cb 100644 --- a/src/MarkerExtension.php +++ b/src/MarkerExtension.php @@ -4,6 +4,7 @@ namespace A2nt\SilverStripeMapboxField; use SilverStripe\Forms\CheckboxField; +use SilverStripe\Forms\TextField; use SilverStripe\Forms\FieldList; use Symbiote\Addressable\Geocodable; use Symbiote\Addressable\Addressable; @@ -36,19 +37,20 @@ class MarkerExtension extends Geocodable $fields->addFieldsToTab('Root.Map', [ CheckboxField::create('LatLngOverride', 'Override Latitude and Longitude?') ->setDescription('Check this box and save to be able to set the latitude and longitude manually.'), - ]); - #Show map, or coordinates if override is ticked. - if ($record->LatLngOverride) { - $fields->addFieldsToTab('Root.Map', [ - TextField::create('Lat', 'Latitude'), - TextField::create('Lng', 'Longitude'), ]); - } - else { - $fields->addFieldsToTab('Root.Map', [ - MapboxField::create('Map', 'Choose a location', 'Lat', 'Lng'), - ]); - } + + #Show map, or coordinates if override is ticked. + if ($record->LatLngOverride) { + $fields->addFieldsToTab('Root.Map', [ + TextField::create('Lat', 'Latitude'), + TextField::create('Lng', 'Longitude'), + ]); + } + else { + $fields->addFieldsToTab('Root.Map', [ + MapboxField::create('Map', 'Choose a location', 'Lat', 'Lng'), + ]); + } } public function getDirectionsURL()