From 860c502f32aeae3ed4b06f44d65aba9e77adacc2 Mon Sep 17 00:00:00 2001 From: javier Date: Wed, 17 Jun 2026 14:11:23 +0200 Subject: [PATCH] chore: remove obsolete duplicate views/components (superseded code) Deleted (all superseded, recoverable in git history): - resources/views/projects/edit.blade.php + ProjectController@edit() - resources/views/projects/create.blade.php + ProjectController@create() (projects.create/edit routes point to the Livewire ProjectForm; these controller methods were excluded from the resource and never invoked) - app/Livewire/ProjectEditTabs.php + project-edit-tabs.blade.php (old tabbed editor, functionality recovered inside ProjectForm) - app/Livewire/LayerUpload.php + layer-upload.blade.php (superseded by LayerManager) Kept resources/views/livewire/issues/issue-manager.blade.php as a reference for the future rich Issues screen (its companion component was never built). Co-Authored-By: Claude Opus 4.8 (1M context) --- app/Http/Controllers/ProjectController.php | 18 -- app/Livewire/LayerUpload.php | 124 -------------- app/Livewire/ProjectEditTabs.php | 42 ----- .../views/livewire/layer-upload.blade.php | 57 ------- .../livewire/project-edit-tabs.blade.php | 126 -------------- resources/views/projects/create.blade.php | 37 ----- resources/views/projects/edit.blade.php | 157 ------------------ 7 files changed, 561 deletions(-) delete mode 100644 app/Livewire/LayerUpload.php delete mode 100644 app/Livewire/ProjectEditTabs.php delete mode 100644 resources/views/livewire/layer-upload.blade.php delete mode 100644 resources/views/livewire/project-edit-tabs.blade.php delete mode 100644 resources/views/projects/create.blade.php delete mode 100644 resources/views/projects/edit.blade.php diff --git a/app/Http/Controllers/ProjectController.php b/app/Http/Controllers/ProjectController.php index 0a1d005..5cb882e 100644 --- a/app/Http/Controllers/ProjectController.php +++ b/app/Http/Controllers/ProjectController.php @@ -19,15 +19,6 @@ class ProjectController extends Controller return view('projects.index'); } - /** - * Show the form for creating a new resource. - */ - public function create() - { - Gate::authorize('create projects'); - return view('projects.create'); - } - /** * Store a newly created resource in storage. */ @@ -58,15 +49,6 @@ class ProjectController extends Controller return redirect()->route('projects.map', $project); } - /** - * Show the form for editing the specified resource. - */ - public function edit(Project $project) // <--- ROUTE MODEL BINDING - { - Gate::authorize('edit projects', $project); - return view('projects.edit', compact('project')); - } - /** * Update the specified resource in storage. */ diff --git a/app/Livewire/LayerUpload.php b/app/Livewire/LayerUpload.php deleted file mode 100644 index 9a40ca1..0000000 --- a/app/Livewire/LayerUpload.php +++ /dev/null @@ -1,124 +0,0 @@ - 'required|file|max:51200', - 'layerName' => 'required|string|max:255', - 'layerColor' => 'nullable|string|size:7', - ]; - - public function mount($projectId = null, $phaseId = null) - { - $this->projectId = $projectId; - $this->phaseId = $phaseId; - } - - public function upload() - { - $user = Auth::user(); - if (!$user->can('upload layers') && !$user->hasRole('Admin')) { - session()->flash('error', 'Sin permisos.'); - return; - } - - $this->validate(); - - if (!$this->projectId || !$this->phaseId) { - session()->flash('error', 'Faltan datos del proyecto/fase.'); - return; - } - - $project = Project::findOrFail($this->projectId); - $phase = Phase::findOrFail($this->phaseId); - - $extension = strtolower($this->uploadFile->getClientOriginalExtension()); - $mime = $this->uploadFile->getMimeType(); - - $allowedExtensions = ['geojson', 'kmz', 'kml', 'shp', 'dwg', 'zip']; - $allowedMimes = [ - 'application/vnd.google-earth.kml+xml', - 'application/vnd.google-earth.kmz', - 'application/zip', - 'application/x-zip-compressed', - 'application/x-shapefile', - 'image/vnd.dwg', - 'application/acad', - 'application/geo+json', - 'text/xml', - 'application/xml', - ]; - - if (!in_array($extension, $allowedExtensions) && !in_array($mime, $allowedMimes)) { - session()->flash('error', 'Tipo de archivo no permitido.'); - return; - } - - $projectDir = "uploads/projects/{$project->id}/layers"; - $originalPath = $this->uploadFile->store($projectDir, 'public'); - $geojson = SpatialFileConverter::convertToGeoJson($this->uploadFile); - - if (!$geojson) { - session()->flash('error', 'Conversión fallida.'); - return; - } - - $layerColor = $this->layerColor ?: '#3b82f6'; - $geojson['style'] = ['color' => $layerColor]; - - $layer = Layer::create([ - 'project_id' => $project->id, - 'phase_id' => $phase->id, - 'name' => $this->layerName, - 'color' => $layerColor, - 'original_file' => $originalPath, - 'uploaded_by' => $user->id, - ]); - - if (isset($geojson['features'])) { - foreach ($geojson['features'] as $featureData) { - Feature::create([ - 'layer_id' => $layer->id, - 'name' => $featureData['properties']['name'] ?? null, - 'geometry' => $featureData['geometry'], - 'properties' => $featureData['properties'] ?? [], - 'template_id' => $featureData['properties']['template_id'] ?? null, - 'progress' => $featureData['properties']['progress'] ?? 0, - 'responsible' => $featureData['properties']['responsible'] ?? null, - ]); - } - } - - $this->reset(['uploadFile', 'layerName']); - session()->flash('message', "Capa '{$layer->name}' importada correctamente con " . count($geojson['features'] ?? []) . ' elementos.'); - $this->dispatch('layerUploaded', projectId: $project->id); - } - - public function render() - { - $projects = Project::accessibleBy(Auth::user())->get(); - $phases = $this->projectId ? Phase::where('project_id', $this->projectId)->orderBy('order')->get() : collect(); - - return view('livewire.layer-upload', compact('projects', 'phases')); - } -} \ No newline at end of file diff --git a/app/Livewire/ProjectEditTabs.php b/app/Livewire/ProjectEditTabs.php deleted file mode 100644 index 081839f..0000000 --- a/app/Livewire/ProjectEditTabs.php +++ /dev/null @@ -1,42 +0,0 @@ -project = $project; - } - - public function setActiveTab($tab) - { - $this->activeTab = $tab; - } - - public function tabChanged($tab, $projectId) - { - if ($projectId == $this->project->id) { - $this->activeTab = $tab; - } - } - - public function updateProject() - { - $this->project->save(); - - session()->flash('message', __('Project updated successfully.')); - $this->dispatch('project-updated'); - } - - public function render() - { - return view('livewire.project-edit-tabs'); - } -} \ No newline at end of file diff --git a/resources/views/livewire/layer-upload.blade.php b/resources/views/livewire/layer-upload.blade.php deleted file mode 100644 index 2cf5709..0000000 --- a/resources/views/livewire/layer-upload.blade.php +++ /dev/null @@ -1,57 +0,0 @@ -
- @if(session()->has('message')) -
{{ session('message') }}
- @endif - @if(session()->has('error')) -
{{ session('error') }}
- @endif - -
-
-

