Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- namespace Drupal\form_multi_submit\Form;
- use Drupal\Core\Form\FormBase;
- use Drupal\Core\Form\FormStateInterface;
- use Drupal\user\Entity\User;
- class MultiSubmitForm extends FormBase {
- public function getFormId() {
- return 'MultiSubmitForm';
- }
- public function buildForm(array $form, FormStateInterface $form_state) {
- // Get all users from database
- $ids = \Drupal::entityQuery('user')
- ->condition('status', 1)
- ->execute();
- $users = User::loadMultiple($ids);
- // Set form table header
- $form['users'] = array (
- '#type' => 'table',
- '#header' => array('ID', 'Remove'),
- );
- // Loop through all users
- foreach ($users as $user) {
- // Show user ID
- $form['users'][$user->id()]['id'] = array(
- '#type' => 'label',
- '#title' => $user->id(),
- );
- // Show button for each user
- $form['users'][$user->id()]['removememberbutton']['dummyNode'] = array(
- '#type' => 'submit',
- '#value' => 'Check',
- '#submit' => array([$this, 'removeMember']),
- );
- }
- return $form;
- }
- // Submit handler
- public function removeMember(array &$form, FormStateInterface $form_state) {
- $userid = $form_state->getTriggeringElement()['#array_parents'][1];
- drupal_set_message($userid, 'status');
- }
- public function validateForm(array &$form, FormStateInterface $form_state) {
- // Nothing to do here.
- }
- public function submitForm(array &$form, FormStateInterface $form_state) {
- // Nothing to do here.
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement