예제 #1
0
        public ActionResult Create(Sitio sit, IList<HttpPostedFileBase> imagenes, IList<HttpPostedFileBase> videos, string Tipo_formulario)
        {
            string fileName = "", path = "";
            IList<string> fotografias = new List<string>();
            IList<string> videosSitio = new List<string>();
            System.IO.Directory.CreateDirectory(Server.MapPath("~/Images/Uploads/" + sit.Nombre));
            System.IO.Directory.CreateDirectory(Server.MapPath("~/Videos/Uploads/" + sit.Nombre));
            // Verify that the user selected a file
            foreach (HttpPostedFileBase aux in imagenes)    //para cada imagen
            {
                if (aux != null && aux.ContentLength > 0)
                {
                    // extract only the fielname
                    fileName = Path.GetFileName(aux.FileName);
                    //Directory.CreateDirectory("~/Images/Uploads/" + sit.Nombre);
                    // store the file inside ~/App_Data/uploads folder
                    path = Path.Combine(Server.MapPath("~/Images/Uploads/" + sit.Nombre), fileName);
                    //string pathDef = path.Replace(@"\\", @"\");
                    aux.SaveAs(path);
                    fotografias.Add("/Images/Uploads/" + sit.Nombre + "/" + fileName);
                }
            }
            foreach (HttpPostedFileBase aux2 in videos)    //para cada imagen
            {
                if (aux2 != null && aux2.ContentLength > 0)
                {
                    // extract only the fielname
                    fileName = Path.GetFileName(aux2.FileName);
                    //Directory.CreateDirectory("~/Images/Uploads/" + sit.Nombre);
                    // store the file inside ~/App_Data/uploads folder
                    path = Path.Combine(Server.MapPath("~/Videos/Uploads/" + sit.Nombre), fileName);
                    //string pathDef = path.Replace(@"\\", @"\");
                    aux2.SaveAs(path);
                    videosSitio.Add("/Videos/Uploads/" + sit.Nombre + "/" + fileName);
                }
            }

            try
            {
                //fileName = "/Images/Uploads/"+ sit.Nombre + "/" + fileName;
                if (sit.Localizacion == null)
                    sit.Localizacion = "";
                SitioCEN cen = new SitioCEN();
                DateTime fechaActual = DateTime.Today;
                TravelnookGenNHibernate.Enumerated.Travelnook.TipoSitioEnum tipoaux= new TravelnookGenNHibernate.Enumerated.Travelnook.TipoSitioEnum();
                tipoaux = (TravelnookGenNHibernate.Enumerated.Travelnook.TipoSitioEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoSitioEnum),Tipo_formulario);

                IList<TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum> actividadesaux = new List<TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum>();

                if (sit.camping == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "camping"));
                if (sit.deportes == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "deportes"));
                if (sit.deportes_acuaticos == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "deportes_acuaticos"));
                if (sit.gastronomia == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "gastronomia"));
                if (sit.ludicas == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "ludicas"));
                if (sit.ocio_nocturno == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "ocio_nocturno"));
                if (sit.senderismo == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "senderismo"));
                if (sit.culturales == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "culturales"));

                cen.CrearSitio(sit.Nombre, sit.Provincia, sit.Descripcion, 1, fotografias, sit.NombreUsuario, videosSitio, sit.Localizacion, fechaActual, 1, sit.Puntuacion, tipoaux, actividadesaux);

                return RedirectToAction("Details", new { id = sit.Nombre });
            }
            catch
            {
                return View();
            }
        }
예제 #2
0
        public ActionResult Edit(Sitio sit, IList<HttpPostedFileBase> imagenes, IList<HttpPostedFileBase> videos, string Tipo_formulario)
        {
            try
            {
                 string fileName = "", path = "";
                IList<string> fotografias = new List<string>();
                IList<string> videosSitio = new List<string>();
                SessionInitialize();
                SitioEN sitEN = new SitioCAD(session).DevuelveSitioPorNombre(sit.Nombre);

                //System.IO.Directory.CreateDirectory(Server.MapPath("~/Images/Uploads/" + sit.Nombre)); si se puede cambiar el nombre descomentar
               // System.IO.Directory.CreateDirectory(Server.MapPath("~/Videos/Uploads/" + sit.Nombre));
                SitioCEN cen = new SitioCEN();
                foreach (HttpPostedFileBase aux in imagenes)    //para cada imagen
                {
                    if (aux != null && aux.ContentLength > 0)
                    {
                        // extract only the fielname
                        fileName = Path.GetFileName(aux.FileName);
                        //Directory.CreateDirectory("~/Images/Uploads/" + sit.Nombre);
                        // store the file inside ~/App_Data/uploads folder
                        path = Path.Combine(Server.MapPath("~/Images/Uploads/" + sit.Nombre), fileName);
                        //string pathDef = path.Replace(@"\\", @"\");
                        aux.SaveAs(path);
                        sitEN.Fotos.Add("/Images/Uploads/" + sit.Nombre + "/" + fileName);
                    }
                }
                foreach (HttpPostedFileBase aux2 in videos)    //para cada imagen
                {
                    if (aux2 != null && aux2.ContentLength > 0)
                    {
                        // extract only the fielname
                        fileName = Path.GetFileName(aux2.FileName);
                        //Directory.CreateDirectory("~/Images/Uploads/" + sit.Nombre);
                        // store the file inside ~/App_Data/uploads folder
                        path = Path.Combine(Server.MapPath("~/Videos/Uploads/" + sit.Nombre), fileName);
                        //string pathDef = path.Replace(@"\\", @"\");
                        aux2.SaveAs(path);
                        sitEN.Videos.Add("/Videos/Uploads/" + sit.Nombre + "/" + fileName);
                    }
                }
                SessionClose();
                 TravelnookGenNHibernate.Enumerated.Travelnook.TipoSitioEnum tipoaux= new TravelnookGenNHibernate.Enumerated.Travelnook.TipoSitioEnum();
                tipoaux = (TravelnookGenNHibernate.Enumerated.Travelnook.TipoSitioEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoSitioEnum),Tipo_formulario);

                IList<TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum> actividadesaux = new List<TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum>();

                if (sit.camping == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "camping"));
                if (sit.deportes == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "deportes"));
                if (sit.deportes_acuaticos == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "deportes_acuaticos"));
                if (sit.gastronomia == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "gastronomia"));
                if (sit.ludicas == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "ludicas"));
                if (sit.ocio_nocturno == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "ocio_nocturno"));
                if (sit.senderismo == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "senderismo"));
                if (sit.culturales == true)
                    actividadesaux.Add((TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum)Enum.Parse(typeof(TravelnookGenNHibernate.Enumerated.Travelnook.TipoActividadesEnum), "culturales"));
               //falta el unrelationer(arriba antes de sesionclose) y volver a relacionar
                cen.ModificarSitio(sit.Nombre, sit.Provincia, sit.Descripcion, sitEN.Puntuacion, sitEN.Fotos, sitEN.Videos, sit.Localizacion, sitEN.FechaCreacion, sitEN.NumPuntuados, sitEN.PuntuacionMedia, tipoaux);

                return RedirectToAction("Details", new { id = sit.Nombre });
            }
            catch
            {
                return View();
            }
        }