Пример #1
0
        /// <summary>
        /// Adds a note in the member log
        /// </summary>
        /// <param name="userId">The member id of the targetted user</param>
        /// <param name="title">Title of the entry</param>
        /// <param name="log">Description of the entry</param>
        /// <param name="logType">Type of log entry</param>
        /// <param name="ip">The ip of the person executing this command. Can be optained from Request.UserHostAddress or Request.ServerVariables</param>
        public static void AddMemberLog(Guid memberId, string title, string log, MemberLogEnum logType, string ip = null)
        {
            try
            {
                var dc = new ManagementContext();
                var member = GetMemberWithMemberId(ref dc, memberId);
                var issuedBy = string.Empty;
                if (HttpContext.Current.User.Identity.IsAuthenticated)
                {
                    //var currentMemberId = GetMemberId();

                    //if (!currentMemberId.Equals(memberId))
                    //{
                    var currentMember = GetMember(ref dc);
                    if (currentMember == null)
                        issuedBy = "\n\nIssued by: Admin, with email: " + Membership.GetUser().Email;
                    else
                        issuedBy = string.Format("\n\nIssued by: {0} - {1}, with user id: {2}", currentMember.Firstname,
                                                 currentMember.DerbyName, currentMember.MemberId);
                    //}
                }
                if (member != null)
                {
                    member.Logs.Add(new MemberLog
                    {
                        Member = member,
                        Details = log + issuedBy,
                        LogReason = dc.MemberLogReasons.First(x => x.MemberLogReasonId.Equals((byte)logType)),
                        Ip = ip,
                        LogTitle = title
                    });
                }
                dc.SaveChanges();
            }
            catch (Exception e)
            {
                ErrorDatabaseManager.AddException(e, e.GetType(), errorGroup: ErrorGroupEnum.Database);
            }
        }
Пример #2
0
        //public static MemberPhoto GetMemberPhoto()
        //{
        //    return GetMemberPhoto(GetMemberId());
        //}

        //public static MemberPhoto GetMemberPhoto(Guid memberId)
        //{
        //    var output = new MemberPhoto();

        //    var dc = new ManagementContext();
        //    var member = dc.Members.FirstOrDefault(x => x.MemberId.Equals(memberId));
        //    if (member == null) return null;
        //    var memberPhoto = member.Photos.FirstOrDefault(x => x.IsPrimaryPhoto.Equals(true));
        //    if (memberPhoto == null) return null;
        //    output.ImageFormat = new ImageFormat(memberPhoto.Format);
        //    output.ImageData = new byte[memberPhoto.PhotoData.Length];
        //    Buffer.BlockCopy(memberPhoto.PhotoData, 0, output.ImageData, 0, memberPhoto.PhotoData.Length);
        //    dc.Dispose();

        //    return output;
        //}

        /// <summary>
        /// Adds a note in the member log
        /// </summary>        
        /// <param name="title">Title of the entry</param>
        /// <param name="log">Description of the entry</param>
        /// <param name="logType">Type of log entry</param>
        /// <param name="ip">The ip of the person executing this command. Can be optained from Request.UserHostAddress or Request.ServerVariables</param>
        public static void AddMemberLog(string title, string log, MemberLogEnum logType, string ip = null)
        {
            AddMemberLog(GetMemberId(), title, log, logType, ip);
        }