Compare commits

...

4 commits

Author SHA1 Message Date
Anna-Sara Sélea
4de915aa42 Fix with texts 2025-01-27 21:41:46 +01:00
Anna-Sara Sélea
2f1af4345b Fix with texts 2025-01-27 21:37:36 +01:00
Anna-Sara Sélea
fa300b9668 Fix with image size and texts 2025-01-27 21:30:04 +01:00
Anna-Sara Sélea
ef49675ffe Small fixes 2025-01-27 20:04:39 +01:00
15 changed files with 71 additions and 68 deletions

View file

@ -25,37 +25,38 @@ class ItemResource extends Resource
protected static ?string $modelLabel = 'Items'; protected static ?string $modelLabel = 'Items';
public static function form(Form $form): Form public static function form(Form $form): Form
{ {
return $form return $form
->schema([ ->schema([
Forms\Components\FileUpload::make('image') Forms\Components\FileUpload::make('image')
->label('Bild') ->label('Image')
->minSize(512) ->minSize(512)
->maxSize(1024) ->maxSize(5500)
->columnSpan('full') ->columnSpan('full')
->image(), ->image(),
Forms\Components\TextInput::make('desc') Forms\Components\TextInput::make('desc')
->label('Beskrivning') ->label('Description')
->maxLength(255) ->maxLength(255)
->default(null), ->default(null),
Forms\Components\DatePicker::make('acquisition_date') Forms\Components\DatePicker::make('acquisition_date')
->label('Inköpsdatum'), ->label('Acquisition date'),
Forms\Components\TextInput::make('quantity') Forms\Components\TextInput::make('quantity')
->label('Antal') ->label('Quantity')
->numeric() ->numeric()
->minValue(0) ->minValue(0)
->maxValue(1000) ->maxValue(1000)
->default(0), ->default(0),
Forms\Components\Select::make('type_id') Forms\Components\Select::make('type_id')
->label('Typ') ->label('Type')
->options(Type::all()->pluck('name', 'id')) ->options(Type::all()->pluck('name', 'id'))
->required(), ->required(),
Forms\Components\TextInput::make('cost') Forms\Components\TextInput::make('cost')
->label('Kostnad') ->label('Price')
->default(null), ->default(null),
Forms\Components\Toggle::make('can_be_loaned') Forms\Components\Toggle::make('can_be_loaned')
->label('Kan lånas ut'), ->label('Can be loaned'),
]); ]);
} }
@ -64,28 +65,28 @@ class ItemResource extends Resource
return $table return $table
->columns([ ->columns([
Tables\Columns\TextColumn::make('desc') Tables\Columns\TextColumn::make('desc')
->label('Beskrivning') ->label('Description')
->searchable(), ->searchable(),
Tables\Columns\TextColumn::make('acquisition_date') Tables\Columns\TextColumn::make('acquisition_date')
->label('Inköpsdatum') ->label('Acquisition date')
->date() ->date()
->sortable() ->sortable()
->toggleable(isToggledHiddenByDefault: true), ->toggleable(isToggledHiddenByDefault: true),
Tables\Columns\TextColumn::make('quantity') Tables\Columns\TextColumn::make('quantity')
->label('Antal') ->label('Quantity')
->numeric() ->numeric()
->sortable(), ->sortable(),
Tables\Columns\TextColumn::make('type.name') Tables\Columns\TextColumn::make('type.name')
->label('Typ') ->label('Type')
->numeric() ->numeric()
->sortable(), ->sortable(),
Tables\Columns\TextColumn::make('cost') Tables\Columns\TextColumn::make('cost')
->label('Kostnad') ->label('Price')
->toggleable(isToggledHiddenByDefault: true), ->toggleable(isToggledHiddenByDefault: true),
Tables\Columns\ImageColumn::make('image') Tables\Columns\ImageColumn::make('image')
->label('Bild'), ->label('Image'),
Tables\Columns\IconColumn::make('can_be_loaned') Tables\Columns\IconColumn::make('can_be_loaned')
->label('Kan bli utlånad') ->label('Can be loaned')
->trueIcon('heroicon-o-check-badge') ->trueIcon('heroicon-o-check-badge')
->falseIcon('heroicon-o-x-mark') ->falseIcon('heroicon-o-x-mark')
->trueColor('success') ->trueColor('success')
@ -100,7 +101,7 @@ class ItemResource extends Resource
// //
]) ])
->actions([ ->actions([
Tables\Actions\EditAction::make(), Tables\Actions\EditAction::make()
]) ])
->bulkActions([ ->bulkActions([
Tables\Actions\BulkActionGroup::make([ Tables\Actions\BulkActionGroup::make([

View file

@ -13,7 +13,7 @@ class ListItems extends ListRecords
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [
Actions\CreateAction::make(), Actions\CreateAction::make()->label('Create new'),
]; ];
} }
} }

View file

@ -19,22 +19,22 @@ class ItemsOverview extends BaseWidget
->query( ->query(
Item::where('can_be_loaned', true) Item::where('can_be_loaned', true)
) )
->heading('Items för utlåning') ->heading('Items for lending')
->columns([ ->columns([
Tables\Columns\TextColumn::make('desc') Tables\Columns\TextColumn::make('desc')
->label('Beskrivning') ->label('Description')
->searchable(), ->searchable(),
Tables\Columns\ImageColumn::make('image') Tables\Columns\ImageColumn::make('image')
->label('Bild'), ->label('Image'),
Tables\Columns\IconColumn::make('reserveditem.reserved') Tables\Columns\IconColumn::make('reserved')
->label('Tillgänglig') ->label('Available')
->trueIcon('heroicon-o-check-badge') ->falseIcon('heroicon-o-check-badge')
->falseIcon('heroicon-o-x-mark') ->trueIcon('heroicon-o-x-mark')
->trueColor('success') ->falseColor('success')
->falseColor('danger') ->trueColor('danger')
->default(true), ->default(false),
Tables\Columns\TextColumn::make('reserveditem.return_date') Tables\Columns\TextColumn::make('reserveditem.return_date')
->label('Tillbaka') ->label('Available again')
->searchable(), ->searchable(),
]); ]);
} }

View file

@ -22,16 +22,16 @@ class ReserveditemResource extends Resource
protected static ?string $navigationIcon = 'heroicon-o-archive-box-x-mark'; protected static ?string $navigationIcon = 'heroicon-o-archive-box-x-mark';
protected static ?string $modelLabel = 'Reserverade items'; protected static ?string $modelLabel = 'Reserved items';
protected static ?string $title = 'Reserverade item'; protected static ?string $title = 'Reserve an item';
public static function form(Form $form): Form public static function form(Form $form): Form
{ {
return $form return $form
->schema([ ->schema([
Forms\Components\Select::make('item_id') Forms\Components\Select::make('item_id')
->label('Välj item att lån') ->label('Choose item to reserve')
->relationship( ->relationship(
name: 'item', name: 'item',
titleAttribute: 'desc', titleAttribute: 'desc',
@ -60,22 +60,22 @@ class ReserveditemResource extends Resource
//->query(Reserveditem::withTrashed()) //->query(Reserveditem::withTrashed())
->columns([ ->columns([
Tables\Columns\TextColumn::make('item.desc') Tables\Columns\TextColumn::make('item.desc')
->label('Namn') ->label('Name')
->sortable(), ->sortable(),
Tables\Columns\TextColumn::make('username') Tables\Columns\TextColumn::make('username')
->label('Användare') ->label('User')
->sortable(), ->sortable(),
Tables\Columns\TextColumn::make('reserved_date') Tables\Columns\TextColumn::make('reserved_date')
->label('Reserveringsdatum') ->label('Reservation date')
->sortable(), ->sortable(),
Tables\Columns\TextColumn::make('delivered_date') Tables\Columns\TextColumn::make('delivered_date')
->label('Utlämningsdatum') ->label('Delivery date')
->sortable(), ->sortable(),
Tables\Columns\TextColumn::make('return_date') Tables\Columns\TextColumn::make('return_date')
->label('Återlämningsdatum') ->label('Return date')
->sortable(), ->sortable(),
Tables\Columns\TextColumn::make('returned_date') Tables\Columns\TextColumn::make('returned_date')
->label('Återlämnad') ->label('Returned')
->sortable(), ->sortable(),
]) ])
->filters([ ->filters([

View file

@ -14,6 +14,7 @@ class CreateReserveditem extends CreateRecord
{ {
protected static string $resource = ReserveditemResource::class; protected static string $resource = ReserveditemResource::class;
protected static ?string $title = 'Reserve an item';
protected function handleRecordCreation(array $data): Model protected function handleRecordCreation(array $data): Model
{ {

View file

@ -22,9 +22,7 @@ class EditReserveditem extends EditRecord
protected function mutateFormDataBeforeSave(array $data): array protected function mutateFormDataBeforeSave(array $data): array
{ {
$data['user_id'] = auth()->id();
$data['username'] = auth()->user()->name;
if ($data['delivered']) if ($data['delivered'])
{ {
$data['delivered_date'] = Carbon::now(); $data['delivered_date'] = Carbon::now();

View file

@ -13,7 +13,7 @@ class ListReserveditems extends ListRecords
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [
Actions\CreateAction::make(), Actions\CreateAction::make()->label('Create new'),
]; ];
} }
} }

View file

@ -20,9 +20,7 @@ class ReserveditemResourceUser extends Resource
protected static ?string $navigationIcon = 'heroicon-o-archive-box-x-mark'; protected static ?string $navigationIcon = 'heroicon-o-archive-box-x-mark';
protected static ?string $modelLabel = 'Reservera item'; protected static ?string $modelLabel = 'Reserve items';
protected static ?string $title = 'Reservera item';
protected static ?string $slug = 'user'; protected static ?string $slug = 'user';
@ -31,7 +29,7 @@ class ReserveditemResourceUser extends Resource
return $form return $form
->schema([ ->schema([
Forms\Components\Select::make('item_id') Forms\Components\Select::make('item_id')
->label('Välj item att låna') ->label('Choose an item to reserve')
->relationship( ->relationship(
name: 'item', name: 'item',
titleAttribute: 'desc', titleAttribute: 'desc',
@ -52,22 +50,22 @@ class ReserveditemResourceUser extends Resource
return $table return $table
->columns([ ->columns([
Tables\Columns\TextColumn::make('items.desc') Tables\Columns\TextColumn::make('items.desc')
->label('Namn') ->label('Name')
->sortable(), ->sortable(),
Tables\Columns\TextColumn::make('username') Tables\Columns\TextColumn::make('username')
->label('Användare') ->label('User')
->sortable(), ->sortable(),
Tables\Columns\TextColumn::make('reserved_date') Tables\Columns\TextColumn::make('reserved_date')
->label('Reserveringsdatum') ->label('Reserved date')
->sortable(), ->sortable(),
Tables\Columns\TextColumn::make('delivered_date') Tables\Columns\TextColumn::make('delivered_date')
->label('Utlämningsdatum') ->label('Delivery date')
->sortable(), ->sortable(),
Tables\Columns\TextColumn::make('return_date') Tables\Columns\TextColumn::make('return_date')
->label('Återlämningsdatum') ->label('Return date')
->sortable(), ->sortable(),
Tables\Columns\TextColumn::make('returned_date') Tables\Columns\TextColumn::make('returned_date')
->label('Återlämnad') ->label('Returned')
->sortable(), ->sortable(),
]) ])
->filters([ ->filters([
@ -102,4 +100,9 @@ class ReserveditemResourceUser extends Resource
ItemResource\Widgets\ItemsOverview::class, ItemResource\Widgets\ItemsOverview::class,
]; ];
} }
public static function canViewAny(): bool
{
return auth()->user()->is_admin==false;
}
} }

View file

@ -14,7 +14,7 @@ class CreateReserveditemUser extends CreateRecord
{ {
protected static string $resource = ReserveditemResourceUser::class; protected static string $resource = ReserveditemResourceUser::class;
protected static ?string $title = 'Reserverade item'; protected static ?string $title = 'Reserve an item';
protected function handleRecordCreation(array $data): Model protected function handleRecordCreation(array $data): Model
{ {

View file

@ -19,9 +19,9 @@ class TypeResource extends Resource
protected static ?string $navigationIcon = 'heroicon-o-bookmark'; protected static ?string $navigationIcon = 'heroicon-o-bookmark';
protected static ?string $modelLabel = 'Items types'; protected static ?string $modelLabel = 'Item types';
protected static ?string $title = 'Items Types'; protected static ?string $title = 'Item Types';
public static function form(Form $form): Form public static function form(Form $form): Form
{ {
@ -38,7 +38,7 @@ class TypeResource extends Resource
return $table return $table
->columns([ ->columns([
Tables\Columns\TextColumn::make('name') Tables\Columns\TextColumn::make('name')
->label('Namn') ->label('Name')
->searchable(), ->searchable(),
]) ])
->filters([ ->filters([

View file

@ -13,7 +13,7 @@ class ListTypes extends ListRecords
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [
Actions\CreateAction::make(), Actions\CreateAction::make()->label('Create new'),
]; ];
} }
} }

View file

@ -45,7 +45,7 @@ class UserResource extends Resource
return $table return $table
->columns([ ->columns([
Tables\Columns\TextColumn::make('name') Tables\Columns\TextColumn::make('name')
->label('Namn') ->label('Name')
->searchable(), ->searchable(),
Tables\Columns\TextColumn::make('email') Tables\Columns\TextColumn::make('email')
->searchable(), ->searchable(),

View file

@ -13,7 +13,7 @@ class ListUsers extends ListRecords
protected function getHeaderActions(): array protected function getHeaderActions(): array
{ {
return [ return [
Actions\CreateAction::make(), Actions\CreateAction::make()->label('Create new'),
]; ];
} }
} }

View file

@ -16,9 +16,9 @@ class AdminWidget extends BaseWidget
protected function getStats(): array protected function getStats(): array
{ {
return [ return [
Card::make('Totalt antal användare', User::count() ), Card::make('Total number of users', User::count() ),
Card::make('Totalt antal items', Item::count() ), Card::make('Total number of items', Item::count() ),
Card::make('Utlånande items', Reserveditem::count() ), Card::make('Reserved items', Reserveditem::count() ),
]; ];
} }

View file

@ -19,27 +19,27 @@ class ReserveditemsOverview extends BaseWidget
->query( ->query(
Reserveditem::where('user_id', auth()->id())->where('returned', false) Reserveditem::where('user_id', auth()->id())->where('returned', false)
) )
->heading('Dina lånade items') ->heading('Your reserved items')
->columns([ ->columns([
Tables\Columns\TextColumn::make('item.desc') Tables\Columns\TextColumn::make('item.desc')
->label('Beskrivning') ->label('Description')
->searchable(), ->searchable(),
Tables\Columns\ImageColumn::make('item.image') Tables\Columns\ImageColumn::make('item.image')
->label('Bild'), ->label('Image'),
Tables\Columns\TextColumn::make('reserved_date') Tables\Columns\TextColumn::make('reserved_date')
->label('Reserveringsdatum') ->label('Reserved date')
->sortable(), ->sortable(),
Tables\Columns\TextColumn::make('return_date') Tables\Columns\TextColumn::make('return_date')
->label('Återlämnningsdatum') ->label('Return date')
->sortable(), ->sortable(),
Tables\Columns\IconColumn::make('delivered') Tables\Columns\IconColumn::make('delivered')
->label('Utlämnad') ->label('Delivered')
->trueIcon('heroicon-o-check-badge') ->trueIcon('heroicon-o-check-badge')
->falseIcon('heroicon-o-x-mark') ->falseIcon('heroicon-o-x-mark')
->trueColor('success') ->trueColor('success')
->falseColor('danger'), ->falseColor('danger'),
Tables\Columns\IconColumn::make('returned') Tables\Columns\IconColumn::make('returned')
->label('Återlämnad') ->label('Returned')
->trueIcon('heroicon-o-check-badge') ->trueIcon('heroicon-o-check-badge')
->falseIcon('heroicon-o-x-mark') ->falseIcon('heroicon-o-x-mark')
->trueColor('success') ->trueColor('success')