Exemple #1
0
        public byte[] GetMemberPhoto(PhotoRequestModel model)
        {
            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                var qry = dbc.Members.AsQueryable();
                OrgComm.Data.Models.Member member = null;

                if (model.Id.HasValue)
                {
                    member = qry.Where(r => (!r.DelFlag) && (r.Id == model.Id.Value)).FirstOrDefault();
                }
                else
                {
                    throw new OrgException("Invalid id");
                }

                if (member == null)
                {
                    throw new OrgException("Member not found");
                }
                else
                {
                    if (member.Photo == null)
                    {
                        throw new OrgException("Photo not found");
                    }

                    return(member.Photo);
                }
            }
        }
Exemple #2
0
        public byte[] GetGroupLogo(GroupRequestModel model)
        {
            byte[] byteImage = null;

            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                var    qry  = dbc.Groups.AsQueryable();
                byte[] logo = null;

                if (model.Id.HasValue)
                {
                    logo = qry.Where(r => (r.Id == model.Id.Value)).Select(r => r.Logo).FirstOrDefault();
                }
                else
                {
                    throw new OrgException("Invalid id");
                }

                if (logo == null)
                {
                    throw new OrgException("Logo not found");
                }
                else
                {
                    return(logo);
                }
            }
        }
Exemple #3
0
        private static IList <Models.Member.MemberModel> GetGroupMember(OrgCommEntities context, int groupId)
        {
            var qry = from gm in context.GroupMembers
                      join l in context.Lookups on new { type = (int)OrgComm.Data.Models.Lookup.LookupType.GroupMemberJoinedStatus, value = gm.JoinedStatus } equals new { type = l.TypeId, value = l.Value }
            join m in context.Members on gm.MemberId equals m.Id
            where gm.GroupId == groupId
            orderby m.Id
                select new Models.Member.MemberModel
            {
                Id          = m.Id,
                FacebookId  = m.FacebookId,
                Email       = m.Email,
                FirstName   = m.FirstName,
                LastName    = m.LastName,
                NickName    = m.Nickname,
                DisplayName = m.DisplayName,
                Gender      = m.Gender,
                Company     = m.Company.Name,
                Department  = m.Department.Name,
                Position    = m.Position.Name,
                EmployeeId  = m.EmployeeId,
                Phone       = m.Phone,
                Photo       = MemberBL.PhotoUrlFormatString.Replace("{0}", m.Id.ToString())
            };

            return(qry.ToList());
        }
Exemple #4
0
        public void RegisterToken(TokenModel model)
        {
            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                var token = dbc.Tokens.SingleOrDefault(r => r.MemberId.Equals(model.MemberId));

                if (token == null)
                {
                    dbc.Tokens.Add(new OrgComm.Data.Models.MemberToken
                    {
                        MemberId   = model.MemberId,
                        Token      = model.Token,
                        IssuedUtc  = model.IssuedUtc,
                        ExpiresUtc = model.ExpiresUtc
                    });
                }
                else
                {
                    token.Token      = model.Token;
                    token.IssuedUtc  = model.IssuedUtc;
                    token.ExpiresUtc = model.ExpiresUtc;
                }

                dbc.SaveChanges();
            }
        }
Exemple #5
0
        public void RemoveFile(int?memberId, string fileId)
        {
            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                OrgComm.Data.Models.Upload upload = dbc.Uploads.SingleOrDefault(r => r.Id.Equals(fileId));

                if (upload == null)
                {
                    throw new OrgException("File not found");
                }

                //validate owner if member Id is provided
                if (memberId.HasValue)
                {
                    if (memberId.Value != upload.MemberId)
                    {
                        throw new OrgException("No authorization to remove file");
                    }
                }

                dbc.Uploads.Remove(upload);

                dbc.SaveChanges();
            }
        }
