public List <ClubCloud_Accommodatie> GetAccommodatiesForDistrictById(System.Guid Id, bool refresh = false, ClubCloud_Setting settings = null) { if (settings != null) { ValidateSettings(ref settings); } ClubCloud_District entity = null; List <ClubCloud_Accommodatie> result = null; using (new SPMonitoredScope("Districten GetAccommodatiesForDistrictById")) { try { entity = beheerModel.ClubCloud_Districten.Find(Id); if (entity != null && entity.ClubCloud_Accommodatie != null && entity.ClubCloud_Accommodatie.Count == 0) { beheerModel.Entry(entity).Collection(e => e.ClubCloud_Accommodatie).Load(); } if (entity != null) { result = entity.ClubCloud_Accommodatie.ToList(); } if (result == null || result.Count == 0 || refresh) { result = GetAccommodatiesForDistrictById(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) { foreach (object item in result) { if (item != null) { try { beheerModel.ObjectContext.Detach(item); } catch {} } } } } } return(new List <ClubCloud_Accommodatie>()); }
public List <ClubCloud_Vereniging> GetVerenigingenForDistrict(ClubCloud_District entity, bool refresh = false, ClubCloud_Setting settings = null) { if (settings != null) { ValidateSettings(ref settings); } List <ClubCloud_Vereniging> result = null; using (new SPMonitoredScope("Districten GetVerenigingenForDistrict")) { try { entity = beheerModel.ClubCloud_Districten.Find(entity.Id); if (entity != null && entity.ClubCloud_Vereniging != null && entity.ClubCloud_Vereniging.Count == 0) { beheerModel.Entry(entity).Collection(e => e.ClubCloud_Vereniging).Load(); } if (entity != null) { result = entity.ClubCloud_Vereniging.ToList(); } if (result == null || result.Count == 0 || refresh && entity != null) { result = GetVerenigingenForDistrict(settings.Id.ToString(), entity, 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) { foreach (object item in result) { if (item != null) { try { beheerModel.ObjectContext.Detach(item); } catch {} } } } } } return(new List <ClubCloud_Vereniging>()); }
public bool DeleteDistrict(ClubCloud_District entity, ClubCloud_Setting settings = null) { if (settings != null) { ValidateSettings(ref settings); } return(DeleteDistrictById(entity.Id, settings)); }
public ClubCloud_District GetDistrictForFunctionarisById(System.Guid Id, bool refresh = false, ClubCloud_Setting settings = null) { if (settings != null) { ValidateSettings(ref settings); } ClubCloud_Functionaris entity = null; ClubCloud_District result = null; using (new SPMonitoredScope("Functionarissen GetDistrictForFunctionarisById")) { try { entity = beheerModel.ClubCloud_Functionarissen.Find(Id); if (entity != null && entity.ClubCloud_District == null) { beheerModel.Entry(entity).Reference(e => e.ClubCloud_District).Load(); } if (entity != null) { result = entity.ClubCloud_District; } if (result == null || refresh) { result = GetDistrictForFunctionarisById(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_District()); }
public ClubCloud_Regio GetRegioForDistrict(ClubCloud_District entity, bool refresh = false, ClubCloud_Setting settings = null) { if (settings != null) { ValidateSettings(ref settings); } ClubCloud_Regio result = null; using (new SPMonitoredScope("Districten GetRegioForDistrict")) { try { entity = beheerModel.ClubCloud_Districten.Find(entity.Id); if (entity != null && entity.ClubCloud_Regio == null) { beheerModel.Entry(entity).Reference(e => e.ClubCloud_Regio).Load(); } if (entity != null) { result = entity.ClubCloud_Regio; } if (result == null || refresh && entity != null) { result = GetRegioForDistrict(settings.Id.ToString(), entity, 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_Regio()); }
public bool SetDistrictForFunctionarisById(ClubCloud_District District, System.Guid Id, bool refresh = false, ClubCloud_Setting settings = null) { if (settings != null) { ValidateSettings(ref settings); } ClubCloud_Functionaris entity = null; bool succes = false; using (new SPMonitoredScope("Functionarissen SetDistrictForFunctionarisById")) { try { entity = beheerModel.ClubCloud_Functionarissen.Find(Id); if (entity != null && entity.ClubCloud_District == null) { beheerModel.Entry(entity).Reference(e => e.ClubCloud_District).Load(); } if (entity != null) { entity.ClubCloud_District = District; } 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); }
public bool SetAccommodatiesForDistrict(List <ClubCloud_Accommodatie> Accommodaties, ClubCloud_District entity, bool refresh = false, ClubCloud_Setting settings = null) { if (settings != null) { ValidateSettings(ref settings); } bool succes = false; ClubCloud_District result = null; using (new SPMonitoredScope("Districten SetAccommodatiesForDistrict")) { try { entity = beheerModel.ClubCloud_Districten.Find(entity.Id); if (entity != null) { beheerModel.Entry(entity).Collection(e => e.ClubCloud_Accommodatie).Load(); } //result = GetDistrictById(settings.Id.ToString(), Id, refresh, settings); if (result != null) { //return result.ClubCloud_Districten.Count == ; succes = false; } } catch (Exception ex) { Logger.WriteLog(Logger.Category.Unexpected, ex.Source, ex.Message); } finally { if (entity != null) { try { beheerModel.ObjectContext.Detach(entity); } catch {} } } } return(succes); }
public bool SetRegioForDistrict(ClubCloud_Regio Regio, ClubCloud_District entity, bool refresh = false, ClubCloud_Setting settings = null) { if (settings != null) { ValidateSettings(ref settings); } bool succes = false; using (new SPMonitoredScope("Districten SetRegioForDistrict")) { try { entity = beheerModel.ClubCloud_Districten.Find(entity.Id); if (entity != null && entity.ClubCloud_Regio == null) { beheerModel.Entry(entity).Reference(e => e.ClubCloud_Regio).Load(); } if (entity != null) { entity.ClubCloud_Regio = Regio; } 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); }
public ClubCloud_District GetDistrictById(System.Guid Id, bool refresh = false, ClubCloud_Setting settings = null) { if (settings != null) { ValidateSettings(ref settings); } ClubCloud_District result = null; using (new SPMonitoredScope("Districten GetDistrictById")) { try { result = beheerModel.ClubCloud_Districten.Find(Id); if (result == null || refresh) { result = GetDistrictById(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 (result != null) { try { beheerModel.ObjectContext.Detach(result); } catch {} } } } return(new ClubCloud_District()); }
public ClubCloud_District SetDistrict(ClubCloud_District entity, ClubCloud_Setting settings = null) { if (settings != null) { ValidateSettings(ref settings); } ClubCloud_District tobeupdated = null; using (new SPMonitoredScope("Districten SetDistrict")) { try { entity = SetDistrict(settings.Id.ToString(), entity, settings); if (entity != null) { beheerModel.ClubCloud_Districten.AddOrUpdate(entity); } beheerModel.SaveChanges(); tobeupdated = beheerModel.ClubCloud_Districten.Find(entity.Id); return(tobeupdated); } catch (Exception ex) { Logger.WriteLog(Logger.Category.Unexpected, ex.Source, ex.Message); } finally { if (tobeupdated != null) { try { beheerModel.ObjectContext.Detach(tobeupdated); } catch {} } } } return(null); }
public bool DeleteDistrictById(System.Guid Id, ClubCloud_Setting settings = null) { if (settings != null) { ValidateSettings(ref settings); } bool succes = false; ClubCloud_District tobedeleted = null; using (new SPMonitoredScope("Districten DeleteDistrictById")) { try { tobedeleted = beheerModel.ClubCloud_Districten.Find(Id); if (tobedeleted != null) { beheerModel.ClubCloud_Districten.Remove(tobedeleted); beheerModel.SaveChanges(); } succes = true; } catch (Exception ex) { Logger.WriteLog(Logger.Category.Unexpected, ex.Source, ex.Message); } finally { if (tobedeleted != null) { try { beheerModel.ObjectContext.Detach(tobedeleted); } catch {} } } } return(succes); }
/* * 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); } }