/// <summary> /// Provides a list of users to whom the calendar has been shared. /// </summary> /// <remarks> /// http://svn.calendarserver.org/repository/calendarserver/CalendarServer/trunk/doc/Extensions/caldav-sharing.txt /// (Section 5.2.2) public async Task <IEnumerable <SharingInvite> > GetInviteAsync() { IList <SharingInvite> invites = new List <SharingInvite>(); foreach (DataRow rowAccess in rowsAccess) { if (rowAccess.Field <bool>("Owner")) { continue; } string userId = rowAccess.Field <string>("UserId"); DavUser user = Context.Users.FirstOrDefault(p => p.UserName.Equals(userId, StringComparison.InvariantCultureIgnoreCase)); SharingInvite ace = new SharingInvite { Address = string.Format("email:{0}", user.Email) , Access = rowAccess.Field <bool>("Write") ? SharingInviteAccess.ReadWrite : SharingInviteAccess.Read , CommonName = user.UserName , Status = SharingInviteStatus.Accepted }; } return(invites); }
public static async Task <User> GetUserAsync(DavContext context, string userId) { // Loged-in user can access only his own account data. if (!context.UserId.Equals(userId, StringComparison.InvariantCultureIgnoreCase)) { throw new DavException("Forbidden.", DavStatus.FORBIDDEN); } DavUser user = context.Users.FirstOrDefault(p => p.UserName.Equals(userId, StringComparison.InvariantCultureIgnoreCase)); return(new User(context, userId, user.UserName, user.Email, new DateTime(2000, 1, 1), new DateTime(2000, 1, 1))); }
public static async Task <User> GetUserAsync(DavContext context, string userId) { DavUser user = context.Users.FirstOrDefault(p => p.UserName.Equals(userId, StringComparison.InvariantCultureIgnoreCase)); return(new User(context, userId, user.UserName, user.Email, new DateTime(2000, 1, 1), new DateTime(2000, 1, 1))); }