Ejemplo n.º 1
0
        /// <summary>
        /// Creates a user account for a member and associates it with the
        /// member. The member must call Save() on the customer after this
        /// process.
        /// </summary>
        /// <param name="member">The member to make an account for.</param>
        /// <param name="username">The username to associate with the account.</param>
        /// <returns></returns>
        private static bool createUser(DojoMember member, string username)
        {
            GreyFoxUser user;

            if (member.UserAccount != null)
            {
                return(false);
            }

            user = SecurityManager.GetUser(username);

            if (user == null)
            {
                user = new GreyFoxUser();

                user.Contact = new GreyFoxContact(GreyFoxUserManager.ContactTable);
                member.PrivateContact.CopyValuesTo(user.Contact, false);

                user.UserName = username;
                user.RandomizePassword(7);
                user.ActivationID = DateTime.Now.GetHashCode().ToString();

                member.UserAccount = user;

                // TODO: SEND EMAIL TO USER?
            }

            if (member.MemberTypeTemplate != null &&
                member.MemberTypeTemplate.InitialRole != null)
            {
                user.Roles.Add(member.MemberTypeTemplate.InitialRole);
            }

            return(true);
        }
Ejemplo n.º 2
0
 public void Clear()
 {
     member       = null;
     typeTemplate = null;
     memberships  = null;
     totalFee     = decimal.Zero;
 }
Ejemplo n.º 3
0
        /// <summary>
        /// Tries to switches a member's user account to the one specified. If
        /// the account cannot be found or if the account is already associated
        /// with an existing member, then create a new user account for the
        /// member if allowed. This will also switch the customer account if the
        /// user account specified is tied to a different customer account.
        /// </summary>
        /// <param name="customer"></param>
        /// <param name="user"></param>
        /// <param name="allowCreate">Allows the creation of a new user account
        /// if one cannot be found.</param>
        /// <returns></returns>
        public static bool UpdateUser(DojoMember member,
                                      GreyFoxUser user)
        {
            DojoMember existingMember;
            RHCustomer customer;

            existingMember = GetMember(user);

            if (existingMember == null)
            {
                member.UserAccount = user;

                // Update Customer Reference
                customer = CustomerBuilder.GetCustomer(user);
                if (customer != null)
                {
                    if (member.Customer == null ||
                        member.Customer.ID != customer.ID)
                    {
                        member.Customer = customer;
                    }
                }

                return(true);
            }
            else if (existingMember.ID == member.ID)
            {
                return(true); // Member is the same;
            }

            return(false);
        }
Ejemplo n.º 4
0
        protected override void OnPreRender(EventArgs e)
        {
            if (memberID != 0)
            {
                editMember = new DojoMember(memberID);
                Text       = "Delete - " + editMember.PrivateContact.FullName;
            }
            else
            {
                Text = "Delete Member";
            }

            //
            // Detect class and class definition relations and issue error.
            //
            DojoClassManager           cm  = new DojoClassManager();
            DojoClassDefinitionManager cdm = new DojoClassDefinitionManager();

            classError           = cm.ClassCountByInstructor(memberID) > 0;
            classDefinitionError = cdm.GetClassDefinitionCountByInstructor(memberID) > 0;
            btOk.Enabled         = !classError & !classDefinitionError;

            //
            // Detect attendance and issue notice.
            //
            DojoAttendanceEntryManager am = new
                                            DojoAttendanceEntryManager();

            attendanceError = am.ClassCountByMember(memberID) > 0;
            DojoBulkAttendanceEntryManager bam = new
                                                 DojoBulkAttendanceEntryManager();

            bulkAttendanceError = bam.ClassCountByMember(memberID) > 0;
        }