Exemple #6
0
        public void CreateComment(int memberId, NewsCommentCreateRequesetModel model)
        {
            if ((model == null) || !model.NewsId.HasValue)
            {
                throw new OrgException("Invalid news");
            }

            if ((model == null) || !model.Type.HasValue)
            {
                throw new OrgException("Invalid comment type");
            }

            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                OrgComm.Data.Models.News news = dbc.News.SingleOrDefault(r => r.Id == model.NewsId.Value);

                if (news == null)
                {
                    throw new OrgException("News not found");
                }

                OrgComm.Data.Models.NewsComment comment = new OrgComm.Data.Models.NewsComment
                {
                    Text        = model.Text,
                    Type        = model.Type.Value,
                    MemberId    = memberId,
                    CreatedDate = DateTime.Now
                };

                news.Comments.Add(comment);
                news.CommentCount = news.Comments.Count();

                dbc.SaveChanges();
            }
        }
Exemple #7
0
        private NoteModel CreateNote(OrgComm.Data.Models.Note note)
        {
            NoteModel noteModel = null;

            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                if (!dbc.Members.Any(r => (!r.DelFlag) && (r.Id.Equals(note.MemberId))))
                {
                    throw new OrgException("Invalid member");
                }

                dbc.Notes.Add(note);
                dbc.SaveChanges();

                noteModel = new NoteModel
                {
                    Id          = note.Id,
                    Text        = note.Text,
                    Image       = (note.Image == null) ? null : NewsBL.ImageUrlFormatString.Replace("{0}", note.Id.ToString()),
                    Type        = note.Type,
                    CreatedDate = note.CreatedDate.ToString(AppConfigs.GeneralDateTimeFormat),
                    Ticks       = note.CreatedDate.Ticks
                };

                var lookupNoteType = dbc.Lookups.SingleOrDefault(r => (r.TypeId == (int)OrgComm.Data.Models.Lookup.LookupType.NoteType) && (r.Value == (int)note.Type));

                if (lookupNoteType != null)
                {
                    noteModel.TypeDescription = lookupNoteType.Description;
                }
            }

            return(noteModel);
        }
Exemple #8
0
        public IList <NoteModel> GetNotesByMember(int memberId)
        {
            List <NoteModel> noteList = null;

            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                var tempList = (from n in dbc.Notes
                                join l in dbc.Lookups on new { type = (int)OrgComm.Data.Models.Lookup.LookupType.NoteType, noteType = n.Type } equals new { type = l.TypeId, noteType = l.Value } into nl
                                from nex in nl.DefaultIfEmpty()
                                where n.MemberId.Equals(memberId)
                                orderby n.Id
                                select new
                {
                    Id = n.Id,
                    Type = n.Type,
                    TypeDescription = (nex == null) ? null : nex.Description,
                    Text = n.Text,
                    Image = (n.Image == null) ? null : NoteBL.ImageUrlFormatString.Replace("{0}", n.Id.ToString()),
                    CreatedDate = n.CreatedDate
                }).ToList();

                noteList = tempList.Select(r => new NoteModel
                {
                    Id              = r.Id,
                    Type            = r.Type,
                    TypeDescription = r.TypeDescription,
                    Text            = r.Text,
                    Image           = r.Image,
                    CreatedDate     = r.CreatedDate.ToString(AppConfigs.GeneralDateTimeFormat),
                    Ticks           = r.CreatedDate.Ticks
                }).ToList();
            }

            return(noteList);
        }
Exemple #9
0
        public byte[] GetNoteImage(NoteRequestModel model)
        {
            byte[] byteImage = null;

            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                var    qry   = dbc.Notes.AsQueryable();
                byte[] image = null;

                if (model.Id.HasValue)
                {
                    image = qry.Where(r => (r.Id == model.Id.Value)).Select(r => r.Image).FirstOrDefault();
                }
                else
                {
                    throw new OrgException("Invalid id");
                }

                if (image == null)
                {
                    throw new OrgException("Image not found");
                }
                else
                {
                    return(image);
                }
            }
        }
Exemple #10
0
        public void ChangePassword(int memberId, ChangePasswordRequestModel model)
        {
            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                OrgComm.Data.Models.Member member = dbc.Members.SingleOrDefault(r => (!r.DelFlag) && r.Id.Equals(memberId));

                if (member == null)
                {
                    throw new OrgException("Invalid profile");
                }

                if (!member.PasswordHash.Equals(GenerateHash(member.Salt, model.CurrentPassword)))
                {
                    throw new OrgException("Incorrect password");
                }

                string password = model.NewPassword;

                member.Salt         = SecurityHelper.GenerateBase64SaltString();
                member.PasswordHash = this.GenerateHash(member.Salt, password);

                member.UpdatedDate = DateTime.Now;

                dbc.SaveChanges();
            }
        }
