99 lines
2.9 KiB
PHP
99 lines
2.9 KiB
PHP
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
class PropertyExecutive extends BaseModel
|
|
{
|
|
/**
|
|
* The database table used by the model.
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $table = 'property_executive';
|
|
protected $appends = ['view_full_phone', 'view_full_mobile', 'view_full_fax'];
|
|
|
|
const CREATED_AT = 'created_at';
|
|
const UPDATED_AT = 'updated_at';
|
|
|
|
protected $dateFormat = 'U';
|
|
protected $guarded = [];
|
|
const CHARACTER_LENGTH = 6;
|
|
|
|
/**
|
|
* The attributes excluded from the model's JSON form.
|
|
*
|
|
* @var array
|
|
*/
|
|
protected $hidden = [];
|
|
|
|
/**
|
|
* @return mixed
|
|
*/
|
|
|
|
public function getViewFullPhoneAttribute()
|
|
{
|
|
try {
|
|
$response = null ;
|
|
if($this->phone == null || $this->phone == "" || strlen( $this->phone) < self::CHARACTER_LENGTH){
|
|
return null ;
|
|
}
|
|
if($this->phone_code){
|
|
$response = strpos($this->phone_code, '+') === false ? '+'.$this->phone_code.$this->phone : $this->phone_code.$this->phone;
|
|
}else{
|
|
$response = strpos($this->phone, '+') === false ? '+'.$this->phone : $this->phone;
|
|
}
|
|
return $response;
|
|
} catch (Exception $e) {
|
|
return null;
|
|
}
|
|
}
|
|
|
|
public function getViewFullMobileAttribute()
|
|
{
|
|
try {
|
|
$response = null ;
|
|
if($this->mobile == null || $this->mobile == "" || strlen( $this->mobile) < self::CHARACTER_LENGTH){
|
|
return null ;
|
|
}
|
|
if($this->mobile_code){
|
|
$response = strpos($this->mobile_code, '+') === false ? '+'.$this->mobile_code.$this->mobile : $this->mobile_code.$this->mobile;
|
|
}else{
|
|
$response = strpos($this->mobile, '+') === false ? '+'.$this->mobile : $this->mobile;
|
|
}
|
|
return $response;
|
|
} catch (Exception $e) {
|
|
return null;
|
|
}
|
|
}
|
|
|
|
|
|
public function getViewFullFaxAttribute()
|
|
{
|
|
try {
|
|
$response = null ;
|
|
if($this->fax == null || $this->fax == "" || strlen( $this->fax) < self::CHARACTER_LENGTH){
|
|
return null ;
|
|
}
|
|
if($this->fax_code){
|
|
$response = strpos($this->fax_code, '+') === false ? '+'.$this->fax_code.$this->fax : $this->fax_code.$this->fax;
|
|
}else{
|
|
$response = strpos($this->fax, '+') === false ? '+'.$this->fax : $this->fax;
|
|
}
|
|
return $response;
|
|
} catch (Exception $e) {
|
|
return null;
|
|
}
|
|
}
|
|
|
|
public function executiveType()
|
|
{
|
|
return $this->hasOne('App\Models\PropertyExecutiveType','id', 'executive_type_id')->select('id', 'name', 'language_key', 'icon');
|
|
}
|
|
|
|
|
|
/*public function PropertyContentCategories()
|
|
{
|
|
return $this->hasMany('App\Models\PropertyContentCategory','id');
|
|
}*/
|
|
}
|