57 lines
1.4 KiB
PHP
57 lines
1.4 KiB
PHP
<?php
|
|
|
|
class ADBNetzgebiet extends mfBaseModel {
|
|
private $gemeinden;
|
|
|
|
protected function init() {
|
|
$this->db = FronkDB::singleton(ADDRESSDB_DBHOST, ADDRESSDB_DBUSER, ADDRESSDB_DBPASS, ADDRESSDB_DBNAME);
|
|
$this->table = "Netzgebiet";
|
|
}
|
|
|
|
public function loadByExtref($extref) {
|
|
$extref = $this->db->escape(trim($extref));
|
|
if(!$extref) {
|
|
return false;
|
|
}
|
|
|
|
$res = $this->db->select("Netzgebiet", "*", "extref='$extref'");
|
|
if(!$this->db->num_rows($res)) {
|
|
return false;
|
|
}
|
|
$data = $this->db->fetch_object($res);
|
|
$this->load($data);
|
|
return true;
|
|
}
|
|
|
|
public function getProperty($name) {
|
|
if($this->$name == null) {
|
|
|
|
if($name == "gemeinden") {
|
|
$gemeinden = [];
|
|
foreach(ADBGemeindeNetzgebietModel::search(["netzgebiet_id" => $this->id]) as $gem_netz) {
|
|
$g = $gem_netz->gemeinde;
|
|
if(!$g || array_key_exists($g->gemeinde_id, $gemeinden)) continue;
|
|
//var_dump($g);exit;
|
|
$gemeinden[$g->id] = $g;
|
|
}
|
|
if(count($gemeinden)) {
|
|
$this->gemeinden = $gemeinden;
|
|
}
|
|
return $this->gemeinden;
|
|
}
|
|
|
|
$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;
|
|
}
|
|
}
|