File: /home/cursos.ril.es/app/Http/Controllers/ListaInteresadosController.php
<?php
namespace App\Http\Controllers;
use App\Cursos;
use App\ListaInteresados;
use App\Plantillas;
use App\User;
use Illuminate\Http\Request;
use App\Http\Requests;
use Illuminate\Support\Facades\DB;
class ListaInteresadosController extends Controller
{
/**
* Muestra la vista de Listado de Interesados
*
* @param $id del curso
* @return mixed
*/
public function show($id){
$curso = Cursos::find($id);
$alumnos = User::all();
$listaInteresados = ListaInteresados::where('cursos_id', $id)->get();
$plantillas = Plantillas::all();
$dts = [];
foreach($listaInteresados as $listint){
$user = User::find($listint->users_id);
array_push($dts, array('nombreApellidos' => $user->name . " " . $user->apellidos, 'email' => $user->email, 'puede' => $listint->puede, 'intentos' => $listint->intentos, 'ids' => $id . "|" . $user->id));
}
return view('admin.interesados')->with('listaInteresados', $dts)->with('curso', $curso)->with('alumnos', $alumnos)->with('plantillas', $plantillas);
}
/**
* Inserta un Alumno a la lista de interesados de ese curso
*
* @param $idCurso del curso
* @param $idAlumno del alumno
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
*/
public function insertarAlumno($idCurso, $idAlumno){
DB::table('lista_interesados')->insert(
array('cursos_id' => $idCurso, 'users_id' => $idAlumno, 'intentos' => 0)
);
return redirect('/admin/listainteresados/' . $idCurso);
}
/**
* Quita el Alumno de la lista de interesados
*
* @param $ids id del curso | id del alumno
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
*/
public function quitarAlumno($ids){
$dts = explode("|", $ids);
$interesado = ListaInteresados::where('cursos_id', $dts[0])->where('users_id', $dts[1])->get();
$interesado[0]->delete();
return redirect('/admin/listainteresados/' . $dts[0]);
}
/**
* Cambia el estado de Si a No y viceversa cuando le das al botón
*
* @param $puede valor actual
* @param $ids id del curso | id del alumno
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
*/
public function getPuede($puede, $ids){
$dts = explode("|", $ids);
if($puede==0){ $r=1; }else{ $r=0; }
DB::table('lista_interesados')->where('cursos_id', $dts[0])->where('users_id', $dts[1])->update(array('puede' => $r));
return redirect('/admin/listainteresados/' . $dts[0]);
}
/**
* Pasar todos los alumnos que pueden al curso
*
* @param $idCurso del curso
* @return \Illuminate\Http\RedirectResponse|\Illuminate\Routing\Redirector
*/
public function pasarAlumnos($idCurso){
$alumnos = DB::table('users')
->join('lista_interesados', 'users.id', '=', 'lista_interesados.users_id')
->select('users.*', 'lista_interesados.puede', 'lista_interesados.cursos_id')
->where('lista_interesados.puede', 1)
->where('lista_interesados.cursos_id', $idCurso)
->get();
foreach($alumnos as $alumno){
AdminAlumnosCursosController::insertAlumnoCurso($idCurso, $alumno->id);
$interesado = ListaInteresados::where('cursos_id', $idCurso)->where('users_id', $alumno->id)->get();
$interesado[0]->delete();
}
return redirect('/admin/listainteresados/' . $idCurso);
}
}