Example #1
0
 public function getExternalUrl($params = [])
 {
     if (!isset($this->external_url)) {
         $parts = ['property', trans('property.for.' . $this->getViewFor() . '_property_title', ['name' => trans('property.property_type.' . $this->type->slug)]), trans('property.view.in_city', ['location' => AddressHelper::getAddressLabel($this->subdistrict, 'subdistrict') . ' ' . preg_replace('/(Kota|Kabupaten)/', '', AddressHelper::getAddressLabel($this->city, 'city'))]), !empty($this->listing_code) ? $this->listing_code : $this->id];
         foreach ($parts as &$part) {
             $part = ProjectHelper::sluggify($part);
         }
         $this->external_url = implode('/', $parts);
     }
     $finalUrl = $this->external_url;
     if ($params) {
         $finalUrl .= (strpos($finalUrl, '?') !== false ? '&' : '?') . http_build_query($params);
     }
     return url($finalUrl);
 }