Ejemplo n.º 5
0
        private void btPromote_Click(object sender, EventArgs e)
        {
            if (ddTests.SelectedValue != "-1")
            {
                DojoMember    member    = new DojoMember(this.SelectedID);
                DojoTest      test      = new DojoTest(int.Parse(ddTests.SelectedValue));
                DojoPromotion promotion = new DojoPromotion();

                promotion.LastRank      = member.Rank;
                promotion.Member        = member;
                promotion.PromotionDate = test.TestDate;
                promotion.PromotionRank = member.Rank.PromotionRank;
                promotion.Test          = test;
                promotion.Save();

                member.Rank     = member.Rank.PromotionRank;
                member.RankDate = test.TestDate;
                member.Save();

//				MembershipScan mScan = new MembershipScan();
//				mScan.FixAttendance();

                Page.ClientScript.RegisterStartupScript(this.GetType(), "WarningMessage",
                                                        "<script language=\"javascript\">alert('" +
                                                        member.PrivateContact.FullName + " promoted to " + member.Rank.Name + "." +
                                                        "');</script>");;
            }
        }
Ejemplo n.º 6
0
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);

            #region Process Test List Postback

            if (Page.IsPostBack)
            {
                string key;

                for (int i = 0; i < Page.Request.Form.Count; i++)
                {
                    key = Page.Request.Form.GetKey(i);

                    if (key.StartsWith(this.ClientID + "_remove_"))
                    {
                        int memberID =
                            int.Parse(key.Substring(this.ClientID.Length + 8));

                        DojoTest          test = new DojoTest(selectedID);
                        TestListGenerator gen  = new TestListGenerator(connectionString);
                        gen.RemoveMember(test.ActiveTestList,
                                         DojoMember.NewPlaceHolder(memberID));
                        gen.CompileTestList(test);
                    }
                }
            }

            #endregion
        }
Ejemplo n.º 7
0
        private void btSub_Click(object sender, EventArgs e)
        {
            DojoClass selectedClass = new DojoClass(selectedID);

            selectedClass.Instructor = DojoMember.NewPlaceHolder(int.Parse(ddInstructors.SelectedItem.Value));
            selectedClass.Save();
            selectedID = 0;
        }
Ejemplo n.º 8
0
        /// <summary>
        /// Builds the memberships for the current member. If the member has
        /// submembers associated, these submemberships will be added to the
        /// member's memberships listing and associated to the submembers.
        ///
        /// Members are responsible for their submember's fees, but not any
        /// members beneath the submembers.
        /// </summary>
        /// <param name="member"></param>
        /// <param name="typeTemplate"></param>
        /// <param name="builder"></param>
        public void Build(
            DojoMember member,
            DojoMemberTypeTemplate typeTemplate,
            MembershipBuilder builder)
        {
            DojoMembershipTemplateCollection membershipTemplates;

            // Builds new memberships for the member.

            // * Pull old memberships associated with the member.
            // * Build the next membership based of the template.
            // * Add membership.

            Clear();

            this.member       = member;
            this.typeTemplate = typeTemplate;
            this.memberships  = new DojoMembershipCollection();

            if (typeTemplate != null)
            {
                membershipTemplates = builder.getMembershipTemplates(member, typeTemplate);

                if (membershipTemplates != null)
                {
                    foreach (DojoMembershipTemplate template in membershipTemplates)
                    {
                        addTemplate(member, template, builder);
                    }
                }

                // WALK TEMPLATE TREE AND SUB MEMBERS LOCK STEP AND ADD EACH
                // SUBMEMBER'S MEMBERSHIPS TO THE CURRENT PACKAGE.
                builder.pullData(member);
                if (member.subMembers != null)
                {
                    if (typeTemplate.subTemplates != null)
                    {
                        for (int i = 0; i < typeTemplate.subTemplates.Count; i++)
                        {
                            // This is for safety although the builder should only return
                            // members that have submembers that equal the type template's sub templates
                            if (i < member.subMembers.Count)
                            {
                                membershipTemplates =
                                    builder.getMembershipTemplates(member.subMembers[i],
                                                                   typeTemplate.subTemplates[i]);

                                foreach (DojoMembershipTemplate template in membershipTemplates)
                                {
                                    addTemplate(member.subMembers[i], template, builder);
                                }
                            }
                        }
                    }
                }
            }
        }