{{ __("Upload Layer") }}

- -
-
- - -
- -
- - -
- -
- - - @error('layerName') {{ $message }} @enderror -
- -
- - -
- -
- - - @error('uploadFile') {{ $message }} @enderror -
- - -
-
-
-
\ No newline at end of file diff --git a/resources/views/livewire/project-edit-tabs.blade.php b/resources/views/livewire/project-edit-tabs.blade.php deleted file mode 100644 index ea2e578..0000000 --- a/resources/views/livewire/project-edit-tabs.blade.php +++ /dev/null @@ -1,126 +0,0 @@ -
- -
- - - - - - - - - - - -
- - -
- -
-
- @csrf - @method('PUT') -
- - -
-
- - -
-
-
- - -
-
- - -
-
-
- - -
-
-
- - -
-
- - -
-
- -
-
- - -
-

{{ __('Phases') }}

- -
- - -
-

{{ __('Users') }}

- -
-
-
- -{{-- Alpine.js for tab switching --}} - \ No newline at end of file diff --git a/resources/views/projects/create.blade.php b/resources/views/projects/create.blade.php deleted file mode 100644 index c22f8da..0000000 --- a/resources/views/projects/create.blade.php +++ /dev/null @@ -1,37 +0,0 @@ - -
-

{{ __('Create Project') }}

-
- @csrf -
- - -
-
- - -
-
-
- - -
-
- - -
-
-
-
- - -
-
- - -
-
- -
-
-
diff --git a/resources/views/projects/edit.blade.php b/resources/views/projects/edit.blade.php deleted file mode 100644 index 4d7cc0d..0000000 --- a/resources/views/projects/edit.blade.php +++ /dev/null @@ -1,157 +0,0 @@ - -
-
-
- - - -
-

{{ __('Edit Project') }}: {{ $project->name }}

-
- @csrf - @method('PUT') - - - - {{-- Nombre --}} - - - - - - {{-- Nombre --}} - - - - - - {{-- Dirección --}} - - - - - - {{-- Coordenadas --}} - - - - - - {{-- Estatus --}} - - - - - - {{-- Fecha de Inicio --}} - - - - - - {{-- Fechas de finalización --}} - - - - - -
- {{ __('Reference') }} - - -
- {{ __('Name') }} - - -
- {{ __('Address') }} - - -
- {{ __('Coordinates') }} - -
-
- - -
-
- - -
-
-
- {{ __('Status') }} - - -
- {{ __('Start date') }} - - -
- {{ __('Estimated end date') }} - - -
- - -
-
-
-

{{ __('Phases') }}

- -
-
- -

{{ __('Users') }}

- -
-
-

{{ __('Companies') }}

- -
-
-
-
-
\ No newline at end of file