/**
  * Store a newly created resource in storage.
  *
  * @return Response
  */
 public function store()
 {
     $medico = new Medico();
     $data = Input::all();
     $foto = Input::file("foto");
     $rules = array('cedula' => 'unique:medicos,cedula');
     $validator = Validator::make(array('cedula' => $data['cedula']), $rules);
     if ($validator->fails()) {
         return Redirect::back()->withInput()->withErrors($validator);
     } else {
         $medico->cedula = $data['cedula'];
         $medico->primer_nombre = $data['primer_nombre'];
         $medico->segundo_nombre = $data['segundo_nombre'];
         $medico->apellido_paterno = $data['apellido_paterno'];
         $medico->apellido_materno = $data['apellido_materno'];
         $medico->sexo = $data['sexo'];
         $medico->id_especialidades_medicas = $data['id_especialidades_medicas'];
         $medico->celular = $data['celular'];
         $medico->telefono = $data['telefono'];
         $medico->extension = $data['extension'];
         $medico->email = $data['email'];
         $medico->id_nivel = $data['id_nivel'];
         $medico->id_ubicacion = $data['id_ubicacion'];
         $medico->observacion = $data['observaciones'];
         $medico->save();
         //Almacenamiento de la foto
         if (!is_null($foto)) {
             $id = Medico::all()->last()->id;
             //Se obtiene el id del ultimo medico registrado
             $extension = $foto->getClientOriginalExtension();
             //se obtiene la extension de la foto
             $name_foto = 'm_' . $id . '.' . $extension;
             //Se guarda el nombre del medico con prefijo m_ y el id del medico
             $medico = Medico::find($id);
             //Buscamos el medico guardado anteriormente
             $medico->foto = $name_foto;
             $medico->save();
             //Guardamos el nombre de la foto en la base de datos
             $foto->move("imgs", $name_foto);
             //Movemos la foto a la carpeta imgs
         }
         return Redirect::route('datos.medicos.index');
     }
 }
 public function postMedicos()
 {
     if (Request::ajax()) {
         $medico = new Medico();
         //variables recibidas por el script bootstrap-table
         $search = Input::get('search');
         //utilizada para buscar un médico en la base de datos
         $limit = Input::get('limit');
         $offset = Input::get('offset');
         //Si recibe la variable "search" vacía, obtiene todos los médicos, sino busca alguno en específico.
         //variable cantidad: sirve para conocer el total de registros y realizar la paginación de acuerdo al limit y offset.
         if (empty($search)) {
             $datos = $medico->datos_medico(0, 0, $limit, $offset);
             $cantidad = Medico::all()->count();
         } else {
             //Obtiene todos los datos de los médicos que se buscan en la función "datos_medico" del modelo "medico"
             $datos = $medico->datos_medico($search, 1, $limit, $offset);
             //Funcion que recibe cuantos registros se obtienen al realizar la búsqueda.
             $c = DB::select("SELECT count(id) as cantidad FROM medicos WHERE concat(`cedula`,' ',`primer_nombre`,' ',`apellido_paterno`) LIKE '%" . $search . "%'");
             $cantidad = $c[0]->cantidad;
         }
         $n = 1;
         $comilla = "'";
         $data = array();
         //ciclo para obtener todos los datos del médico y guardarlos en la variable "data"
         foreach ($datos as $medicos) {
             $img = '<img src=' . $comilla . URL::to('imgs/' . $medicos->foto) . $comilla . ' style=' . $comilla . 'width:50px;height:50px;' . $comilla . '>';
             if (GrupoUsuario::where('id', Auth::user()->id_grupo_usuario)->first()->grupo_usuario != "RECEPCION") {
                 $url = '<a href=' . $comilla . route('datos.medicos.edit', $medicos->id) . $comilla . ' class=' . $comilla . 'btn btn-success btn-sm' . $comilla . ' data-toggle=' . $comilla . 'tooltip' . $comilla . '  title=' . $comilla . 'Editar M&eacute;dico' . $comilla . '><span class=' . $comilla . 'glyphicon glyphicon-pencil' . $comilla . '></span> Editar </a> <a href=' . $comilla . '#Show' . $comilla . ' id=' . $comilla . '' . $medicos->id . '' . $comilla . ' onclick=' . $comilla . 'show(' . $medicos->id . ');' . $comilla . '  class=' . $comilla . 'btn btn-info btn-sm' . $comilla . ' data-toggle=' . $comilla . 'modal' . $comilla . '  title=' . $comilla . 'Ver Médico' . $comilla . ' style=' . $comilla . 'margin:3px 0px;' . $comilla . '><span class=' . $comilla . 'glyphicon glyphicon-eye-open' . $comilla . '></span> Ver </a> <a href=' . $comilla . '#' . $comilla . ' data-id=' . $comilla . '' . $medicos->id . '' . $comilla . ' onclick=' . $comilla . 'eliminar(' . $medicos->id . ');' . $comilla . ' class=' . $comilla . 'btn btn-danger btn-delete btn-sm' . $comilla . ' data-toggle=' . $comilla . 'tooltip' . $comilla . ' title=' . $comilla . 'Eliminar' . $comilla . '><span class=' . $comilla . 'glyphicon glyphicon-remove' . $comilla . '></span> Eliminar </a>';
             } else {
                 $url = '<a href=' . $comilla . route('datos.medicos.edit', $medicos->id) . $comilla . ' class=' . $comilla . 'btn btn-success btn-sm' . $comilla . ' data-toggle=' . $comilla . 'tooltip' . $comilla . '  title=' . $comilla . 'Cargar M&eacute;dico' . $comilla . '><span class=' . $comilla . 'glyphicon glyphicon-search' . $comilla . '></span> Cargar </a> <a href=' . $comilla . '#Show' . $comilla . ' id=' . $comilla . '' . $medicos->id . '' . $comilla . ' onclick=' . $comilla . 'show(' . $medicos->id . ');' . $comilla . '  class=' . $comilla . 'btn btn-info btn-sm' . $comilla . ' data-toggle=' . $comilla . 'modal' . $comilla . '  title=' . $comilla . 'Ver Médico' . $comilla . ' style=' . $comilla . 'margin:3px 0px;' . $comilla . '><span class=' . $comilla . 'glyphicon glyphicon-eye-open' . $comilla . '></span> Ver </a>';
             }
             $data[] = array('num' => $n, 'foto' => $img, 'cedula' => $medicos->cedula, 'name' => $medicos->primer_nombre . ' ' . $medicos->segundo_nombre . ' ' . $medicos->apellido_paterno . ' ' . $medicos->apellido_materno, 'ext' => $medicos->extension, 'tel' => $medicos->telefono, 'cel' => $medicos->celular, 'esp' => $medicos->especialidad, 'url' => $url);
             $n++;
         }
         return Response::json(array('total' => $cantidad, 'rows' => $data));
     } else {
         App::abort(403);
     }
 }
 public function listarMedico()
 {
     $medicostodo = Medico::all();
     return View::make('medico.listar')->with('medicostodo', $medicostodo);
 }