Ejemplo n.º 9
0
		protected void ok_Click(object sender, EventArgs e)
		{
			if(dojoPromotionID == 0)
				obj = new DojoPromotion();
			else
				obj = new DojoPromotion(dojoPromotionID);

			obj.PromotionDate = DateTime.Parse(tbPromotionDate.Text);

			if(msMember.SelectedItem != null && msMember.SelectedItem.Value != "Null")
				obj.Member = DojoMember.NewPlaceHolder(
					int.Parse(msMember.SelectedItem.Value));
			else
				obj.Member = null;

			if(msTest.SelectedItem != null && msTest.SelectedItem.Value != "Null")
				obj.Test = DojoTest.NewPlaceHolder(
					int.Parse(msTest.SelectedItem.Value));
			else
				obj.Test = null;

			if(msPromotionRank.SelectedItem != null && msPromotionRank.SelectedItem.Value != "Null")
				obj.PromotionRank = DojoRank.NewPlaceHolder(
					int.Parse(msPromotionRank.SelectedItem.Value));
			else
				obj.PromotionRank = null;

			if(msLastRank.SelectedItem != null && msLastRank.SelectedItem.Value != "Null")
				obj.LastRank = DojoRank.NewPlaceHolder(
					int.Parse(msLastRank.SelectedItem.Value));
			else
				obj.LastRank = null;

			if(msStatus.SelectedItem != null && msStatus.SelectedItem.Value != "Null")
				obj.Status = DojoPromotionStatus.NewPlaceHolder(
					int.Parse(msStatus.SelectedItem.Value));
			else
				obj.Status = null;

			if(editOnAdd)
				dojoPromotionID = obj.Save();
			else
				obj.Save();

			if(resetOnAdd)
			{
				tbPromotionDate.Text = DateTime.Now.ToString();
				msMember.SelectedIndex = 0;
				msTest.SelectedIndex = 0;
				msPromotionRank.SelectedIndex = 0;
				msLastRank.SelectedIndex = 0;
				msStatus.SelectedIndex = 0;
			}

			OnUpdated(EventArgs.Empty);
		}
Ejemplo n.º 10
0
        protected void btOk_Click(object sender, EventArgs e)
        {
            DojoMember dojoMember = new DojoMember(dojoMemberID);

            dojoMember.Delete();

            dojoMemberID = 0;

            OnDeleted(EventArgs.Empty);
        }
        protected void ok_Click(object sender, EventArgs e)
        {
            if (dojoBulkAttendanceEntryID == 0)
            {
                editDojoBulkAttendanceEntry = new DojoBulkAttendanceEntry();
            }
            else
            {
                editDojoBulkAttendanceEntry = new DojoBulkAttendanceEntry(dojoBulkAttendanceEntryID);
            }

            editDojoBulkAttendanceEntry.StartDate = DateTime.Parse(tbStartDate.Text);
            editDojoBulkAttendanceEntry.EndDate   = DateTime.Parse(tbEndDate.Text);
            editDojoBulkAttendanceEntry.Duration  = TimeSpan.FromHours(double.Parse(tbDuration.Text));

            if (ddMember.SelectedItem != null)
            {
                editDojoBulkAttendanceEntry.Member = DojoMember.NewPlaceHolder(
                    int.Parse(ddMember.SelectedItem.Value));
            }
            else
            {
                editDojoBulkAttendanceEntry.Member = null;
            }

            if (ddRank.SelectedItem != null)
            {
                editDojoBulkAttendanceEntry.Rank = DojoRank.NewPlaceHolder(
                    int.Parse(ddRank.SelectedItem.Value));
            }
            else
            {
                editDojoBulkAttendanceEntry.Rank = null;
            }

            if (editOnAdd)
            {
                dojoBulkAttendanceEntryID = editDojoBulkAttendanceEntry.Save();
            }
            else
            {
                editDojoBulkAttendanceEntry.Save();
            }

            if (resetOnAdd)
            {
                tbStartDate.Text       = string.Empty;
                tbEndDate.Text         = string.Empty;
                tbDuration.Text        = string.Empty;
                ddMember.SelectedIndex = 0;
                ddRank.SelectedIndex   = 0;
            }

            OnUpdated(EventArgs.Empty);
        }
