Пример #1
0
 public function showVagas()
 {
     $vagas = Vaga::all();
     $vaga = Vaga::all()->isEmpty();
     $nivel = Nivel::lists('nome', 'id');
     return view("gestorEmpregador")->with(array('vagas' => $vagas, 'nivel' => $nivel, 'vaga' => $vaga));
 }
Пример #2
0
 /**
  * Display a listing of the resource.
  *
  * @return Response
  */
 public function index()
 {
     $causas = Vaga::all();
     $categorias = Vaga::getCategoriasComVagas();
     $cidades = Vaga::getCidadesComVagas();
     $ongs = Vaga::getOngsComVagas();
     $cidadesArray = array(null => trans('global.lbl_city'));
     foreach ($cidades as $cidade) {
         $cidadesArray[$cidade->id] = $cidade->nome;
     }
     $cidades = $cidadesArray;
     //Montando array de ongs para select
     $ongsArray = array(null => 'Ong');
     foreach ($ongs as $ong) {
         $ongsArray[$ong->id] = $ong->nome;
     }
     $ongs = $ongsArray;
     //Montando array de categorias para select
     $categoriasArray = array(null => trans('global.lbl_category'));
     foreach ($categorias as $categoria) {
         $categoriasArray[$categoria->id] = $categoria->nomeTraduzido;
     }
     $categorias = $categoriasArray;
     return view('cuidar.index', compact('causas', 'categorias', 'cidades', 'ongs'));
 }
Пример #3
0
 /**
  * Show the application dashboard to the user.
  *
  * @return Response
  */
 public function index()
 {
     if (Auth::user()->estudante()->first()) {
         $estudante = Auth::user()->estudante()->first();
         $d = true;
         $vista = 'estudante';
         return view('gestorCurriculum', ['d' => $d, 'est' => $estudante, 'vista' => $vista]);
     }
     $idiomas = lingua::lists('idioma', 'id');
     $_SESSION['estudante'] = true;
     $vagas = Vaga::all();
     $cursos = \App\curso::all();
     $nivel = Nivel::lists('nome', 'id');
     $vaga = Vaga::all()->isEmpty();
     $fillable = Auth::user()->get();
     $fillable2 = Auth::user()->tipo;
     //$emp=Auth::user()->empregador()->first;
     $vista = 'estudanteGravar';
     if ($fillable2 == 'estudante') {
         return view('gestorCurriculum', ['vista' => $vista]);
     } elseif ($fillable2 == 'empregador') {
         $vista = 'empregador';
         $vagas = Vaga::all();
         return view('gestorEmpregador', ['vagas' => $vagas, 'idiomas' => $idiomas, 'nivel' => $nivel, 'cursos' => $cursos, 'vista' => $vista]);
     } else {
         $idiomas = Idioma::lists('lingua', 'id');
         $vaga = Vaga::all();
         return view('gestorNucleo', ["vaga" => $vaga, "idiomas" => $idiomas]);
     }
     /*  if($fillable.isEmpty()){
                   return view('gestorEmpregador',['vaga'=>$vaga]);
     
               }else
                   return view('gestorCurriculum');*/
     //return view('home');
 }
Пример #4
0
 /**
  * Metodo que retorna todas as Categorias atualmente usadas pelas Vagas.
  * @return Collection
  */
 public static function getCategoriasComVagas()
 {
     //Obtendo a lista de todas as ongs com cidades.
     $categorias = Vaga::with('categoria')->whereNotNull('categoria_vaga_id')->get();
     //se a Collection nao estiver vazia, entao listar categorias
     if (count($categorias)) {
         $categorias = array_unique($categorias->lists('categoria'));
     }
     return $categorias;
 }
Пример #5
0
 /**
  * Metodo para filtrar Vagas por POST,
  * @param categoriaOng  -> id da categoria a ser usada no filtro
  * @param nome          -> nome a ser usado no filtro
  * @param cidade_id      -> id da cidade a ser usado no filtro
  */
 public function postFiltrarvagas()
 {
     $categoriaVaga = Request::get('filtro_categoria');
     $cidade_id = Request::get('filtro_cidade');
     $filtro_ong = Request::get('filtro_ong');
     $categorias = Vaga::getCategoriasComVagas();
     $cidades = Vaga::getCidadesComVagas();
     $ongs = Vaga::getOngsComVagas();
     $causas = new Collection();
     //Montando array de ongs para select
     $ongsArray = array(null => 'Projeto');
     foreach ($ongs as $ong) {
         $ongsArray[$ong->id] = $ong->nome;
     }
     $ongs = $ongsArray;
     //Montando array de cidades para select
     $cidadesArray = array(null => 'Cidade');
     foreach ($cidades as $cidade) {
         $cidadesArray[$cidade->id] = $cidade->nome;
     }
     $cidades = $cidadesArray;
     //Montando array de categorias para select
     $categoriasArray = array(null => 'Categoria');
     foreach ($categorias as $categoria) {
         $categoriasArray[$categoria->id] = $categoria->nomeTraduzido;
     }
     $categorias = $categoriasArray;
     //Filtrando resultados pelas categorias
     if ($categoriaVaga && $categoriaVaga != "null") {
         $vagasByCategoria = CategoriaVaga::findOrFail($categoriaVaga)->vagas;
         $causas = $causas->merge($vagasByCategoria);
     }
     //Filtrando resultados por Cidade
     if ($cidade_id) {
         $vagasByCidade = Cidade::findOrFail($cidade_id)->vagas;
         //Se ja tiver filtrado, entao interseccionar os
         //resultados para maior relevancia
         if (count($causas)) {
             $causas = $causas->intersect($vagasByCidade);
         } else {
             $causas = $causas->merge($vagasByCidade);
         }
     }
     if ($filtro_ong) {
         $causasByOng = Ong::findOrFail($filtro_ong)->vagas;
         if (count($causas)) {
             $causas = $causas->intersect($causasByOng);
         } else {
             $causas = $causas->merge($causasByOng);
         }
     }
     if (!$cidade_id && (!$categoriaVaga || $categoriaVaga == "null") && !$filtro_ong) {
         $causas = Vaga::all();
     }
     return view('cuidar.vagas', compact('causas', 'categorias', 'cidades', 'ongs'));
 }
Пример #6
0
 /**
  * Remove o Perfil se o Perfil ja for voluntario na Vaga de $vagaId,
  * @param  [type] $id      [description]
  * @param  [type] $vagaId [description]
  */
 public function getUnvoluntariarse($vagaId)
 {
     $User = Auth::user();
     $Candidato = $User->perfil;
     $vaga = Vaga::findOrFail($vagaId);
     //Se ja for voluntario, unsubscribe
     if ($vaga->voluntarios->find($Candidato->id)) {
         $vaga->voluntarios()->detach($Candidato->id);
         $vaga->push();
     }
     $voluntarios = $vaga->voluntarios;
     return view('vaga.show', compact('vaga', 'voluntarios', 'Candidato'));
 }
Пример #7
0
 /**
  * Register any other events for your application.
  *
  * @param  \Illuminate\Contracts\Events\Dispatcher  $events
  * @return void
  */
 public function boot(DispatcherContract $events)
 {
     parent::boot($events);
     Ong::observe(new GenericObserver());
     Vaga::observe(new GenericObserver());
 }