diff --git a/src/Controller/TYPProfileController.php b/src/Controller/TYPProfileController.php --- a/src/Controller/TYPProfileController.php +++ b/src/Controller/TYPProfileController.php @@ -1,90 +1,153 @@ redirect(""); }*/ + + + public function formatPhoneNumber($s) { + foreach( explode(",", $s) as $p) { + $num_com = null; + $num_first = null; + $num_second = null; + $num_ex = explode("-", trim($p)); + for($i = 0; $i < count($num_ex); $i++) { + if(($i+1) < count($num_ex)) { + $num_first .= $num_ex[$i]; + } else { + $num_second .= $num_ex[$i]; + } + } + if(empty($num_first)) { + $num_first = $num_second; + $num_second = null; + } + if(strlen($num_first) == 9) { + $num_com = substr($num_first, 0, 1) . '-'. substr($num_first, 1, 4). '-'. substr($num_first, 5,4); + if(!empty($num_second)) { + $num_com .= '-'.$num_second; + } + } else { + if(strlen($num_first) < 9) { + $num_first .= $num_second; + if(strlen($num_first) == 9) { + $num_com = substr($num_first, 0, 1) . '-'. substr($num_first, 1, 4). '-'. substr($num_first, 5,4); + } elseif(strlen($num_first) == 10){ + $num_com = substr($num_first, 0, 2) . '-'. substr($num_first, 2, 4). '-'. substr($num_first, 6,7); + }else { + $num_com = substr($num_first, 0, 1) . '-'. substr($num_first, 1, 4). '-'. substr($num_first, 5,4).'-'.substr($num_first, 9,strlen($num_first)); + } + } else { + if(strlen($num_first) == 10) { + $num_com = substr($num_first, 0, 2) . '-'. substr($num_first, 2, 4). '-'. substr($num_first, 6,7); + } else { + $num_first .= $num_second; + $num_com = substr($num_first, 0, 1) . '-'. substr($num_first, 1, 4). '-'. substr($num_first, 5,4).'-'.substr($num_first, 9,strlen($num_first)); + } + } + } + $ps[] = $num_com; + } + return implode(", ", $ps); + } + + + public function formatWorkingHour($s) { + foreach( explode(",", $s) as $p) { + $ps[] = $p; + } + return implode(", ", $ps); + } protected $data; public function profileTitle($bizid) { $this->data = \Drupal::service("typ.search")->getProfile($bizid ,AUTO); - if (!$this->data) return $this->data['humanname']. ' - '.$webtitle; //!!!!!! - return ''; + if (!$this->data) return ''; + else return $this->data['humanname'].' | '.'WEBTITLE'; } public function profilePage($bizid){ $address_id = ""; $language = \Drupal::languageManager()->getCurrentLanguage()->getId(); $data = $this->data; if (!$data) { return $this->redirect(""); } /*if($data['landingpage'] == ""){ $address_id = $data['addressid']; } if(is_numeric($address_id)){ $result = \Drupal::service('typ.unvservice')->loadListing($data['customerid']); $rs_details = (!empty($result['address'][$data['headingcod']][$address_id]['frontviews']))?$result['address'][$headingcode][$data['headingcod']]['frontviews']:array(); } else { $result = \Drupal::service('typ.unvservice')->loadService($data['customerid']); }*/ $address_id = $data['addressid']; $result = \Drupal::service('typ.unvservice')->loadService($data['customerid']); $rs_detail = (!empty($result['landingpages'][$data['headingcod']]))?$result['landingpages'][$data['headingcod']]:array(); $type = ''; if(empty($rs_detail)){ $type = 'FL'; }else{ $result_olc = \Drupal::service('typ.catalog')->listData($data['customerid']); } unset($rs_detail); $pos = strpos(html_entity_decode($data['proddesc']),"

"); if($pos !== false){ $tempdesc = substr(html_entity_decode(html_entity_decode($data['proddesc']),3)); }else{ $tempdesc = html_entity_decode(html_entity_decode($data['proddesc'])) ; //$tempdesc = $data['proddesc']; } $temp = '

'; $tempdesc = $temp.$tempdesc; $type = $data['customertyp']; if($type == "FL") { $dataproddesct = iconv_substr($tempdesc,0,123,"UTF-8"); $dataproddesct .= '...'; }else{ $dataproddesct = $tempdesc; } if($type != "FL" && !empty($result_olc)){ $olcdata = $result_olc[0]; } - -// echo "

";
-//        var_export($data);
-//        exit;
+        if (!empty($data['telno'])) {
+            foreach ($data['telno'] as $t) {
+                $data['_format']['telno'][] = $this->formatPhoneNumber($t);
+            }
+        }
+        if (!empty($data['fax'])) {
+            foreach ($data['fax'] as $t) {
+                $data['_format']['fax'][] = $this->formatPhoneNumber($t);
+            }
+        }
+        if (!empty($data['workinghours'])) $data['_format']['workinghours'] = $this->formatWorkingHour($data['workinghours']);
+        
         $display[] = array(
             '#theme' => 'typ_profile',
             '#profile' => $data,
             '#prodescription' => $dataproddesct,
             '#catalog' => $olcdata,
             '#type' => $type
             );
         return $display;
 	}
 }
\ No newline at end of file