Ejemplo n.º 12
0
        protected void ok_Click(object sender, EventArgs e)
        {
            if (dojoBulkAttendanceEntryID == 0)
            {
                obj = new DojoBulkAttendanceEntry();
            }
            else
            {
                obj = new DojoBulkAttendanceEntry(dojoBulkAttendanceEntryID);
            }

            obj.StartDate = DateTime.Parse(tbStartDate.Text);
            obj.EndDate   = DateTime.Parse(tbEndDate.Text);
            obj.Duration  = TimeSpan.Parse(tbDuration.Text);

            if (msMember.SelectedItem != null && msMember.SelectedItem.Value != "Null")
            {
                obj.Member = DojoMember.NewPlaceHolder(
                    int.Parse(msMember.SelectedItem.Value));
            }
            else
            {
                obj.Member = null;
            }

            if (msRank.SelectedItem != null && msRank.SelectedItem.Value != "Null")
            {
                obj.Rank = DojoRank.NewPlaceHolder(
                    int.Parse(msRank.SelectedItem.Value));
            }
            else
            {
                obj.Rank = null;
            }

            if (editOnAdd)
            {
                dojoBulkAttendanceEntryID = obj.Save();
            }
            else
            {
                obj.Save();
            }

            if (resetOnAdd)
            {
                tbStartDate.Text       = DateTime.Now.ToString();
                tbEndDate.Text         = DateTime.Now.ToString();
                tbDuration.Text        = string.Empty;
                msMember.SelectedIndex = 0;
                msRank.SelectedIndex   = 0;
            }

            OnUpdated(EventArgs.Empty);
        }
Ejemplo n.º 13
0
        public void Remove(DojoMember value)
        {
            OnCollectionChanged(EventArgs.Empty);
            int index = IndexOf(value);

            if (index == -1)
            {
                throw(new Exception("DojoMember not found in collection."));
            }
            RemoveAt(index);
        }
Ejemplo n.º 14
0
 public int Add(DojoMember value)
 {
     OnCollectionChanged(EventArgs.Empty);
     lock (this)
     {
         count++;
         ensureArrays();
         addIndexKey(value.ID);
         DojoMemberArray[count - 1] = value;
         return(count - 1);
     }
 }
Ejemplo n.º 15
0
 public void Add(DojoMember dojoMember, TimeSpan slidingExpiration)
 {
     lock (this)
     {
         count++;
         ensureArrays();
         dojoMemberArray[count - 1]     = dojoMember;
         timeStamps[count - 1]          = DateTime.Now;
         absoluteExpirations[count - 1] = DateTime.Now.Add(slidingExpiration); // Never Expires
         slidingExpirations[count - 1]  = slidingExpiration;                   // Never slides
         quickSort(0, count - 1);
     }
 }
Ejemplo n.º 16
0
 protected override void OnPreRender(EventArgs e)
 {
     if (dojoMemberID != 0)
     {
         dojoMember = new DojoMember(dojoMemberID);
         text       = "Delete - " + dojoMember.ToString();
     }
     else
     {
         text = "Delete ";
     }
     EnsureWindowScripts();
 }
Ejemplo n.º 17
0
 public int IndexOf(DojoMember value)
 {
     lock (this)
     {
         for (int x = 0; x < count; x++)
         {
             if (DojoMemberArray[x].Equals(value))
             {
                 return(x);
             }
         }
     }
     return(-1);
 }
