예제 #1
0
        /// <summary>
        /// Adds the gust link.
        /// </summary>
        /// <param name="Model">The model.</param>
        /// <returns></returns>
        /// <exception cref="Exception"></exception>
        public GuestLinksModel AddGustLink(GuestLinksModel Model)
        {
            try
            {
                if (Model.GuestLinkID <= 0)
                {
                    if (string.IsNullOrEmpty(Model.LinkUrl))
                    {
                        var GuestId   = Guid.NewGuid().ToString("N").Substring(0, 15);
                        var guestLink = string.Format("{0}/{1}", Application.AttachMoreWeb, GuestId);
                        Model.LinkUrl = guestLink;
                        Model.GuestId = GuestId;
                    }
                    else
                    {
                        Model.GuestId = Model.LinkUrl.Substring(Model.LinkUrl.IndexOf("com") + 4).ToString();
                    }

                    var entity = GuestLinksMapper <GuestLinksModel, GuestLinks> .Map(Model);

                    this.m_GuestLinkRepository.Add(entity);
                    this.AddExpirySettings(ref entity);
                    this.AddSecuritySettings(ref entity);

                    Model = GuestLinksMapper <GuestLinks, GuestLinksModel> .Map(entity);

                    return(Model);
                }
                else
                {
                    var entity = GuestLinksMapper <GuestLinksModel, GuestLinks> .Map(Model);

                    this.m_GuestLinkRepository.Edit(entity);
                    this.AddExpirySettings(ref entity);
                    this.AddSecuritySettings(ref entity);

                    Model = GuestLinksMapper <GuestLinks, GuestLinksModel> .Map(entity);

                    return(Model);
                }
            }
            catch (Exception ex)
            {
                var message = string.Format("{0} {1} {2}", ex.InnerException == null ? ex.Message : ex.InnerException.Message, Environment.NewLine, ex.StackTrace);
                throw new Exception(message);
            }
        }
예제 #2
0
        /// <summary>
        /// Gets all guests.
        /// </summary>
        /// <param name="Email">The email.</param>
        public List <GuestLinksModel> GetAllGuests(int UserId)
        {
            try
            {
                var Links = this.m_GuestLinkRepository.GetAll().Where(a => a.UserId == UserId).ToList();
                PopUpExpirySettings(ref Links);
                PopulateSecuritySettings(ref Links);

                var result = GuestLinksMapper <GuestLinks, GuestLinksModel> .MapResponse(Links);

                return(result);
            }
            catch (Exception ex)
            {
                var message = string.Format("{0} {1} {2}", ex.InnerException == null ? ex.Message : ex.InnerException.Message, Environment.NewLine, ex.StackTrace);
                throw new Exception("");
            }
        }