entity->name) > 1) { return $this->entity->name; } $contact = $this->entity->contacts->whereNotNull('email')->first(); $contact_name = 'No Contact Set'; if ($contact && ((is_string($contact->first_name) && strlen($contact->first_name) >= 1) || (is_string($contact->last_name) && strlen($contact->last_name) >= 1))) { $contact_name = $contact->first_name.' '.$contact->last_name; } elseif ($contact && (strlen($contact->email))) { $contact_name = $contact->email; } return $contact_name; } public function first_name() { return $this->entity->primary_contact()->first()?->first_name ?: ($this->entity->contacts()->first()->first_name ?: ''); } public function last_name() { return $this->entity->primary_contact()->first()?->last_name ?: ($this->entity->contacts()->first()->last_name ?: ''); } public function primary_contact_name() { return $this->entity?->primary_contact()?->first() ? $this->entity->primary_contact()->first()->first_name.' '.$this->entity->primary_contact()->first()->last_name : 'No primary contact set'; } public function email() { $primary_contact = $this->entity->primary_contact->first(); if ($primary_contact && strlen($primary_contact->email) > 1) { return $primary_contact->email; } $contact = $this->entity->contacts->whereNotNull('email')->first(); return $contact ? $contact->email : 'No Email Set'; } public function address() { $str = ''; $client = $this->entity; if ($address1 = $client->address1) { $str .= e($address1).'
'; } if ($address2 = $client->address2) { $str .= e($address2).'
'; } if ($cityState = $this->getCityState()) { $str .= e($cityState).'
'; } if ($country = $client->country) { $str .= e($country->name).'
'; } return $str; } public function shipping_address() { $str = ''; $client = $this->entity; if ($address1 = $client->shipping_address1) { $str .= e($address1).'
'; } if ($address2 = $client->shipping_address2) { $str .= e($address2).'
'; } if ($cityState = $this->getShippingCityState()) { $str .= e($cityState).'
'; } if ($country = $client->shipping_country) { $str .= e($country->name).'
'; } return $str; } public function phone() { return $this->entity->phone ?: ''; } public function website() { return $this->entity->website ?: ''; } /** * Calculated company data fields * using settings. */ public function company_name() { $settings = $this->entity->getMergedSettings(); return $settings->name ?: ctrans('texts.untitled_account'); } public function company_address() { $settings = $this->entity->getMergedSettings(); $str = ''; if ($settings->address1) { $str .= e($settings->address1).'
'; } if ($settings->address2) { $str .= e($settings->address2).'
'; } if ($cityState = $this->getCityState()) { $str .= e($cityState).'
'; } if ($country = Country::find($settings->country_id)) { $str .= e($country->name).'
'; } return $str; } // public function getCityState() // { // $settings = $this->entity->getMergedSettings(); // $country = false; // if ($settings->country_id) { // $country = Country::find($settings->country_id); // } // $swap = $country && $country->swap_postal_code; // $city = e($settings->city ?: ''); // $state = e($settings->state ?: ''); // $postalCode = e($settings->postal_code ?: ''); // if ($city || $state || $postalCode) { // return $this->cityStateZip($city, $state, $postalCode, $swap); // } else { // return false; // } // } public function getCityState() { $client = $this->entity; $country = $client->country ?: false; $swap = $country && $country->swap_postal_code; $city = e($client->city ?: ''); $state = e($client->state ?: ''); $postalCode = e($client->postal_code ?: ''); if ($city || $state || $postalCode) { return $this->cityStateZip($city, $state, $postalCode, $swap); } else { return false; } } }