static string getRigaAnnuncioCantiereSoluzione(SqlConnection connImmo01, AnnuncioCantiereSoluzione Ann, string urlPaginaAnnuncio, string lingua, int numeroColonne ) { string riga = ""; string templateRisultatoRicercaCantieriSoluzioniBody = ConfigurationManager.AppSettings["templateRisultatoRicercaCantieriSoluzioniBody"]; string templateRisultatoRicercaCantieriSoluzioniBodyBrochure = ConfigurationManager.AppSettings["templateRisultatoRicercaCantieriSoluzioniBodyBrochure"]; CultureInfo cul = new CultureInfo("it-IT"); Thread.CurrentThread.CurrentCulture = cul; try { if (Ann.Error == false) { string link = ""; if (Ann.IDImmobile > 0) { Annuncio AnnImmobile = new Annuncio(); AnnImmobile.Load(connImmo01, Ann.IDImmobile, lingua); link = "<a href=\"" + getLinkAnnuncioImmobile(AnnImmobile, urlPaginaAnnuncio) + "\">"; } string foto1; string nofoto = ""; if (Ann.UrlFoto1 != "") { foto1 = string.Format(" style= \"background-image: url({0})\" ", string.Format(ConfigurationManager.AppSettings["percorsoFoto"], Ann.IDAgenzia, Ann.UrlFoto1) ); } else { foto1 = ""; nofoto = "gx-img-foto"; } string title = Ann.Titolo; if (title != "") { title = string.Format("<h1>{0}</h1>", title); } string zonaQuartiere = ""; zonaQuartiere = Ann.Zona; if (Ann.Quartiere != "") { if (Ann.Zona != "") { Ann.Zona += ". "; } Ann.Zona += Ann.Quartiere; } if (Ann.QuartiereZona != "") { if (Ann.Zona != "") { Ann.Zona += ". "; } Ann.Zona += Ann.QuartiereZona; } if (zonaQuartiere != "") { zonaQuartiere = string.Format("<h3>{0}</h3>", zonaQuartiere); } string sendParams = "'" + lingua + "'," + Ann.IDCantiereSoluzione.ToString() + "," + Ann.IDAgenzia.ToString() + ",false,true,'racs'"; // racs = riga annuncio cantiere soluzione if (Ann.TipologiaContrattoComune != "") { Ann.TipologiaContrattoComune = string.Format("<h2>{0}</h2>", Ann.TipologiaContrattoComune); } riga = string.Format(templateRisultatoRicercaCantieriSoluzioniBody, numeroColonne, link, (link != "") ? "</a>" : "", title, foto1, Ann.TipologiaContrattoComune, Ann.Descrizione, Ann.PrezzoLocaliMqRif, (link == "") ? " style=\"display:none\" " : "", dicitura("Dettagli", lingua), (Ann.Brochure != "") ? string.Format(templateRisultatoRicercaCantieriSoluzioniBodyBrochure, Ann.IDAgenzia, Ann.Brochure, dicitura("Brochure", lingua)) : "", sendParams, dicitura("InviaEmail", lingua) ); } } catch (Exception ex) { riga = ""; } return riga; }
public static string SendEmail(string Lingua, string ApiKey, int IDAgenzia, int IDImmobile, bool Cantiere, bool CantiereSoluzione, bool GenericInfo, string NomeCognome, string Email, string TelefonoUtente, string Messaggio, bool Privacy, string PrivacyUrl) { string r = ""; CultureInfo cul = new CultureInfo("it-IT"); Thread.CurrentThread.CurrentCulture = cul; try { SqlConnection connImmo01 = new SqlConnection(ConfigurationManager.ConnectionStrings["DBIMMO01ConnectionString"].ConnectionString); connImmo01.Open(); using (connImmo01) { Agenzia Ag = new Agenzia(); Ag.Load(connImmo01, IDAgenzia, ApiKey, Lingua); if (!Ag.Error) { using (SqlCommand cmd = new SqlCommand()) { cmd.CommandText = "[AgenzieSitiWeb_ParametriSmtp_Dettaglio]"; cmd.CommandType = CommandType.StoredProcedure; cmd.Connection = connImmo01; cmd.CommandTimeout = 600; cmd.Parameters.Add("@ApiKey", SqlDbType.UniqueIdentifier).Value = new System.Data.SqlTypes.SqlGuid(ApiKey); cmd.Parameters.Add("@IDAgenzia", SqlDbType.Int).Value = Ag.IDAgenzia; var adapt = new SqlDataAdapter(); adapt.SelectCommand = cmd; DataTable dTable = new DataTable(); adapt.Fill(dTable); adapt.Dispose(); if (dTable.Rows.Count == 1) { DataRow dRow = dTable.Rows[0]; SitoWebAgenzia SWA = new SitoWebAgenzia(); SWA.IDAgenzia = (int)dRow["IDAgenzia"]; SWA.SmtpHost = (string)dRow["SmtpHost"]; SWA.SmtpUser = (string)dRow["SmtpUser"]; SWA.SmtpPort = (int)dRow["SmtpPort"]; SWA.SmtpPassword = (string)dRow["SmtpPassword"]; SWA.SmtpTo = (string)dRow["SmtpTo"]; SWA.SmtpFrom = (string)dRow["SmtpFrom"]; SWA.SmtpCC = (string)dRow["SmtpCC"]; SWA.SmtpAutenticazione = (bool)dRow["SmtpAutenticazione"]; SWA.SmtpSSL = (bool)dRow["SmtpSSL"]; if (SWA.SmtpHost != "") { if (Ag.Logo1 != "") { Ag.Logo1 = string.Format(ConfigurationManager.AppSettings["percorsoLogo"], Ag.IDAgenzia.ToString(), Ag.Logo1); } SmtpClient SmtpServer1 = getSmtpServer(SWA); string urlFoto1 = ""; string templateMsgUtente = ""; string templateMsgAgenzia = ""; if (!Cantiere && !CantiereSoluzione && !GenericInfo) { Annuncio Ann = new Annuncio(); Ann.Load(connImmo01, IDImmobile, Lingua); urlFoto1 = Ann.UrlFoto1; templateMsgUtente = string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioUtente"], (Ag.Logo1 != "") ? string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioAgenziaLogoTag"], "cid:LogoAgenzia") : string.Empty, NomeCognome, string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioFotoAnnuncio"], "cid:FotoAnnuncio"), Ann.TipologiaContrattoComune, (Ann.Prezzo > 0) ? string.Format("{0:C}", Ann.Prezzo) : dicitura("ND", Lingua), (Ann.MQ > 0) ? string.Format("{0} MQ", Ann.MQ) : dicitura("ND", Lingua), (Ann.NrLocali > 0) ? string.Format("{0} {1}", Ann.NrLocali, dicitura("Locali", Lingua)) : dicitura("ND", Lingua), (Ann.Riferimento != "") ? Ann.Riferimento : dicitura("ND", Lingua), string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioFotoUtente"], "cid:FotoUtente"), Email, TelefonoUtente, Messaggio, Ag.Nome, string.Format("{0} - {1}<br />{2}", Ag.Indirizzo, Ag.Comune, (Ag.Telefono != "") ? string.Format("{0}: {1}", dicitura("Telefono", Lingua), Ag.Telefono) : string.Empty ), (PrivacyUrl != "") ? string.Format("<a href=\"{0}\">{1}</a>", PrivacyUrl, dicitura("PrivacyUtilizzo", Lingua)) : string.Empty ); templateMsgAgenzia = string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioAgenzia"], (Ag.Logo1 != "") ? string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioAgenziaLogoTag"], "cid:LogoAgenzia") : string.Empty, NomeCognome, string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioFotoAnnuncio"], "cid:FotoAnnuncio"), Ann.TipologiaContrattoComune, (Ann.Prezzo > 0) ? string.Format("{0:C}", Ann.Prezzo) : dicitura("ND", Lingua), (Ann.MQ > 0) ? string.Format("{0} MQ", Ann.MQ) : dicitura("ND", Lingua), (Ann.NrLocali > 0) ? string.Format("{0} {1}", Ann.NrLocali, dicitura("Locali", Lingua)) : dicitura("ND", Lingua), (Ann.Riferimento != "") ? Ann.Riferimento : dicitura("ND", Lingua), string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioFotoUtente"], "cid:FotoUtente"), Email, TelefonoUtente, Messaggio); } if (Cantiere) { AnnuncioCantiere Ann = new AnnuncioCantiere(); Ann.Load(connImmo01, IDImmobile, Lingua); urlFoto1 = Ann.UrlFoto1; templateMsgUtente = string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioUtente"], (Ag.Logo1 != "") ? string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioAgenziaLogoTag"], "cid:LogoAgenzia") : string.Empty, NomeCognome, string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioFotoAnnuncio"], "cid:FotoAnnuncio"), string.Format(dicitura("CantiereA", Lingua), Ann.Comune), (Ann.PrezzoRange != "") ? Ann.PrezzoRange : dicitura("ND", Lingua), (Ann.MQRange != "") ? Ann.MQRange : dicitura("ND", Lingua), (Ann.NrLocaliRange != "") ? Ann.NrLocaliRange : dicitura("ND", Lingua), (Ann.Riferimento != "") ? Ann.Riferimento : dicitura("ND", Lingua), string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioFotoUtente"], "cid:FotoUtente"), Email, TelefonoUtente, Messaggio, Ag.Nome, string.Format("{0} - {1}<br />{2}", Ag.Indirizzo, Ag.Comune, (Ag.Telefono != "") ? string.Format("{0}: {1}", dicitura("Telefono", Lingua), Ag.Telefono) : string.Empty ), (PrivacyUrl != "") ? string.Format("<a href=\"{0}\">{1}</a>", PrivacyUrl, dicitura("PrivacyUtilizzo", Lingua)) : string.Empty ); templateMsgAgenzia = string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioAgenzia"], (Ag.Logo1 != "") ? string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioAgenziaLogoTag"], "cid:LogoAgenzia") : string.Empty, NomeCognome, string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioFotoAnnuncio"], "cid:FotoAnnuncio"), string.Format(dicitura("CantiereA", Lingua), Ann.Comune), (Ann.PrezzoRange != "") ? Ann.PrezzoRange : dicitura("ND", Lingua), (Ann.MQRange != "") ? Ann.MQRange : dicitura("ND", Lingua), (Ann.NrLocaliRange != "") ? Ann.NrLocaliRange : dicitura("ND", Lingua), (Ann.Riferimento != "") ? Ann.Riferimento : dicitura("ND", Lingua), string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioFotoUtente"], "cid:FotoUtente"), Email, TelefonoUtente, Messaggio); } if (CantiereSoluzione) { AnnuncioCantiereSoluzione Ann = new AnnuncioCantiereSoluzione(); Ann.Load(connImmo01, IDImmobile, Lingua); urlFoto1 = Ann.UrlFoto1; templateMsgUtente = string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioUtente"], (Ag.Logo1 != "") ? string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioAgenziaLogoTag"], "cid:LogoAgenzia") : string.Empty, NomeCognome, string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioFotoAnnuncio"], "cid:FotoAnnuncio"), string.Format(dicitura("CantiereSoluzioneA", Lingua), Ann.Comune), (Ann.PrezzoRange != "") ? Ann.PrezzoRange : dicitura("ND", Lingua), (Ann.MQRange != "") ? Ann.MQRange : dicitura("ND", Lingua), (Ann.NrLocali > 0) ? Ann.NrLocali.ToString() : dicitura("ND", Lingua), (Ann.Riferimento != "") ? Ann.Riferimento : dicitura("ND", Lingua), string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioFotoUtente"], "cid:FotoUtente"), Email, TelefonoUtente, Messaggio, Ag.Nome, string.Format("{0} - {1}<br />{2}", Ag.Indirizzo, Ag.Comune, (Ag.Telefono != "") ? string.Format("{0}: {1}", dicitura("Telefono", Lingua), Ag.Telefono) : string.Empty ), (PrivacyUrl != "") ? string.Format("<a href=\"{0}\">{1}</a>", PrivacyUrl, dicitura("PrivacyUtilizzo", Lingua)) : string.Empty ); templateMsgAgenzia = string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioAgenzia"], (Ag.Logo1 != "") ? string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioAgenziaLogoTag"], "cid:LogoAgenzia") : string.Empty, NomeCognome, string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioFotoAnnuncio"], "cid:FotoAnnuncio"), string.Format(dicitura("CantiereSoluzioneA", Lingua), Ann.Comune), (Ann.PrezzoRange != "") ? Ann.PrezzoRange : dicitura("ND", Lingua), (Ann.MQRange != "") ? Ann.MQRange : dicitura("ND", Lingua), (Ann.NrLocali > 0) ? Ann.NrLocali.ToString() : dicitura("ND", Lingua), (Ann.Riferimento != "") ? Ann.Riferimento : dicitura("ND", Lingua), string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioFotoUtente"], "cid:FotoUtente"), Email, TelefonoUtente, Messaggio); } if (GenericInfo) { templateMsgUtente = string.Format(ConfigurationManager.AppSettings["templateEmailWidgetRichiestaInfoMessaggioUtente"], (Ag.Logo1 != "") ? string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioAgenziaLogoTag"], "cid:LogoAgenzia") : string.Empty, NomeCognome, string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioFotoUtente"], "cid:FotoUtente"), Email, TelefonoUtente, Messaggio, Ag.Nome, string.Format("{0} - {1}<br />{2}", Ag.Indirizzo, Ag.Comune, (Ag.Telefono != "") ? string.Format("{0}: {1}", dicitura("Telefono", Lingua), Ag.Telefono) : string.Empty ), (PrivacyUrl != "") ? string.Format("<a href=\"{0}\">{1}</a>", PrivacyUrl, dicitura("PrivacyUtilizzo", Lingua)) : string.Empty ); templateMsgAgenzia = string.Format(ConfigurationManager.AppSettings["templateEmailWidgetRichiestaInfoMessaggioAgenzia"], (Ag.Logo1 != "") ? string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioAgenziaLogoTag"], "cid:LogoAgenzia") : string.Empty, NomeCognome, string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioFotoAnnuncio"], "cid:FotoAnnuncio"), string.Format(ConfigurationManager.AppSettings["templateEmailMessaggioFotoUtente"], "cid:FotoUtente"), Email, TelefonoUtente, Messaggio); } ArrayList LR = getLinkedResources(Ag.Logo1, Ag.IDAgenzia, urlFoto1); MailMessage mailUtente = new MailMessage(SWA.SmtpFrom, Email); mailUtente.Body = templateMsgUtente; mailUtente.IsBodyHtml = true; mailUtente.AlternateViews.Add(getAlternateView(templateMsgUtente, LR)); mailUtente.Subject = dicitura("RichiestaInformazioni", Lingua); SmtpServer1.Send(mailUtente); SmtpServer1.Dispose(); ArrayList LR2 = getLinkedResources(Ag.Logo1, Ag.IDAgenzia, urlFoto1); SmtpClient SmtpServer2 = getSmtpServer(SWA); MailMessage mailAgenzia = new MailMessage(SWA.SmtpFrom, SWA.SmtpTo); mailAgenzia.Body = templateMsgAgenzia; mailAgenzia.IsBodyHtml = true; mailAgenzia.ReplyTo = new MailAddress(Email); mailAgenzia.AlternateViews.Add(getAlternateView(templateMsgAgenzia, LR2)); mailAgenzia.Subject = dicitura("RichiestaInformazioni", Lingua); if (SWA.SmtpCC != "") { mailAgenzia.CC.Add(SWA.SmtpCC); } SmtpServer2.Send(mailAgenzia); SmtpServer2.Dispose(); } } } } } connImmo01.Close(); connImmo01.Dispose(); r = "ok"; } catch (Exception ex) { r = "error"; throw ex; } return r; }
public static string HtmlMotoreRicercaImmobiliConfini( string apikey, string lingua, string urlPaginaAnnuncio, float LatitudineNordEst, float LongitudineNordEst, float LatitudineSudOvest, float LongitudineSudOvest ) { CultureInfo cul = new CultureInfo("it-IT"); Thread.CurrentThread.CurrentCulture = cul; SqlConnection connImmo01 = new SqlConnection(ConfigurationManager.ConnectionStrings["DBIMMO01ConnectionString"].ConnectionString); JsonImmobiliConfini jics = new JsonImmobiliConfini(); jics.immobiliConfiniArray = new ArrayList(); connImmo01.Open(); using (connImmo01) { using (SqlCommand cmd = new SqlCommand()) { cmd.CommandText = "[AgenzieSitiWeb_Immobili_ElencoPerConfini]"; cmd.CommandType = CommandType.StoredProcedure; cmd.Connection = connImmo01; cmd.CommandTimeout = 600; cmd.Parameters.Add("@ApiKey", SqlDbType.UniqueIdentifier).Value = new System.Data.SqlTypes.SqlGuid(apikey); cmd.Parameters.Add("@NumeroRisultati", SqlDbType.Int).Value = ConfigurationManager.AppSettings["NumeroRisultatiMarkersMappa"]; cmd.Parameters.Add("@LatitudineNordEst", SqlDbType.Float).Value = LatitudineNordEst; cmd.Parameters.Add("@LongitudineNordEst", SqlDbType.Float).Value = LongitudineNordEst; cmd.Parameters.Add("@LatitudineSudOvest", SqlDbType.Float).Value = LatitudineSudOvest; cmd.Parameters.Add("@LongitudineSudOvest", SqlDbType.Float).Value = LongitudineSudOvest; var adapter = new SqlDataAdapter(); adapter.SelectCommand = cmd; DataTable dTable = new DataTable(); adapter.Fill(dTable); foreach (DataRow dRow in dTable.Rows) { int IDImmobile = (int)dRow["IDImmobile"]; Annuncio Ann = new Annuncio(); Ann.Load(connImmo01, IDImmobile, lingua); JsonImmobileConfine jic = new JsonImmobileConfine(); jic.id = Ann.IDImmobile; jic.lat = Ann.Latitudine; jic.lng = Ann.Longitudine; jic.title = Ann.TipologiaContrattoComune; StringBuilder images = new StringBuilder(); if (Ann.ExistsFoto) { using (SqlCommand cmdImmobiliFoto = new SqlCommand()) { cmdImmobiliFoto.CommandText = "AgenzieSitiWeb_ImmobiliFoto_Elenco"; cmdImmobiliFoto.CommandType = CommandType.StoredProcedure; cmdImmobiliFoto.Connection = connImmo01; cmdImmobiliFoto.CommandTimeout = 600; cmdImmobiliFoto.Parameters.Add("@IDImmobile", SqlDbType.Int).Value = Ann.IDImmobile; cmdImmobiliFoto.Parameters.Add("@TipoFoto", SqlDbType.Char).Value = "F"; var adaptImmobiliFoto = new SqlDataAdapter(); adaptImmobiliFoto.SelectCommand = cmdImmobiliFoto; DataTable dTableImmobiliFoto = new DataTable(); adaptImmobiliFoto.Fill(dTableImmobiliFoto); adaptImmobiliFoto.Dispose(); foreach (DataRow dRowImmobiliFoto in dTableImmobiliFoto.Rows) { images.Append("<li>" + string.Format(ConfigurationManager.AppSettings["percorsoFoto"], Ann.IDAgenzia.ToString(), dRowImmobiliFoto["URLFoto"]) + "</li>"); } dTableImmobiliFoto.Dispose(); jic.html = string.Format(ConfigurationManager.AppSettings["templateMotoreMappaInfoWindow"], images.ToString(), (Ann.ExistsFoto) ? string.Format(" style=\"background-image:url('{0}')\" ", string.Format(ConfigurationManager.AppSettings["percorsoFoto"], Ann.IDAgenzia.ToString(), Ann.UrlFoto1) ) : "", (Ann.Prezzo > 0) ? string.Format("{0:C}", Ann.Prezzo) : dicitura("PrezzoNonDisponibile", lingua), Functions.shortenText(jic.title, 36), getLinkAnnuncioImmobile(Ann, urlPaginaAnnuncio), (Ann.ExistsFoto) ? ConfigurationManager.AppSettings["templateMotoreMappaInfoWindowNavArrows"] : "", (Ann.ExistsFoto) ? " gx-map-photo-no-image" : "", Ann.IDImmobile ); } } jics.immobiliConfiniArray.Add(jic); } } } return JsonConvert.SerializeObject(jics); }
public static string HtmlAnnunciVetrinaGrid(string apikey, string clientId, string clientClassName, string lingua, string urlPaginaAnnuncio, int numeroMaxRisultati, int numeroColonne, bool dettagliOverlay, int categoria, bool filtraNuovaCostruzione, bool filtraPregio, string runtimeId ) { // defaults if (categoria == null) { categoria = 0; } StringBuilder sb = new StringBuilder(); sb.Append(string.Format("<div{0} class=\"gx-contenitore-vetrina-grid{1}\">", (clientId != "") ? string.Format(" id=\"{0}\"", clientId) : "", (clientClassName != "") ? string.Format(" {0}", clientClassName) : "" )); StringBuilder sbScript = new StringBuilder(); try { SqlConnection connImmo01 = new SqlConnection(ConfigurationManager.ConnectionStrings["DBIMMO01ConnectionString"].ConnectionString); connImmo01.Open(); using (connImmo01) { using (SqlCommand cmdImmobiliVetrinaElenco = new SqlCommand()) { cmdImmobiliVetrinaElenco.CommandText = "AgenzieSitiWeb_Immobili_ElencoVetrina"; cmdImmobiliVetrinaElenco.CommandType = CommandType.StoredProcedure; cmdImmobiliVetrinaElenco.Connection = connImmo01; cmdImmobiliVetrinaElenco.CommandTimeout = 600; cmdImmobiliVetrinaElenco.Parameters.Add("@ApiKey", SqlDbType.UniqueIdentifier).Value = new System.Data.SqlTypes.SqlGuid(apikey); cmdImmobiliVetrinaElenco.Parameters.Add("@NumeroRisultati", SqlDbType.Int).Value = numeroMaxRisultati; cmdImmobiliVetrinaElenco.Parameters.Add("@Lingua", SqlDbType.Char).Value = lingua; cmdImmobiliVetrinaElenco.Parameters.Add("@IDCategoria", SqlDbType.TinyInt).Value = categoria; cmdImmobiliVetrinaElenco.Parameters.Add("@NuovaCostruzione", SqlDbType.Bit).Value = filtraNuovaCostruzione; cmdImmobiliVetrinaElenco.Parameters.Add("@Pregio", SqlDbType.Bit).Value = filtraPregio; var adaptImmobiliVetrinaElenco = new SqlDataAdapter(); adaptImmobiliVetrinaElenco.SelectCommand = cmdImmobiliVetrinaElenco; DataTable dTableImmobiliVetrinaElenco = new DataTable(); adaptImmobiliVetrinaElenco.Fill(dTableImmobiliVetrinaElenco); adaptImmobiliVetrinaElenco.Dispose(); if (dTableImmobiliVetrinaElenco.Rows.Count > 0) { sb.Append(ConfigurationManager.AppSettings["templateVetrinaGridHeader"]); int rowNumber = 0; foreach (DataRow dRow in dTableImmobiliVetrinaElenco.Rows) { try { Annuncio Ann = new Annuncio(); int IDImmobile = (int)dRow["IDImmobile"]; Ann.Load(connImmo01, IDImmobile, lingua); string item = string.Format(ConfigurationManager.AppSettings["templateVetrinaGridItem"], numeroColonne.ToString(), getLinkAnnuncioImmobile(Ann, urlPaginaAnnuncio), string.Format(ConfigurationManager.AppSettings["percorsoFoto"], Ann.IDAgenzia.ToString(), Ann.UrlFoto1), string.Format("<h1>{0}</h1>", Ann.TipologiaContrattoComune), (Ann.Prezzo > 0) ? string.Format("<span class=\"gx-vetrina-vetrina-prezzo\">{0:C}</span>", Ann.Prezzo) : string.Empty, (Ann.MQ > 0) ? string.Format("<span>{0} {1}", Ann.MQ, dicitura("MQ", lingua)) : string.Empty, (Ann.NrLocali > 0) ? string.Format("{0} {1}", Ann.NrLocali, dicitura("Locali", lingua)) : string.Empty, (dettagliOverlay) ? "-overlay" : string.Empty ); sb.Append(item); rowNumber += 1; if (rowNumber % numeroColonne == 0) { sb.Append("<div style=\"clear:both;\"></div>"); } } catch (Exception Ex) { } } sb.Append(ConfigurationManager.AppSettings["templateVetrinaGridFooter"]); } } } } catch (Exception Ex) { sb.Clear(); } sb.Append("<div style=\"clear:both\"></div>"); sb.Append("</div>"); HtmlWidgetResult result = new HtmlWidgetResult(); result.html = sb.ToString(); result.runtimeId = runtimeId; return JsonConvert.SerializeObject(result); }
public static string HtmlAnnuncio(string apikey, int IDImmobile, string pathName, string clientId, string clientClassName, string lingua, string urlPaginaAnnuncio, string urlPaginaCantiere, bool mostraTitolo, bool mostraDescrizione, bool mostraBottoneLeggiTutto, bool mostraBottoneCantiere, bool mostraMappa, bool mostraDettagli, bool mostraGallery, bool mostraVideo, bool mostraPlanimetrie, bool mostraVirtualTour, bool mostraRichiestaInfo, bool mostraPrivacy, string urlPrivacy ) { if (urlPaginaAnnuncio == null) { urlPaginaAnnuncio = ""; } if (urlPaginaCantiere == null) { urlPaginaCantiere = ""; } StringBuilder sb = new StringBuilder(); sb.Append(string.Format("<div{0} class=\"gx-contenitore-scheda-annunci{1}\">", (clientId != "") ? string.Format(" id=\"{0}\"", clientId) : "", (clientClassName != "") ? string.Format(" {0}", clientClassName) : "" )); StringBuilder sbScript = new StringBuilder(); try { SqlConnection connImmo01 = new SqlConnection(ConfigurationManager.ConnectionStrings["DBIMMO01ConnectionString"].ConnectionString); connImmo01.Open(); using (connImmo01) { Annuncio Ann = new Annuncio(); if (IDImmobile == 0 && urlPaginaAnnuncio.Contains("{idimmobile}")) { IDImmobile = findIDInPathName(pathName, urlPaginaAnnuncio, "{idimmobile}"); } Ann.Load(connImmo01, IDImmobile, lingua); if (Ann.Error == false) { int nrPiantine = 0; DataTable dTableImmobiliPiantine = new DataTable(); using (SqlCommand cmdImmobiliPiantine = new SqlCommand()) { cmdImmobiliPiantine.CommandText = "AgenzieSitiWeb_ImmobiliFoto_Elenco"; cmdImmobiliPiantine.CommandType = CommandType.StoredProcedure; cmdImmobiliPiantine.Connection = connImmo01; cmdImmobiliPiantine.CommandTimeout = 600; cmdImmobiliPiantine.Parameters.Add("@IDImmobile", SqlDbType.Int).Value = Ann.IDImmobile; cmdImmobiliPiantine.Parameters.Add("@TipoFoto", SqlDbType.Char).Value = "P"; var adaptImmobiliPiantine = new SqlDataAdapter(); adaptImmobiliPiantine.SelectCommand = cmdImmobiliPiantine; adaptImmobiliPiantine.Fill(dTableImmobiliPiantine); adaptImmobiliPiantine.Dispose(); nrPiantine = dTableImmobiliPiantine.Rows.Count; } if (mostraTitolo) { string r1 = string.Format(ConfigurationManager.AppSettings["templateAnnuncioTitolo"], (Ann.Titolo != "") ? Ann.Titolo : Ann.TipologiaContrattoComune, Ann.PrezzoLocaliMqRif); sb.Append(r1); } if (mostraBottoneCantiere && Ann.IDCantiere > 0 && urlPaginaCantiere != "") { AnnuncioCantiere AnnCantiere = new AnnuncioCantiere(); AnnCantiere.Load(connImmo01, Ann.IDCantiere, lingua); sb.Append(string.Format(ConfigurationManager.AppSettings["templateAnnuncioBottoneCantiere"], getLinkAnnuncioCantiere(AnnCantiere, urlPaginaCantiere), dicitura("VaiAlCantiere", lingua) )); } if ((mostraGallery && Ann.ExistsFoto) || (mostraVideo && Ann.ExistsVideo) || mostraPlanimetrie || mostraVirtualTour) { StringBuilder navRows1 = new StringBuilder(); StringBuilder rScriptPageIds1 = new StringBuilder(); if (mostraGallery && Ann.ExistsFoto) { string navRowGallery = string.Format(ConfigurationManager.AppSettings["templateAnnuncioTabNavRow"], "#gx-1", "gx-tab-foto", dicitura("Foto", lingua), ""); navRows1.Append(navRowGallery); rScriptPageIds1.Append("'gx-1'"); } if (mostraVideo && Ann.ExistsVideo) { string navRowVideo = string.Format(ConfigurationManager.AppSettings["templateAnnuncioTabNavRow"], "#gx-2", "gx-tab-video", dicitura("Video", lingua), ""); navRows1.Append(navRowVideo); if (rScriptPageIds1.ToString() != "") { rScriptPageIds1.Append(", "); } rScriptPageIds1.Append("'gx-2'"); } if (mostraPlanimetrie && Ann.ExistsPlanimetria && nrPiantine == 0) { string navRowPlanimetrie = string.Format(ConfigurationManager.AppSettings["templateAnnuncioTabNavRow"], Ann.UrlPlanimetria, "gx-tab-planimetria", dicitura("Planimetrie", lingua), "target=\"_blank\""); navRows1.Append(navRowPlanimetrie); //if (rScriptPageIds1.ToString() != "") { rScriptPageIds1.Append(", "); } //rScriptPageIds1.Append("'gx-3'"); } if (mostraPlanimetrie && nrPiantine > 0) { string navRowPlanimetrie = string.Format(ConfigurationManager.AppSettings["templateAnnuncioTabNavRow"], "#gx-3", "gx-tab-planimetria", dicitura("Planimetrie", lingua), ""); navRows1.Append(navRowPlanimetrie); if (rScriptPageIds1.ToString() != "") { rScriptPageIds1.Append(", "); } rScriptPageIds1.Append("'gx-3'"); } if (mostraVirtualTour && Ann.ExistsVirtualTour) { string navRowVirtualTour = string.Format(ConfigurationManager.AppSettings["templateAnnuncioTabNavRow"], Ann.UrlVirtualTour, "gx-tab-virtual", dicitura("VirtualTour", lingua), "target=\"_blank\""); navRows1.Append(navRowVirtualTour); } if (navRows1.ToString() != "") { sb.Append(string.Format(ConfigurationManager.AppSettings["templateAnnuncioTabNav"], navRows1.ToString(), "")); } sbScript.Append(string.Format("var gxTab1 = gxTabs.gxSetTabs('page', [{0}]);", rScriptPageIds1.ToString())); } if (mostraGallery && Ann.ExistsFoto) { StringBuilder URLFoto = new StringBuilder(); StringBuilder URLThumb = new StringBuilder(); using (SqlCommand cmdImmobiliFoto = new SqlCommand()) { cmdImmobiliFoto.CommandText = "AgenzieSitiWeb_ImmobiliFoto_Elenco"; cmdImmobiliFoto.CommandType = CommandType.StoredProcedure; cmdImmobiliFoto.Connection = connImmo01; cmdImmobiliFoto.CommandTimeout = 600; cmdImmobiliFoto.Parameters.Add("@IDImmobile", SqlDbType.Int).Value = Ann.IDImmobile; cmdImmobiliFoto.Parameters.Add("@TipoFoto", SqlDbType.Char).Value = "F"; var adaptImmobiliFoto = new SqlDataAdapter(); adaptImmobiliFoto.SelectCommand = cmdImmobiliFoto; DataTable dTableImmobiliFoto = new DataTable(); adaptImmobiliFoto.Fill(dTableImmobiliFoto); adaptImmobiliFoto.Dispose(); foreach (DataRow dRowImmobiliFoto in dTableImmobiliFoto.Rows) { URLFoto.Append(string.Format(ConfigurationManager.AppSettings["templateAnnuncioURLFoto"], Ann.IDAgenzia.ToString(), dRowImmobiliFoto["URLFoto"])); URLThumb.Append(string.Format(ConfigurationManager.AppSettings["templateAnnuncioURLThumb"], Ann.IDAgenzia.ToString(), dRowImmobiliFoto["URLThumb"], "")); } dTableImmobiliFoto.Dispose(); } sb.Append(string.Format(ConfigurationManager.AppSettings["templateAnnuncioGallery"], "1", dicitura("Foto", lingua), URLFoto, URLThumb, "gx-gallery-slide", "")); sbScript.Append("gxInitGallery(\"gxGalleryContainer1\");"); } if (mostraPlanimetrie && (Ann.ExistsPlanimetria || nrPiantine > 0)) { StringBuilder URLPlanimetria = new StringBuilder(); StringBuilder URLPlanimetriaThumb = new StringBuilder(); if (Ann.UrlPlanimetria != "") { URLPlanimetriaThumb.Append(string.Format(ConfigurationManager.AppSettings["templateAnnuncioGalleryBottonePlanimetria"], Ann.UrlPlanimetria)); } foreach (DataRow dRowImmobiliFoto in dTableImmobiliPiantine.Rows) { URLPlanimetria.Append(string.Format(ConfigurationManager.AppSettings["templateAnnuncioURLFoto"], Ann.IDAgenzia.ToString(), dRowImmobiliFoto["URLFoto"])); URLPlanimetriaThumb.Append(string.Format(ConfigurationManager.AppSettings["templateAnnuncioURLThumb"], Ann.IDAgenzia.ToString(), dRowImmobiliFoto["URLThumb"], " gx-pm")); } if (nrPiantine > 0) { sb.Append(string.Format(ConfigurationManager.AppSettings["templateAnnuncioGallery"], "3", dicitura("Planimetrie", lingua), URLPlanimetria, URLPlanimetriaThumb, "gx-gallery-slide", " gx-pm")); sbScript.Append("gxInitGallery(\"gxGalleryContainer3\");"); } dTableImmobiliPiantine.Dispose(); } if (mostraVideo && Ann.ExistsVideo) { StringBuilder URLVideo = new StringBuilder(); StringBuilder URLVideoThumb = new StringBuilder(); for (int vx = 0; vx < Ann.VideoIDs.Count; vx++) { URLVideo.Append( string.Format(ConfigurationManager.AppSettings["templateAnnuncioURLVideo"], Ann.VideoIDs[vx])); URLVideoThumb.Append( string.Format(ConfigurationManager.AppSettings["templateAnnuncioURLVideoThumb"], Ann.VideoIDs[vx])); } sb.Append(string.Format(ConfigurationManager.AppSettings["templateAnnuncioGalleryVideo"], "2", dicitura("Video", lingua), URLVideo, URLVideoThumb, "gx-gallery-slide-video")); sbScript.Append("gxInitGalleryVideo(\"gxGalleryContainer2\");"); } if (mostraDescrizione) { if (mostraBottoneLeggiTutto) { sb.Append(string.Format(ConfigurationManager.AppSettings["templateAnnuncioDescriptionReadMore"], Ann.Descrizione, dicitura("ReadMore", lingua), dicitura("ReadLess", lingua))); } else { sb.Append(string.Format(ConfigurationManager.AppSettings["templateAnnuncioDescription"], Ann.Descrizione)); } } if (mostraDettagli || (mostraMappa && Ann.ExistsMappa) || mostraRichiestaInfo) { StringBuilder navRows2 = new StringBuilder(); StringBuilder rScriptPageIds2 = new StringBuilder(); if (mostraDettagli) { string navRowDettagli = string.Format(ConfigurationManager.AppSettings["templateAnnuncioTabNavRow"], "#gx-5", "gx-tab-dettagli", dicitura("Dettagli", lingua), ""); navRows2.Append(navRowDettagli); rScriptPageIds2.Append("'gx-5'"); } if (mostraRichiestaInfo) { string navRowRichiestaInfo = string.Format(ConfigurationManager.AppSettings["templateAnnuncioTabNavRow"], "#gx-6", "gx-tab-mail", dicitura("Informazioni", lingua), ""); navRows2.Append(navRowRichiestaInfo); if (rScriptPageIds2.ToString() != "") { rScriptPageIds2.Append(", "); } rScriptPageIds2.Append("'gx-6'"); } if (mostraMappa && Ann.ExistsMappa) { string navRowMappa = string.Format(ConfigurationManager.AppSettings["templateAnnuncioTabNavRow"], "#gx-7", "gx-tab-map", dicitura("Mappa", lingua), ""); navRows2.Append(navRowMappa); if (rScriptPageIds2.ToString() != "") { rScriptPageIds2.Append(", "); } rScriptPageIds2.Append("'gx-7'"); } if (navRows2.ToString() != "") { sb.Append(string.Format(ConfigurationManager.AppSettings["templateAnnuncioTabNav"], navRows2.ToString(), "")); } sbScript.Append(string.Format("var gxTab2 = gxTabs.gxSetTabs('page', [{0}]);", rScriptPageIds2.ToString())); } if (mostraDettagli) { string dettagli = getAnnuncioDettagli(Ann.IDImmobile, lingua, false); sb.Append( string.Format(ConfigurationManager.AppSettings["templateAnnuncioDettagli"], dicitura("Dettagli", lingua), dettagli) ); } if (mostraMappa && Ann.ExistsMappa) { string indirizzo = (Ann.PubblicaIndirizzo) ? Ann.Indirizzo : string.Empty; string civico = (Ann.PubblicaCivico) ? Ann.Civico : string.Empty; string mappa = ConfigurationManager.AppSettings["templateAnnuncioMappa"]; string templateIndirizzo = ConfigurationManager.AppSettings["templateAnnuncioMappaIndirizzo"]; templateIndirizzo = templateIndirizzo.Replace("{0}", indirizzo); templateIndirizzo = templateIndirizzo.Replace("{1}", civico); mappa = mappa.Replace("{0}", dicitura("Mappa", lingua)); mappa = mappa.Replace("{1}", (Ann.PubblicaIndirizzo) ? string.Format("{0}: {1} {2}", dicitura("Indirizzo", lingua), indirizzo, civico) : string.Empty ); mappa = mappa.Replace("{2}", Ann.Latitudine.ToString().Replace(",", ".")); mappa = mappa.Replace("{3}", Ann.Longitudine.ToString().Replace(",", ".")); mappa = mappa.Replace("{4}", (Ann.PubblicaIndirizzo) ? templateIndirizzo : string.Empty); mappa = mappa.Replace("{5}", ""); sb.Append(mappa); } if (mostraRichiestaInfo) { string richiestaInfo = string.Format(ConfigurationManager.AppSettings["templateAnnuncioRichiestaInfo"], dicitura("RichiediInformazioni", lingua), Ann.AgenziaNome, Ann.AgenziaIndirizzo + " - " + Ann.Comune, dicitura("Telefono", lingua), Ann.AgenziaTelefono, dicitura("NomeCognome", lingua), dicitura("Email", lingua), dicitura("Telefono", lingua), dicitura("Messaggio", lingua), dicitura("InformazioniDettagliate", lingua), mostraPrivacy ? string.Format(ConfigurationManager.AppSettings["templateEmailPrivacyLi"], string.Format(dicitura("HoLettoPrivacy", lingua), urlPrivacy), "ari") : "", lingua, Ann.IDImmobile, Ann.IDAgenzia, dicitura("Invia", lingua), dicitura("MailSendValid", lingua), dicitura("MailSendNoValid", lingua), dicitura("MailSendError", lingua), "", "ari", // annuncio richiesta info dicitura("Invia", lingua), dicitura("StoInviando", lingua), dicitura("Inviato", lingua) ); sb.Append(richiestaInfo); } } else { sb.Clear(); } } } catch (Exception ex) { sb.Clear(); throw ex; } if (sb.ToString() != "" && sbScript.ToString() != "") { sb.Append(string.Format("<script type=\"text/javascript\">{0}</script>", sbScript.ToString())); } sb.Append("<div style=\"clear:both\"></div>"); sb.Append("</div>"); return sb.ToString(); }
public static string HtmlAnnunciLista(string apikey, string urlPaginaRisultati, string urlPaginaAnnuncio, string urlPaginaCantiere, string querystring, string clientId, string clientClassName, int numeroColonne, string lingua, int numeroRisultati, bool mostraTitoli, bool mostraZonaQuartiere, bool mostraDescrizione, bool mostraDettagli, bool mostraBottoni, bool mostraAnnunciSalvati, bool mostraIcone, bool mostraPrivacy, string urlPrivacy, string paramSortBy, int paramStartRisultati, string paramAnnunciSalvati ) { StringBuilder sb = new StringBuilder(); sb.Append("<div class=\"gx-contenitore-lista-annunci\">"); if (querystring == null || querystring == "") { querystring = "?"; } if (paramSortBy == null) { paramSortBy = ""; } if (urlPaginaRisultati == null) { urlPaginaRisultati = ""; } if (urlPaginaAnnuncio == null) { urlPaginaAnnuncio = ""; } if (urlPaginaCantiere == null) { urlPaginaCantiere = ""; } if (paramAnnunciSalvati == null) { paramAnnunciSalvati = ""; } try { SqlConnection connImmo01 = new SqlConnection(ConfigurationManager.ConnectionStrings["DBIMMO01ConnectionString"].ConnectionString); connImmo01.Open(); using (connImmo01) { Int32 TotaleAnnunci = 0; string[] AnnunciSalvati = null; if (querystring.StartsWith("?AnnunciSalvati=") || paramAnnunciSalvati != "") { if (paramAnnunciSalvati != "") { AnnunciSalvati = paramAnnunciSalvati.Split('-'); } else { AnnunciSalvati = getQuerystringValue(querystring, "AnnunciSalvati", "").Split('-'); } TotaleAnnunci = AnnunciSalvati.Length; } else { using (SqlCommand cmdImmobiliCount = new SqlCommand()) { cmdImmobiliCount.CommandText = "AgenzieSitiWeb_Immobili_Count"; cmdImmobiliCount.CommandType = CommandType.StoredProcedure; cmdImmobiliCount.Connection = connImmo01; cmdImmobiliCount.CommandTimeout = 600; cmdImmobiliCount.Parameters.Add("@ApiKey", SqlDbType.UniqueIdentifier).Value = new System.Data.SqlTypes.SqlGuid(apikey); cmdImmobiliCount.Parameters.Add("@Contratto", SqlDbType.Char).Value = getQuerystringValue(querystring, "Contratto", ""); cmdImmobiliCount.Parameters.Add("@Zona", SqlDbType.NVarChar).Value = getQuerystringValue(querystring, "Zona", ""); cmdImmobiliCount.Parameters.Add("@Riferimento", SqlDbType.NVarChar).Value = getQuerystringValue(querystring, "Riferimento", ""); cmdImmobiliCount.Parameters.Add("@ClasseEnergetica", SqlDbType.Char).Value = getQuerystringValue(querystring, "ClasseEnergetica", ""); // values with null as default addParameterOrNullInProcedure(cmdImmobiliCount, "@IDProvincia", SqlDbType.Int, querystring, "Provincia"); addParameterOrNullInProcedure(cmdImmobiliCount, "@IDComune", SqlDbType.Int, querystring, "Comune"); addParameterOrNullInProcedure(cmdImmobiliCount, "@IDQuartiere", SqlDbType.Int, querystring, "Quartiere"); addParameterOrNullInProcedure(cmdImmobiliCount, "@IDCategoria", SqlDbType.Int, querystring, "Categoria"); addParameterOrNullInProcedure(cmdImmobiliCount, "@IDTipologia", SqlDbType.Int, querystring, "Tipologia"); addParameterOrNullInProcedure(cmdImmobiliCount, "@PrezzoMin", SqlDbType.Money, querystring, "PrezzoMin"); addParameterOrNullInProcedure(cmdImmobiliCount, "@PrezzoMax", SqlDbType.Money, querystring, "PrezzoMax"); addParameterOrNullInProcedure(cmdImmobiliCount, "@MQMin", SqlDbType.Int, querystring, "SuperficieMin"); addParameterOrNullInProcedure(cmdImmobiliCount, "@MQMax", SqlDbType.Int, querystring, "SuperficieMax"); addParameterOrNullInProcedure(cmdImmobiliCount, "@NrLocali", SqlDbType.TinyInt, querystring, "Locali"); addParameterOrNullInProcedure(cmdImmobiliCount, "@NrVani", SqlDbType.Decimal, querystring, "Vani"); addParameterOrNullInProcedure(cmdImmobiliCount, "@NrBagni", SqlDbType.Char, querystring, "Bagni"); if (getQuerystringValue(querystring, "FiltraNuovaCostruzione", null) == "true") { cmdImmobiliCount.Parameters.Add("@NuovaCostruzione", SqlDbType.Bit).Value = true; } else { addParameterOrNullInProcedure(cmdImmobiliCount, "@NuovaCostruzione", SqlDbType.Bit, querystring, "NuovaCostruzione"); } addParameterOrNullInProcedure(cmdImmobiliCount, "@Ammobiliato", SqlDbType.Bit, querystring, "Arredato"); addParameterOrNullInProcedure(cmdImmobiliCount, "@Ascensore", SqlDbType.Bit, querystring, "Ascensore"); addParameterOrNullInProcedure(cmdImmobiliCount, "@Asta", SqlDbType.Bit, querystring, "Asta"); addParameterOrNullInProcedure(cmdImmobiliCount, "@Balcone", SqlDbType.Bit, querystring, "Balcone"); addParameterOrNullInProcedure(cmdImmobiliCount, "@Box", SqlDbType.Bit, querystring, "Box"); addParameterOrNullInProcedure(cmdImmobiliCount, "@Caminetto", SqlDbType.Bit, querystring, "Caminetto"); addParameterOrNullInProcedure(cmdImmobiliCount, "@Cantina", SqlDbType.Bit, querystring, "Cantina"); addParameterOrNullInProcedure(cmdImmobiliCount, "@Giardino", SqlDbType.Bit, querystring, "Giardino"); addParameterOrNullInProcedure(cmdImmobiliCount, "@PostoAuto", SqlDbType.Bit, querystring, "Parcheggio"); addParameterOrNullInProcedure(cmdImmobiliCount, "@Permuta", SqlDbType.Bit, querystring, "Permuta"); addParameterOrNullInProcedure(cmdImmobiliCount, "@Piscina", SqlDbType.Bit, querystring, "Piscina"); if (getQuerystringValue(querystring, "FiltraPregio", null) == "true") { cmdImmobiliCount.Parameters.Add("@Pregio", SqlDbType.Bit).Value = true; } else { addParameterOrNullInProcedure(cmdImmobiliCount, "@Pregio", SqlDbType.Bit, querystring, "Pregio"); } addParameterOrNullInProcedure(cmdImmobiliCount, "@Riscaldamento", SqlDbType.Bit, querystring, "RiscaldamentoAutonomo"); addParameterOrNullInProcedure(cmdImmobiliCount, "@Soffitta", SqlDbType.Bit, querystring, "Soffitta"); addParameterOrNullInProcedure(cmdImmobiliCount, "@Taverna", SqlDbType.Bit, querystring, "Taverna"); addParameterOrNullInProcedure(cmdImmobiliCount, "@CentroLatitudine", SqlDbType.Float, querystring, "CentroLatitudine"); addParameterOrNullInProcedure(cmdImmobiliCount, "@CentroLongitudine", SqlDbType.Float, querystring, "CentroLongitudine"); addParameterOrNullInProcedure(cmdImmobiliCount, "@RaggioMetri", SqlDbType.Float, querystring, "RaggioMetri"); var adaptImmobiliCount = new SqlDataAdapter(); adaptImmobiliCount.SelectCommand = cmdImmobiliCount; DataTable dTableImmobiliCount = new DataTable(); adaptImmobiliCount.Fill(dTableImmobiliCount); adaptImmobiliCount.Dispose(); if (dTableImmobiliCount.Rows.Count > 0) { TotaleAnnunci = (int)dTableImmobiliCount.Rows[0]["TotaleAnnunci"]; } } } if (TotaleAnnunci > 0) { // trovati annunci string Ordinamento = getQuerystringValue(querystring, "Ordinamento", "DataDesc"); string qsOrdinamento = Ordinamento; if (paramSortBy != "") { Ordinamento = paramSortBy; qsOrdinamento = paramSortBy; } string SortDirection = "D"; string SortBy = "Data"; if (Ordinamento.EndsWith("Asc")) { SortDirection = "A"; Ordinamento = Ordinamento.Replace("Asc", ""); } if (Ordinamento.EndsWith("Desc")) { SortDirection = "D"; Ordinamento = Ordinamento.Replace("Desc", ""); } if (Ordinamento == "Data" || Ordinamento == "MQ" || Ordinamento == "Prezzo" || Ordinamento == "NrLocali") { SortBy = Ordinamento; } int startRisultati = Convert.ToInt32(getQuerystringValue(querystring, "StartRisultati", "0")); if (paramStartRisultati > -1) { startRisultati = paramStartRisultati; } if (startRisultati > TotaleAnnunci - 1) { startRisultati = 0; } StringBuilder listaImmobili = new StringBuilder(); if (AnnunciSalvati == null) { using (SqlCommand cmdImmobiliElenco = new SqlCommand()) { cmdImmobiliElenco.CommandText = "AgenzieSitiWeb_Immobili_Elenco"; cmdImmobiliElenco.CommandType = CommandType.StoredProcedure; cmdImmobiliElenco.Connection = connImmo01; cmdImmobiliElenco.CommandTimeout = 600; cmdImmobiliElenco.Parameters.Add("@ApiKey", SqlDbType.UniqueIdentifier).Value = new System.Data.SqlTypes.SqlGuid(apikey); cmdImmobiliElenco.Parameters.Add("@NumeroRisultati", SqlDbType.Int).Value = numeroRisultati; cmdImmobiliElenco.Parameters.Add("@StartRisultati", SqlDbType.Int).Value = startRisultati; cmdImmobiliElenco.Parameters.Add("@SortDirection", SqlDbType.Char).Value = SortDirection; cmdImmobiliElenco.Parameters.Add("@SortBy", SqlDbType.Char).Value = SortBy; cmdImmobiliElenco.Parameters.Add("@Contratto", SqlDbType.Char).Value = getQuerystringValue(querystring, "Contratto", ""); cmdImmobiliElenco.Parameters.Add("@Zona", SqlDbType.NVarChar).Value = getQuerystringValue(querystring, "Zona", ""); cmdImmobiliElenco.Parameters.Add("@Riferimento", SqlDbType.NVarChar).Value = getQuerystringValue(querystring, "Riferimento", ""); cmdImmobiliElenco.Parameters.Add("@ClasseEnergetica", SqlDbType.Char).Value = getQuerystringValue(querystring, "ClasseEnergetica", ""); // values with null as default addParameterOrNullInProcedure(cmdImmobiliElenco, "@IDProvincia", SqlDbType.Int, querystring, "Provincia"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@IDComune", SqlDbType.Int, querystring, "Comune"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@IDQuartiere", SqlDbType.Int, querystring, "Quartiere"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@IDCategoria", SqlDbType.Int, querystring, "Categoria"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@IDTipologia", SqlDbType.Int, querystring, "Tipologia"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@PrezzoMin", SqlDbType.Money, querystring, "PrezzoMin"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@PrezzoMax", SqlDbType.Money, querystring, "PrezzoMax"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@MQMin", SqlDbType.Int, querystring, "SuperficieMin"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@MQMax", SqlDbType.Int, querystring, "SuperficieMax"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@NrLocali", SqlDbType.TinyInt, querystring, "Locali"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@NrVani", SqlDbType.Decimal, querystring, "Vani"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@NrBagni", SqlDbType.Char, querystring, "Bagni"); if (getQuerystringValue(querystring, "FiltraNuovaCostruzione", null) == "true") { cmdImmobiliElenco.Parameters.Add("@NuovaCostruzione", SqlDbType.Bit).Value = true; } else { addParameterOrNullInProcedure(cmdImmobiliElenco, "@NuovaCostruzione", SqlDbType.Bit, querystring, "NuovaCostruzione"); } addParameterOrNullInProcedure(cmdImmobiliElenco, "@Ammobiliato", SqlDbType.Bit, querystring, "Arredato"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@Ascensore", SqlDbType.Bit, querystring, "Ascensore"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@Asta", SqlDbType.Bit, querystring, "Asta"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@Balcone", SqlDbType.Bit, querystring, "Balcone"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@Box", SqlDbType.Bit, querystring, "Box"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@Caminetto", SqlDbType.Bit, querystring, "Caminetto"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@Cantina", SqlDbType.Bit, querystring, "Cantina"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@Giardino", SqlDbType.Bit, querystring, "Giardino"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@PostoAuto", SqlDbType.Bit, querystring, "Parcheggio"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@Permuta", SqlDbType.Bit, querystring, "Permuta"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@Piscina", SqlDbType.Bit, querystring, "Piscina"); if (getQuerystringValue(querystring, "FiltraPregio", null) == "true") { cmdImmobiliElenco.Parameters.Add("@Pregio", SqlDbType.Bit).Value = true; } else { addParameterOrNullInProcedure(cmdImmobiliElenco, "@Pregio", SqlDbType.Bit, querystring, "Pregio"); } addParameterOrNullInProcedure(cmdImmobiliElenco, "@Riscaldamento", SqlDbType.Bit, querystring, "RiscaldamentoAutonomo"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@Soffitta", SqlDbType.Bit, querystring, "Soffitta"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@Taverna", SqlDbType.Bit, querystring, "Taverna"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@CentroLatitudine", SqlDbType.Float, querystring, "CentroLatitudine"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@CentroLongitudine", SqlDbType.Float, querystring, "CentroLongitudine"); addParameterOrNullInProcedure(cmdImmobiliElenco, "@RaggioMetri", SqlDbType.Float, querystring, "RaggioMetri"); var adaptImmobiliElenco = new SqlDataAdapter(); adaptImmobiliElenco.SelectCommand = cmdImmobiliElenco; DataTable dTableImmobiliElenco = new DataTable(); adaptImmobiliElenco.Fill(dTableImmobiliElenco); foreach (DataRow dRowImmobile in dTableImmobiliElenco.Rows) { Annuncio Ann = new Annuncio(); Ann.Load(connImmo01, (Int32)dRowImmobile["IDImmobile"], lingua); AnnuncioCantiere AnnCantiere = new AnnuncioCantiere(); if (urlPaginaCantiere != "" && Ann.IDCantiere > 0) { AnnCantiere.Load(connImmo01, Ann.IDCantiere, lingua); } listaImmobili.Append(getRigaAnnuncioLista(Ann, AnnCantiere, urlPaginaAnnuncio, urlPaginaCantiere, lingua, mostraTitoli, mostraZonaQuartiere, mostraDescrizione, mostraDettagli, mostraBottoni, mostraAnnunciSalvati, mostraIcone, numeroColonne)); } } } else { for (int x = 0; x < AnnunciSalvati.Length; x++) { Annuncio Ann = new Annuncio(); Ann.Load(connImmo01, Convert.ToInt32(AnnunciSalvati[x]), lingua); AnnuncioCantiere AnnCantiere = new AnnuncioCantiere(); if (urlPaginaCantiere != "" && Ann.IDCantiere > 0) { AnnCantiere.Load(connImmo01, Ann.IDCantiere, lingua); } listaImmobili.Append(getRigaAnnuncioLista(Ann, AnnCantiere, urlPaginaAnnuncio, urlPaginaCantiere, lingua, mostraTitoli, mostraZonaQuartiere, mostraDescrizione, mostraDettagli, mostraBottoni, mostraAnnunciSalvati, mostraIcone, numeroColonne)); } } string templateRisultatoRicercaHeader = ConfigurationManager.AppSettings["templateRisultatoRicercaHeader"]; string ordinamento = dicitura("Ordinamento", lingua) + ": "; sb.Append( string.Format(templateRisultatoRicercaHeader, TotaleAnnunci.ToString(), getOptionOrdinamento(qsOrdinamento, ordinamento, "DataDesc", lingua), getOptionOrdinamento(qsOrdinamento, ordinamento, "DataAsc", lingua), getOptionOrdinamento(qsOrdinamento, ordinamento, "MQDesc", lingua), getOptionOrdinamento(qsOrdinamento, ordinamento, "MQAsc", lingua), getOptionOrdinamento(qsOrdinamento, ordinamento, "NrLocaliDesc", lingua), getOptionOrdinamento(qsOrdinamento, ordinamento, "NrLocaliAsc", lingua), getOptionOrdinamento(qsOrdinamento, ordinamento, "PrezzoDesc", lingua), getOptionOrdinamento(qsOrdinamento, ordinamento, "PrezzoAsc", lingua), urlPaginaRisultati, (mostraAnnunciSalvati) ? string.Format(ConfigurationManager.AppSettings["templateRisultatiRicercaHeaderAnnunciSalvati"], dicitura("AnnunciSalvati", lingua), dicitura("NessunAnnuncioSalvato", lingua) , dicitura("AlertCookieAnnunciPreferiti", lingua), apikey) : ConfigurationManager.AppSettings["templateRisultatiRicercaHeaderNoAnnunciSalvati"], dicitura("AnnunciImmobiliari", lingua), numeroColonne, dicitura("AnnuncioSalvato", lingua), dicitura("SalvaAnnuncio", lingua), apikey ) ); sb.Append(listaImmobili.ToString()); sb.Append(getPaginationBlock(apikey, TotaleAnnunci, numeroRisultati, startRisultati, urlPaginaRisultati, querystring, lingua, false)); string templateEmailFormOl = string.Format(ConfigurationManager.AppSettings["templateEmailFormOl"], dicitura("NomeCognome", lingua), dicitura("Email", lingua), dicitura("Telefono", lingua), dicitura("Messaggio", lingua), dicitura("InformazioniDettagliate", lingua), mostraPrivacy ? string.Format(ConfigurationManager.AppSettings["templateEmailPrivacyLi"], string.Format(dicitura("HoLettoPrivacy", lingua), urlPrivacy), "ral") : "", dicitura("Invia", lingua), dicitura("MailSendValid", lingua), dicitura("MailSendNoValid", lingua), dicitura("MailSendError", lingua), "ral", dicitura("Invia", lingua), dicitura("StoInviando", lingua), dicitura("Inviato", lingua) ); sb.Append(string.Format(ConfigurationManager.AppSettings["templateEmailForm"], dicitura("RichiediInformazioni", lingua), templateEmailFormOl, "ral")); sb.Append(ConfigurationManager.AppSettings["templateEmailScript"]); } else { // messaggio annunci non trovati sb.Append(dicitura("ZeroAnnunci", lingua)); } } connImmo01.Close(); connImmo01.Dispose(); } catch (Exception ex) { sb.Clear(); throw ex; } sb.Append("<div style=\"clear:both\"></div>"); return sb.ToString(); }