Ejemplo n.º 1
0
        public void ddCommands_SelectIndexChanged(object sender, EventArgs e)
        {
            switch (ddCommands.SelectedItem.Value)
            {
            case "activate":
            {
                DojoMember member = new DojoMember(selectedID);
                member.IsPrimaryOrgActive = true;
                member.AddMemoMessage(DateTime.Now.ToString() + " : Activated");
                member.PrivateContact.Save();
                member.Save();
                break;
            }

            case "cleardues":
            {
                DojoMember member = new DojoMember(selectedID);
                member.IsPastDue = false;
                member.AddMemoMessage(DateTime.Now.ToString() + " : Cleared Dues\r\n" +
                                      member.AttendanceMessage);
                member.AttendanceMessage = string.Empty;
                member.PrivateContact.Save();
                member.Save();
                break;
            }

            case "pastdue":
            {
                DojoMember member = new DojoMember(selectedID);
                member.IsPastDue = true;
                member.AddMemoMessage(DateTime.Now.ToString() + " : Past Due");
                member.PrivateContact.Save();
                member.Save();
                break;
            }

            case "deactivate":
            {
                DojoMember member = new DojoMember(selectedID);
                member.IsPrimaryOrgActive = false;
                member.AddMemoMessage(DateTime.Now.ToString() + " : Deactivated");
                member.PrivateContact.Save();
                member.Save();
                break;
            }

            case "validateaddress":
            {
                DojoMember member = new DojoMember(selectedID);
                member.PrivateContact.IsBadAddress = false;
                member.AddMemoMessage(DateTime.Now.ToString() + " : Address Validated");
                member.PrivateContact.Save();
                break;
            }

            case "invalidateaddress":
            {
                DojoMember member = new DojoMember(selectedID);
                member.PrivateContact.IsBadAddress = true;
                member.AddMemoMessage(DateTime.Now.ToString() + " : Address Invalidated");
                member.PrivateContact.Save();
                break;
            }

            case "grantmembership":
            {
                DojoMember        member  = new DojoMember(selectedID);
                MembershipBuilder builder = new MembershipBuilder();
                builder.Load();            // TODO: SPEED ME UP USING THE ROOT MEMBER SEARCH!
                builder.ProcessTrees();
                builder.ProcessHashes();
                List <MembershipPackage> packages = builder.GetMembershipPackages(member);
                if (packages.Count > 0)
                {
                    MembershipPackage package = packages[0];
                    package.ApplyGrant();
                    package.Save();
                    registerNotification("Membership package for " +
                                         member.PrivateContact.FullName +
                                         " has been granted. Any sub-members have also been granted " +
                                         "memberships.");
                }
                packages = null;
                builder  = null;
                break;
            }
            }

            ddCommands.SelectedIndex = 0;
        }