Unverified Commit 2e831630 authored by Antônio Durval's avatar Antônio Durval Committed by GitHub
Browse files

Merge pull request #673 from S-Nathalia/master

Crianção da funcionalidade de cursos para proponentes
parents d6095b30 d0d91056
...@@ -11,3 +11,4 @@ Homestead.yaml ...@@ -11,3 +11,4 @@ Homestead.yaml
npm-debug.log npm-debug.log
yarn-error.log yarn-error.log
submeta.code-workspace submeta.code-workspace
composer.lock
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Curso extends Model
{
protected $fillable = [
'nome',
];
public function proponentes()
{
return $this->belongsToMany('App\Proponente', 'proponentes_cursos', 'curso_id');
}
}
...@@ -13,6 +13,7 @@ use App\User; ...@@ -13,6 +13,7 @@ use App\User;
use App\Participante; use App\Participante;
use App\Proponente; use App\Proponente;
use App\Rules\UrlValidacao; use App\Rules\UrlValidacao;
use App\Curso;
class RegisterController extends Controller class RegisterController extends Controller
{ {
...@@ -91,7 +92,7 @@ class RegisterController extends Controller ...@@ -91,7 +92,7 @@ class RegisterController extends Controller
*/ */
protected function create(array $data) protected function create(array $data)
{ {
//dd($data); // dd($data);
$user = new User(); $user = new User();
$user->name = $data['name']; $user->name = $data['name'];
$user->email = $data['email']; $user->email = $data['email'];
...@@ -134,8 +135,9 @@ class RegisterController extends Controller ...@@ -134,8 +135,9 @@ class RegisterController extends Controller
$proponente->nivel = $data['nivel']; $proponente->nivel = $data['nivel'];
} }
$proponente->linkLattes = $data['linkLattes']; $proponente->linkLattes = $data['linkLattes'];
$user->proponentes()->save($proponente); $user->proponentes()->save($proponente);
$proponente->cursos()->sync($data['curso']);
} }
return $user; return $user;
...@@ -143,6 +145,7 @@ class RegisterController extends Controller ...@@ -143,6 +145,7 @@ class RegisterController extends Controller
public function showRegistrationForm() public function showRegistrationForm()
{ {
return view('auth.register'); $cursos = Curso::orderBy('nome')->get();
return view('auth.register', compact('cursos'));
} }
} }
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class CursoController extends Controller
{
//
}
...@@ -17,12 +17,13 @@ use App\Notificacao; ...@@ -17,12 +17,13 @@ use App\Notificacao;
use App\Participante; use App\Participante;
use Carbon\Carbon; use Carbon\Carbon;
use Illuminate\Support\Facades\Mail; use Illuminate\Support\Facades\Mail;
use App\Curso;
class ProponenteController extends Controller class ProponenteController extends Controller
{ {
public function index(){ public function index(){
$cursos = Curso::orderBy('nome')->get();
return view('proponente.index'); return view('proponente.index', compact('cursos'));
} }
public function create(){ public function create(){
...@@ -71,6 +72,7 @@ class ProponenteController extends Controller ...@@ -71,6 +72,7 @@ class ProponenteController extends Controller
$proponente->bolsistaProdutividade = $request->bolsistaProdutividade; $proponente->bolsistaProdutividade = $request->bolsistaProdutividade;
$proponente->nivel = $request->nivel; $proponente->nivel = $request->nivel;
$proponente->linkLattes = $request->linkLattes; $proponente->linkLattes = $request->linkLattes;
// dd($request);
$proponente->user_id = Auth::user()->id; $proponente->user_id = Auth::user()->id;
$proponente->save(); $proponente->save();
...@@ -82,6 +84,7 @@ class ProponenteController extends Controller ...@@ -82,6 +84,7 @@ class ProponenteController extends Controller
return redirect( route('home'))->with(['mensagem' => 'Cadastro feito com sucesso! Você já pode criar projetos']); return redirect( route('home'))->with(['mensagem' => 'Cadastro feito com sucesso! Você já pode criar projetos']);
} }
}else{ }else{
// dd($request);
return redirect( route('proponente.create'))->with(['mensagem' => 'Você já é proponente!']); return redirect( route('proponente.create'))->with(['mensagem' => 'Você já é proponente!']);
} }
......
...@@ -19,45 +19,45 @@ use Carbon\Carbon; ...@@ -19,45 +19,45 @@ use Carbon\Carbon;
use Illuminate\Validation\Rule; use Illuminate\Validation\Rule;
use Illuminate\Support\Facades\Hash; use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Facades\Log; use Illuminate\Support\Facades\Log;
use App\Curso;
class UserController extends Controller class UserController extends Controller
{ {
public function index() public function index()
{ {
$eventos = Evento::orderBy('created_at', 'desc')->get(); $eventos = Evento::orderBy('created_at', 'desc')->get();
dd($eventos); if (Auth::check()) {
if(Auth::check()){ Log::debug('UserController check');
Log::debug('UserController check'); return redirect()->route('home');
return redirect()->route('home'); }
} Log::debug('UserController index');
Log::debug('UserController index'); $hoje = Carbon::today('America/Recife');
$hoje = Carbon::today('America/Recife'); $hoje = $hoje->toDateString();
$hoje = $hoje->toDateString(); return view('index', ['eventos' => $eventos, 'hoje' => $hoje]);
return view('index', ['eventos' => $eventos, 'hoje' => $hoje]);
//return view('auth.login');
} }
public function inicial() public function inicial()
{ {
$eventos = Evento::orderBy('created_at', 'desc')->get(); $eventos = Evento::orderBy('created_at', 'desc')->get();
$hoje = Carbon::today('America/Recife'); $hoje = Carbon::today('America/Recife');
$hoje = $hoje->toDateString(); $hoje = $hoje->toDateString();
return view('index', ['eventos' => $eventos, 'hoje' => $hoje]); return view('index', ['eventos' => $eventos, 'hoje' => $hoje]);
//return view('auth.login');
} }
function perfil(){ function perfil()
{
$user = User::find(Auth::user()->id); $user = User::find(Auth::user()->id);
return view('user.perfilUser',['user'=>$user]); return view('user.perfilUser', ['user' => $user]);
} }
function editarPerfil(Request $request){ function editarPerfil(Request $request)
{
$id = Auth()->user()->id; $id = Auth()->user()->id;
$user = User::find($id); $user = User::find($id);
if ($request->tipo != "proponente") { if ($request->tipo != "proponente") {
$validated = $request->validate([ $validated = $request->validate([
'name' => ['required', 'string', 'max:255'], 'name' => ['required', 'string', 'max:255'],
'instituicao' => ['required_if:instituicaoSelect,Outra', 'max:255'], 'instituicao' => ['required_if:instituicaoSelect,Outra', 'max:255'],
...@@ -87,10 +87,10 @@ class UserController extends Controller ...@@ -87,10 +87,10 @@ class UserController extends Controller
'nivel' => ['required_if:bolsistaProdutividade,sim'], 'nivel' => ['required_if:bolsistaProdutividade,sim'],
// 'nivel' => [(isset($request['cargo']) && $request['cargo'] !== 'Estudante') || (isset($request['cargo']) && $request['cargo'] === 'Estudante' && isset($request['vinculo']) && $request['vinculo'] === 'Pós-doutorando') ? 'required':''], // 'nivel' => [(isset($request['cargo']) && $request['cargo'] !== 'Estudante') || (isset($request['cargo']) && $request['cargo'] === 'Estudante' && isset($request['vinculo']) && $request['vinculo'] === 'Pós-doutorando') ? 'required':''],
'linkLattes' => ['required_with:titulacaoMaxima,anoTitulacao,areaFormacao,bolsistaProdutividade'], 'linkLattes' => ['required_with:titulacaoMaxima,anoTitulacao,areaFormacao,bolsistaProdutividade'],
'linkLattes' => [(isset($request['cargo']) && $request['cargo'] !== 'Estudante') || (isset($request['cargo']) && $request['cargo'] === 'Estudante' && isset($request['vinculo']) && $request['vinculo'] === 'Pós-doutorando') ? 'required':''], 'linkLattes' => [(isset($request['cargo']) && $request['cargo'] !== 'Estudante') || (isset($request['cargo']) && $request['cargo'] === 'Estudante' && isset($request['vinculo']) && $request['vinculo'] === 'Pós-doutorando') ? 'required' : ''],
'linkLattes' => [(isset($request['cargo']) && $request['cargo'] !== 'Estudante') || (isset($request['cargo']) && $request['cargo'] === 'Estudante' && isset($request['vinculo']) && $request['vinculo'] === 'Pós-doutorando') ? 'link_lattes':''], 'linkLattes' => [(isset($request['cargo']) && $request['cargo'] !== 'Estudante') || (isset($request['cargo']) && $request['cargo'] === 'Estudante' && isset($request['vinculo']) && $request['vinculo'] === 'Pós-doutorando') ? 'link_lattes' : ''],
]); ]);
} }
if ($request->alterarSenhaCheckBox != null) { if ($request->alterarSenhaCheckBox != null) {
...@@ -101,8 +101,8 @@ class UserController extends Controller ...@@ -101,8 +101,8 @@ class UserController extends Controller
if (!($request->nova_senha === $request->confirmar_senha)) { if (!($request->nova_senha === $request->confirmar_senha)) {
return redirect()->back()->withErrors(['nova_senha' => 'Senhas diferentes']); return redirect()->back()->withErrors(['nova_senha' => 'Senhas diferentes']);
} }
} }
if($user->avaliadors != null && $request->area != null && $user->tipo == "avaliador"){ if($user->avaliadors != null && $request->area != null && $user->tipo == "avaliador"){
$avaliador = Avaliador::where('user_id', '=', $id)->first(); $avaliador = Avaliador::where('user_id', '=', $id)->first();
$avaliador->user_id = $user->id; $avaliador->user_id = $user->id;
...@@ -110,6 +110,7 @@ class UserController extends Controller ...@@ -110,6 +110,7 @@ class UserController extends Controller
$avaliador->naturezas()->sync($request->natureza); $avaliador->naturezas()->sync($request->natureza);
$avaliador->update(); $avaliador->update();
} }
switch ($request->tipo) { switch ($request->tipo) {
...@@ -122,9 +123,9 @@ class UserController extends Controller ...@@ -122,9 +123,9 @@ class UserController extends Controller
$avaliador = Avaliador::where('user_id', '=', $id)->first(); $avaliador = Avaliador::where('user_id', '=', $id)->first();
$avaliador->user_id = $user->id; $avaliador->user_id = $user->id;
$avaliador->area_id = $request->area; $avaliador->area_id = $request->area;
if($user->usuarioTemp == true){ if ($user->usuarioTemp == true) {
$user->usuarioTemp = false; $user->usuarioTemp = false;
} }
$avaliador->update(); $avaliador->update();
break; break;
case "proponente": case "proponente":
...@@ -150,6 +151,7 @@ class UserController extends Controller ...@@ -150,6 +151,7 @@ class UserController extends Controller
$proponente->linkLattes = $request->linkLattes; $proponente->linkLattes = $request->linkLattes;
$proponente->user_id = $user->id; $proponente->user_id = $user->id;
$proponente->cursos()->sync($request->curso);
$proponente->update(); $proponente->update();
break; break;
case "participante": case "participante":
...@@ -157,7 +159,7 @@ class UserController extends Controller ...@@ -157,7 +159,7 @@ class UserController extends Controller
//$participante = $user->participantes->where('user_id', Auth::user()->id)->first(); //$participante = $user->participantes->where('user_id', Auth::user()->id)->first();
$participante->user_id = $user->id; $participante->user_id = $user->id;
//dd($participante); //dd($participante);
if($user->usuarioTemp == true){ if ($user->usuarioTemp == true) {
$user->usuarioTemp = false; $user->usuarioTemp = false;
} }
...@@ -168,7 +170,7 @@ class UserController extends Controller ...@@ -168,7 +170,7 @@ class UserController extends Controller
$user->name = $request->name; $user->name = $request->name;
$user->tipo = $request->tipo; $user->tipo = $request->tipo;
// $user->email = $request->email; // $user->email = $request->email;
$user->cpf = $request->cpf; $user->cpf = $request->cpf;
$user->celular = $request->celular; $user->celular = $request->celular;
if ($request->instituicao != null) { if ($request->instituicao != null) {
...@@ -184,24 +186,26 @@ class UserController extends Controller ...@@ -184,24 +186,26 @@ class UserController extends Controller
$user->update(); $user->update();
return redirect( route('user.perfil') )->with(['mensagem' => 'Dados atualizados com sucesso.']); return redirect(route('user.perfil'))->with(['mensagem' => 'Dados atualizados com sucesso.']);
} }
public function meusTrabalhos(){ public function meusTrabalhos()
{
//$trabalhos = Trabalho::where('autorId', Auth::user()->id)->get(); //$trabalhos = Trabalho::where('autorId', Auth::user()->id)->get();
$proponente = Proponente::with('user')->where('user_id', Auth::user()->id)->first(); $proponente = Proponente::with('user')->where('user_id', Auth::user()->id)->first();
$trabalhos = $proponente->trabalhos; $trabalhos = $proponente->trabalhos;
//dd($trabalhos); //dd($trabalhos);
return view('user.meusTrabalhos',[ return view('user.meusTrabalhos', [
'trabalhos' => $trabalhos, 'trabalhos' => $trabalhos,
'agora' => now(), 'agora' => now(),
]); ]);
} }
public function minhaConta() { public function minhaConta()
{
$id = Auth::user()->id; $id = Auth::user()->id;
$user = User::find($id); $user = User::find($id);
...@@ -209,13 +213,16 @@ class UserController extends Controller ...@@ -209,13 +213,16 @@ class UserController extends Controller
$avaliador = Avaliador::where('user_id', '=', $id)->first(); $avaliador = Avaliador::where('user_id', '=', $id)->first();
$proponente = Proponente::where('user_id', '=', $id)->first(); $proponente = Proponente::where('user_id', '=', $id)->first();
$participante = Participante::where('user_id', '=', $id)->first(); $participante = Participante::where('user_id', '=', $id)->first();
$naturezas = Natureza::orderBy('nome')->get(); $naturezas = Natureza::orderBy('nome')->get();
$cursos = Curso::orderBy('nome')->get();
return view('user.perfilUser')->with(['user' => $user, return view('user.perfilUser')->with(['user' => $user,
'adminResp' => $adminResp, 'adminResp' => $adminResp,
'avaliador' => $avaliador, 'avaliador' => $avaliador,
'proponente' => $proponente, 'proponente' => $proponente,
'participante' => $participante, 'participante' => $participante,
'cursos' => $cursos,
'naturezas' => $naturezas]); 'naturezas' => $naturezas]);
} }
} }
...@@ -14,4 +14,9 @@ class Proponente extends Model ...@@ -14,4 +14,9 @@ class Proponente extends Model
public function trabalhos(){ public function trabalhos(){
return $this->hasMany('App\Trabalho'); return $this->hasMany('App\Trabalho');
} }
public function cursos()
{
return $this->belongsToMany('App\Curso', 'proponentes_cursos', 'proponente_id');
}
} }
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateCursosTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('cursos', function (Blueprint $table) {
$table->bigIncrements('id');
$table->string('nome');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('cursos');
}
}
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateProponentesCursosTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('proponentes_cursos', function (Blueprint $table) {
$table->bigIncrements('id');
$table->integer('curso_id');
$table->foreign('curso_id')->references('id')->on('cursos');
$table->integer('proponente_id');
$table->foreign('proponente_id')->references('id')->on('proponentes');
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('proponentes_cursos');
}
}
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment