Skip to content

Commit cc2aa79

Browse files
authored
Merge pull request #734 from Thoth2023/develop
Develop
2 parents e42511a + eed645c commit cc2aa79

File tree

6 files changed

+203
-128
lines changed

6 files changed

+203
-128
lines changed

app/Livewire/Conducting/StudySelection/PaperModal.php

Lines changed: 34 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,18 @@ class PaperModal extends Component
2626

2727
public $currentProject;
2828
public $projectId;
29-
public $paper = null;
29+
public $paper = [
30+
'id_paper' => null,
31+
'title' => '',
32+
'author' => '',
33+
'year' => '',
34+
'doi' => '',
35+
'url' => '',
36+
'data_base' => null,
37+
'database_name' => '',
38+
'status_selection' => null,
39+
'status_description' => 'None',
40+
];
3041
public $canEdit = false;
3142

3243
public $criterias;
@@ -41,6 +52,7 @@ public function mount()
4152
{
4253
$this->projectId = request()->segment(2);
4354
$this->currentProject = Project::findOrFail($this->projectId);
55+
4456
}
4557
#[On('showPaper')]
4658
public function showPaper($paper, $criterias)
@@ -58,13 +70,22 @@ public function showPaper($paper, $criterias)
5870
->values()
5971
->toArray();
6072

61-
$this->paper = $paper;
73+
// Se showPaper for chamado com o ID do paper, carrega o objeto e converte para array
74+
// Se o paper for passado como um array de dados, usa o id_paper
75+
$paperId = is_array($paper) ? $paper['id_paper'] : $paper;
76+
77+
if (!$paperId) {
78+
Log::error('showPaper called without a valid paper ID or data.');
79+
return;
80+
}
81+
82+
$this->paper = Papers::where('id_paper', $paperId)->first()->toArray();
6283

6384
$databaseName = DB::table('data_base')
6485
->where('id_database', $this->paper['data_base'])
6586
->value('name');
6687

67-
$this->paper['database_name'] = $databaseName;
88+
$this->paper['database_name'] = $databaseName ?? 'Unknown';
6889

6990
// Buscar o membro específico para o projeto atual
7091
$member = Member::where('id_user', auth()->user()->id)
@@ -80,7 +101,7 @@ public function showPaper($paper, $criterias)
80101
$this->temp_selected_criterias = $this->selected_criterias;
81102

82103
//status selecionado com base no status salvo no banco de dados
83-
$this->selected_status = $this->paper['status_description'];
104+
$this->selected_status = $this->getPaperStatusDescription($this->paper['status_selection']);
84105

85106
// Carregar a nota existente
86107
$paperSelection = PapersSelection::where('id_paper', $this->paper['id_paper'])
@@ -200,24 +221,15 @@ public function saveSelectedCriterias()
200221
$this->selected_criterias = $this->temp_selected_criterias;
201222

202223
// Atualizar o status do paper
203-
204-
$criteria = Criteria::find(reset($addedCriterias));
205-
if ($criteria) {
224+
$criterias = Criteria::whereIn('id_criteria', $this->selected_criterias)->get();
225+
foreach ($criterias as $criteria) {
206226
$this->updatePaperStatus($criteria->type);
207227
}
208-
/*
209-
$criteria = null;
210-
if (!empty($addedCriterias)) {
211-
$criteria = Criteria::find(reset($addedCriterias));
212-
}
213-
214-
if ($criteria) {
215-
$this->updatePaperStatus($criteria->type);
216-
}*/
217228

218229
session()->flash('successMessage', 'Critérios salvos com sucesso');
219230
$this->dispatch('show-success');
220231
$this->dispatch('refreshPaperStatus');
232+
221233
}
222234

223235
// Método auxiliar para obter a descrição do status
@@ -284,6 +296,12 @@ private function updatePaperStatus($type)
284296
if ($member->level == 1) {
285297
Papers::where('id_paper', $id_paper)->update(['status_selection' => $new_status]);
286298
}
299+
// 🔥 Recarrega o paper atualizado
300+
$this->paper = Papers::where('id_paper', $id_paper)->first()->toArray();
301+
$this->paper['database_name'] = DB::table('data_base')
302+
->where('id_database', $this->paper['data_base'])
303+
->value('name') ?? '';
304+
287305
session()->forget('successMessage');
288306
session()->flash('successMessage', "Status updated successfully.");
289307
}

