public function cloneFarm($name, User $user)
{
$farm = clone $this;
$farm->changedById = $user->id;
$farm->name = $name;
$farm->save();
$variables = new Scalr_Scripting_GlobalVariables($farm->accountId, $farm->envId, ScopeInterface::SCOPE_FARM);
$variables->setValues($variables->getValues(0, $this->id), 0, $farm->id);
$dbFarm = DBFarm::LoadByID($this->id);
$dbFarmClone = DBFarm::LoadByID($farm->id);
$dbFarm->cloneFarmRoles($dbFarmClone);
$ft = new FarmTeam();
$this->db()->Execute("\n INSERT INTO {$ft->table()} ({$ft->columnFarmId}, {$ft->columnTeamId} )\n SELECT ?, {$ft->columnTeamId}\n FROM {$ft->table()}\n WHERE {$ft->columnFarmId} = ?\n ", [$farm->id, $this->id]);
return $farm;
}