HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/farmfun/reserveren.farmfun.be/app/Komma/Locations/Kms/LocationController.php
<?php

namespace App\Komma\Locations\Kms;

use App\Komma\Kms\Core\SectionController;
use App\Komma\LocationProducts\Models\LocationProduct;
use App\Komma\Locations\Models\Location;
use App\Komma\Locations\Models\LocationTranslation;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Collection;

final class LocationController extends SectionController
{
    protected $slug = 'locations';

    protected $classModelName = Location::class;

    protected $forTranslationModelName = LocationTranslation::class;

    public function __construct()
    {
        $locationSection = new LocationSection($this->slug);
        parent::__construct($locationSection);
        $this->modelService = app()->make(LocationService::class);
    }

    protected function save(Model $model, Collection $attributesByValueFrom = null): Model
    {
        $model = parent::save($model, $attributesByValueFrom);

        $locationProductOrder = request()->get('location_product_order');
        if (isset($locationProductOrder)) {
            $locationProductIds = explode(',', $locationProductOrder);

            foreach ($locationProductIds as $index => $id) {
                $locationProduct = LocationProduct::find($id);
                $locationProduct->sort_order = $index;
                $locationProduct->save();
            }
        }

        $locationAvailabilityService = app(LocationAvailabilityService::class);
        $locationAvailabilityService->save($model, \Input::all());

        return $model;
    }
}