Ejemplo n.º 18
0
        /// <summary>
        /// Gets a member's prior membership based on the template provided. If the member's
        /// membership has an associated root membership template that matches the template,
        /// then it will still be matched.
        /// </summary>
        /// <param name="member"></param>
        /// <param name="template"></param>
        /// <returns></returns>
        public DojoMembership getPrior(DojoMember member, DojoMembershipTemplate template)
        {
            if (priorMatch(member.Membership1, template))
            {
                return(member.Membership1);
            }

            if (priorMatch(member.Membership2, template))
            {
                return(member.Membership2);
            }

            if (priorMatch(member.Membership3, template))
            {
                return(member.Membership3);
            }

            if (priorMatch(member.Membership4, template))
            {
                return(member.Membership4);
            }

            if (priorMatch(member.Membership5, template))
            {
                return(member.Membership5);
            }

            else if (member.Membership5 != null)
            {
                // Go looking for the latest membership that matches
                // the template's ID, since every membership slot was
                // full. SORT NEWEST ON TOP
                DojoMembershipManager m = new DojoMembershipManager();

                DojoMembershipCollection memberships =
                    m.GetCollection(1,
                                    "MembershipTemplateID=" +
                                    template.ID.ToString() +
                                    (template.RootTemplate != null ? " OR " +
                                     "MembershipTemplate.RootTemplateID=" + template.RootTemplate.ID : ""),
                                    "EndDate DESC", null);

                if (memberships.Count > 0)
                {
                    return(memberships[0]);
                }
            }

            return(null);
        }
Ejemplo n.º 19
0
        public void RemoveMember(DojoTestList list, DojoMember member)
        {
            DojoTestListJournalEntry entry;

            entry = new DojoTestListJournalEntry();

            entry.Comment   = "Removed member.";
            entry.Editor    = null;
            entry.EntryType = _journalTypeRemove;
            entry.Member    = member;
            entry.Promotion = null;
            entry.TestList  = list;

            entry.Save();
        }
Ejemplo n.º 20
0
 public void Insert(int index, DojoMember value)
 {
     OnCollectionChanged(EventArgs.Empty);
     lock (this)
     {
         count++;
         ensureArrays();
         addIndexKey(value.ID);
         for (int x = index + 1; x == count - 2; x++)
         {
             DojoMemberArray[x] = DojoMemberArray[x - 1];
         }
         DojoMemberArray[index] = value;
     }
 }
Ejemplo n.º 21
0
 /// <summary>
 /// Ensures that the index and object array are sized correctly
 /// for additions. This method should be protected by locks
 /// issued by calling methods.
 /// </summary>
 private void ensureArrays()
 {
     if (count > DojoMemberArray.GetUpperBound(0) + 1)
     {
         int[,] tempIndex = new int[count * 2, 2];
         DojoMember[] tempDojoMemberArray = new DojoMember[count * 2];
         for (int x = 0; x <= DojoMemberArray.GetUpperBound(0); x++)
         {
             tempIndex[x, 0]        = index[x, 0];                // Copy ID
             tempIndex[x, 1]        = index[x, 1];                // Copy Location
             tempDojoMemberArray[x] = DojoMemberArray[x];         // Copy Object
         }
         index           = tempIndex;
         DojoMemberArray = tempDojoMemberArray;
     }
 }
Ejemplo n.º 22
0
 private void renderInstructor(HtmlTextWriter output, DojoMember instructor, string rowCssClass)
 {
     output.WriteBeginTag("td");
     output.WriteAttribute("class", rowCssClass);
     output.WriteAttribute("nowrap", "true");
     output.Write(HtmlTextWriter.TagRightChar);
     if (instructor != null)
     {
         output.Write(instructor.PrivateContact.ConstructName("Fi. L"));
     }
     else
     {
         output.Write("&nbsp;");
     }
     output.WriteEndTag("td");
     output.WriteLine();
 }
