Esempio n. 1
0
 /**
  * Add default delete button
  *
  * @param string $link
  * @param array $binds
  * @param array $attr
  * @return \FrenchFrogs\Table\Column\Button
  */
 public function addButtonDelete($link = '#', $binds = [], $is_remote = true, $method = 'delete')
 {
     $c = new Column\Button(configurator()->get('button.delete.name'), configurator()->get('button.delete.label'), $link, $binds);
     $c->setOptionAsDanger();
     $c->icon(configurator()->get('button.delete.icon'));
     if ($is_remote) {
         $c->enableRemote($method);
     }
     $this->addColumn($c);
     return $c;
 }
Esempio n. 2
0
 /**
  * Render a button
  *
  * @param \FrenchFrogs\Table\Column\Button $column
  * @param array $row
  * @return mixed
  */
 public function button(Column\Button $column, array $row)
 {
     if ($column->hasOption()) {
         $column->addClass(constant(Style::class . '::' . $column->getOption()));
     }
     if ($column->hasSize()) {
         $column->addClass(constant(Style::class . '::' . $column->getSize()));
     }
     $column->addClass(Style::BUTTON_CLASS);
     $column->addAttribute('href', $column->getBindedLink($row));
     $label = '';
     if ($column->hasIcon()) {
         $label .= html('i', ['class' => $column->getIcon()]);
         $label .= PHP_EOL;
     }
     $name = $column->getBindedLabel($row);
     if ($column->isIconOnly()) {
         $column->addClass('ff-tooltip-left');
     } else {
         $label .= $name;
     }
     if ($column->isRemote()) {
         $column->addAttribute('data-target', '#' . $column->getRemoteId())->addClass('modal-remote');
     } elseif ($column->isCallback()) {
         $column->addClass('callback-remote');
     }
     $column->addAttribute('title', $name);
     $html = html('a', $column->getAttributes(), $label);
     $column->clearClasses()->center();
     return $html;
 }