lang/en/pages/user-manager.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
return [
44
'Users' => 'Users',
5+
'description' => 'Here you can manage the users registered in the system.',
56
'Name' => 'Name',
67
'Role' => 'Permissions',
78
'super_user' => 'Super User Management',
@@ -13,7 +14,7 @@
1314
'Edit' => 'Edit',
1415
'Deactivate' => 'Deactivate',
1516
'Activate' => 'Activate',
16-
'Add_User' => '+ New User',
17+
'Add_User' => 'New User',
1718
'Yes' => 'Yes',
1819
'No' => 'No',
1920
'singup_user' => 'Sign Up new user',

lang/pt_BR/pages/user-manager.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
return[
44
'Users' => 'Usuários',
5+
'description'=>'Aqui você pode gerenciar os usuários cadastrados no sistema.',
56
'Name' => 'Nome',
67
'Role' => 'Permissões de Acesso',
78
'super_user' => 'Acesso Administrativo',
@@ -13,7 +14,7 @@
1314
'Edit' => 'Editar',
1415
'Deactivate' => 'Desativar',
1516
'Activate' => 'Ativar',
16-
'Add_User' => '+ Novo Usuário',
17+
'Add_User' => 'Novo Usuário',
1718
'Yes' => 'Sim',
1819
'No' => 'Não',
1920
'singup_user' => 'Cadastrar novo usuário',

resources/views/livewire/conducting/study-selection/paper-modal.blade.php

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
</div>
2424
<div class="col-4">
2525
<b>{{ __('project/conducting.study-selection.modal.database' )}}:</b>
26-
<p>{{ $paper['database_name'] }}</p>
26+
<p>{{ $paper['database_name'] ?? ($paper['data_base'] ? 'Loading...' : '') }}</p>
2727
</div>
2828
<div class="col-2">
2929
<a class="btn py-1 px-3 btn-outline-dark" data-toggle="tooltip" data-original-title="Doi"
@@ -49,8 +49,11 @@
4949
$paper['id_paper'], 'projectId' => $this->projectId], key($paper['id_paper']))
5050
</div>
5151

52+
{{-- @livewire('conducting.study-selection.paper-status', ['paperId' =>
53+
$paper['id_paper'],'projectId' => $this->projectId], key($paper['id_paper']))--}}
54+
5255
@livewire('conducting.study-selection.paper-status', ['paperId' =>
53-
$paper['id_paper'],'projectId' => $this->projectId], key($paper['id_paper']))
56+
$paper['id_paper'],'projectId' => $this->projectId], key('paper-status-'.$paper['id_paper']))
5457

5558
@livewire('conducting.study-selection.paper-abstract-keywords', ['paperId' =>
5659
$paper['id_paper'], 'projectId' => $this->projectId], key($paper['id_paper']))
@@ -153,7 +156,7 @@
153156
<div class="modal-dialog modal-dialog-centered" role="document">
154157
<div class="modal-content">
155158
<div class="modal-header">
156-
<h5 class="modal-title" id="successModalLabel">Success</h5>
159+
<h5 class="modal-title" id="successModalLabel">{{ __('project/conducting.study-selection.modal.success' )}}</h5>
157160
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
158161
</div>
159162
<div class="modal-body">

resources/views/pages/database-manager.blade.php

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
@extends("layouts.app")
1+
@extends('layouts.app')
22

3-
@section("content")
4-
@include("layouts.navbars.guest.navbar", ["title" => "pages.home.home"])
5-
<!-- Page header section for the database manager, displaying title and description -->
6-
<div class="container mt-7 mb-3">
3+
@section('content')
4+
<!-- Displays the database management table with options to add, edit, activate or deactivate -->
5+
@include('layouts.navbars.auth.topnav', ['title' => __("nav/side.user_manager")])
6+
<div class="container mt-4 mb-3">
77
<div class="page-header d-flex flex-column pt-4 pb-11 border-radius-lg">
88
<div
99
class="row justify-content-center rounded-3 py-4 bg-gradient-faded-dark opacity-8 "

0 commit comments

Comments
 (0)