public function purge()
{
Audit::log(Auth::user()->id, trans('admin/audit/general.audit-log.category'), trans('admin/audit/general.audit-log.msg-purge'));
$purge_retention = Setting::get('audit.purge_retention');
$purge_date = (new \DateTime())->modify("- {$purge_retention} day");
$auditsToDelete = $this->audit->pushCriteria(new AuditCreatedBefore($purge_date))->all();
foreach ($auditsToDelete as $audit) {
// The AuditRepository located at $this->audit is changed to a instance of the
// QueryBuilder when we run a query as done above. So we had to revert to some
// Magic to get a handle of the model...
// $this->audit->delete($audit->id);
$this->app->make($this->audit->model())->destroy($audit->id);
}
return \Redirect::route('admin.audit.index');
}