57 lines
1.3 KiB
PHP
57 lines
1.3 KiB
PHP
<?php
|
|
|
|
class ProductAttribute extends mfBaseModel {
|
|
|
|
|
|
public function getProperty($name) {
|
|
if($this->$name == null) {
|
|
|
|
if($name == "networks") {
|
|
$this->networks = [];
|
|
$productNetworks = ProductNetworkModel::search(['product_id' => $this->id]);
|
|
foreach($productNetworks as $pnet) {
|
|
$this->networks[$pnet->network_id] = new Network($pnet->network_id);
|
|
}
|
|
return $this->networks;
|
|
}
|
|
|
|
|
|
|
|
$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;
|
|
}
|
|
|
|
public function __clone() {
|
|
$me = new User;
|
|
$me->loadMe();
|
|
//var_dump($this);exit;
|
|
$old_id = $this->id;
|
|
$this->id = null;
|
|
|
|
// cleanup data
|
|
unset($this->data->name);
|
|
unset($this->data->type);
|
|
unset($this->data->displayname);
|
|
unset($this->data->description);
|
|
$this->create_by = $me->id;
|
|
$this->edit_by = $me->id;
|
|
|
|
$this->create = null;
|
|
$this->edit = null;
|
|
$this->saved = 0;
|
|
$this->mode = "new";
|
|
$this->_old_data = new StdClass();
|
|
|
|
$this->log->debug("Cloned ProductAttribute $old_id");
|
|
}
|
|
} |