Exemple #11
0
        public void CreateNotice(NoticeCreateRequestModel model)
        {
            if (model == null)
            {
                throw new OrgException("Invalid notice");
            }

            if (String.IsNullOrWhiteSpace(model.Title))
            {
                throw new OrgException("Invalid title");
            }

            if (String.IsNullOrWhiteSpace(model.Content))
            {
                throw new OrgException("Invalid content");
            }

            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                OrgComm.Data.Models.Notice notice = new OrgComm.Data.Models.Notice
                {
                    Title       = model.Title,
                    Content     = model.Content,
                    CreatedBy   = 1, //TEMP
                    CreatedDate = DateTime.Now,
                };

                dbc.Notices.Add(notice);

                dbc.SaveChanges();
            }
        }
Exemple #12
0
        public void ResetPassword(ResetPasswordRequestModel model)
        {
            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                OrgComm.Data.Models.Member member = dbc.Members.SingleOrDefault(r => (!r.DelFlag) && r.Email.Equals(model.Email));

                if (member == null)
                {
                    throw new OrgException(1, "Invalid profile");
                }

                string password = System.Web.Security.Membership.GeneratePassword(8, 0);

                member.Salt         = SecurityHelper.GenerateBase64SaltString();
                member.PasswordHash = this.GenerateHash(member.Salt, password);

                member.UpdatedDate = DateTime.Now;

                dbc.SaveChanges();

                if (AppConfigs.MailSendMail)
                {
                    System.Collections.Specialized.ListDictionary listReplacement = new System.Collections.Specialized.ListDictionary();

                    listReplacement.Add("{password}", password);

                    MailSender.Send(AppConfigs.MailFrom, member.Email, "Reset password", listReplacement, AppConfigs.MailTemplateResetPassword);
                }
            }
        }
Exemple #13
0
        public MemberModel Activate(ActivateRequestModel model)
        {
            OrgComm.Data.Models.Member member = null;

            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                member = dbc.Members.SingleOrDefault(r => (!r.DelFlag) && r.Id.Equals(model.MemberId));

                if (member == null)
                {
                    throw new OrgException(1, "Invalid profile");
                }

                if (member.MemberStatus != (int)OrgComm.Data.Models.Member.StatusType.New)
                {
                    throw new OrgException(1, "Invalid activation key");
                }

                if (!member.ActivationKey.Equals(model.ActivationKey))
                {
                    throw new OrgException(2, "Invalid activation key");
                }

                member.MemberStatus = (int)OrgComm.Data.Models.Member.StatusType.Activated;

                if (!model.DeviceOSId.HasValue || String.IsNullOrWhiteSpace(model.DeviceToken))
                {
                    throw new OrgException("Invalid device token");
                }

                this.RegisterDevice(member.Id, new DeviceTokenRequestModel
                {
                    OSId  = model.DeviceOSId.Value,
                    Token = model.DeviceToken
                });

                dbc.SaveChanges();
            }

            return(new MemberModel
            {
                Id = member.Id,
                FacebookId = member.FacebookId,
                Email = member.Email,
                FirstName = member.FirstName,
                LastName = member.LastName,
                NickName = member.Nickname,
                DisplayName = member.DisplayName,
                Gender = member.Gender,
                Company = member.Company.Name,
                Department = member.Department.Name,
                Position = member.Position.Name,
                EmployeeId = member.EmployeeId,
                Phone = member.Phone,
                Photo = (member.Photo == null) ? null : MemberBL.PhotoUrlFormatString.Replace("{0}", member.Id.ToString())
            });
        }
