responsive tables

This commit is contained in:
Benjamin Takats
2022-12-18 00:27:22 +01:00
parent 6bc2bdab5f
commit b62ff7ad5b
10 changed files with 142 additions and 16 deletions

View File

@@ -56,7 +56,8 @@ class BitcoinEventTable extends DataTableComponent
->format(
fn($value, $row, Column $column) => view('columns.bitcoin_events.country')->withRow($row)
)
->sortable(),
->sortable()
->collapseOnMobile(),
Column::make(__('Title'), 'title')
->format(
fn($value, $row, Column $column) => view('columns.bitcoin_events.title')->withRow($row)
@@ -69,13 +70,16 @@ class BitcoinEventTable extends DataTableComponent
Column::make(__('To'), 'to')
->format(
fn($value, $row, Column $column) => $value->asDateTime()
),
Column::make(__('Venue'), 'venue.name'),
)
->collapseOnMobile(),
Column::make(__('Venue'), 'venue.name')
->collapseOnMobile(),
Column::make(__('Link'), 'link')
->format(
fn($value, $row, Column $column) => view('columns.bitcoin_events.link')->withRow($row)
)
->sortable(),
->sortable()
->collapseOnMobile(),
];
}

View File

@@ -64,7 +64,8 @@ class CourseTable extends DataTableComponent
Column::make("Tags")
->label(
fn($row, Column $column) => view('columns.courses.tags')->withRow($row)
),
)
->collapseOnMobile(),
Column::make("Termine")
->label(
fn($row, Column $column) => '<strong>'.$row->course_events_count.'</strong>'

View File

@@ -62,12 +62,14 @@ class MeetupEventTable extends DataTableComponent
->sortable(),
Column::make(__('Location'), 'location')
->searchable(fn($builder, $term) => $builder->where('location', 'ilike', '%'.$term.'%'))
->sortable(),
->sortable()
->collapseOnMobile(),
Column::make(__('Start'), 'start')
->format(
fn($value, $row, Column $column) => $value->asDateTime()
)
->sortable(),
->sortable()
->collapseOnMobile(),
Column::make(__('Link'), 'link')
->format(
fn($value, $row, Column $column) => view('columns.meetup_events.link')->withRow($row)

View File

@@ -61,7 +61,8 @@ class MeetupTable extends DataTableComponent
Column::make(__('Links'),)
->label(
fn($row, Column $column) => view('columns.meetups.action')->withRow($row)
),
)
->collapseOnMobile(),
];
}

118
app/Nova/Language.php Normal file
View File

@@ -0,0 +1,118 @@
<?php
namespace App\Nova;
use App\Notifications\ModelCreatedNotification;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Http\Request;
use Laravel\Nova\Fields\HasMany;
use Laravel\Nova\Fields\ID;
use Laravel\Nova\Fields\MultiSelect;
use Laravel\Nova\Fields\Number;
use Laravel\Nova\Fields\Text;
use Laravel\Nova\Http\Requests\NovaRequest;
class Language extends Resource
{
/**
* The model the resource corresponds to.
* @var string
*/
public static $model = \JoeDixon\Translation\Language::class;
/**
* The single value that should be used to represent the resource when being displayed.
* @var string
*/
public static $title = 'name';
/**
* The columns that should be searched.
* @var array
*/
public static $search = [
'id',
'name',
'language',
];
public static function afterCreate(NovaRequest $request, Model $model)
{
\App\Models\User::find(1)
->notify(new ModelCreatedNotification($model, str($request->getRequestUri())
->after('/nova-api/')
->before('?')
->toString()));
}
public function subtitle()
{
return __('Code: :code', ['code' => $this->code]);
}
/**
* Get the fields displayed by the resource.
*
* @param \Illuminate\Http\Request $request
*
* @return array
*/
public function fields(Request $request)
{
return [
ID::make()
->sortable(),
Text::make(__('Name'), 'name')
->rules('required', 'string'),
];
}
/**
* Get the cards available for the request.
*
* @param \Illuminate\Http\Request $request
*
* @return array
*/
public function cards(Request $request)
{
return [];
}
/**
* Get the filters available for the resource.
*
* @param \Illuminate\Http\Request $request
*
* @return array
*/
public function filters(Request $request)
{
return [];
}
/**
* Get the lenses available for the resource.
*
* @param \Illuminate\Http\Request $request
*
* @return array
*/
public function lenses(Request $request)
{
return [];
}
/**
* Get the actions available for the resource.
*
* @param \Illuminate\Http\Request $request
*
* @return array
*/
public function actions(Request $request)
{
return [];
}
}