class DatabaseTestForm
Same name and namespace in other branches
- 11.x core/modules/system/tests/modules/database_test/src/Form/DatabaseTestForm.php \Drupal\database_test\Form\DatabaseTestForm
Form controller for database_test module.
@internal
Hierarchy
- class \Drupal\Core\Form\FormBase extends \Drupal\Core\Form\FormInterface, \Drupal\Core\DependencyInjection\ContainerInjectionInterface uses \Drupal\Core\DependencyInjection\DependencySerializationTrait, \Drupal\Core\Logger\LoggerChannelTrait, \Drupal\Core\Messenger\MessengerTrait, \Drupal\Core\Routing\RedirectDestinationTrait, \Drupal\Core\StringTranslation\StringTranslationTrait
- class \Drupal\database_test\Form\DatabaseTestForm implements \Drupal\Core\Form\FormBase
Expanded class hierarchy of DatabaseTestForm
1 string reference to 'DatabaseTestForm'
- database_test.routing.yml in core/
modules/ system/ tests/ modules/ database_test/ database_test.routing.yml - core/modules/system/tests/modules/database_test/database_test.routing.yml
File
-
core/
modules/ system/ tests/ modules/ database_test/ src/ Form/ DatabaseTestForm.php, line 17
Namespace
Drupal\database_test\FormView source
class DatabaseTestForm extends FormBase {
/**
* {@inheritdoc}
*/
public function getFormId() {
return 'database_test_theme_tablesort';
}
/**
* {@inheritdoc}
*/
public function buildForm(array $form, FormStateInterface $form_state) {
$header = [
'username' => [
'data' => t('Username'),
'field' => 'u.name',
],
'status' => [
'data' => t('Status'),
'field' => 'u.status',
],
];
$query = Database::getConnection()->select('users_field_data', 'u');
$query->condition('u.uid', 0, '<>');
$query->condition('u.default_langcode', 1);
$count_query = clone $query;
$count_query->addExpression('COUNT([u].[uid])');
$query = $query->extend(PagerSelectExtender::class)
->extend(TableSortExtender::class);
$query->fields('u', [
'uid',
])
->limit(50)
->orderByHeader($header)
->setCountQuery($count_query);
$uids = $query->execute()
->fetchCol();
$options = [];
foreach (User::loadMultiple($uids) as $account) {
$options[$account->id()] = [
'title' => [
'data' => [
'#title' => $account->getAccountName(),
],
],
'username' => $account->getAccountName(),
'status' => $account->isActive() ? t('active') : t('blocked'),
];
}
$form['accounts'] = [
'#type' => 'tableselect',
'#header' => $header,
'#options' => $options,
'#empty' => t('No people available.'),
];
return $form;
}
/**
* {@inheritdoc}
*/
public function submitForm(array &$form, FormStateInterface $form_state) {
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.