Files
thetool/application/Address/Address.php
2021-06-22 21:41:06 +02:00

60 lines
1.3 KiB
PHP

<?php
class Address extends mfBaseModel {
protected $forcestr = ['company','zip','phone','fax','mobile','note'];
private $types;
public function getFullName() {
// Assumes "Firma1 Firma2" or "firstname lastname" as readable form
$name = "";
if($this->firstname && $this->lastname) {
$name = $this->firstname . " " . $this->lastname;
} elseif($this->lastname) {
$name = $this->lastname;
} elseif($this->firstname) {
$name = $this->firstname;
}
return $name;
}
public function getCompanyOrName() {
if($this->company) {
return $this->company;
}
return $this->getFullName();
}
private function loadAddresstypes() {
if(!$this->id) {
return false;
}
$this->types = AddresstypeModel::search(['address_id' => $this->id]);
}
public function getProperty($name) {
if($this->$name == null) {
if($name == "types") {
$this->loadAddresstypes();
return $this->types;
}
$classname = ucfirst($name);
$idfield = $name."_id";
$this->$name = new $classname($this->$idfield);
if($this->$name->id) {
return $this->$name;
} else {
return null;
}
}
return $this->$name;
}
}