Beispiel #1
0
        /// <summary>
        /// This function add/edit users
        /// </summary>
        /// <param name="user"></param>
        public int AddEditUsers(User user)
        {
            var context = new dbDataContext();
            var cUser = context.tbl_Users.FirstOrDefault(t => t.UserId == user.UserId) ??
                        new tbl_User();

            // Assign user values
            cUser.Email = user.Email;
            cUser.Forename = user.Forename;
            cUser.Surname = user.Surname;
            if (!string.IsNullOrEmpty(user.Password))
            {
                cUser.Password = user.Password;
            }
            cUser.JobTitle = user.JobTitle;
            cUser.Mobile = user.Mobile;
            cUser.Telephone = user.Telephone;
            cUser.UserType = user.UserType.UserTypeId;
            cUser.Deleted = user.Deleted;
            var isAdd = false;
            try
            {
                // Add/Update user
                if (cUser.UserId <= 0)
                {
                    isAdd = true;
                    cUser.CreatedDate = DateTime.Now;
                    cUser.LastOutlookCalendarSyncDate = DateTime.Now;
                    cUser.LastOutlookEmailSyncDate = DateTime.Now;
                    context.tbl_Users.InsertOnSubmit(cUser);
                }
                context.SubmitChanges();

                //save the footer template
                var fTemplate = context.tbl_EmailFooters.FirstOrDefault(t => t.ClientUserId == user.UserId);
                if (user.FooterTemplate != null)
                {
                    if (fTemplate == null)
                        fTemplate = new tbl_EmailFooter();
                    fTemplate.ClientUserId = cUser.UserId;
                    fTemplate.FooterTemplate = user.FooterTemplate.Template;
                    fTemplate.InUse = true;
                    if (fTemplate.FooterTemplateId <= 0)
                        context.tbl_EmailFooters.InsertOnSubmit(fTemplate);
                }
                else if (fTemplate != null) // template found, but not in use
                    fTemplate.InUse = false;
                // submit the changes
                context.SubmitChanges();
            }
            catch (Exception)
            {
                return -1;
            }
            // Add History
            new Histories().AddHistory(new History
            {
                RefId = user.UserId,
                RefType = "User",
                ClientUserId = user.UpdatedBy,
                TypeId = isAdd ? 12 : 13,
                SubRefType = "User",
                SubRefId = user.UpdatedBy
            });

            return cUser.UserId;
        }
 partial void Updatetbl_EmailFooter(tbl_EmailFooter instance);
 partial void Deletetbl_EmailFooter(tbl_EmailFooter instance);
 partial void Inserttbl_EmailFooter(tbl_EmailFooter instance);