From e826fda7e2c37caff757b7ed93d7ab29d975bfa1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Loguercio?= Date: Mon, 31 Oct 2016 13:14:45 -0500 Subject: [PATCH] Added geolocalization coordinates extra field - Refs BT#11371 --- main/inc/lib/extra_field.lib.php | 159 +++++++++++++++++++++++++++++++ 1 file changed, 159 insertions(+) diff --git a/main/inc/lib/extra_field.lib.php b/main/inc/lib/extra_field.lib.php index 62f1852f66..44fa2dda61 100755 --- a/main/inc/lib/extra_field.lib.php +++ b/main/inc/lib/extra_field.lib.php @@ -67,6 +67,7 @@ class ExtraField extends Model const FIELD_TYPE_LETTERS_SPACE = 22; const FIELD_TYPE_ALPHANUMERIC_SPACE = 23; const FIELD_TYPE_GEOLOCALIZATION = 24; + const FIELD_TYPE_GEOLOCALIZATION_COORDINATES = 25; public $type = 'user'; public $pageName; @@ -414,6 +415,9 @@ class ExtraField extends Model $types[self::FIELD_TYPE_GEOLOCALIZATION] = get_lang( 'Geolocalization' ); + $types[self::FIELD_TYPE_GEOLOCALIZATION_COORDINATES] = get_lang( + 'GeolocalizationCoordinates' + ); switch ($handler) { case 'course': @@ -1762,6 +1766,161 @@ EOF; '); + $form->addHtml(' +
+ +
+
+
+
+
+ '); + break; + case ExtraField::FIELD_TYPE_GEOLOCALIZATION_COORDINATES: + $dataValue = isset($extraData['extra_'.$field_details['variable']]) + ? $extraData['extra_'.$field_details['variable']] + : ''; + $form->addElement( + 'text', + 'extra_'.$field_details['variable'], + $field_details['display_text'], + ['id' => 'extra_'.$field_details['variable']] + ); + $form->applyFilter('extra_'.$field_details['variable'], 'stripslashes'); + $form->applyFilter('extra_'.$field_details['variable'], 'trim'); + if (!$admin_permissions) { + if ($field_details['visible_to_self'] == 0) { + $form->freeze( + 'extra_'.$field_details['variable'] + ); + } + } + $latLag = explode(",", $dataValue); + + // if no value, set default coordinates value + if (empty($dataValue)) { + $lat = '-34.397'; + $lng = '150.644'; + } else { + $lat = $latLag[0]; + $lng = $latLag[1]; + } + + $form->addHtml( + ' + '); + $form->addHtml(' +
+ +
+ + +
+
+ '); + $form->addHtml('