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 HtmlAnnuncioCantiere(string apikey, int IDCantiere, string pathName, string clientId, string clientClassName, string lingua, string urlPaginaAnnuncio, string urlPaginaCantiere, bool mostraTitolo, bool mostraCapitolato, bool mostraDescrizione, bool mostraBottoneLeggiTutto, bool mostraMappa, bool mostraDettagli, bool mostraGallery, bool mostraVideo, bool mostraPlanimetrie, bool mostraSoluzioniAbitative, 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) { AnnuncioCantiere Ann = new AnnuncioCantiere(); if (IDCantiere == 0 && urlPaginaCantiere.Contains("{idcantiere}")) { IDCantiere = findIDInPathName(pathName, urlPaginaCantiere, "{idcantiere}"); } Ann.Load(connImmo01, IDCantiere, lingua); if (Ann.Error == false) { int nrPiantine = 0; DataTable dTableImmobiliPiantine = new DataTable(); using (SqlCommand cmdImmobiliPiantine = new SqlCommand()) { cmdImmobiliPiantine.CommandText = "AgenzieSitiWeb_CantieriFoto_Elenco"; cmdImmobiliPiantine.CommandType = CommandType.StoredProcedure; cmdImmobiliPiantine.Connection = connImmo01; cmdImmobiliPiantine.CommandTimeout = 600; cmdImmobiliPiantine.Parameters.Add("@IDCantiere", SqlDbType.Int).Value = Ann.IDCantiere; 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 : string.Format(dicitura("CantiereA", lingua), Ann.Comune), Ann.PrezzoLocaliMqRif); sb.Append(r1); } if (Ann.Capitolato != "" && mostraCapitolato) { string templateAnnuncioCapitolato = ConfigurationManager.AppSettings["templateAnnuncioCapitolato"]; sb.Append(string.Format(templateAnnuncioCapitolato, Ann.IDAgenzia, Ann.Capitolato, dicitura("Capitolato", lingua))); } if ((mostraGallery && Ann.ExistsFoto) || (mostraVideo && Ann.ExistsVideo) || mostraPlanimetrie) { 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 (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_CantieriFoto_Elenco"; cmdImmobiliFoto.CommandType = CommandType.StoredProcedure; cmdImmobiliFoto.Connection = connImmo01; cmdImmobiliFoto.CommandTimeout = 600; cmdImmobiliFoto.Parameters.Add("@IDCantiere", SqlDbType.Int).Value = Ann.IDCantiere; 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 || (mostraSoluzioniAbitative && Ann.NrSoluzioni > 0) || (mostraMappa && Ann.ExistsMappa) || mostraRichiestaInfo) { StringBuilder navRows2 = new StringBuilder(); StringBuilder rScriptPageIds2 = new StringBuilder(); if (mostraDettagli) { string navRowDettagli = string.Format(ConfigurationManager.AppSettings["templateAnnuncioSecondaTabNavRowCantiere"], "#gx-5", "gx-tab-cantiere-dettagli", dicitura("Dettagli", lingua), ""); navRows2.Append(navRowDettagli); rScriptPageIds2.Append("'gx-5'"); } if (mostraRichiestaInfo) { string navRowRichiestaInfo = string.Format(ConfigurationManager.AppSettings["templateAnnuncioSecondaTabNavRowCantiere"], "#gx-6", "gx-tab-cantiere-mail", dicitura("Informazioni", lingua), ""); navRows2.Append(navRowRichiestaInfo); if (rScriptPageIds2.ToString() != "") { rScriptPageIds2.Append(", "); } rScriptPageIds2.Append("'gx-6'"); } if (mostraSoluzioniAbitative && Ann.NrSoluzioni > 0) { string navRowSoluzioniAbitative = string.Format(ConfigurationManager.AppSettings["templateAnnuncioSecondaTabNavRowCantiere"], "#gx-soluzionicantieri", "gx-tab-soluzioni", dicitura("Soluzioni", lingua), ""); navRows2.Append(navRowSoluzioniAbitative); if (rScriptPageIds2.ToString() != "") { rScriptPageIds2.Append(", "); } rScriptPageIds2.Append("'gx-soluzionicantieri'"); } if (mostraMappa && Ann.ExistsMappa) { string navRowMappa = string.Format(ConfigurationManager.AppSettings["templateAnnuncioSecondaTabNavRowCantiere"], "#gx-7", "gx-tab-cantiere-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(), "-cantiere")); } sbScript.Append(string.Format("var gxTab2 = gxTabs.gxSetTabs('page', [{0}]);", rScriptPageIds2.ToString(), "")); } if (mostraDettagli) { string dettagli = getAnnuncioDettagli(Ann.IDCantiere, lingua, true); sb.Append( string.Format(ConfigurationManager.AppSettings["templateAnnuncioDettagliCantiere"], 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}", "-cantiere"); sb.Append(mappa); } if (mostraRichiestaInfo) { StringBuilder ufficioVendite = new StringBuilder(); if (Ann.UfficioVenditeCantiereComune != "") { ufficioVendite.Append(string.Format("<div>{0}</div>", Ann.UfficioVendite)); ufficioVendite.Append(string.Format("<div>{0}</div>", Ann.UfficioVenditeIndirizzo)); ufficioVendite.Append(string.Format("<div>{0} ({1})</div>", Ann.UfficioVenditeCantiereComune, Ann.UfficioVenditeCantiereSiglaProvincia)); if (Ann.UfficioVenditeTelefono != "") { ufficioVendite.Append(string.Format("<div>{0}: {0}</div>", dicitura("Telefono", lingua), Ann.UfficioVenditeTelefono)); } if (Ann.UfficioVenditeCellulare != "") { ufficioVendite.Append(string.Format("<div>{0}: {0}</div>", dicitura("Cellulare", lingua), Ann.UfficioVenditeCellulare)); } string mappa = ConfigurationManager.AppSettings["templateAnnuncioMappaUfficioVendite"]; ufficioVendite.Append(mappa.Replace("{0}", Ann.UfficioVenditeIndirizzo + ", " + Ann.UfficioVenditeCantiereComune + ", " + Ann.UfficioVenditeCantiereSiglaProvincia)); } string richiestaInfo = string.Format(ConfigurationManager.AppSettings["templateAnnuncioRichiestaInfoCantiere"], 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), "aric") : "", lingua, Ann.IDCantiere, Ann.IDAgenzia, dicitura("Invia", lingua), dicitura("MailSendValid", lingua), dicitura("MailSendNoValid", lingua), dicitura("MailSendError", lingua), (ufficioVendite.ToString() != "") ? string.Format(ConfigurationManager.AppSettings["templateAnnuncioCantiereUfficioVendite"], dicitura("UfficioVendite", lingua), ufficioVendite.ToString()) : "", "aric" // annuncio richiesta info cantiere , dicitura("Invia", lingua), dicitura("StoInviando", lingua), dicitura("Inviato", lingua) ); sb.Append(richiestaInfo); } if (mostraSoluzioniAbitative && Ann.NrSoluzioni > 0) { StringBuilder soluzioniAbitative = new StringBuilder(); using (SqlCommand cmdCantieriSoluzioni = new SqlCommand()) { cmdCantieriSoluzioni.CommandText = "AgenzieSitiWeb_CantieriSoluzioni_Elenco"; cmdCantieriSoluzioni.CommandType = CommandType.StoredProcedure; cmdCantieriSoluzioni.Connection = connImmo01; cmdCantieriSoluzioni.CommandTimeout = 600; cmdCantieriSoluzioni.Parameters.Add("@IDCantiere", SqlDbType.Int).Value = Ann.IDCantiere; cmdCantieriSoluzioni.Parameters.Add("@IDAgenzia", SqlDbType.Int).Value = Ann.IDAgenzia; var adaptCantieriSoluzioni = new SqlDataAdapter(); adaptCantieriSoluzioni.SelectCommand = cmdCantieriSoluzioni; DataTable dTableCantieriSoluzioni = new DataTable(); adaptCantieriSoluzioni.Fill(dTableCantieriSoluzioni); adaptCantieriSoluzioni.Dispose(); foreach (DataRow dRowCantieriSoluzioni in dTableCantieriSoluzioni.Rows) { int IDCantiereSoluzione = (int)dRowCantieriSoluzioni["IDCantiereSoluzione"]; AnnuncioCantiereSoluzione AnnCantiereSoluzione = new AnnuncioCantiereSoluzione(); AnnCantiereSoluzione.Load(connImmo01, IDCantiereSoluzione, lingua); soluzioniAbitative.Append(getRigaAnnuncioCantiereSoluzione(connImmo01, AnnCantiereSoluzione, urlPaginaAnnuncio, lingua, 3)); } dTableCantieriSoluzioni.Dispose(); } sb.Append( string.Format(ConfigurationManager.AppSettings["templateAnnuncioCantiereSoluzioniAbitative"], dicitura("SoluzioniAbitative", lingua) + " (" + Ann.NrSoluzioni.ToString() + ")", soluzioniAbitative.ToString()) ); 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), "racs") : "", dicitura("Invia", lingua), dicitura("MailSendValid", lingua), dicitura("MailSendNoValid", lingua), dicitura("MailSendError", lingua), "racs", dicitura("Invia", lingua), dicitura("StoInviando", lingua), dicitura("Inviato", lingua) ); sb.Append(string.Format(ConfigurationManager.AppSettings["templateEmailForm"], dicitura("RichiediInformazioni", lingua), templateEmailFormOl, "racs")); sb.Append(ConfigurationManager.AppSettings["templateEmailScript"]); } } else { sb.Clear(); } } connImmo01.Close(); connImmo01.Dispose(); } 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(); }