Ejemplo n.º 23
0
        /// <summary>
        /// Tries to switches a member's user account to the one specified. If
        /// the account cannot be found or if the account is already associated
        /// with an existing customer, then create a new user account for the
        /// member if allowed.
        /// </summary>
        /// <param name="member"></param>
        /// <param name="username"></param>
        /// <param name="allowCreate">Allows the creation of a new user account
        /// if one cannot be found.</param>
        /// <returns></returns>
        public static bool UpdateUser(DojoMember member, string username, bool allowCreate)
        {
            GreyFoxUser user;

            user = SecurityManager.GetUser(username);

            if (user != null)
            {
                return(UpdateUser(member, user));
            }
            if (allowCreate)
            {
                return(createUser(member, username));
            }

            return(false);
        }
Ejemplo n.º 24
0
 public int Add(DojoMember value)
 {
     OnCollectionChanged(EventArgs.Empty);
     lock (this)
     {
         count++;
         // Resize the array if the count is greater than the length
         // of the array.
         if (count > DojoMemberArray.GetUpperBound(0) + 1)
         {
             DojoMember[] tempDojoMemberArray = new DojoMember[count * 2];
             Array.Copy(DojoMemberArray, tempDojoMemberArray, count - 1);
             DojoMemberArray = tempDojoMemberArray;
         }
         DojoMemberArray[count - 1] = value;
     }
     return(count - 1);
 }
Ejemplo n.º 25
0
 /// <summary>
 /// Ensures that the index and object array are sized correctly
 /// for additions. This method should be protected by locks
 /// issued by calling methods.
 /// </summary>
 private void ensureArrays()
 {
     if (count > dojoMemberArray.GetUpperBound(0) + 1)
     {
         DojoMember[] tempDojoMemberArray     = new DojoMember[count * 2];
         DateTime[]   tempTimeStamps          = new DateTime[count * 2];
         DateTime[]   tempAbsoluteExpirations = new DateTime[count * 2];
         TimeSpan[]   tempSlidingExpirations  = new TimeSpan[count * 2];
         Array.Copy(dojoMemberArray, tempDojoMemberArray, count - 1);
         Array.Copy(timeStamps, tempTimeStamps, count - 1);
         Array.Copy(absoluteExpirations, tempAbsoluteExpirations, count - 1);
         Array.Copy(slidingExpirations, tempSlidingExpirations, count - 1);
         dojoMemberArray     = tempDojoMemberArray;
         timeStamps          = tempTimeStamps;
         absoluteExpirations = tempAbsoluteExpirations;
         slidingExpirations  = tempSlidingExpirations;
     }
 }
Ejemplo n.º 26
0
        private void btSwitch_Click(object sender, EventArgs e)
        {
            DojoClass           selectedClass    = new DojoClass(selectedID);
            DojoClassDefinition parentDefinition = selectedClass.ParentDefinition;

            // BUGFIX... DO NOT REMOVE!
            // FOR SOME REASON THE INSTRUCTOR IS NOT CHANGED IF THIS HAS NOT BEEN LOADED.
            // WTF!
            parentDefinition.EnsurePreLoad();

            selectedClass.Instructor    = DojoMember.NewPlaceHolder(int.Parse(ddInstructors.SelectedItem.Value));
            parentDefinition.Instructor = selectedClass.Instructor;

            selectedClass.Save();
            parentDefinition.Save();

            selectedID = 0;
        }
