public PartialViewResult Collezioni() { ViewBag.sectionurl = LanguageSetting.GetLangNavigation() + "/" + (LanguageSetting.Lang == "it" ? "collezioni" : "collections") + "/"; List <Collezioni> ne = db.Collezioni.Where(x => x.lang == LanguageSetting.Lang && x.visibile == true).OrderBy(x => x.ordinamento).ToList(); return(PartialView("_Collezioni", ne)); }
public PartialViewResult TipologieMenu() { ViewBag.sectionurl = LanguageSetting.GetLangNavigation() + "/" + (LanguageSetting.Lang == "it" ? "tipologie" : "typologies") + "/"; List <TipologieMenu> ne = db.TipologieMenu.Where(x => x.lang == LanguageSetting.Lang && x.visibile == true && x.ismenu == true).OrderBy(x => x.ordinamento).ToList(); return(PartialView("_Tipologie", ne)); }
public ActionResult Index(string pname, string lang = "it") { // travaso //Pagine pa = db.Pagine.Where(x => x.pagina == "CERASLIDE").First(); //string q = ""; // q += "insert into pageinfo(lang,titolo,content,metadescription) values('it',\"" + pa.pagina + "\",\"" + pa.testo.Replace("\"","\"\"") + "\",\"" + pa.metadescription?.Replace("\"", "\"\"") + "\");" + System.Environment.NewLine; // q += "insert into pageinfo(lang,titolo,content,metadescription) values('en',\"" + pa.pagina + "\",\"" + pa.testo_en.Replace("\"", "\"\"") + "\",\"" + pa.metadescription_en?.Replace("\"", "\"\"") + "\");" + System.Environment.NewLine; // q += "insert into pageinfo(lang,titolo,content,metadescription) values('fr',\"" + pa.pagina + "\",\"" + pa.testo_fr.Replace("\"", "\"\"") + "\",\"" + pa.metadescription_fr?.Replace("\"", "\"\"") + "\");" + System.Environment.NewLine; // q += "insert into pageinfo(lang,titolo,content,metadescription) values('es',\"" + pa.pagina + "\",\"" + pa.testo_es.Replace("\"", "\"\"") + "\",\"" + pa.metadescription_es?.Replace("\"", "\"\"") + "\");" + System.Environment.NewLine; // q += "insert into pageinfo(lang,titolo,content,metadescription) values('de',\"" + pa.pagina + "\",\"" + pa.testo_de.Replace("\"", "\"\"") + "\",\"" + pa.metadescription_de?.Replace("\"", "\"\"") + "\");" + System.Environment.NewLine; // q += "insert into pageinfo(lang,titolo,content,metadescription) values('ru',\"" + pa.pagina + "\",\"" + pa.testo_ru?.Replace("\"", "\"\"") + "\",\"" + pa.metadescription_ru?.Replace("\"", "\"\"") + "\");" + System.Environment.NewLine; // q += "insert into pageinfo(lang,titolo,content,metadescription) values('ru',\"" + pa.pagina + "\",\"" + pa.testo_ch?.Replace("\"", "\"\"") + "\",\"" + pa.metadescription_ch?.Replace("\"", "\"\"") + "\");" + System.Environment.NewLine; PageInfo p = db.PageInfo.Where(x => x.urlname == pname && x.lang == lang)?.FirstOrDefault(); if (p == null) { return(Redirect(LanguageSetting.GetLangNavigation() + "/")); } string invariantPname = p.pname.Replace("-", ""); // effettuo il rendering della view chiamata return(View(invariantPname, p)); }
public ActionResult ProdottoTest(string collezione = "", string categoria = "", string prodotto = "") { string lang = "it"; if (!string.IsNullOrEmpty(prodotto)) { //PAGINA PRODOTTO Collezioni coll = db.Collezioni.Where(x => x.lang == lang && x.urlname == collezione).FirstOrDefault(); Categorie cat = db.Categorie.Where(x => x.lang == lang && x.urlname == categoria).FirstOrDefault(); string listacollezioniurl = (lang == "it" ? "/collezioni" : "/collections"); string listacollezionitext = (lang == "it" ? "Collezioni" : "Collections"); string collezioneig = coll.itemgroup.ToString(); string categoriaig = cat.itemgroup.ToString(); Prodotti p = db.Prodotti.Where(x => x.collezione.StartsWith(collezioneig + "|") && x.categoria.StartsWith(categoriaig + "|") && x.lang == lang && x.visibile == true && x.codice == prodotto).FirstOrDefault(); if (p == null) { Response.Redirect((lang != "it" ? "/" + lang : "") + "/" + (lang != "it" ? "collections" : "collezioni")); } string link = "<a href=\"" + LanguageSetting.GetLangNavigation() + "{0}\">{1}</a>"; ProdottoPage pp = new ProdottoPage(); pp.Prodotto = p; //TODO - RIMUOVERE modifica temporanea in attesa del listino it a marzo 2020 if (lang == "it") { pp.Finiture = p.ListaFiniture == null ? new List <Finiture>() : p.ListaFiniture; } else { pp.Finiture = p.ListaFinitureEstero == null ? new List <Finiture>() : p.ListaFinitureEstero; } string[] igfiniture = pp.Finiture.Select(f => f.gruppoitemgroup).ToArray(); pp.GruppiFiniture = db.FinitureGruppi.Where(x => x.lang == lang && igfiniture.Contains(x.itemgroup.ToString())).OrderBy(x => x.ordinamento).ToList(); pp.Accessori = p.ListaAccessori; pp.breadcrumb = string.Format(link, "/", "Ceramica Globo") + " | " + string.Format(link, listacollezioniurl, listacollezionitext) + " | " + string.Format(link, listacollezioniurl + "/" + coll.urlname, coll.titolo) + " | " + string.Format(link, listacollezioniurl + "/" + coll.urlname + "/" + cat.urlname, cat.titolo) + " | " + "<span>" + p.titolo + " " + p.codice + "</span>"; pp.backurl = listacollezioniurl + "/" + coll.urlname + "/" + cat.urlname + "?p=" + prodotto; pp.isLogged = HttpContext.User.Identity.IsAuthenticated; return(View("ProdottoTest", pp)); } return(View("ProdottoTest", null)); }
public ActionResult Compara(string ig) { string[] igs = ig.Split('-'); if (igs.Length == 0 || igs.Length > 5) { return(Redirect(LanguageSetting.GetLangNavigation() + "/")); } List <Prodotti> lp = db.Prodotti.Where(x => x.lang == LanguageSetting.Lang && igs.Contains(x.itemgroup.ToString())).ToList(); return(View(lp)); }
public ActionResult Index(string pname, string lang = "it") { PageInfo p = db.PageInfo.Where(x => x.urlname == pname && x.lang == lang)?.FirstOrDefault(); if (p == null) { return(Redirect(LanguageSetting.GetLangNavigation() + "/")); } string invariantPname = p.pname.Replace("-", ""); // effettuo il rendering della view chiamata return(View(invariantPname, p)); }
public ActionResult RegistraNewsletter(UtentiNewsletter u) { u.lang = LanguageSetting.Lang; u.data = DateTime.Now; AjaxMessagge resultMessage = new AjaxMessagge(); if (ModelState.IsValid) { // registro // devo vedere se l'indirizzo email è già presente if (db.UtentiNewsletter.Where(x => x.email == u.email).Count() > 0) { UtentiNewsletter uvecchio = db.UtentiNewsletter.Where(x => x.email == u.email).FirstOrDefault(); uvecchio.ragionesociale = u.ragionesociale; uvecchio.attivo = true; uvecchio.professione = u.professione; db.UtentiNewsletter.Attach(uvecchio); db.Entry(uvecchio).State = EntityState.Modified; } else { db.UtentiNewsletter.Add(u); } db.SaveChanges(); resultMessage.Success = true; resultMessage.Message = "grazieregistratonewsletter".Translate(); resultMessage.RedirectUrl = LanguageSetting.GetLangNavigation() + "/"; } else { resultMessage.Success = false; resultMessage.Message = "err_controllacampi".Translate(); resultMessage.RedirectUrl = LanguageSetting.GetLangNavigation() + "/"; } return(Json(resultMessage)); }
public ActionResult Collezioni(string lang = "it", string collezione = "", string categoria = "", string prodotto = "") { if (!string.IsNullOrEmpty(prodotto)) { //PAGINA PRODOTTO Collezioni coll = db.Collezioni.Where(x => x.lang == lang && x.urlname == collezione).FirstOrDefault(); Categorie cat = db.Categorie.Where(x => x.lang == lang && x.urlname == categoria).FirstOrDefault(); string listacollezioniurl = (lang == "it" ? "/collezioni" : "/collections"); string listacollezionitext = (lang == "it" ? "Collezioni" : "Collections"); string collezioneig = coll.itemgroup.ToString(); string categoriaig = cat.itemgroup.ToString(); Prodotti p = db.Prodotti.Where(x => x.collezione.StartsWith(collezioneig + "|") && x.categoria.StartsWith(categoriaig + "|") && x.lang == lang && x.visibile == true && x.codice == prodotto).FirstOrDefault(); if (p == null) { Response.Redirect((lang != "it" ? "/" + lang : "") + "/" + (lang != "it" ? "collections" : "collezioni")); } string link = "<a href=\"" + LanguageSetting.GetLangNavigation() + "{0}\">{1}</a>"; ProdottoPage pp = new ProdottoPage(); pp.Prodotto = p; //TODO - RIMUOVERE modifica temporanea in attesa del listino it a marzo 2020 //if (lang == "it" || lang=="de") //{ // pp.Finiture = p.ListaFiniture == null ? new List<Finiture>() : p.ListaFiniture; //} //else //{ // pp.Finiture = p.ListaFinitureEstero == null ? new List<Finiture>() : p.ListaFinitureEstero; //} pp.Finiture = p.ListaFiniture == null ? new List <Finiture>() : p.ListaFiniture; string[] igfiniture = pp.Finiture.Select(f => f.gruppoitemgroup).ToArray(); pp.GruppiFiniture = db.FinitureGruppi.Where(x => x.lang == lang && igfiniture.Contains(x.itemgroup.ToString())).OrderBy(x => x.ordinamento).ToList(); pp.Accessori = p.ListaAccessori; pp.breadcrumb = string.Format(link, "/", "Ceramica Globo") + " | " + string.Format(link, listacollezioniurl, listacollezionitext) + " | " + string.Format(link, listacollezioniurl + "/" + coll.urlname, coll.titolo) + " | " + string.Format(link, listacollezioniurl + "/" + coll.urlname + "/" + cat.urlname, cat.titolo) + " | " + "<span>" + p.titolo + " " + p.codice + "</span>"; pp.backurl = listacollezioniurl + "/" + coll.urlname + "/" + cat.urlname + "?p=" + prodotto; pp.isLogged = HttpContext.User.Identity.IsAuthenticated; return(View("Prodotto", pp)); } else if (!string.IsNullOrEmpty(categoria)) { // COLLEZIONE CATEGORIA (INVIO I PRODOTTI DI UNA SPECIFICA CATEGORIA) Collezioni c = db.Collezioni.Where(x => x.urlname == collezione && x.lang == lang).DefaultIfEmpty(null).FirstOrDefault(); if (c == null) { Response.Redirect((lang != "it" ? "/" + lang : "") + "/" + (lang != "it" ? "collections" : "collezioni")); } CollezioneProdotti cp = new CollezioneProdotti(); cp.Collezione = c; cp.Prodotti = new List <Prodotti>(); cp.Sottocategorie = new Dictionary <int, string>(); string igcat = db.Categorie.Where(x => x.urlname == categoria && x.lang == lang).Select(x => x.itemgroup).FirstOrDefault().ToString(); // ECCEZIONE VASI E BIDET 4ALL cp.Prodotti = db.Prodotti .Where(x => x.collezione.StartsWith(c.itemgroup.ToString() + "|") && x.lang == lang && x.visibile == true && x.tipologiaprodotto == "prodotto" && x.categoria.StartsWith(igcat + "|")) //.OrderBy(x => x.codice).ToList(); .OrderByDescending(x => x.basecm).ThenByDescending(x => x.altezzacm).ThenByDescending(x => x.profonditacm).ThenBy(x => x.codice) .ToList(); string[] igsubcat = cp.Prodotti.GroupBy(x => x.sottocategoria).Select(x => x.FirstOrDefault()).ToList().Select(x => x.sottocategoriaitemgroup).ToArray(); List <Sottocategorie> sc = db.Sottocategorie.Where(x => x.lang == lang && igsubcat.Contains(x.itemgroup.ToString())).OrderBy(x => x.ordinamento).ToList(); sc.ForEach(x => { cp.Sottocategorie.Add(x.itemgroup, x.titolo); }); cp.CategoriaName = db.Categorie.Where(x => x.itemgroup.ToString() == igcat && x.lang == lang).Select(x => x.titolo).FirstOrDefault(); cp.CollezioneLink = (lang != "it" ? "/" + lang : "") + "/" + (lang != "it" ? "collections" : "collezioni") + "/" + c.urlname; cp.CategoriaUrlName = categoria; return(View("CollezioneCategoria", cp)); } else if (!string.IsNullOrEmpty(collezione)) { // COLLEZIONE SPECIFICA Collezioni c = db.Collezioni.Where(x => x.urlname == collezione && x.lang == lang).DefaultIfEmpty(null).FirstOrDefault(); if (c == null) { Response.Redirect((lang != "it" ? "/" + lang : "") + "/" + (lang != "it" ? "collections" : "collezioni")); } CollezioneCategorie cat = new CollezioneCategorie(); cat.Collezione = c; cat.Categorie = new List <CategoriaLink>(); // categorie List <Prodotti> prodotti = db.Prodotti.Where(x => x.collezione.StartsWith(c.itemgroup.ToString() + "|") && x.lang == lang && x.visibile == true && x.tipologiaprodotto == "prodotto").GroupBy(x => x.categoria).Select(x => x.FirstOrDefault()).ToList(); string collezioneurlnameita = db.Collezioni.Where(x => x.lang == "it" && x.itemgroup == c.itemgroup).Select(x => x.urlname).FirstOrDefault(); string[] igcat; igcat = prodotti.Select(x => x.categoriaitemgroup).ToArray(); List <Categorie> cc = db.Categorie.Where(x => igcat.Contains(x.itemgroup.ToString()) && x.lang == lang).OrderBy(x => x.ordinamento).ToList(); cc.ForEach(x => { string urlinvariant = db.Categorie.Where(coll => coll.itemgroup == x.itemgroup && coll.lang == "it").Select(coll => coll.urlname).FirstOrDefault(); string imgcat = "/public/resource/prodotti/imgcategorie/" + urlinvariant + "/" + collezioneurlnameita + ".jpg"; if (!System.IO.File.Exists(Server.MapPath(imgcat))) { imgcat = prodotti.Where(p => p.categoria.StartsWith(x.itemgroup.ToString() + "|")).Select(p => p.imgmain).FirstOrDefault(); } // se non ci sono prodotti non visualizzo la categoria| if (db.Prodotti.Where(j => j.collezione.StartsWith(c.itemgroup + "|") && j.categoria.StartsWith(x.itemgroup + "|") && j.visibile == true && j.lang == lang && j.tipologiaprodotto != "accessorio").Count() > 0) { cat.Categorie.Add(new CategoriaLink { Categoria = x.titolo, img = imgcat, link = x.urlname }); } }); return(View("CollezioniDettaglio", cat)); } else { // LISTA COLLEZIONI PageInfo p = db.PageInfo.Where(x => x.pname == "collezioni" && x.lang == lang)?.FirstOrDefault(); return(View(p)); } }
public ActionResult Tipologie(string lang = "it", string tipologia = "", string prodotto = "", string collezione = "") { if (!string.IsNullOrEmpty(prodotto)) { // PRODOTTO Collezioni coll = db.Collezioni.Where(x => x.lang == lang && x.urlname == collezione).FirstOrDefault(); TipologieMenu tip = db.TipologieMenu.Where(x => x.lang == lang && x.urlname == tipologia).FirstOrDefault(); string listatipologieurl = (lang == "it" ? "/tipologie" : "/typologies"); string listatipologietext = (lang == "it" ? "Tipologie" : "Typologies"); string listacollezioniurl = (lang == "it" ? "/collezioni" : "/collections"); string collezioneig = coll.itemgroup.ToString(); string tipologiaig = tip.itemgroup.ToString(); Prodotti p = db.Prodotti.Where(x => x.collezione.StartsWith(collezioneig + "|") && x.tipologiamenu.StartsWith(tipologiaig + "|") && x.lang == lang && x.visibile == true && x.codice == prodotto).FirstOrDefault(); if (p == null) { Response.Redirect((lang != "it" ? "/" + lang : "") + "/" + (lang != "it" ? "collections" : "collezioni")); } string link = "<a href=\"" + LanguageSetting.GetLangNavigation() + "{0}\">{1}</a>"; ProdottoPage pp = new ProdottoPage(); pp.Prodotto = p; pp.Finiture = p.ListaFiniture == null ? new List <Finiture>() : p.ListaFiniture; string[] igfiniture = pp.Finiture.Select(f => f.gruppoitemgroup).ToArray(); pp.GruppiFiniture = db.FinitureGruppi.Where(x => x.lang == lang && igfiniture.Contains(x.itemgroup.ToString())).OrderBy(x => x.ordinamento).ToList(); pp.Accessori = p.ListaAccessori; pp.breadcrumb = string.Format(link, "/", "Ceramica Globo") + " | " + string.Format(link, listatipologieurl, listatipologietext) + " | " + string.Format(link, listatipologieurl + "/" + tip.urlname, tip.titolo) + " | " + string.Format(link, listacollezioniurl + "/" + coll.urlname, coll.titolo) + " | " + "<span>" + p.titolo + " " + p.codice + "</span>"; // pp.backurl = listacollezioniurl + "/" + coll.urlname; pp.backurl = listatipologieurl + "/" + tip.urlname + "?p=" + prodotto; pp.isLogged = HttpContext.User.Identity.IsAuthenticated; return(View("Prodotto", pp)); } else if (!string.IsNullOrEmpty(collezione)) { // REDIRECT TO COLLEZIONE return(Redirect(lang == "it" ? "/collezioni/" + collezione : "/collections/" + collezione)); } else if (!string.IsNullOrEmpty(tipologia)) { // DETTAGLIO TIPOLOGIA // lista prodotti per tipologia TipologieProdotti tp = new TipologieProdotti(); TipologieMenu c = db.TipologieMenu.Where(x => x.urlname == tipologia && x.lang == lang).DefaultIfEmpty(null).FirstOrDefault(); if (c == null) { Response.Redirect((lang != "it" ? "/" + lang : "") + "/" + (lang != "it" ? "typologies" : "tipologie")); } tp.Metatitle = c.metatitle; tp.Metadescription = c.metadescription; tp.TipologiaName = c.titolo; tp.TipologieLink = (lang == "it" ? "/tipologie" : ("/" + lang + "/typologies")); tp.TipologiaUrlname = tipologia; List <Prodotti> lp = db.Prodotti .Where(x => x.tipologiamenu.StartsWith(c.itemgroup + "|") && x.lang == lang && x.visibile == true) .OrderByDescending(x => x.basecm).ThenByDescending(x => x.altezzacm).ThenByDescending(x => x.profonditacm).ThenBy(x => x.codice) .ToList(); tp.Prodotti = lp; return(View("TipologieDettaglio", tp)); } else { // LISTA TIPOLOGIE PageInfo p = db.PageInfo.Where(x => x.pname == "tipologie" && x.lang == lang)?.FirstOrDefault(); return(View(p)); } }
public ActionResult RegistraUtente(Utenti u) { u.lang = LanguageSetting.Lang; u.data = DateTime.Now; AjaxMessagge resultMessage = new AjaxMessagge(); if (ModelState.IsValid) { // registro // controllo univocità email bool isduplicate = db.Utenti.Where(x => x.email == u.email).Count() > 0; if (isduplicate) { resultMessage.Success = false; resultMessage.Message = "registrazionedoppia".Translate(); resultMessage.RedirectUrl = "/"; // poi mettere dashboard } else { db.Utenti.Add(u); db.SaveChanges(); resultMessage.Success = true; resultMessage.Message = "grazieregistrato".Translate(); //resultMessage.RedirectUrl = LanguageSetting.GetLangNavigation() + "/login" + (!string.IsNullOrEmpty(Request.QueryString["r"]) ? "?r=" + Request.QueryString["r"] : ""); // poi mettere dashboard resultMessage.RedirectUrl = (!string.IsNullOrEmpty(Request.QueryString["r"]) ? Request.QueryString["r"] : LanguageSetting.GetLangNavigation() + "/"); // poi mettere dashboard } } else { resultMessage.Success = false; resultMessage.Message = "err_controllacampi".Translate(); resultMessage.RedirectUrl = "/"; // poi mettere dashboard } return(Json(resultMessage)); }
public ActionResult Download(string lang, string igprodotto, string ftype) { // return Redirect(LanguageSetting.GetLangNavigation() + "/login"); bool mustlogged = true; Prodotti p = db.Prodotti.Where(x => x.lang == lang && x.itemgroup.ToString() == igprodotto).FirstOrDefault(); if (p == null) { return(Redirect(LanguageSetting.GetLangNavigation() + "/")); } string fname = ""; switch (ftype) { case "scheda": mustlogged = false; fname = p.scheda; break; case "istruzioni": mustlogged = false; fname = p.istruzioni; break; case "scassi": mustlogged = false; fname = p.scassi; break; case "capitolato": mustlogged = false; fname = p.capitolato; break; case "dop": mustlogged = false; fname = p.prestazione; break; case "cad": mustlogged = true; fname = p.cad; break; case "3ds": mustlogged = true; fname = p.f3ds; break; case "revit": mustlogged = true; fname = p.revit; break; case "archicad": mustlogged = true; fname = p.archicad; break; case "sketchup": mustlogged = true; fname = p.sketchup; break; } if (string.IsNullOrEmpty(fname)) { return(Redirect(LanguageSetting.GetLangNavigation() + "/")); } if (mustlogged == true && !HttpContext.User.Identity.IsAuthenticated) { return(Redirect(LanguageSetting.GetLangNavigation() + "/")); } byte[] fileBytes = System.IO.File.ReadAllBytes(Server.MapPath(fname)); string fileName = System.IO.Path.GetFileName(fname); return(File(fileBytes, System.Net.Mime.MediaTypeNames.Application.Octet, fileName)); }