function copyfrom($var, $func = NULL)
{
if (is_string($var)) {
$var = \Base::instance()->get($var);
}
if ($func) {
$var = call_user_func($func, $var);
}
foreach ($var as $key => $val) {
if (in_array($key, array_keys($this->fields))) {
$this->set($key, $val);
}
}
}