Moves geocoder into approrpiate classes.
[platal.git] / plugins / function.display_address.php
index 28c6c4f..85a9210 100644 (file)
@@ -38,11 +38,21 @@ function display_address_isIdentity($idt, $value, $test_reverse = true)
 
 function smarty_function_display_address($param, &$smarty)
 {
-    require_once('geocoding.inc.php');
     $adr = $param['adr'];
     $txtad = $adr->text;
-    if (!$txtad && !$adr->phones() && !count($adr->phones())) {
-        return "";
+    if (!$txtad) {
+        $txthtml = '';
+        if ($adr->phones() && count($adr->phones())) {
+            require_once 'function.display_phones.php';
+            $txthtml .= smarty_function_display_phones(array('tels' => $adr->phones()), $smarty);
+        } elseif (isset($param['phones']) && count($param['phones'])) {
+            require_once 'function.display_phones.php';
+            $txthtml .=  smarty_function_display_phones(array('tels' => $param['phones']), $smarty);
+        }
+        if (!isset($param['nodiv']) && $txthtml != '' && isset($param['pos'])) {
+            $txthtml = '<div class="adresse" style="float: ' . $param['pos'] . '">' . $txthtml . '</div>';
+        }
+        return $txthtml;
     }
 
     $lines = explode("\n", $txtad);
@@ -60,7 +70,7 @@ function smarty_function_display_address($param, &$smarty)
         .   urlencode(implode(", ", $lines) . " ($idt)")
         . "\"><img src=\"images/icons/map.gif\" alt=\"Google Maps\" title=\"Carte\"/></a>";
     $comment = "";
-    if ($param['adr']['comment'] != "")
+    if ($adr->comment != "")
     {
         $commentHtml = str_replace(array('&', '"'), array('&amp;', '&quot;'), $adr->comment);
         $commentJs = str_replace(array('\\', '\''), array('\\\\', '\\\''), $commentHtml);
@@ -85,11 +95,14 @@ function smarty_function_display_address($param, &$smarty)
     }
     foreach ($lines as $line)
     {
-        $txthtml .= "<strong>".$line."</strong><br/>\n";
+        $txthtml .= "<strong>" . pl_entities($line) . "</strong><br/>\n";
     }
-    if($adr->phones() != null) {
-        require_once('function.display_phones.php');
+    if ($adr->phones() != null) {
+        require_once 'function.display_phones.php';
         $txthtml .= smarty_function_display_phones(array('tels' => $adr->phones()),$smarty);
+    } else if (isset($param['phones']) && count($param['phones'])) {
+        require_once 'function.display_phones.php';
+        $txthtml .= smarty_function_display_phones(array('tels' => $param['phones']),$smarty);
     }
     if (!$param['nodiv']) {
         $pos = $param['pos'] ? " style='float: " . $param['pos'] . "'" : '';