<?php


namespace App\Admin\Actions\Users;

use Dcat\Admin\Grid\RowAction;
use Dcat\Admin\Widgets\Modal;
use Illuminate\Http\Request;

class UserAuth extends RowAction
{
    protected $title;

    protected $model;

    public function __construct(string $model = null)
    {
        $this->model = $model;
        $this->title = '<i class="feather icon-user-check"></i> '.trans('user.fields.user_authentication');
    }

    /**
     * 设置确认弹窗信息，如果返回空值，则不会弹出弹窗
     *
     * 允许返回字符串或数组类型
     *
     * @return array|string|void
     */
    public function confirm()
    {
//        return [
//            "确定认证吗？"
//        ];
    }

    /**
     * 处理请求
     *
     * @param Request $request
     *
     * @return \Dcat\Admin\Actions\Response
     */
    public function handle(Request $request)
    {
//        // 获取当前行ID
//        $id = $this->getKey();
//
//        // 获取 parameters 方法传递的参数
//        $model = $request->get('model');
//        $apply = $model::find($id);
//        $apply->is_auth=1;
//        $apply->save();
//        // 返回响应结果并刷新页面
//        return $this->response()->success("操作成功")->refresh();
    }

    /**
     * 设置要POST到接口的数据
     *
     * @return array
     */
    public function parameters()
    {
        return [
            // 发送当前行 username 字段数据到接口
            'status' => $this->row->is_auth,
            // 把模型类名传递到接口
            'model' => $this->model,
        ];
    }

    public function render()
    {
        $form = UserAuthForm::make()->payload(['id'=>$this->getKey()]);
        return Modal::make()
            ->lg()
            ->title($this->title)
            ->body($form)
            ->button($this->title);
    }
}
