You are here

public function SharebarAddButtonForm::submitForm in ShareBar 8

Form submission handler.

Parameters

array $form: An associative array containing the structure of the form.

\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.

Overrides FormInterface::submitForm

File

src/Form/SharebarAddButtonForm.php, line 101
Contains \Drupal\sharebar\Form\SharebarAddButtonForm.

Class

SharebarAddButtonForm
Implements an example form.

Namespace

Drupal\sharebar\Form

Code

public function submitForm(array &$form, FormStateInterface $form_state) {

  // echo "<pre>"; print($form_state); echo "<hello>"; die;
  if ($form_state
    ->getValue('clicked_button') == t('Delete')) {

    //if ($form_state['clicked_button']['#value'] == t('Delete')) {
    $form_state['rebuild'] = TRUE;
    $form_state['confirm_delete'] = TRUE;
    return;
  }
  $buttons = unserialize(\Drupal::config('sharebar.settings')
    ->get('sharebar_buttons'));
  if (empty($buttons)) {
    $buttons = unserialize(sharebar_buttons_def());
  }
  if ($form_state
    ->getValue('old_machine_name') != '' && $form_state
    ->getValue('old_machine_name') != $form_state
    ->getValue('machine_name')) {
    unset($buttons[$form_state['values']['old_machine_name']]);
  }
  $array1 = '';

  //$button = (object)$array1;
  $m_name = $form_state
    ->getValue('machine_name');
  $buttons[$m_name] = (object) $array1;
  $buttons[$m_name]->machine_name = $m_name;
  $buttons[$m_name]->name = $form_state
    ->getValue('name');
  $buttons[$m_name]->big_button = $form_state
    ->getValue('big_button');
  $buttons[$m_name]->small_button = $form_state
    ->getValue('small_button');
  $buttons[$m_name]->enabled = $form_state
    ->getValue('enabled');
  $buttons[$m_name]->weight = $form_state
    ->getValue('weight');

  //variable_set('sharebar_buttons', serialize($buttons));

  // Drupal::config('sharebar.settings')->set('sharebar_buttons')
  $this
    ->config('sharebar.settings')
    ->set('sharebar_buttons', serialize($buttons))
    ->save();

  // $form_state['redirect'] = 'admin/config/sharebar/settings';
  $form_state
    ->setRedirect('sharebar.admin_settings');
}