public void UpdateVereniging(ClubCloud_Vereniging entity) { using (new SPMonitoredScope("Verenigingen UpdateVereniging")) { if (SPContext.Current.Web.CurrentUser != null) { int bondsnummer; ClubCloud_Setting Settings = null; if (int.TryParse(SPContext.Current.Web.CurrentUser.UserId.NameId, out bondsnummer)) { Settings = Client.GetSettingById(bondsnummer); } if (Settings != null && Settings.VerenigingId != null) { Settings.ClubCloud_Vereniging = Client.GetVerenigingById(Settings.VerenigingId.Value, false, Settings); if (Settings.ClubCloud_Vereniging != null) { entity.AccommodatieId = Settings.ClubCloud_Vereniging.AccommodatieId.Value; } Client.SetVereniging(entity, Settings); this.OnDataSourceViewChanged(EventArgs.Empty); } } } }
public async Task <Vereniging> GetVerenigingByLocatieAsync(double Longitude, double Latitude) { Vereniging vereniging = new Vereniging { Id = Guid.NewGuid() }; ClubCloud_Vereniging ccVereniging = await client.GetVerenigingByLocationAsync("00000000", Latitude, Longitude, false); if (ccVereniging != null) { vereniging = new Vereniging { Id = ccVereniging.Id, Naam = ccVereniging.Naam, Nummer = ccVereniging.Nummer, AccommodatieId = ccVereniging.AccommodatieId.Value }; } else { await Task.Delay(5000); if (vereniging == null) { vereniging = await GetVerenigingByLocatieAsync(Longitude, Latitude); } } return(vereniging); }
public ClubCloud_Vereniging GetVerenigingForAddressById(System.Guid Id, bool refresh = false, ClubCloud_Setting settings = null) { if (settings != null) { ValidateSettings(ref settings); } ClubCloud_Address entity = null; ClubCloud_Vereniging result = null; using (new SPMonitoredScope("Addressen GetVerenigingForAddressById")) { try { entity = beheerModel.ClubCloud_Addressen.Find(Id); if (entity != null && entity.ClubCloud_Vereniging == null) { beheerModel.Entry(entity).Reference(e => e.ClubCloud_Vereniging).Load(); } if (entity != null) { result = entity.ClubCloud_Vereniging; } if (result == null || refresh) { result = GetVerenigingForAddressById(settings.Id.ToString(), Id, refresh, settings); } if (result != null) { return(result); } } catch (Exception ex) { Logger.WriteLog(Logger.Category.Unexpected, ex.Source, ex.Message); } finally { if (entity != null) { try { beheerModel.ObjectContext.Detach(entity); } catch {} } if (result != null) { try { beheerModel.ObjectContext.Detach(result); } catch {} } } } return(new ClubCloud_Vereniging()); }
protected void lst_verenigingen_SelectedIndexChanged(object sender, EventArgs e) { if (Settings != null) { Guid Id = Guid.Parse(lst_verenigingen.SelectedDataKey.Value.ToString()); ClubCloud_Vereniging vereniging = Client.GetVerenigingById(Id, false, Settings); fvw_vereniging.DataSource = new List <ClubCloud_Vereniging> { vereniging }; fvw_vereniging.DataBind(); } }
public ClubCloud_Vereniging GetVerenigingByLocation(string bondsnummer, double Latitude, double Longitude, bool refresh = false) { ClubCloud_Vereniging vereniging = new ClubCloud_Vereniging(); if (SPContext.Current != null && SPContext.Current.Web != null) { ClubCloudServiceClient client = new ClubCloudServiceClient(SPServiceContext.Current); vereniging = client.GetVerenigingByLocation(bondsnummer, Latitude, Longitude, refresh); } return(vereniging); }
public ClubCloud_Vereniging GetVerenigingByNummer(string bondsnummer, string verenigingNummer, bool refresh = false) { ClubCloud_Vereniging vereniging = new ClubCloud_Vereniging(); if (SPContext.Current != null && SPContext.Current.Web != null) { ClubCloudServiceClient client = new ClubCloudServiceClient(SPServiceContext.Current); vereniging = client.GetVerenigingByNummer(bondsnummer, verenigingNummer, refresh); } return(vereniging); }
public async Task <Vereniging> GetVerenigingByNummerAsync(string verenigingNummer) { Vereniging vereniging = new Vereniging { Id = Guid.NewGuid() }; ClubCloud_Vereniging ccVereniging = await client.GetVerenigingByNummerAsync("00000000", verenigingNummer, false); vereniging = new Vereniging { Id = ccVereniging.Id, Naam = ccVereniging.Naam, Nummer = ccVereniging.Nummer, AccommodatieId = ccVereniging.AccommodatieId.Value }; return(vereniging); }
public ClubCloud_Vereniging GetVerenigingById(string bondsnummer, Guid verenigingId, bool refresh = false) { ClubCloud_Vereniging vereniging = new ClubCloud_Vereniging(); if (SPContext.Current != null && SPContext.Current.Web != null) { ClubCloudServiceClient client = new ClubCloudServiceClient(SPServiceContext.Current); vereniging = client.GetVerenigingById(verenigingId, refresh, new ClubCloud_Setting { Id = int.Parse(bondsnummer), VerenigingId = verenigingId }); } return(vereniging); }
protected void ButtonGebruikers_Click(object sender, EventArgs e) { // Validate this.Validate(); if (!this.IsValid) { return; } // We are valid // Register the database using (SPLongOperation operation = new SPLongOperation(this)) { operation.LeadingHTML = HttpContext.GetGlobalResourceObject("ClubCloud.Service.ServiceAdminResources", "UsersSettingsCreateOperationLeadingHtml", CultureInfo.CurrentCulture).ToString(); operation.TrailingHTML = HttpContext.GetGlobalResourceObject("ClubCloud.Service.ServiceAdminResources", "UsersSettingsCreateOperationTrailingHtml", CultureInfo.CurrentCulture).ToString(); operation.Begin(); string nummer = tbx_verenigingsnummer.Text; if (!string.IsNullOrWhiteSpace(nummer)) { int pageNum = 1; bool moreRecords = true; while (moreRecords) { try { moreRecords = ServiceClient.GebruikersUpdate("12073385", nummer, pageNum, true); pageNum++; } catch (Exception) { moreRecords = true; } } try { ClubCloud_Vereniging vereniging = ServiceClient.GetVerenigingByNummer("12073385", nummer, true); ServiceClient.LidmaatschappenUpdate("12073385", vereniging.Id, true); } catch { } } operation.End(string.Format(CultureInfo.InvariantCulture, "/_admin/ClubCloud.Service/ManageMetaData.aspx?id={0}", SPHttpUtility.UrlKeyValueEncode(this.ServiceApplication.Id))); } }
public bool SetVerenigingForAddressById(ClubCloud_Vereniging Vereniging, System.Guid Id, bool refresh = false, ClubCloud_Setting settings = null) { if (settings != null) { ValidateSettings(ref settings); } ClubCloud_Address entity = null; bool succes = false; using (new SPMonitoredScope("Addressen SetVerenigingForAddressById")) { try { entity = beheerModel.ClubCloud_Addressen.Find(Id); if (entity != null && entity.ClubCloud_Vereniging == null) { beheerModel.Entry(entity).Reference(e => e.ClubCloud_Vereniging).Load(); } if (entity != null) { entity.ClubCloud_Vereniging = Vereniging; } beheerModel.SaveChanges(); succes = true; } catch (Exception ex) { Logger.WriteLog(Logger.Category.Unexpected, ex.Source, ex.Message); } finally { if (entity != null) { try { beheerModel.ObjectContext.Detach(entity); } catch {} } } } return(succes); }
protected override System.Collections.IEnumerable ExecuteSelect(System.Web.UI.DataSourceSelectArguments arguments) { if (this.WhereParameters.Count > 0) { DataSet ds = new DataSet("result"); DataView dataView = new DataView(); string number = this.WhereParameters[0].DefaultValue; ClubCloud_Vereniging vereniging = Client.GetVerenigingByNummer("00000000", number, false); if (vereniging != null) { ObjectToTableConvert(vereniging, ref ds, "Verenigingen"); dataView = new DataView(ds.Tables["Verenigingen"]); } return((IEnumerable)dataView); } return(null); }
public bool DeleteVereniging(ClubCloud_Vereniging entity) { using (new SPMonitoredScope("Verenigingen DeleteVereniging")) { if (SPContext.Current.Web.CurrentUser != null) { int bondsnummer; ClubCloud_Setting Settings = null; if (int.TryParse(SPContext.Current.Web.CurrentUser.UserId.NameId, out bondsnummer)) { Settings = Client.GetSettingById(bondsnummer); } if (Settings != null && Settings.VerenigingId != null) { return(Client.DeleteVereniging(entity, Settings)); } } } return(false); }
internal override void SetPageData() { if (Settings != null) // && Settings.mijnknltb_allow) { ClubCloud_Vereniging vereniging = null; try { vereniging = Client.GetVerenigingById(Settings.VerenigingId.Value, false, Settings); vereniging.ClubCloud_Accommodatie = Client.GetAccommodatieById(vereniging.AccommodatieId.Value); vereniging.ClubCloud_Lidmaatschap = new System.Collections.ObjectModel.ObservableCollection <ClubCloud_Lidmaatschap>(Client.GetLidmaatschapByGebruikerId(userId, vereniging.Id, Settings.GebruikerId.Value, false)); } catch { } if (vereniging != null) { try { //vereniging.ClubCloud_Lidmaatschap.First().VerenigingId lst_verenigingen.DataSource = vereniging.ClubCloud_Lidmaatschap; lst_verenigingen.DataBind(); } catch { } try { fvw_vereniging.DataSource = new List <ClubCloud_Vereniging> { vereniging }; fvw_vereniging.DataBind(); } catch { } try { fvw_accomodatie.DataSource = new List <ClubCloud_Accommodatie> { vereniging.ClubCloud_Accommodatie }; fvw_accomodatie.DataBind(); } catch { } /* * try * { * List<ClubCloud_Vereniging_BestuursLid> leden = Client.GetBestuurForVereniging(userId, verenigingen[0].VerenigingId, false); * * if (leden != null && leden.Count > 0) * { * //Verenigingsbestuur * List<ClubCloud_Vereniging_BestuursLid> Verenigingsbestuur = leden.Where(l => l.Orgaan.Equals("Verenigingsbestuur", StringComparison.OrdinalIgnoreCase) == true).OrderBy(b => b.VolledigeNaam).ToList(); * * //Ledenadministratie * List<ClubCloud_Vereniging_BestuursLid> Ledenadministratie = leden.Where(l => l.Functie.Contains("Ledenadministratie") == true).OrderBy(b => b.VolledigeNaam).ToList(); * * //VCL * List<ClubCloud_Vereniging_BestuursLid> VCL = leden.Where(l => l.Functie.Contains("VCL") == true).OrderBy(b => b.VolledigeNaam).ToList(); * * //Wedstrijdleider * List<ClubCloud_Vereniging_BestuursLid> Wedstrijdleider = leden.Where(l => l.Functie.Contains("Wedstrijdleider") == true).OrderBy(b => b.VolledigeNaam).ToList(); * * //Verenigingstennisleraar * List<ClubCloud_Vereniging_BestuursLid> Verenigingstennisleraar = leden.Where(l => l.Orgaan.Equals("Verenigingstennisleraar", StringComparison.OrdinalIgnoreCase) == true).OrderBy(b => b.VolledigeNaam).ToList(); * * //Verenigingsscheidsrechter * List<ClubCloud_Vereniging_BestuursLid> Verenigingsscheidsrechter = leden.Where(l => l.Orgaan.Equals("Verenigingsscheidsrechter", StringComparison.OrdinalIgnoreCase) == true).OrderBy(b => b.VolledigeNaam).ToList(); * } * * foreach (ClubCloud_Vereniging_BestuursLid lid in leden.Where(l => l.Functie.Equals("Functionaris Uitslagengedelegeerde", StringComparison.OrdinalIgnoreCase) == false)) * { * string VolledigeNaam = lid.VolledigeNaam; * } * } * catch { } */ } } else { pnl_authorize.Visible = true; } }
protected void wzd_aanmelden_FinishButtonClick(object sender, WizardNavigationEventArgs e) { //using (SPLongOperation operation = new SPLongOperation(this.Page)) //{ // operation.Begin(); using (new SPMonitoredScope("Mailing SendMail")) { try { XDocument xmlInputData = new XDocument(new XElement("Properties")); XElement elements = new XElement("Elements", new object[] { new XElement("HEADER"), new XElement("FEATURED_AREA"), new XElement("VERENIGING"), new XElement("GEBRUIKER"), new XElement("OPMERKINGEN"), new XElement("BOTTOM_CALL_TO_ACTION"), new XElement("FOOTER") }); xmlInputData.Root.Add(elements); ClubCloud_Vereniging vereniging = new ClubCloud_Vereniging(); string verenigingsnummer = tbx_verenigingsnummer.Text; string number = string.Empty; int parsed = 0; if (verenigingsnummer.IndexOf('-') > 0) { number = verenigingsnummer.Split('-')[0].Trim(); } else { number = verenigingsnummer; } if (int.TryParse(number, out parsed)) { try { vereniging = Client.GetVerenigingByNummer("00000000", parsed.ToString(), false); } catch (Exception ex) { Logger.WriteLog(Logger.Category.Unexpected, ex.Source, ex.Message); } } if (vereniging == null) { vereniging = new ClubCloud_Vereniging(); } if (vereniging.Nummer != number) { vereniging.Nummer = number; } TextBox vereniging_naam = (TextBox)fvw_vereniging.FindControl("Naam"); string verenigingnaam = vereniging_naam.Text; if (vereniging.Naam != vereniging_naam.Text && !string.IsNullOrWhiteSpace(vereniging_naam.Text)) { vereniging.Naam = vereniging_naam.Text; } TextBox vereniging_KvKNummer = (TextBox)fvw_vereniging.FindControl("KvKNummer"); string verenigingkvknummer = vereniging_KvKNummer.Text; if (vereniging.KvKnummer != vereniging_KvKNummer.Text && !string.IsNullOrWhiteSpace(vereniging_KvKNummer.Text)) { vereniging.KvKnummer = vereniging_KvKNummer.Text; } TextBox vereniging_KvKPlaats = (TextBox)fvw_vereniging.FindControl("KvKPlaats"); string verenigingkvkplaats = vereniging_KvKPlaats.Text; if (vereniging.KvKplaats != vereniging_KvKPlaats.Text && !string.IsNullOrWhiteSpace(vereniging_KvKPlaats.Text)) { vereniging.KvKplaats = vereniging_KvKPlaats.Text; } TextBox vereniging_BankNummer = (TextBox)fvw_vereniging.FindControl("BankNummer"); string verenigingbanknummer = vereniging_BankNummer.Text; if (vereniging.BankNummer != vereniging_BankNummer.Text && !string.IsNullOrWhiteSpace(vereniging_BankNummer.Text)) { vereniging.BankNummer = vereniging_BankNummer.Text; } TextBox vereniging_BankIban = (TextBox)fvw_vereniging.FindControl("BankIban"); string verenigingbankiban = vereniging_BankIban.Text; if (vereniging.BankIban != vereniging_BankIban.Text && !string.IsNullOrWhiteSpace(vereniging_BankIban.Text)) { vereniging.BankIban = vereniging_BankIban.Text; } TextBox vereniging_BankPlaats = (TextBox)fvw_vereniging.FindControl("BankPlaats"); string verenigingbankplaats = vereniging_BankPlaats.Text; if (vereniging.BankPlaats != vereniging_BankPlaats.Text && !string.IsNullOrWhiteSpace(vereniging_BankPlaats.Text)) { vereniging.BankPlaats = vereniging_BankPlaats.Text; } TextBox vereniging_TelefoonOverdag = (TextBox)fvw_vereniging.FindControl("TelefoonOverdag"); string verenigingtelefoonoverdag = vereniging_TelefoonOverdag.Text; if (vereniging.TelefoonOverdag != vereniging_TelefoonOverdag.Text && !string.IsNullOrWhiteSpace(vereniging_TelefoonOverdag.Text)) { vereniging.TelefoonOverdag = vereniging_TelefoonOverdag.Text; } TextBox vereniging_TelefoonAvond = (TextBox)fvw_vereniging.FindControl("TelefoonAvond"); string verenigingtelefoonavond = vereniging_TelefoonAvond.Text; if (vereniging.TelefoonAvond != vereniging_TelefoonAvond.Text && !string.IsNullOrWhiteSpace(vereniging_TelefoonAvond.Text)) { vereniging.TelefoonAvond = vereniging_TelefoonAvond.Text; } TextBox vereniging_Email = (TextBox)fvw_vereniging.FindControl("Email"); string verenigingemail = vereniging_Email.Text; if (vereniging.EmailKNLTB != vereniging_Email.Text && !string.IsNullOrWhiteSpace(vereniging_Email.Text)) { vereniging.EmailKNLTB = vereniging_Email.Text; } xmlInputData.Root.Add(vereniging.ToXElement <ClubCloud_Vereniging>()); ClubCloud_Gebruiker gebruiker = new ClubCloud_Gebruiker(); TextBox persoon_knltb = (TextBox)fvw_persoon.FindControl("KNLTBNummer"); string persoonknltb = persoon_knltb.Text; string lm = string.Empty; parsed = 0; if (int.TryParse(persoonknltb, out parsed)) { lm = "luckyme"; } /* * { * try * { * gebruiker = Client.GetGebruikerByNummer("00000000", vereniging.Id, parsed.ToString(), false); * } * catch (Exception ex) * { * Logger.WriteLog(Logger.Category.Unexpected, ex.Source, ex.Message); * } * } */ if (gebruiker == null) { gebruiker = new ClubCloud_Gebruiker(); } if (gebruiker.Bondsnummer != parsed.ToString()) { gebruiker.Bondsnummer = parsed.ToString(); } TextBox persoon_naam = (TextBox)fvw_persoon.FindControl("Naam"); string persoonnaam = persoon_naam.Text; if (gebruiker.Volledigenaam != persoon_naam.Text && !string.IsNullOrWhiteSpace(persoon_naam.Text)) { gebruiker.Volledigenaam = persoon_naam.Text; } TextBox persoon_TelefoonOverdag = (TextBox)fvw_persoon.FindControl("TelefoonOverdag"); string persoontelefoonoverdag = persoon_TelefoonOverdag.Text; if (gebruiker.TelefoonOverdag != persoon_TelefoonOverdag.Text && !string.IsNullOrWhiteSpace(persoon_TelefoonOverdag.Text)) { gebruiker.TelefoonOverdag = persoon_TelefoonOverdag.Text; } TextBox persoon_TelefoonAvond = (TextBox)fvw_persoon.FindControl("TelefoonAvond"); string persoontelefoonavond = persoon_TelefoonAvond.Text; if (gebruiker.TelefoonAvond != persoon_TelefoonAvond.Text && !string.IsNullOrWhiteSpace(persoon_TelefoonAvond.Text)) { gebruiker.TelefoonAvond = persoon_TelefoonAvond.Text; } TextBox persoon_Email = (TextBox)fvw_persoon.FindControl("Email"); string persoonemail = persoon_Email.Text; if (gebruiker.EmailKNLTB != persoon_Email.Text && !string.IsNullOrWhiteSpace(persoon_Email.Text)) { gebruiker.EmailKNLTB = persoon_Email.Text; } xmlInputData.Root.Add(gebruiker.ToXElement <ClubCloud_Gebruiker>()); XElement aanmelden = new XElement("Aanmelden", new object[] { new XElement("Opmerkingen", opmerkingen.Text), new XElement("Akkoord", akkoord.Checked), new XElement("Datum", DateTime.Now.ToString()), new XElement("IP", GetIPAddress()) }); xmlInputData.Root.Add(aanmelden); EmailTracking tracking = new EmailTracking { CampaignName = "Aanmelden", CampaignSource = "WebSite", ClientId = vereniging.Id, RecipientId = vereniging.Nummer, TrackingId = "UA-9934149-20", CampagneContent = "aanmelden", CampagneMedium = "email", CampagneTerm = "aanmelden" }; xmlInputData.Root.Add(tracking.ToXElement <EmailTracking>()); XElement content = new XElement("Content", new XElement("Subject", string.Format("Aanmelden bij ClubCloud voor {0} ({1})", vereniging.Naam, vereniging.Nummer))); xmlInputData.Root.Add(content); SPSecurity.RunWithElevatedPrivileges(delegate() { try { using (SPSite currentSite = new SPSite(SPContext.Current.Site.ID, SPUrlZone.Internet)) { using (SPWeb web = currentSite.OpenWeb(SPContext.Current.Web.ID)) { SPDocumentLibrary SiteAssets = null; SPDocumentLibrary SitePages = null; SPFolder Templates = null; SPFolder Online = null; SPFile Aanmelden = null; SPFile Webversion = null; SPItem WebversionItem = null; XmlReader template = null; SPList assets = web.Lists.TryGetList("SiteAssets"); if (assets == null) { assets = web.Lists.TryGetList("Siteactiva"); } if (assets != null) { SiteAssets = (SPDocumentLibrary)assets; } if (SiteAssets != null) { Templates = SiteAssets.RootFolder.SubFolders["Templates"]; } SPList pages = web.Lists.TryGetList("SitePages"); if (pages == null) { pages = web.Lists.TryGetList("Sitepagina's"); } if (pages != null) { SitePages = (SPDocumentLibrary)pages; } if (SitePages != null) { Online = SitePages.RootFolder.SubFolders["Online"]; } if (Templates != null && Templates.Exists) { Aanmelden = Templates.Files["aanmelden.xsl"]; } if (Aanmelden != null && Aanmelden.Exists) { template = XmlReader.Create(Aanmelden.OpenBinaryStream()); } if (template == null) { throw new FileNotFoundException("Template not Found", Aanmelden.Url); } string body = GenerateEmailBody(template, xmlInputData); web.AllowUnsafeUpdates = true; if (Online != null && Online.Exists) { Webversion = Online.Files.Add(Guid.NewGuid() + ".aspx", System.Text.Encoding.UTF8.GetBytes(body), true); WebversionItem = pages.GetItemByUniqueId(Webversion.UniqueId); WebversionItem["Title"] = string.Format("Aanmelden bij ClubCloud voor {0} ({1})", vereniging.Naam, vereniging.Nummer); WebversionItem.Update(); } if (Webversion != null && Webversion.Exists) { XElement online = new XElement("Online", new object[] { new XElement("WebVersion", string.Format("{0}/{1}", currentSite.Url, Webversion.Url)) }); xmlInputData.Root.Add(online); } if (Aanmelden != null && Aanmelden.Exists) { template = XmlReader.Create(Aanmelden.OpenBinaryStream()); } body = GenerateEmailBody(template, xmlInputData); web.AllowUnsafeUpdates = false; MailMessage message = Email.CreateMailMessage(body); MailAddress tovereniging = new MailAddress(vereniging.EmailKNLTB, vereniging.Naam, Encoding.UTF8); message.To.Add(tovereniging); MailAddress topersoon = new MailAddress(gebruiker.EmailKNLTB, gebruiker.Volledigenaam, Encoding.UTF8); message.To.Add(topersoon); message.CC.Add(new MailAddress("*****@*****.**", "Aanmelden bij ClubCloud")); message.From = new MailAddress("*****@*****.**", "Aanmelden bij ClubCloud"); message.Subject = string.Format("Aanmelden bij ClubCloud voor {0}({1})", vereniging.Naam, vereniging.Nummer); message.Priority = MailPriority.Normal; message.ReplyToList.Add(new MailAddress("*****@*****.**", "Aanmelden bij ClubCloud")); message.Sender = new MailAddress("*****@*****.**", "Aanmelden bij ClubCloud"); SmtpClient client = new SmtpClient(ZimbraConfiguration.Server.SendMailHost, zimbraconfiguration.Server.SendMailPort); client.Credentials = new System.Net.NetworkCredential(ZimbraConfiguration.Server.SendMailUserName, ZimbraConfiguration.Server.SendMailPassword); client.DeliveryMethod = SmtpDeliveryMethod.Network; message.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure | DeliveryNotificationOptions.OnSuccess | DeliveryNotificationOptions.Delay; Email.Send(message, client); } } } catch (Exception ex) { Logger.WriteLog(Logger.Category.Unexpected, ex.Source, ex.Message); } }); } catch (Exception ex) { Logger.WriteLog(Logger.Category.Unexpected, ex.Source, ex.Message); } } //operation.End("bedankt.aspx"); //} }
protected void aantal_TextChanged(object sender, EventArgs e) { ClubCloud_Vereniging vereniging = Client.GetVerenigingByNummer("0000000", "82503", false); ClubCloud_Afhang settings = Client.GetVerenigingAfhangSettings("00000000", vereniging.Id, false); //Client.VerenigingenUpdate("12073385", true); }
public ClubCloud_Vereniging SelectVereniging([QueryString] Guid?Id) //(string Id) { ClubCloud_Vereniging entity = null; using (new SPMonitoredScope("Verenigingen SelectVereniging")) { if (SPContext.Current.Web.CurrentUser != null) { int bondsnummer; ClubCloud_Setting Settings = null; if (int.TryParse(SPContext.Current.Web.CurrentUser.UserId.NameId, out bondsnummer)) { Settings = Client.GetSettingById(bondsnummer); } if (Settings != null && Settings.VerenigingId != null) { Settings.ClubCloud_Vereniging = Client.GetVerenigingById(Settings.VerenigingId.Value, false, Settings); if (Settings.ClubCloud_Vereniging != null) { if (Id == null) { Guid queryId = Guid.Empty; foreach (Parameter where in WhereParameters) { if (where.Name == "Id") { if (Guid.TryParse(where.DefaultValue, out queryId)) { break; } } } Id = queryId; } if (Id == Guid.Empty) { Id = Settings.VerenigingId.Value; } entity = Client.GetVerenigingById(Id.Value, false, Settings); if (entity != null || entity.Id != Guid.Empty) { entity.ClubCloud_Functionaris = new System.Collections.ObjectModel.ObservableCollection <ClubCloud_Functionaris>(Client.GetFunctionarissenForVerenigingById(Id.Value, false, Settings)); entity.ClubCloud_Lidmaatschap = new System.Collections.ObjectModel.ObservableCollection <ClubCloud_Lidmaatschap>(Client.GetLidmaatschappenForVerenigingById(Id.Value, false, Settings)); entity.ClubCloud_Bestuursorgaan = new System.Collections.ObjectModel.ObservableCollection <ClubCloud_Bestuursorgaan>(Client.GetBestuursorganenForVerenigingById(Id.Value, false, Settings)); entity.ClubCloud_District = Client.GetDistrictForVerenigingById(Id.Value, false, Settings); entity.ClubCloud_Rechtsvorm = Client.GetRechtsvormForVerenigingById(Id.Value, false, Settings); entity.ClubCloud_Accommodatie = Client.GetAccommodatieForVerenigingById(Id.Value, false, Settings); entity.ClubCloud_Address = new System.Collections.ObjectModel.ObservableCollection <ClubCloud_Address>(Client.GetAddressenForVerenigingById(Id.Value, false, Settings)); entity.ClubCloud_Regio = Client.GetRegioForVerenigingById(Id.Value, false, Settings); entity.ClubCloud_Afhang = new System.Collections.ObjectModel.ObservableCollection <ClubCloud_Afhang>(Client.GetAfhangenForVerenigingById(Id.Value, false, Settings)); entity.ClubCloud_Sponsor = new System.Collections.ObjectModel.ObservableCollection <ClubCloud_Sponsor>(Client.GetSponsorenForVerenigingById(Id.Value, false, Settings)); entity.ClubCloud_Baanschema = new System.Collections.ObjectModel.ObservableCollection <ClubCloud_Baanschema>(Client.GetBaanschemasForVerenigingById(Id.Value, false, Settings)); entity.ClubCloud_Lidmaatschapsoort = new System.Collections.ObjectModel.ObservableCollection <ClubCloud_Lidmaatschapsoort>(Client.GetLidmaatschapsoortenForVerenigingById(Id.Value, false, Settings)); } } } } } return(entity); }
private MailMessage BuidMailMessage(ClubCloud_Vereniging vereniging) { MailMessage message = null; XDocument xmlInputData = new XDocument(new XElement("Properties")); XElement elements = new XElement("Elements", new object[] { new XElement("HEADER"), new XElement("FEATURED_AREA"), new XElement("FULL_WIDTH_COLUMN"), new XElement("INTRO"), new XElement("HALF_COLUMN_FEATURES"), new XElement("HALF_COLUMN_TOP_IMAGE"), new XElement("ONE_THIRD_TWO_THIRD_COLUMN_LEFT_IMAGE"), new XElement("TWO_THIRD_ONE_THIRD_COLUMN_RIGHT_IMAGE"), new XElement("CENTRECOURT"), new XElement("BOTTOM_CALL_TO_ACTION"), new XElement("FOOTER") }); xmlInputData.Root.Add(elements); xmlInputData.Root.Add(vereniging.ToXElement <ClubCloud_Vereniging>()); EmailTracking track = new EmailTracking { CampaignName = "Introductie", CampaignSource = "Nieuwsbrief", CampagneMedium = "email", ClientId = vereniging.Id, RecipientId = vereniging.Nummer, TrackingId = "UA-9934149-20", CampagneContent = "Introductie", CampagneTerm = "Introductie" }; xmlInputData.Root.Add(track.ToXElement <EmailTracking>()); XElement content = new XElement("Content", new XElement("Subject", string.Format("ClubCloud : De slimme keuze voor {0}", vereniging.Naam))); xmlInputData.Root.Add(content); SPSecurity.RunWithElevatedPrivileges(delegate() { try { using (SPSite currentSite = new SPSite(SPContext.Current.Site.ID, SPUrlZone.Internet)) { using (SPWeb web = currentSite.OpenWeb(SPContext.Current.Web.ID)) { SPDocumentLibrary SiteAssets = null; SPDocumentLibrary SitePages = null; SPFolder Templates = null; SPFolder Online = null; SPFile Aanmelden = null; SPFile Webversion = null; SPItem WebversionItem = null; XmlReader template = null; SPList assets = web.Lists.TryGetList("SiteAssets"); if (assets == null) { assets = web.Lists.TryGetList("Siteactiva"); } if (assets != null) { SiteAssets = (SPDocumentLibrary)assets; } if (SiteAssets != null) { Templates = SiteAssets.RootFolder.SubFolders["Templates"]; } SPList pages = web.Lists.TryGetList("SitePages"); if (pages == null) { pages = web.Lists.TryGetList("Sitepagina's"); } SPQuery query = new SPQuery(); query.Query = string.Format("<Where><Eq><FieldRef Name=\"Title\" /><Value Type=\"Text\">ClubCloud : De slimme keuze voor {0}</Value></Eq></Where>", vereniging.Naam); query.RowLimit = 1; query.ViewFields = @"<FieldRef Name=""Title"" />"; query.ViewAttributes = @"Scope=""Recursive"""; SPListItemCollection items = pages.GetItems(query); if (items.Count > 0) { throw new SPDuplicateObjectException("Club already mailed", new Exception("Club already mailed")); } if (pages != null) { SitePages = (SPDocumentLibrary)pages; } if (SitePages != null) { Online = SitePages.RootFolder.SubFolders["Online"]; } if (Templates != null && Templates.Exists) { Aanmelden = Templates.Files["template.xsl"]; } if (Aanmelden != null && Aanmelden.Exists) { template = XmlReader.Create(Aanmelden.OpenBinaryStream()); } if (template == null) { throw new FileNotFoundException("Template not Found", Aanmelden.Url); } string body = GenerateEmailBody(template, xmlInputData); web.AllowUnsafeUpdates = true; if (Online != null && Online.Exists) { Webversion = Online.Files.Add(Guid.NewGuid() + ".aspx", System.Text.Encoding.UTF8.GetBytes(body), true); WebversionItem = pages.GetItemByUniqueId(Webversion.UniqueId); WebversionItem["Title"] = string.Format("ClubCloud : De slimme keuze voor {0}", vereniging.Naam); WebversionItem.Update(); } if (Webversion != null && Webversion.Exists) { XElement online = new XElement("Online", new object[] { new XElement("WebVersion", string.Format("{0}/{1}", currentSite.Url, Webversion.Url)) }); xmlInputData.Root.Add(online); } if (Aanmelden != null && Aanmelden.Exists) { template = XmlReader.Create(Aanmelden.OpenBinaryStream()); } body = GenerateEmailBody(template, xmlInputData); web.AllowUnsafeUpdates = false; message = Email.CreateMailMessage(body); } } } catch (Exception ex) { Logger.WriteLog(Logger.Category.Unexpected, ex.Source, ex.Message); message = null; } }); return(message); }
/* * private ZimbraServer _zimbra; * * internal ZimbraServer Zimbra * { * get * { * if(this._zimbra == null) * { * this._zimbra = new ZimbraServer("mail.clubcloud.nl"); * } * * return this._zimbra; * } * } */ /// <summary> /// /// </summary> /// <param name="gebruiker"></param> /// <param name="settings"></param> /// <returns></returns> private async Task <bool> CreateOrUpdateMembershipGebruiker(ClubCloud_Gebruiker gebruiker, ClubCloud_Setting settings = null) { try { if (settings == null) { settings = GetClubCloudSettings(gebruiker.Bondsnummer);// beheerModel.ClubCloud_Settings.SingleOrDefault(g => g.GebruikerId == gebruiker.Id); } //ClubCloud_Setting updatesettings = beheerModel.ClubCloud_Settings.SingleOrDefault(g => g.GebruikerId == gebruiker.Id); if (settings != null)// && updatesettings.Id != null) { ZimbraMembershipUser zuser = await ZimbraMembershipProvider.GetZimbraUserAsync(gebruiker.Bondsnummer, false); MembershipCreateStatus status = MembershipCreateStatus.Success; if (zuser == null) { string nummer = "00000"; ClubCloud_Vereniging vereniging = null; try { vereniging = GetVerenigingById(gebruiker.Bondsnummer, gebruiker.VerenigingId.Value, false); } catch { } if (vereniging != null) { nummer = vereniging.Nummer; } string password = gebruiker.Achternaam[0] + gebruiker.Bondsnummer + '!'; string email = string.IsNullOrEmpty(gebruiker.EmailKNLTB) ? gebruiker.Bondsnummer + "@clubcloud.nl" : gebruiker.EmailKNLTB; Tuple <MembershipCreateStatus, MembershipUser> result = await ZimbraMembershipProvider.CreateUserAsync(gebruiker.Bondsnummer + "@clubcloud.nl", password, email, "Wat uw verenigingsnummer?", nummer, true, null); if (result.Item1 == MembershipCreateStatus.Success) { status = result.Item1; zuser = result.Item2 as ZimbraMembershipUser; } } if (status == MembershipCreateStatus.Success) { List <ClubCloud_Address> adressen = GetAddressenForGebruikerById(gebruiker.Id, false, settings); ClubCloud_Address home = new ClubCloud_Address(); ClubCloud_Address post = new ClubCloud_Address(); if (adressen != null && adressen.Count > 0) { home = adressen.First(); post = adressen.Last(); } ClubCloud_Nationaliteit nationaliteit = GetNationaliteitById(gebruiker.Bondsnummer, gebruiker.NationaliteitId.Value, false, settings); ClubCloud_Vereniging vereniging = GetVerenigingById(gebruiker.Bondsnummer, gebruiker.VerenigingId.Value, false); ClubCloud_District district = GetDistrictById(gebruiker.Bondsnummer, vereniging.DistrictId.Value, false, settings); if (gebruiker != null) { zuser.cn = gebruiker.Volledigenaam; zuser.sn = gebruiker.Achternaam; zuser.displayName = gebruiker.Volledigenaam; zuser.employeeNumber = gebruiker.Id.ToString(); zuser.givenName = gebruiker.Voornamen; zuser.initials = gebruiker.Voorletters; zuser.zimbraPrefMailForwardingAddress = gebruiker.EmailKNLTB; if (!string.IsNullOrWhiteSpace(gebruiker.TelefoonOverdag)) { zuser.telephoneNumber = Regex.Replace(gebruiker.TelefoonOverdag, @"[^A-Za-z0-9+ -]+", ""); } if (!string.IsNullOrWhiteSpace(gebruiker.TelefoonAvond)) { zuser.homePhone = Regex.Replace(gebruiker.TelefoonAvond, @"[^A-Za-z0-9+ -]+", ""); } if (!string.IsNullOrWhiteSpace(gebruiker.Mobiel)) { zuser.mobile = Regex.Replace(gebruiker.Mobiel, @"[^A-Za-z0-9+ -]+", ""); } } if (nationaliteit != null) { zuser.co = nationaliteit.Naam; } if (vereniging != null) { zuser.o = vereniging.Nummer; zuser.company = vereniging.Nummer; } if (district != null) { zuser.departmentNumber = district.Naam; } if (home != null) { zuser.homePostalAddress = home.Straat + " " + home.Nummer + " " + home.Toevoeging + " " + Environment.NewLine + home.Postcode + "," + home.Stad + " " + Environment.NewLine + home.Gemeente + "," + home.Provincie; zuser.l = home.Stad; zuser.postalCode = home.Postcode; zuser.st = home.Gemeente; zuser.street = home.Straat + " " + home.Nummer + " " + home.Toevoeging; } if (post != null) { zuser.postalAddress = post.Straat + " " + post.Nummer + " " + post.Toevoeging + " " + Environment.NewLine + post.Postcode + "," + post.Stad + " " + Environment.NewLine + post.Gemeente + "," + post.Provincie; } } if (zuser != null && status == MembershipCreateStatus.Success) { await ZimbraMembershipProvider.UpdateZimbraUserAsync(zuser); } } //} return(true); } catch (Exception) { return(false); } }