Made user controller working mostly. Not everything is tested but seems good

This commit is contained in:
2019-06-05 16:02:36 +02:00
parent 16e7ed0bc0
commit fc85e6b322
8 changed files with 170 additions and 51 deletions

View File

@@ -48,6 +48,27 @@ abstract class AbstractCommonClubsModel
$this->values = $values;
}
public function applyAndMergeValues($values, $unpack = true)
{
$vals = $this->getValues();
if($unpack)
$vals = $this->packExternalReferencesAsKeys($vals);
foreach($this->getFactory()->getAttributes() as $column)
{
if(array_key_exists($column->getAlias(), $values))
{
$vals[$column->getAlias()] = $values[$column->getAlias()];
}
}
if($unpack)
$vals = $this->unpackExternalReferencesFromKeys($vals);
$this->setValues($vals, false);
}
protected function setValue($key, $value)
{
if(is_null($this->values))
@@ -134,6 +155,7 @@ abstract class AbstractCommonClubsModel
$vals[$alias] = $a->packValue($vals[$alias]);
}
// XXX Joins
return $vals;
}
@@ -144,7 +166,8 @@ abstract class AbstractCommonClubsModel
foreach($factory->getAttributes() as $a)
{
$alias = $a->getAlias();
$vals[$alias] = $a->unpackValue($vals[$alias]);
if(isset($vals[$alias]))
$vals[$alias] = $a->unpackValue($vals[$alias]);
}
$joins = $factory->getJoins();