Ejemplo n.º 27
0
        /// <summary>
        /// Gets the templates available to the member.
        /// </summary>
        /// <param name="member">Member to check; this member must be directly
        /// from the MembershipBuilder.</param>
        /// <returns>Available templates.</returns>
        public List <MembershipPackage> GetMembershipPackages(DojoMember member)
        {
            DojoMember workingMember;
            DojoMemberTypeTemplateCollection rawTypeTemplates;
            DojoMemberTypeTemplateCollection memberTypeTemplates;
            List <MembershipPackage>         packages;

            // THIS MUST USE THE MEMBER FROM MEMBERSHIP BUILDER
            // OR THIS WILL NOT FUNCTION PROPERLY
            if (member.treeHash != null && member.treeHash.Length > 0)
            {
                workingMember = member;
            }
            else
            {
                // Try to find the member in the builder trees
                if (!memberDictionary.TryGetValue(member.iD,
                                                  out workingMember))
                {
                    throw new MembershipBuilderException(
                              Localization.Strings.MembershipBuilder_CannotFindMember);
                }
            }

            if (memberTypeTemplateDictionary.TryGetValue(workingMember.treeHash,
                                                         out rawTypeTemplates))
            {
                memberTypeTemplates = filterTemplates(workingMember, rawTypeTemplates);
            }
            else
            {
                memberTypeTemplates = new DojoMemberTypeTemplateCollection();
            }

            packages = new List <MembershipPackage>(memberTypeTemplates.Count);
            foreach (DojoMemberTypeTemplate template in memberTypeTemplates)
            {
                MembershipPackage p = new MembershipPackage();
                p.Build(member, template, this);
                packages.Add(p);
            }

            return(packages);
        }
Ejemplo n.º 28
0
        filterTemplates(DojoMember member,
                        DojoMemberTypeTemplateCollection rawTemplates)
        {
            DojoMemberTypeTemplateCollection templates =
                new DojoMemberTypeTemplateCollection();

            if (member != null && rawTemplates != null)
            {
                foreach (DojoMemberTypeTemplate template in rawTemplates)
                {
                    if (filterCheck(member, template))
                    {
                        templates.Add(template);
                    }
                }
            }

            return(templates);
        }
Ejemplo n.º 29
0
        /// <summary>
        /// Pulls a portion of the member tree to a provided member, this is an
        /// internal method to support MembershipPackage.
        /// </summary>
        /// <param name="member">Provided member to pull tree for.</param>
        internal void pullData(DojoMember member)
        {
            DojoMember workingMember;

            if (member == null)
            {
                return;
            }

            // Try to find the member in the builder trees
            if (!memberDictionary.TryGetValue(member.iD,
                                              out workingMember))
            {
                throw new MembershipBuilderException(
                          Localization.Strings.MembershipBuilder_CannotFindMember);
            }

            if (member.root != null &&
                member.root.isPlaceHolder &&
                member.root.iD == workingMember.root.iD &&
                !workingMember.root.isPlaceHolder)
            {
                member.root = workingMember.root;
            }

            if (member.parent != null &&
                member.parent.isPlaceHolder &&
                member.parent.iD == workingMember.parent.iD &&
                !workingMember.parent.isPlaceHolder)
            {
                member.parent = workingMember.parent;
            }

            if (workingMember.subMembers != null)
            {
                member.subMembers = new DojoMemberCollection(workingMember.subMembers.Count);
                foreach (DojoMember subMember in workingMember.subMembers)
                {
                    member.subMembers.Add(subMember);
                }
            }
        }
Ejemplo n.º 30
0
        public void Bind(DojoMember member)
        {
            //MembershipScan scan = new MembershipScan();
            //DojoMembershipTemplateCollection availableTemplates =
            //    scan.GetMemberTypeTemplates(member);

            //foreach (DojoMembershipTemplate template in
            //    availableTemplates)
            //{
            //    addMembershipTemplate(membershipsTable, template);
            //}

            TableRow  headerRow  = new TableRow();
            TableCell headerCell = new TableCell();

            headerCell.ColumnSpan = 3;
            headerCell.Text       = Localization.Strings.MembershipTemplates_None;
            headerRow.Cells.Add(headerCell);
            membershipsTable.Rows.Add(headerRow);
        }