From 8615b5557939e4ab064b38fab72a5fdd6fb037ef Mon Sep 17 00:00:00 2001 From: blackduck-perth Date: Thu, 28 Jul 2022 17:56:53 +0800 Subject: [PATCH] Update MarkerExtension.php Override Lat Lng was not displaying editable fields. Added logic to check status and display either the MapBox or the editable fields. --- src/MarkerExtension.php | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/MarkerExtension.php b/src/MarkerExtension.php index 06b8c1f..1fab3f0 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,8 +37,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'), - ]); + ]); + + 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()