/**
  * Show the form for editing the specified resource.
  *
  * @param  int $id
  * @return \Illuminate\Http\Response
  */
 public function edit($id)
 {
     $mailRow = $this->repository->find($id);
     if (!$_POST) {
         $form = FormBuilder\create_form(['action' => route('admin.mail.edit', ['id' => $id]), 'method' => FormBuilder\Form::METHOD_POST]);
         $elements[] = FormBuilder\element_text('slug', ['name' => 'slug', 'group' => 'default', 'value' => isset($mailRow->slug) ? $mailRow->slug : '']);
         if ($mailRow instanceof Translatable) {
             $locales = Locale\get_locales();
             foreach ($locales as $locale => $attributes) {
                 $translation = $mailRow->translate($locale);
                 foreach ($mailRow->translatedAttributes() as $attribute => $type) {
                     $elements[] = FormBuilder\get_element($type, ['group' => 'translations', 'label' => ucfirst($attribute) . ' ' . $locale, 'value' => isset($translation[$attribute]) ? $translation[$attribute] : '', 'name' => $locale . '[' . $attribute . ']']);
                 }
             }
         }
         $form->addElements($elements, true);
         return view('scaffold::scaffold.edit', compact('form'));
     }
     $mailRow->fill($_POST)->save();
     return back();
 }
Beispiel #2
0
/**
 * Render filter form .
 *
 * @param Table $table
 * @param array $attributes
 * @return string
 */
function render_filter_form(Table $table, $attributes = array())
{
    $form = get_filter_form($table);
    foreach ($attributes as $key => $value) {
        if (method_exists($form, $key)) {
            $form->{$key}($value);
        }
    }
    if (isset($attributes['group'])) {
        $groups = $form->getGroup($attributes['group']);
    } else {
        $groups = $form->getGroups();
    }
    $html = $form->openForm();
    array_walk($groups, function ($value, $group) use(&$html, $form) {
        $html .= '<div class="' . $group . '">';
        $html .= $form->render($group, false);
        $html .= '</div>';
    });
    $html .= FormBuilder\get_element('button', ['value' => _("Search"), 'type' => 'submit', 'class' => 'btn btn-success btn-search btn-flat'])->render();
    $html .= $form->closeForm();
    return $html;
}
Beispiel #3
0
 /**
  * Get filter form ..
  *
  * @param null $request
  * @return Form
  * @throws FormBuilder\ElementException
  */
 public function renderFilter($request = null)
 {
     $fields = $this->getDriver()->filterFields();
     if (!$request) {
         $request = array_merge($_GET, $_POST);
     }
     $elements = [];
     foreach ($fields as $key => $value) {
         $type = !is_array($value) ? $value : $value['type'];
         #@todo spark----------------
         $attributes = ['value' => isset($request[$key]) ? $request[$key] : '', 'name' => $key, 'class' => 'form-control'];
         if (is_array($value)) {
             $attributes = array_merge($value, $attributes);
         }
         $attributes['before'] = '<div class="form-group">';
         $attributes['after'] = '</div>';
         if (!isset($attributes['label'])) {
             $attributes['label'] = ucfirst($key);
         }
         $elements[$key] = FormBuilder\get_element($type, $attributes + ['label' => $attributes['label']]);
     }
     $form = new Form(['elements' => $elements, 'class' => 'form-inline']);
     return $form;
 }
 /**
  * @param $section
  * @return \Illuminate\View\View
  */
 public function edit($section)
 {
     $default = config('administrator-settings.default')[$section];
     $form = FormBuilder\create_form(['action' => route('update_setting', ['section' => $section]), 'method' => FormBuilder\Form::METHOD_POST]);
     $settings = $this->getRepository()->all($section);
     $settings = $section == 'general' ? isset($settings['general']) ? $settings['general'] : [] : $settings;
     array_walk($default['items'], function ($value, $key) use(&$form, $settings) {
         if (!$this->isAllowed(isset($value['roles']) ? $value['roles'] : [], isset($value['permissions']) ? $value['permissions'] : [])) {
             return false;
         }
         $attributes = ['name' => $value['key'], 'value' => isset($settings[$value['key']]) ? $settings[$value['key']] : (isset($value['value']) ? $value['value'] : '')];
         $type = isset($value['type']) ? $value['type'] : 'text';
         if ($type == 'checkbox') {
             $form->addElement($key . '1', FormBuilder\element_hidden('', ['value' => 0, 'group' => $value['group']] + $attributes), true);
         }
         $form->addElement($key, FormBuilder\get_element($type, $attributes + $value), true);
     });
     return view('scaffold::scaffold.edit', compact('form'));
 }