public function SharebarAddButtonForm::buildForm in ShareBar 8
Form builder: Configure the sharebar system.
Overrides FormInterface::buildForm
File
- src/
Form/ SharebarAddButtonForm.php, line 30 - Contains \Drupal\sharebar\Form\SharebarAddButtonForm.
Class
- SharebarAddButtonForm
- Implements an example form.
Namespace
Drupal\sharebar\FormCode
public function buildForm(array $form, FormStateInterface $form_state) {
$args = explode('/', current_path());
$mname = $args[4];
$array1 = '';
$button = (object) $array1;
$button->name = $button->machine_name = $button->big_button = $button->small_button = $button->enabled = $button->weight = '';
if ($mname) {
$buttons = unserialize(\Drupal::config('sharebar.settings')
->get('sharebar_buttons'));
if (empty($buttons)) {
$buttons = unserialize(sharebar_buttons_def());
}
// print_r($buttons); die;
if (is_array($buttons) && count($buttons)) {
$button = $buttons[$mname];
}
}
$form['name'] = array(
'#type' => 'textfield',
'#title' => t('Name'),
'#default_value' => $button->name,
'#maxlength' => 255,
'#required' => TRUE,
);
$form['machine_name'] = array(
'#type' => 'machine_name',
'#default_value' => $button->machine_name,
'#maxlength' => 21,
'#machine_name' => array(
'exists' => 'sharebar_machine_name_load',
),
);
$form['old_machine_name'] = array(
'#type' => 'value',
'#value' => $button->machine_name,
);
$form['big_button'] = array(
'#type' => 'textarea',
'#title' => t('Big Button'),
'#default_value' => $button->big_button,
'#required' => TRUE,
);
$form['small_button'] = array(
'#type' => 'textarea',
'#title' => t('Small Button'),
'#default_value' => $button->small_button,
'#required' => TRUE,
);
$form['enabled'] = array(
'#type' => 'checkbox',
'#title' => t('Enabled'),
'#default_value' => $button->enabled,
);
$form['weight'] = array(
'#type' => 'weight',
'#title' => t('Weight'),
'#delta' => 50,
'#default_value' => $button->weight,
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Save'),
);
return $form;
}