Exemple #14
0
        public IList <NewsCommentModel> GetCommentsByNewsId(NewsCommentByCriteriaRequestModel model)
        {
            if ((model == null) || !model.NewsId.HasValue)
            {
                throw new OrgException("Invalid news");
            }

            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                OrgComm.Data.Models.News news = dbc.News.SingleOrDefault(r => r.Id == model.NewsId.Value);

                if (news == null)
                {
                    throw new OrgException("News not found");
                }

                var qry = (from c in news.Comments
                           join m in dbc.Members on c.MemberId equals m.Id
                           select new OrgComm.Data.Models.NewsComment
                {
                    Id = c.Id,
                    MemberId = (m.DelFlag)? 0 : c.MemberId,
                    NewsId = c.NewsId,
                    Text = c.Text,
                    Type = c.Type,
                    CreatedDate = c.CreatedDate
                }
                           );

                qry = qry.OrderByDescending(r => r.CreatedDate);

                if (model != null)
                {
                    if (model.PageSize.HasValue && (model.PageSize.Value > 0))
                    {
                        if (model.Page.HasValue && (model.Page.Value > 1))
                        {
                            qry = qry.Skip((model.Page.Value - 1) * model.PageSize.Value);
                        }

                        qry = qry.Take(model.PageSize.Value);
                    }
                }

                return(qry.Select(r => new NewsCommentModel
                {
                    Id = r.Id,
                    MemberId = r.MemberId,
                    Text = r.Text,
                    Type = r.Type,
                    CreatedDate = r.CreatedDate.ToString(AppConfigs.GeneralDateTimeFormat),
                    Ticks = r.CreatedDate.Ticks
                }).ToList());
            }
        }
Exemple #15
0
        public IList <OrgComm.Data.Models.Company> GetCompanies()
        {
            List <OrgComm.Data.Models.Company> companies = null;

            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                companies = dbc.Company.ToList();
            }

            return(companies);
        }
Exemple #16
0
        public void AcceptInvitaion(int memberId, AcceptGroupInvitationRequestModel model)
        {
            if (!model.GroupId.HasValue)
            {
                throw new OrgException("Invalid group Id");
            }

            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                if (!dbc.Members.Any(r => (r.Id.Equals(memberId))))
                {
                    throw new OrgException("Member not found");
                }

                if (!dbc.Groups.Any(r => (r.Id.Equals(model.GroupId.Value))))
                {
                    throw new OrgException("Group not found");
                }

                var groupmember = dbc.GroupMembers.SingleOrDefault(r => r.GroupId.Equals(model.GroupId.Value) && r.MemberId.Equals(memberId));

                if (groupmember == null)
                {
                    throw new OrgException(1, "No group invitation");
                }
                else
                {
                    switch (groupmember.JoinedStatus)
                    {
                    case (int)OrgComm.Data.Models.GroupMember.JoinedStatusType.Active: throw new OrgException("Already in group");

                    case (int)OrgComm.Data.Models.GroupMember.JoinedStatusType.Block: throw new OrgException(2, "No group invitation");

                    case (int)OrgComm.Data.Models.GroupMember.JoinedStatusType.Requested: throw new OrgException(3, "No group invitation");

                    case (int)OrgComm.Data.Models.GroupMember.JoinedStatusType.Suspend: throw new OrgException(4, "No group invitation");

                    default: break;     //(int)OrgComm.Data.Models.GroupMember.JoinedStatusType.Invited
                    }
                }

                try
                {
                    groupmember.JoinedStatus = (int)OrgComm.Data.Models.GroupMember.JoinedStatusType.Active;
                    groupmember.JoinedDate   = DateTime.Now;

                    dbc.SaveChanges();
                }
                catch (System.Exception ex)
                {
                    throw new OrgException("Cannot member to group", ex);
                }
            }
        }
Exemple #17
0
        public bool IsEmailAlreadyExists(string email)
        {
            if (String.IsNullOrWhiteSpace(email))
            {
                throw new OrgException("Invalid e-mail");
            }

            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                return(dbc.Members.Any(r => ((!r.DelFlag) && r.Email.Equals(email))));
            }
        }
Exemple #18
0
        public bool IsPhoneNoAlreadyExists(string phoneNo)
        {
            if (String.IsNullOrWhiteSpace(phoneNo))
            {
                throw new OrgException("Invalid phone no.");
            }

            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                return(dbc.Members.Any(r => ((!r.DelFlag) && r.Phone.Equals(phoneNo))));
            }
        }
