SiteVerifyDeleteForm.php in Site verification 8
File
src/Form/SiteVerifyDeleteForm.php
View source
<?php
namespace Drupal\site_verify\Form;
use Drupal\Core\Form\ConfirmFormBase;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\Url;
class SiteVerifyDeleteForm extends ConfirmFormBase {
protected $siteVerify = NULL;
protected function getEditableConfigNames() {
return [
'site_verify.settings',
];
}
public function getFormId() {
return 'site_verify_confirm_delete';
}
public function getQuestion() {
if (!empty($this->siteVerify)) {
$record = \Drupal::service('site_verify_service')
->siteVerifyLoad($this->siteVerify);
return $this
->t('Are you sure you want to delete the site verification %label?', [
'%label' => $record['engine']['name'],
]);
}
}
public function getCancelUrl() {
return Url::fromRoute('site_verify.verifications_list');
}
public function getConfirmText() {
return $this
->t('Delete');
}
public function buildForm(array $form, FormStateInterface $form_state, $site_verify = NULL) {
$this->siteVerify = $site_verify;
$record = \Drupal::service('site_verify_service')
->siteVerifyLoad($this->siteVerify);
$form = parent::buildForm($form, $form_state);
$form['record'] = [
'#type' => 'value',
'#value' => $record,
];
return $form;
}
public function submitForm(array &$form, FormStateInterface $form_state) {
$record = $form_state
->getValue('record');
\Drupal::database()
->delete('site_verify')
->condition('svid', $record['svid'])
->execute();
$this
->messenger()
->addStatus(t('Verification for %engine has been deleted.', [
'%engine' => $record['engine']['name'],
]));
\Drupal::logger('site_verify')
->notice(t('Verification for %engine deleted.', [
'%engine' => $record['engine']['name'],
]));
$form_state
->setRedirect('site_verify.verifications_list');
\Drupal::service('router.builder')
->setRebuildNeeded();
}
}