コード例 #1
0
 public function store(Request $request)
 {
     $files_bool = false;
     $urls_bool = false;
     // Se obtienen todos los datos que nos manda el cliente
     $files = Input::file('archivos');
     $urls = Input::get('urls');
     $id = Input::get('id');
     $mapaconceptual = MapaConceptual::find($id);
     $instruccion = Input::get('instruccion');
     $actividad = Actividad::find($mapaconceptual->fk_idActividad);
     /*Se guarda la informacion del MapaConceptual */
     $mapaconceptual->instruccion = $instruccion;
     $mapaconceptual->save();
     /*Se verifica si la informacion de links o archivos viene vacío*/
     if (is_null($files) == false) {
         $files_bool = true;
     }
     if ($urls != "[]") {
         $urls_bool = true;
     }
     /*Se guardan los archivos que el cliente manda por FTP */
     if ($files_bool) {
         // Se suben los archivos al servidor ftp ...
         $mode = 'FTP_BINARY';
         $conexion = FTP::connection();
         $conexion->changeDir('materiales_mapaconceptual');
         $statusMD = $conexion->makeDir("material_" . $id);
         $statusCD = $conexion->changeDir("material_" . $id);
         //Hacemos el upload recorriendo cada uno de los archivos que nos manda el cliente
         foreach ($files as $file) {
             $fileRemote = $file->getClientOriginalName();
             $conexion->uploadFile($file, $fileRemote, $mode);
         }
         /*Se obtiene la lista de archivos que se ha almacenado en su carpeta de materiales*/
         $list_files = $conexion->getDirListing("", null);
         $PATHTML = "../../asset/mapaconceptual/" . $id . "/";
         foreach ($list_files as $url) {
             $material_mapaconceptual = new MaterialMapaConceptual();
             $material_mapaconceptual->fk_idMapaConceptual = $mapaconceptual->idMapaConceptual;
             $material_mapaconceptual->url = $PATHTML . $url;
             $material_mapaconceptual->tipo = 1;
             $material_mapaconceptual->icon = $this->getIconName(File::extension($url));
             $material_mapaconceptual->save();
         }
         $conexion->disconnect();
     }
     if ($urls_bool) {
         /*Se crean los modelos MaterialMapaConceptual para cada url añadida por el cliente*/
         $urls = json_decode($urls);
         foreach ($urls as $url2) {
             $material_mapaconceptual = new MaterialMapaConceptual();
             $material_mapaconceptual->fk_idMapaConceptual = $mapaconceptual->idMapaConceptual;
             $material_mapaconceptual->url = $url2;
             $material_mapaconceptual->tipo = 2;
             $material_mapaconceptual->save();
         }
     }
     $actividad->status = 1;
     $actividad->save();
 }