private function parseRevisionsDataGrid()
{
// create datagrid
$revisions = new ContentBlockRevisionDataGrid($this->contentBlock, Locale::workingLocale());
// hide columns
$revisions->setColumnsHidden(['id', 'revision_id']);
// disable paging
$revisions->setPaging(false);
// set headers
$revisions->setHeaderLabels(['user_id' => SpoonFilter::ucfirst(Language::lbl('By')), 'edited_on' => SpoonFilter::ucfirst(Language::lbl('LastEditedOn'))]);
// set column-functions
$revisions->setColumnFunction([DataGridFunctions::class, 'getUser'], ['[user_id]'], 'user_id');
$revisions->setColumnFunction([DataGridFunctions::class, 'getTimeAgo'], ['[edited_on]'], 'edited_on');
// check if this action is allowed
if (Authentication::isAllowedAction('Edit')) {
$editRevisionUrl = BackendModel::createURLForAction('Edit', null, null, ['id' => '[id]', 'revision' => '[revision_id]'], false);
// set column URLs
$revisions->setColumnURL('title', $editRevisionUrl);
// add use column
$revisions->addColumn('use_revision', null, Language::lbl('UseThisVersion'), $editRevisionUrl, Language::lbl('UseThisVersion'));
}
$this->tpl->assign('revisions', (string) $revisions->getContent());
}