X-Git-Url: http://aleph1.co.uk/gitweb/?a=blobdiff_plain;ds=inline;f=web%2Fcore%2Fmodules%2Fsystem%2Ftests%2Fmodules%2Fdatabase_test%2Fsrc%2FForm%2FDatabaseTestForm.php;fp=web%2Fcore%2Fmodules%2Fsystem%2Ftests%2Fmodules%2Fdatabase_test%2Fsrc%2FForm%2FDatabaseTestForm.php;h=12eebccab638a4d9cb8bc31768034c1b60b8b3e8;hb=a2bd1bf0c2c1f1a17d188f4dc0726a45494cefae;hp=0000000000000000000000000000000000000000;hpb=57c063afa3f66b07c4bbddc2d6129a96d90f0aad;p=yaffs-website diff --git a/web/core/modules/system/tests/modules/database_test/src/Form/DatabaseTestForm.php b/web/core/modules/system/tests/modules/database_test/src/Form/DatabaseTestForm.php new file mode 100644 index 000000000..12eebccab --- /dev/null +++ b/web/core/modules/system/tests/modules/database_test/src/Form/DatabaseTestForm.php @@ -0,0 +1,75 @@ + ['data' => t('Username'), 'field' => 'u.name'], + 'status' => ['data' => t('Status'), 'field' => 'u.status'], + ]; + + $query = db_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('Drupal\Core\Database\Query\PagerSelectExtender') + ->extend('Drupal\Core\Database\Query\TableSortExtender'); + $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->getUsername()]], + 'username' => $account->getUsername(), + '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) { + } + +}