Exemple #19
0
        private NoteModel UpdateNote(int?memberId, OrgComm.Data.Models.Note updateNote)
        {
            NoteModel noteModel = null;

            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                var note = dbc.Notes.SingleOrDefault(r => r.Id.Equals(updateNote.Id));

                if (note == null)
                {
                    throw new OrgException("Invalid note");
                }

                if (memberId.HasValue && !note.MemberId.Equals(memberId.Value))
                {
                    throw new OrgException("Invalid note owner");
                }

                if (updateNote.Type == (int)OrgComm.Data.Models.Note.NoteType.Text)
                {
                    note.Type  = updateNote.Type;
                    note.Text  = updateNote.Text;
                    note.Image = null;
                }
                else if (updateNote.Type == (int)OrgComm.Data.Models.Note.NoteType.Image)
                {
                    note.Type  = updateNote.Type;
                    note.Text  = null;
                    note.Image = updateNote.Image;
                }

                dbc.SaveChanges();

                noteModel = new NoteModel
                {
                    Id          = note.Id,
                    Text        = note.Text,
                    Image       = (note.Image == null) ? null : NewsBL.ImageUrlFormatString.Replace("{0}", note.Id.ToString()),
                    Type        = note.Type,
                    CreatedDate = note.CreatedDate.ToString(AppConfigs.GeneralDateTimeFormat),
                    Ticks       = note.CreatedDate.Ticks
                };

                var lookupNoteType = dbc.Lookups.SingleOrDefault(r => (r.TypeId == (int)OrgComm.Data.Models.Lookup.LookupType.NoteType) && (r.Value == (int)note.Type));

                if (lookupNoteType != null)
                {
                    noteModel.TypeDescription = lookupNoteType.Description;
                }
            }

            return(noteModel);
        }
Exemple #20
0
        public void RemoveNoteByMemberId(int memberId)
        {
            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                var noteList = dbc.Notes.Where(r => r.MemberId.Equals(memberId));

                if (noteList.Count() > 0)
                {
                    dbc.Notes.RemoveRange(noteList);
                    dbc.SaveChanges();
                }
            }
        }
Exemple #21
0
        public void RemoveFilesByMemberId(int memberId)
        {
            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                var uploads = dbc.Uploads.Where(r => r.MemberId.Equals(memberId));
                if (uploads.Count() > 0)
                {
                    dbc.Uploads.RemoveRange(uploads);
                }

                dbc.SaveChanges();
            }
        }
Exemple #22
0
        public void RemoveFriendByMemberId(int memberId)
        {
            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                var friends = dbc.Friends.Where(r => r.MemberId.Equals(memberId) || r.FriendMemberId.Equals(memberId));
                if (friends.Count() > 0)
                {
                    dbc.Friends.RemoveRange(friends);
                }

                dbc.SaveChanges();
            }
        }
Exemple #23
0
        public void SignOut(int memberId)
        {
            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                var tk = dbc.Tokens.SingleOrDefault(r => r.MemberId.Equals(memberId));

                if (tk != null)
                {
                    dbc.Tokens.Remove(tk);
                    dbc.SaveChanges();
                }
            }
        }
Exemple #24
0
        public byte[] GetStickerItemImageById(int stickerItemId)
        {
            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                byte[] image = dbc.StickerItems.Where(r => (r.Id == stickerItemId)).Select(r => r.Image).FirstOrDefault();

                if (image == null)
                {
                    throw new OrgException("Image not found");
                }

                return(image);
            }
        }
Exemple #25
0
        public byte[] GetImageNewsContentById(int newsContentId)
        {
            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                byte[] image = dbc.NewsContent.Where(r => (r.Type == (int)OrgComm.Data.Models.NewsContent.ContentType.Image) && (r.Id == newsContentId)).Select(r => r.Data).FirstOrDefault();

                if (image == null)
                {
                    throw new OrgException("Content not found");
                }

                return(image);
            }
        }
Exemple #26
0
        public void RevokeDevice(DeviceTokenRequestModel model)
        {
            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                var device = dbc.Devices.SingleOrDefault(r => r.OSId.Equals(model.OSId) && r.Token.Equals(model.Token));

                if (device != null)
                {
                    dbc.Devices.Remove(device);
                }

                dbc.SaveChanges();
            }
        }
