Example #1
0
//RegistroPrendaPOST recibe el formulario y se encarga de registrarlo en la BD.
func RegistroPrendaPOST() gin.HandlerFunc {
	return func(c *gin.Context) {
		usuarioID := GetSession(sessions.Default(c).Get("UsuarioID"))
		if usuarioID != "0" {
			var p modelo.Prenda
			if c.Bind(&p) == nil {
				u := modelo.Usuario{ID: usuarioID}
				if u.BuscarPorID() {
					p.ID = bson.NewObjectId()
					p.Color.BuscarPorTono()

					p.Clima.ID = bson.ObjectIdHex(convertirID(c.PostForm("clima")))
					p.Clima.BuscarPorID()

					p.TipoPrenda.ID = bson.ObjectIdHex(convertirID(c.PostForm("tipoPrenda")))
					p.TipoPrenda.BuscarPorID()

					p.Ocasion.ID = bson.ObjectIdHex(convertirID(c.PostForm("ocasion")))
					p.Ocasion.BuscarPorID()

					guadarImagen(c, &p)

					u.Prendas = append(u.Prendas, p)
					if u.Modificar() {
						//BIEN
						fmt.Println(u)
					} else {
						fmt.Println("ALGO MAL", u)
					}
				} else {
					//No se encontró el usuario D:
					fmt.Println(u)
				}
			} else {
				fmt.Println("Algo salió mal")
			}
			return
		}
		c.Redirect(302, "/")
		return
	}
}