/** * Reports an area action with dependencies to the log * @param Area $area The area being manipulated * @param Enums\Action $action The operation executed on the area */ function ReportAreaAction(Area $area, Enums\Action $action) { $logItem = $this->CreateLogItem(Enums\ObjectType::Area(), $action); if (!$action->Equals(Enums\Action::Delete())) { $logArea = new LogArea(); $logArea->SetLogItem($logItem); $logArea->SetArea($area); $logArea->Save(); } else { $this->ReportLayoutAction($area->GetLayout(), Enums\Action::ChildDelete()); } }