// GET: Member
 public ActionResult SelectUser(MemberVM item)
 {
     if (db.Members.Any(x => x.Roles == item.Roles && item.Roles == MemberRoles.VIP))
     {
         return(RedirectToAction("MovieVIP", "MovieVIP"));
     }
     else if (db.Members.Any(x => x.Roles == item.Roles && item.Roles == MemberRoles.Student))
     {
         return(RedirectToAction("MovieStudent", "MovieStudent"));
     }
     else if (db.Members.Any(x => x.Roles == item.Roles && item.Roles == MemberRoles.Owner))
     {
         return(RedirectToAction("OwnerPage", "OwnerPage"));
     }
     else if (db.Members.Any(x => x.Roles == item.Roles && item.Roles == MemberRoles.BoxOffice))
     {
         return(RedirectToAction("BoxOfficePage", "BoxOfficePage"));
     }
     else if (db.Members.Any(x => x.Roles == item.Roles && item.Roles == MemberRoles.Executive))
     {
         return(RedirectToAction("ExecutivePage", "ExecutivePage"));
     }
     else if (db.Members.Any(x => x.Roles == item.Roles && item.Roles == MemberRoles.Normal))
     {
         return(RedirectToAction("MovieNormal", "MovieNormal"));
     }
     return(RedirectToAction("Movie", "Movie"));
 }
        public JsonResult NonIssueMembers(string term, int issueId)
        {
            //Returns team members who are not assigned to the issue in a list in JSON format
            try
            {
                //TO DO : Have repo method to directly get non issue members

                var team = repo.GetTeam(TeamID);
                var list = new List <MemberVM>();
                var existingIssueMembers = repo.GetIssueMembers(issueId).ToList();

                var projectMembers = team.TeamMembers.Where(s => s.Member.FirstName.StartsWith(term, StringComparison.OrdinalIgnoreCase)).ToList();
                foreach (var member in projectMembers)
                {
                    if (!existingIssueMembers.Any(s => s.MemberID == member.MemberID))
                    {
                        var memberVM = new MemberVM {
                            AvatarHash = UserService.GetAvatarUrl(member.Member.Avatar)
                        };
                        memberVM.Name     = member.Member.FirstName;
                        memberVM.MemberID = member.Member.ID;
                        list.Add(memberVM);
                    }
                }
                return(Json(list, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                log.Error(ex);
                return(Json(new { Status = "Error", Message = "Troubles getting team members", JsonRequestBehavior.AllowGet }));
            }
        }
示例#3
0
        private void Dialog_Closing(object sender, MaterialDesignThemes.Wpf.DialogClosingEventArgs eventArgs)
        {
            var confirmed = (bool)eventArgs.Parameter;

            if (confirmed)
            {
                if (!string.IsNullOrEmpty(txtFirstName.Text) && !string.IsNullOrEmpty(txtLastName.Text) &&
                    !string.IsNullOrEmpty(txtMobile.Text))
                {
                    int?id;
                    if (Member.Id == 0)
                    {
                        Member              = new MemberVM();
                        Member.Firstname    = txtFirstName.Text;
                        Member.Lastname     = txtLastName.Text;
                        Member.Mobile       = txtMobile.Text;
                        Member.NationalCode = txtNationalCode.Text;
                        Member.IsRegular    = false;
                        id = Member.Insert();
                        db = new Data.GymContextDataContext();
                    }
                    else
                    {
                        id = Member.Id;
                    }
                    if (id.HasValue)
                    {
                        Member.Id = id.Value;
                        Data.Passage enter = new Data.Passage {
                            IsEntrance = true, MemberId = id.Value, Time = DateTime.Now
                        };

                        byte method = (byte)(rdCash.IsChecked == true ? 0 : (rdPos.IsChecked == true ? 1 : (rdCard.IsChecked == true ? 2 : 3)));

                        Data.Transaction pay = new Data.Transaction
                        {
                            Amount   = txtPayable.Value,
                            Datetime = DateTime.Now,
                            Info     = "تک جلسه" + (txtFacilityCost.Value > 0 ? " + امکانات" : ""),
                            MemberId = id.Value,
                            Method   = method,
                            UserId   = Main.CurrentUser.Id,
                            Type     = (byte)TransactionType.SingleSession
                        };

                        db.Passages.InsertOnSubmit(enter);
                        db.Transactions.InsertOnSubmit(pay);
                        db.SubmitChanges();

                        Member.UseCloset(db);

                        var main = Application.Current.Windows.Cast <Window>().ToList().Find(w => w.GetType().Name == "Main") as Main;
                        main.TransitList.UpdatePassages();

                        Main.Home.Closets.LoadClosets();
                    }
                }
            }
            this.Close();
        }
示例#4
0
        public void UpdateIndividual(MemberVM member)
        {
            if (member == null)
            {
                return;
            }

            string memberId         = null;
            string lastName         = null;
            string firstName        = null;
            string organizationName = null;
            string position         = null;

            if (member != null)
            {
                memberId         = member.Member.Id;
                lastName         = member.LastName;
                firstName        = member.FirstName;
                organizationName = member.OrganizationName;
                position         = member.Position;
            }
            sampling.MemberId     = memberId;
            this.LastName         = lastName;
            this.FirstName        = firstName;
            this.OrganizationName = organizationName;
            this.Position         = position;
        }
示例#5
0
        private void txtMobile_TextChanged(object sender, TextChangedEventArgs e)
        {
            var matches = db.Members.Where(m => !m.IsDeleted && !m.IsRegular && m.Mobile == txtMobile.Text);

            if (matches.Count() == 1)
            {
                this.Member = matches.Select(m =>
                                             new MemberVM
                {
                    Id        = m.Id,
                    Firstname = m.Firstname,
                    Lastname  = m.Lastname,
                    Mobile    = m.Mobile,
                    IsRegular = false
                }).FirstOrDefault();
                txtFirstName.Text = Member.Firstname;
                txtLastName.Text  = Member.Lastname;
            }
            else
            {
                Member            = new MemberVM();
                txtFirstName.Text = "";
                txtLastName.Text  = "";
            }
        }
示例#6
0
        public MemberVM AddMember(MemberVM AddMember)
        {
            using (var db = new TagsDataModel())
            {
                TAGS_MEMBER NewMember = new TAGS_MEMBER();
                NewMember.CELL_PHONE   = AddMember.CELL_PHONE;
                NewMember.COMPANY_NAME = AddMember.COMPANY_NAME;
                NewMember.EMAIL_ID     = AddMember.EMAIL_ID;
                NewMember.FIRST_NAME   = AddMember.FIRST_NAME;
                NewMember.HOME_PHONE   = AddMember.HOME_PHONE;
                NewMember.IS_VOLUNTEER = AddMember.IS_VOLUNTEER;
                NewMember.LAST_NAME    = AddMember.LAST_NAME;
                db.TAGS_MEMBER.Add(NewMember);
                db.SaveChanges();

                MemberVM member = new MemberVM();
                member.CELL_PHONE     = NewMember.CELL_PHONE;
                member.COMPANY_NAME   = NewMember.COMPANY_NAME;
                member.EMAIL_ID       = NewMember.EMAIL_ID;
                member.FIRST_NAME     = NewMember.FIRST_NAME;
                member.HOME_PHONE     = NewMember.HOME_PHONE;
                member.IS_VOLUNTEER   = NewMember.IS_VOLUNTEER;
                member.LAST_NAME      = NewMember.LAST_NAME;
                member.MemberNotFound = false;
                member.MEMBER_ID      = NewMember.MEMBER_ID;

                return(member);
            }
        }
示例#7
0
        public MemberVM SearchMember(SearchMemberVM SearchMember)
        {
            using (var db = new TagsDataModel())
            {
                MemberVM memb  = new MemberVM();
                var      model = (from member in db.TAGS_MEMBER
                                  where member.EMAIL_ID.ToLower().Equals(SearchMember.email.ToLower())
                                  select member).FirstOrDefault();

                if (model != null)
                {
                    memb.CELL_PHONE     = model.CELL_PHONE;
                    memb.COMPANY_NAME   = model.COMPANY_NAME;
                    memb.EMAIL_ID       = model.EMAIL_ID;
                    memb.FIRST_NAME     = model.FIRST_NAME;
                    memb.HOME_PHONE     = model.HOME_PHONE;
                    memb.IS_VOLUNTEER   = model.IS_VOLUNTEER;
                    memb.LAST_NAME      = model.LAST_NAME;
                    memb.MemberNotFound = false;
                    memb.MEMBER_ID      = model.MEMBER_ID;
                }
                else
                {
                    memb.MemberNotFound = true;
                }

                return(memb);
            }
        }
示例#8
0
 private void btnSelect_Click(object sender, RoutedEventArgs e)
 {
     if (MemberSelected != null)
     {
         var m = db.Members.Where(x => x.Id == Member.Id).FirstOrDefault();
         Member = new MemberVM
         {
             Id                  = m.Id,
             FingerId            = m.FingerId,
             Firstname           = m.Firstname,
             Lastname            = m.Lastname,
             Address             = m.Address,
             BirthDate           = m.Birthdate?.ToEn(),
             Description         = m.Description,
             Fathername          = m.Dadsname,
             Mobile              = m.Mobile,
             NationalCode        = m.NationalCode,
             Referrer            = m.Referrer,
             ReferrerMobile      = m.ReferrerMobile,
             IsActive            = m.IsActive,
             Credit              = m.Credit,
             Debtor              = m.Debtor,
             InsuranceNo         = m.InsuranceNo,
             ImagePath           = m.Image,
             InsuranceExpireDate = m.InsuranceExpiry.ToEn(),
             ClosetId            = db.Closets.Where(c => c.RentorId == m.Id).FirstOrDefault()?.Id
         };
         MemberSelected(Member);
     }
 }
示例#9
0
        public ActionResult Signup([FromBody] MemberVM member)
        {
            if (!ModelState.IsValid)
            {
                _response.Message = "Please provide all required data for sign up.";
                return(BadRequest(_response));
            }

            var foundMember = _memberService.GetByEmail(member.Email);

            if (foundMember != null)
            {
                _response.Message = "User has already signed up.";
                return(BadRequest(_response));
            }

            var newMember = Mapper.Map <Member>(member);

            _memberService.Save(newMember);

            var jwtToken = _jwtService.GenerateJwt(member.Email);

            _response.Token = jwtToken;

            return(Ok(_response));
        }
示例#10
0
        public void Save(MemberVM model)
        {
            var userInfo = GetByCode(model.Code);

            if (userInfo == null || userInfo.ID == 0)
            {
                throw new ArgumentNullException("");
            }
            //userInfo.Mobile = model.Mobile;
            //userInfo.Name = model.Name;
            //userInfo.Birthday = model.Birthday;
            //_userRep.Update(userInfo);

            var consigneeInfo = GetConsignneInfoByUid(userInfo.ID);

            if (consigneeInfo == null)
            {
                consigneeInfo = new UserConsigneeInfo();
            }
            consigneeInfo.UserID = userInfo.ID;
            consigneeInfo.ConsigneeUserMobile  = model.Mobile;
            consigneeInfo.ConsigneeUserName    = model.Name;
            consigneeInfo.ConsigneeUserAddress = string.Format("{0}|{1}|{2}|{3}", model.Province, model.City, model.District, model.Address);
            consigneeInfo.ModifiedAt           = DateTime.Now;
            if (consigneeInfo.ID == 0)
            {
                consigneeInfo.CreatedAt = consigneeInfo.ModifiedAt;
                _consignneRep.Add(consigneeInfo);
            }
            else
            {
                _consignneRep.Update(consigneeInfo);
            }
            _uow.Commit();
        }
示例#11
0
        public static bool UseCloset(this MemberVM memberVM, Data.GymContextDataContext db)
        {
            if (memberVM.ClosetId != null) //If has rented closet
            {
                var freecloset = db.Closets.Where(c => c.Id == memberVM.ClosetId).FirstOrDefault();
                if (freecloset != null)
                {
                    freecloset.IsFree = false;
                    freecloset.UserId = memberVM.Id;

                    db.ClosetUsages.InsertOnSubmit(new ClosetUsage
                    {
                        MemberId = memberVM.Id,
                        ClosetId = freecloset.Id,
                        FromTime = DateTime.Now,
                    });
                    db.SubmitChanges();
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            else //give them a proper closet
            {
                var isVIP = (from e in db.Enrolls
                             where e.MemberId == memberVM.Id &&
                             e.StartDate <= DateTime.Now &&
                             e.ExpireDate >= DateTime.Now
                             select e.EnrollCourses.Any(c => c.Course.IsVIP)).ToList().FirstOrDefault();

                var freecloset = db.Closets.Where(c =>
                                                  c.IsVip == isVIP &&
                                                  c.IsFree &&
                                                  c.RentorId == null &&
                                                  !c.IsCoach &&
                                                  !c.IsBroken).FirstOrDefault();

                if (freecloset != null)
                {
                    freecloset.IsFree = false;
                    freecloset.UserId = memberVM.Id;

                    db.ClosetUsages.InsertOnSubmit(new ClosetUsage
                    {
                        MemberId = memberVM.Id,
                        ClosetId = freecloset.Id,
                        FromTime = DateTime.Now,
                    });
                    db.SubmitChanges();
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
        }
示例#12
0
        public bool Update(MemberVM vm)
        {
            var model = MapperConfig.Mapper.Map <Member>(vm);

            _memberRepository.Update(model);
            _memberRepository.SaveChange();
            return(true);
        }
示例#13
0
        public ActionResult Put(int id, [FromBody] MemberVM member)
        {
            var updateMember = Mapper.Map <Member>(member);

            _memberService.Update(updateMember);


            return(Ok(_response));
        }
示例#14
0
        public IActionResult SelectMember()
        {
            var viewModel = new MemberVM
            {
                Members = _memberRepository.GetAll()
            };

            return(View(viewModel));
        }
示例#15
0
        public ActionResult Edit(MemberVM vm)
        {
            if (false == ModelState.IsValid)
            {
                return(View(vm));
            }

            _memberService.Update(vm);

            return(RedirectToAction("Index"));
        }
示例#16
0
        public void SelectIndividual()
        {
            SelectMemberWindow dlg = new SelectMemberWindow(StudyUnit);

            dlg.Owner = Application.Current.MainWindow;
            dlg.ShowDialog();
            if (dlg.DialogResult == true)
            {
                MemberVM member = dlg.SelectedMember;
                UpdateIndividual(member);
            }
        }
示例#17
0
        public ActionResult Edit([Bind(Include = "ID,Name,Email,Password,City,Country,Image")] MemberVM member)
        {
            if (Session["UserID"] == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.Forbidden));
            }
            Member requester = db.Members.Find(Convert.ToInt32(Session["UserID"].ToString()));

            if (requester.ID != member.ID && requester.Role != Coursework.Models.Role.Admin)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.Forbidden));
            }
            if (ModelState.IsValid)
            {
                Member currentMember = db.Members.Find(member.ID);
                currentMember.Name    = member.Name;
                Session["UserName"]   = member.Name.ToString();
                currentMember.Email   = member.Email;
                currentMember.City    = member.City;
                currentMember.Country = member.Country;

                if (member.Password != null)
                {
                    currentMember.Password = Crypto.HashPassword(member.Password);
                }

                // if an image was attached, do upload to S3
                if (member.Image != null && member.Image.ContentLength > 0)
                {
                    // Image upload courtesy of Stack Overflow, Stephen Muecke, 10/03/2016, https://stackoverflow.com/questions/35904830/asp-net-mvc-upload-image
                    Stream         st         = member.Image.InputStream;
                    string         extension  = Path.GetExtension(member.Image.FileName).ToLower();
                    string         fileName   = string.Format("{0}{1}", Guid.NewGuid(), extension);
                    string         bucketName = "multitude";
                    string         s3dir      = "UserImages";
                    AmazonUploader uploader   = new AmazonUploader();
                    bool           a          = uploader.sendMyFileToS3(st, bucketName, s3dir, fileName);

                    if (a != true)
                    {
                        ModelState.AddModelError("Image", "Image upload to S3 failed.");
                        return(View(member));
                    }

                    currentMember.ImagePath = "https://s3-eu-west-1.amazonaws.com/multitude/UserImages/" + fileName;
                }

                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            return(View(member));
        }
示例#18
0
        public ActionResult Register(string Code)
        {
            MemberVM model = new MemberVM();

            model.OpenID = this.GetOpenId(Code);
            var members = MemberBL.GetMembers(model.OpenID);

            if (members.Count > 0)
            {
                return(View("Detail", members));
            }
            return(View(model));
        }
示例#19
0
        public int GetDefaultProjectForCurrentTeam()
        {
            MemberVM teamMember = teamRepository.GetTeamMember(userSessionHelper.TeamId, userSessionHelper.UserId);

            if (teamMember != null)
            {
                if (teamMember.DefaultProjectId != null)
                {
                    return(teamMember.DefaultProjectId.Value);
                }
            }
            return(0);
        }
示例#20
0
        public ActionResult LoginUser(MemberVM item)
        {
            if (db.Members.Any(x => x.UserName == item.Username && x.Password == item.Password))
            {
                Member login = db.Members.FirstOrDefault(x => x.UserName == item.Username && x.Password == item.Password);

                Session["Member"] = login;

                return(RedirectToAction("Movie", "Movie"));
            }
            ViewBag.Mesaj = "Lütfen önce üye olun";
            return(View());
        }
示例#21
0
        public static bool FreeUpCloset(this MemberVM memberVM, Data.GymContextDataContext db)
        {
            var occupiedclosets = db.ClosetUsages.Where(c => c.ToTime == null && c.MemberId == memberVM.Id);

            foreach (ClosetUsage closet in occupiedclosets)
            {
                closet.Closet.IsFree = true;
                closet.Closet.UserId = null;
                closet.ToTime        = DateTime.Now;
            }

            db.SubmitChanges();
            return(true);
        }
示例#22
0
        public ActionResult Register(MemberVM model)
        {
            if (!ModelState.IsValid)
            {
                return(View("register", model));
            }

            if (!model.Password.Equals(model.ConfirmPassword))
            {
                ModelState.AddModelError("", "密碼不一致");
                return(View("register", model));
            }

            using (Db db = new Db()) {
                if (db.Members.Any(x => x.Account.Equals(model.Account)))
                {
                    ModelState.AddModelError("", "Account" + model.Account + "is taken!");
                    model.Account = "";
                    return(View("register", model));
                }

                MemberFeatures passwordHash = new MemberFeatures();
                string         hashPassword = passwordHash.HashPassword(model.Password);

                MemberDTO memberDTO = new MemberDTO()
                {
                    Name     = model.Name,
                    Email    = model.Email,
                    Account  = model.Account,
                    Password = hashPassword
                };

                db.Members.Add(memberDTO);
                db.SaveChanges();

                // Add User Role
                int id = memberDTO.UID;

                UserRoleDTO userRoleDTO = new UserRoleDTO()
                {
                    UserId = id,
                    RoleId = 2
                };

                db.UserRoles.Add(userRoleDTO);
                db.SaveChanges();
            }

            return(Redirect("~/member/login"));
        }
示例#23
0
        public IActionResult SelectMember([Bind("Id, Name, MemberId")] MemberVM member)
        {
            if (ModelState.IsValid)
            {
                MemberVM me = new MemberVM();
                me.Member = _memberRepository.Get(member.MemberId);

                return(RedirectToAction("RelatedProducts", member));
            }
            else
            {
                return(View());
            }
        }
示例#24
0
        public MemberUserControl(Save save)
        {
            this._memberVM = new MemberVM(save);

            this._employeeSelected = false;
            this._memberSelected   = true;
            this._alfabetSorted    = false;
            this._classementSorted = false;
            this._activeFilters    = new List <Filter>();
            InitializeComponent();

            MemberButton.Background = this._memberSelected ? SolidColorBrushHelper.DarkGreen() : SolidColorBrushHelper.Green();

            DataContext = this._memberVM;
        }
示例#25
0
        private void MembersLB_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (e.AddedItems.Count > 0) {
                selectedMember = (MemberVM)e.AddedItems[0];
                var targetPage = new Uri("/Views/MemberDetails.xaml?id=" + selectedMember.Id, UriKind.Relative);

                // reset selection of ListBox
                ((ListBox)sender).SelectedIndex = -1;

                // change page
                NavigationService.Navigate(targetPage);
                FrameworkElement root = Application.Current.RootVisual as FrameworkElement;
                root.DataContext = selectedMember;
            }
        }
示例#26
0
        public static int?Insert(this MemberVM memberVM)
        {
            try
            {
                var db  = new Data.GymContextDataContext();
                var obj = new Data.Member(); db.Members.InsertOnSubmit(obj);
                obj.Address        = memberVM.Address;
                obj.FingerId       = memberVM.FingerId;
                obj.Birthdate      = memberVM.BirthDate?.ToFa();
                obj.Dadsname       = memberVM.Fathername;
                obj.Description    = memberVM.Description;
                obj.Firstname      = memberVM.Firstname;
                obj.Lastname       = memberVM.Lastname;
                obj.Mobile         = memberVM.Mobile;
                obj.NationalCode   = memberVM.NationalCode;
                obj.IsRegular      = memberVM.IsRegular;
                obj.UserId         = Windows.Main.CurrentUser.Id;
                obj.IsActive       = true;
                obj.Image          = Guid.NewGuid().ToString();
                memberVM.ImagePath = obj.Image;
                db.SubmitChanges();

                var closet = db.Closets.Where(c => c.Id == memberVM.ClosetId).FirstOrDefault();
                if (closet != null)
                {
                    closet.RentorId = obj.Id;
                }

                db.SubmitChanges();

                if (memberVM.Image != null)
                {
                    try
                    {
                        memberVM.Image.Save(AppDomain.CurrentDomain.BaseDirectory + $"/Images/{obj.Image}.jpg");
                    }
                    catch
                    {
                    }
                }

                return(obj.Id);
            }
            catch (Exception ex)
            {
                return(null);
            }
        }
示例#27
0
        private void Search_MemberSelected(MemberVM member)
        {
            if (member != null)
            {
                var card = new MemberCard(member.Id);
                card.IsInteractive = false;

                MemberHolder.Children.Clear();
                MemberHolder.Children.Add(card);

                MemberId       = member.Id;
                txtCredit.Text = member.Credit.ToString("#,##0");
            }

            btnPay.IsEnabled = member != null;
        }
示例#28
0
//        public string Method
//        {
//            //Make in use of Codebook output
//            get
//            {
//                return Option.FindLabel(samplingMethods, MethodCode);
//            }
//       }

        public void GenerateCollector()
        {
            StudyUnitVM  studyUnit  = StudyUnit;
            MemberFormVM memberForm = studyUnit.MemberForm;

            if (IsCollectorTypeIndividual)
            {
                MemberVM newMember = memberForm.AppendMember(sampling.MemberId, this.LastName, this.FirstName, this.OrganizationName, this.Position);
                UpdateIndividual(newMember);
            }
            else
            {
                OrganizationVM organization = memberForm.AppendOrganization(sampling.MemberId, this.OrganizationName);
                UpdateOrganization(organization);
            }
        }
示例#29
0
 protected void LoadMemberInfo()
 {
     if (null == MemberInfo)
     {
         if (string.IsNullOrEmpty(Code))
         {
             throw new ArgumentNullException("code");
         }
         var user  = _userSrv.GetByCode(this.Code);
         var model = Mapper.Map <MemberVM>(user);
         MemberInfo = model;
         _user      = user;
         this.Code  = MemberInfo != null ? MemberInfo.Code : this.Code;
     }
     MemberInfo = MemberInfo == null ? new MemberVM() : MemberInfo;
 }
示例#30
0
 public ActionResult Save(MemberVM model)
 {
     if (model == null)
     {
         throw new ArgumentNullException("");
     }
     try
     {
         _userSrv.Save(model);
         return(Json(new { success = true }, JsonRequestBehavior.AllowGet));
     }
     catch (Exception ex)
     {
         return(Json(new { success = false, msg = ex.Message }, JsonRequestBehavior.AllowGet));
     }
 }
示例#31
0
        public ActionResult GetMemberItem(string memberID)
        {
            QYMemberBL memberBl = QYMemberBL.GetMemberByPKID(memberID);
            MemberVM   member   = new MemberVM();

            member.MemberID   = memberBl.ID;
            member.Name       = memberBl.Name;
            member.Weixinid   = memberBl.Weixinid;
            member.UserId     = memberBl.UserId;
            member.Mobile     = memberBl.Mobile;
            member.Email      = memberBl.Email;
            member.Position   = memberBl.Position;
            member.Status     = memberBl.Status;
            member.Avatar     = memberBl.Avatar;
            member.DepartPKId = memberBl.DepartmentPKId.ToString();
            return(Json(member));
        }
示例#32
0
    /// <summary>
    /// Evaluates a member view model and creates an appropriate link to that member's profile.
    /// </summary>
    /// <param name="html">html helper</param>
    /// <param name="viewModel">member we wish to create a profile link for</param>
    /// <param name="currentMember">member we wish to create a profile/account link for</param>
    /// <returns>returns either an anchor tag or span tag depending on whether the member is anonymous/exists</returns>
    public static MvcHtmlString ProfileLink(this HtmlHelper html, MemberVM viewModel, CurrentMemberVM currentMember, int cutOff = 0)
    {
        MvcHtmlString returnValue = null;

            string linkText;
            if (viewModel == null || viewModel.IsAnonymous)
            {
                linkText = "Anonymous";
                if (cutOff > 0)
                {
                    linkText = IWStringUtility.TruncateClean(linkText, cutOff);
                }
                returnValue = MvcHtmlString.Create("<span>" + linkText + "</span>");
            }
            else if (currentMember != null && viewModel.Id == currentMember.Id)
            {
                if (currentMember.IsActive)
                {
                    linkText = "You";
                    if (cutOff > 0)
                    {
                        linkText = IWStringUtility.TruncateClean(linkText, cutOff);
                    }
                    returnValue = html.ActionLink(linkText, MVC.Member.Profile(viewModel.Id.Value, null));
                }
                else
                {
                    linkText = "Activate profile";
                    if (cutOff > 0)
                    {
                        linkText = IWStringUtility.TruncateClean(linkText, cutOff);
                    }
                    returnValue = html.ActionLink(linkText, MVC.Member.Profile(viewModel.Id.Value, null));
                }
            }
            else
            {
                linkText = viewModel.DisplayName;
                if (cutOff > 0)
                {
                    linkText = IWStringUtility.TruncateClean(linkText, cutOff);
                }
                returnValue = html.ActionLink(linkText, MVC.Member.Profile(viewModel.Id.Value, null));
            }

            return returnValue;
    }
示例#33
0
        public AccountVM(ProviderMember aMember, ProviderCurrentMember currentMember)
        {
            Member = new MemberVM(aMember, currentMember);
            PageTitle = aMember.DisplayAdministrativeName + " Account";
            EmailAddresses = aMember.Emails.Select(email => email.Email.Address).ToList();
            OpenIds = aMember.OpenIds;

            ProfileImage = MemberBL.GetProfileImage(aMember);

            if (currentMember.CanEdit(aMember) && currentMember.HasAdminRights)
            {
                ArticleList = ProviderArticle.LoadBy(aMember.Id.Value, null, null).ConvertAll<ArticleVM>(anArticle => new ArticleVM(anArticle, currentMember));
            }
            else
            {
                ArticleList = ProviderArticle.LoadBy(aMember.Id.Value, null, false).ConvertAll<ArticleVM>(anArticle => new ArticleVM(anArticle, currentMember));
            }
            NoArticles = ArticleList.Count == 0;
            DisplayAlternateCategories = aMember.HasAlternateCategories && currentMember.HasAdminRights;
        }