Exemple #27
0
        public void RevokeToken(TokenModel model)
        {
            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                var token = dbc.Tokens.SingleOrDefault(r => r.MemberId.Equals(model.MemberId));

                if (token != null)
                {
                    dbc.Tokens.Remove(token);
                }

                dbc.SaveChanges();
            }
        }
Exemple #28
0
        public IList <NewsModel> GetNewsByMember(int memberId, NewsByCriteriaRequestModel model)
        {
            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                var member = dbc.Members.SingleOrDefault(r => r.Id == memberId);

                if (member == null)
                {
                    throw new OrgException("Invalid member");
                }

                var qry = (from n in dbc.News
                           where n.CompanyId == member.CompanyId
                           select n);

                qry = qry.OrderByDescending(r => r.CreatedDate);

                if (model != null)
                {
                    if (model.PageSize.HasValue && (model.PageSize.Value > 0))
                    {
                        if (model.Page.HasValue && (model.Page.Value > 1))
                        {
                            qry = qry.Skip((model.Page.Value - 1) * model.PageSize.Value);
                        }

                        qry = qry.Take(model.PageSize.Value);
                    }
                }

                var news = qry.ToList();

                return(news.Select(r => new NewsModel
                {
                    Id = r.Id,
                    LikeCount = r.LikeCount,
                    CommentCount = r.CommentCount,
                    Likes = r.Likes.Select(rr => new NewsLikeModel
                    {
                        MemberId = rr.MemberId,
                        LikeType = rr.LikeType
                    }).ToList(),
                    Text = r.Contents.Where(cr => cr.Type == (int)OrgComm.Data.Models.NewsContent.ContentType.Text).Select(cr => Encoding.Default.GetString(Encoding.Convert(Encoding.UTF8, Encoding.Default, cr.Data))).ToList(),
                    ImageUrl = r.Contents.Where(cr => cr.Type == (int)OrgComm.Data.Models.NewsContent.ContentType.Image).Select(cr => String.Format(NewsBL.ImageUrlFormatString, cr.Id)).ToList(),
                    CreatedDate = r.CreatedDate.ToString(AppConfigs.GeneralDateTimeFormat),
                    Ticks = r.CreatedDate.Ticks
                }).ToList());
            }
        }
Exemple #29
0
        public void AddMember(int inviterId, AddGroupMemberRequestModel model)
        {
            if (!model.GroupId.HasValue)
            {
                throw new OrgException("Invalid group Id");
            }

            if (!model.MemberId.HasValue)
            {
                throw new OrgException("Invalid member Id");
            }

            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                if (!dbc.Members.Any(r => (r.Id.Equals(model.MemberId.Value))))
                {
                    throw new OrgException("Member not found");
                }

                if (!dbc.Groups.Any(r => (r.Id.Equals(model.GroupId.Value))))
                {
                    throw new OrgException("Group not found");
                }

                if (dbc.GroupMembers.Any(r => r.GroupId.Equals(model.GroupId.Value) && r.MemberId.Equals(model.MemberId.Value)))
                {
                    throw new OrgException("Already in group");
                }

                try
                {
                    dbc.GroupMembers.Add(new OrgComm.Data.Models.GroupMember
                    {
                        GroupId         = model.GroupId.Value,
                        InviterMemberId = inviterId,
                        MemberId        = model.MemberId.Value,
                        JoinedDate      = DateTime.Now,
                        JoinedStatus    = (int)OrgComm.Data.Models.GroupMember.JoinedStatusType.Invited
                    });

                    dbc.SaveChanges();
                }
                catch (System.Exception ex)
                {
                    throw new OrgException("Cannot member to group", ex);
                }
            }
        }
Exemple #30
0
        public bool ValidateToken(string token)
        {
            using (OrgCommEntities dbc = new OrgCommEntities(DBConfigs.OrgCommConnectionString))
            {
                var tk = dbc.Tokens.SingleOrDefault(r => r.Token.Equals(token));

                if (tk == null)
                {
                    return(false);
                }
                else
                {
                    return(true);
                }
            }
        }