public function edit($id)
 {
     $cursadas = AsignaturaCursada::findOrFail($id);
     $cursos = Curso::lists('nombre', 'id');
     $estudiantes = Estudiante::lists('nombres', 'id');
     return view('Administrador.AsignaturaCursadaCrud.editarAsignaturasCursadas', compact('asignaturascursadas', 'cursos', 'estudiantes'));
 }
 public function destroy($id)
 {
     $estudiantes = Estudiante::find($id);
     $estudiantes->delete();
     Session::flash('message', 'El estudiante ' . $estudiantes->nombres . '  de rut ' . $estudiantes->rut . ' fue eliminado');
     return redirect()->route('Administrador.estudiante.index');
 }
 public function store(Request $request)
 {
     //dd('jajaja');
     $file = $request->file('file');
     $file = $request->file('file');
     //obtenemos el campo file obtenido por el formulario
     if (is_null($request->file('file'))) {
         Session::flash('message', 'Seleccion el archivo');
         return redirect()->back();
     }
     //obtenemos el campo file obtenido por el formulario
     $nombre = $file->getClientOriginalName();
     //indicamos que queremos guardar un nuevo archivo en el disco local
     \Storage::disk('local')->put($nombre, \File::get($file));
     $carreras = $request->get('carreras');
     $falla = false;
     \Excel::load('/storage/public/files/' . $nombre, function ($archivo) use(&$falla) {
         $result = $archivo->get();
         //leer todas las filas del archivo
         foreach ($result as $key => $value) {
             $carreras = Carrera::whereNombre($value->carrera_id)->pluck('id');
             if (is_null($carreras)) {
                 // El campus no existe, deberia hacer algo para mitigar esto, o retornarlo al usuario ...
             }
             $var = new Estudiante();
             $datos = ['rut' => $value->rut, 'nombres' => $value->nombres, 'apellidos' => $value->apellidos, 'email' => $value->email, 'carrera_id' => $carreras];
             $validator = Validator::make($datos, Estudiante::storeRules());
             if ($validator->fails()) {
                 Session::flash('message', 'Los Estudiantes ya existen o el archivo ingresado no es valido');
                 $falla = true;
             } else {
                 $var->fill($datos);
                 $var->save();
             }
         }
     })->get();
     if ($falla) {
         // Fallo la validacion de algun campus, retornar al index con mensaje
         return redirect()->route('Encargado.estudiantes.index');
     }
     \Storage::delete($nombre);
     Session::flash('message', 'Los Estudiantes fueron agregados exitosamente!');
     return redirect()->route('Encargado.estudiantes.index');
 }
 public function create()
 {
     $cursos = Curso::lists('seccion', 'id');
     $estudiantes = Estudiante::lists('nombres', 'id');
     return view('Administrador.AsignaturaCrud.crearAsignatura')->with('cursos', $cursos)->with('estudiantes', $estudiantes);
     //Trying to get property of non-object a veces me sale
     //se que viene de $asig->departamentos->nombre, pero no se que mierda!!!
     // y era porque tenia mala la funcion departamentos en el modelo de asignaturas
     //me faltaba el 'departamento_id', 'id'
     //sInvalid argument supplied for foreach()
 }
 public function show($id)
 {
     $estudiantes = Estudiante::find($id);
     //dd($Campus);
     if ($estudiantes) {
         $data = array(array('rut', 'nombres', 'apellidos', 'email', 'departamento_id'), array($estudiantes->rut, $estudiantes->nombres, $estudiantes->apellidos, $estudiantes->email, $estudiantes->carreras->nombres));
         Excel::create('Estudiantes' . $estudiantes->nombres, function ($excel) use($data) {
             $excel->sheet('Sheetname', function ($sheet) use($data) {
                 $sheet->fromArray($data);
             });
         })->download('csv');
     } else {
         abort('404');
     }
 }