HEX
Server: LiteSpeed
System: Linux sv4.hami.host 5.14.0-611.54.3.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Thu May 7 16:31:24 EDT 2026 x86_64
User: armgroup (1008)
PHP: 8.2.32
Disabled: show_source, system, shell_exec, passthru, exec, popen, proc_open, mail, socket_create, socket_create_listen, socket_create_pair, link, dl, openlog, syslog, stream_socket_server, curl_multi_init
Upload Files
File: /home/armgroup/libs/app/Http/Controllers/Admin/ProvinceController.php
<?php

namespace App\Http\Controllers\Admin;

use App\DataTables\ProvincesDataTable;
use App\Http\Controllers\Controller;
use App\Models\Province;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;

class ProvinceController extends Controller
{
    public function __construct()
    {
        $this->middleware('permission:manage provinces');
    }

    public function index(ProvincesDataTable $dataTable)
    {
        return $dataTable->render('admin.provinces.index');
    }

    public function edit(Province $province)
    {
        return view('admin.provinces.edit', compact('province'));
    }

    public function update(Province $province, Request $request)
    {
        $validator = Validator::make($request->all(), [
            'express_status' => 'nullable|in:0,1',
            'courier_status' => 'nullable|in:0,1',
            'express_default' => ['nullable', 'integer', 'min:0', 'max:100000000'],
            'courier_default' => ['nullable', 'integer', 'min:0', 'max:100000000'],
        ]);

        if ($validator->fails()) {
            $this->doneMessage($validator->errors()->first(), 'error');

            return back()->withInput();
        } else {
            if (! is_null($request->express_status)) {
                $data['express_status'] = $request->express_status;
            }
            if (! is_null($request->courier_status)) {
                $data['courier_status'] = $request->courier_status;
            }
            if (! is_null($request->express_default)) {
                $data['express_default'] = $request->express_default;
            }
            if (! is_null($request->courier_default)) {
                $data['courier_default'] = $request->courier_default;
            }
            if (isset($data) && is_array($data)) {
                $province->cities()->update($data);
                saveActivity("ویرایش شهرهای استان {$province->name} به صورت گروهی");
                $this->doneMessage();
            } else {
                $this->doneMessage('هیج موردی برای ویرایش نبود', 'warning');
            }
        }

        return back();
    }
}