getRouteKey(); } public function title() { if ($this->title != '') { return $this->title; } if ($this->name != '') { return $this->name; } return 'None'; } public function toArray($request) { return [ 'id' => $this->getRouteKey(), 'title' => $this->title(), 'reporting_to' => $this->reporting_to, 'name' => $this->name, 'email' => $this->email, 'password' => $this->password, 'api_token' => $this->api_token, 'remember_token' => $this->remember_token, 'sex' => $this->sex, 'dob' => $this->dob, 'designation' => $this->designation, 'mobile' => $this->mobile, 'phone' => $this->phone, 'address' => $this->address, 'street' => $this->street, 'city' => $this->city, 'district' => $this->district, 'state' => $this->state, 'country' => $this->country, 'photo' => $this->photo, 'web' => $this->web, 'permissions' => $this->permissions, 'status' => $this->status, 'email_verified_at' => $this->email_verified_at, 'user_id' => $this->user_id, 'user_type' => $this->user_type, 'upload_folder' => $this->upload_folder, 'created_at' => !is_null($this->created_at) ? $this->created_at->format('Y-m-d H:i:s') : null, 'updated_at' => !is_null($this->updated_at) ? $this->updated_at->format('Y-m-d H:i:s') : null, 'meta' => [ 'exists' => $this->exists(), 'link' => $this->itemLink(), 'upload_url' => $this->getUploadURL(''), ], ]; } /** * Get additional data that should be returned with the resource array. * * @param \Illuminate\Http\Request $request * @return array */ public function with($request) { return [ 'meta' => [ 'exists' => $this->exists(), 'link' => $this->itemLink(), 'upload_url' => $this->getUploadURL(''), 'workflow' => $this->workflows(), 'actions' => $this->actions(), ], ]; } private function workflows() { $arr = []; return $arr; } private function actions() { $arr = []; $actions = $this->resource->actions()->details(); foreach ($actions as $key => $action) { $name = $action->name(); $arr[$key]['url'] = guard_url('profile/profile//action' . $this->getRouteKey() . '/' . $action->name()); $arr[$key]['name'] = $name; $arr[$key]['key'] = $name; $arr[$key]['form'] = $action->form(); $arr[$key]['label'] = trans('profile::profile.actions.' . $name); } return $arr; } }