public static Member[] GetMemberByName(string usernameToMatch, bool matchByNameInsteadOfLogin) { string field = matchByNameInsteadOfLogin ? "umbracoNode.text" : "cmsMember.loginName"; var tmp = new List<Member>(); using (IRecordsReader dr = SqlHelper.ExecuteReader( string.Format(m_SQLOptimizedMany.Trim(), string.Format("{0} like @letter", field), "umbracoNode.text"), SqlHelper.CreateParameter("@nodeObjectType", Member._objectType), SqlHelper.CreateParameter("@letter", usernameToMatch + "%"))) { while (dr.Read()) { Member m = new Member(dr.GetInt("id"), true); m.PopulateMemberFromReader(dr); tmp.Add(m); } } return tmp.ToArray(); }
public static IEnumerable<Member> GetAllAsList() { var tmp = new List<Member>(); using (IRecordsReader dr = SqlHelper.ExecuteReader( string.Format(m_SQLOptimizedMany.Trim(), "1=1", "umbracoNode.text"), SqlHelper.CreateParameter("@nodeObjectType", Member._objectType))) { while (dr.Read()) { Member m = new Member(dr.GetInt("id"), true); m.PopulateMemberFromReader(dr); tmp.Add(m); } } return tmp.ToArray(); }
/// <summary> /// Retrieves a list of members thats not start with a-z /// </summary> /// <returns>array of members</returns> public static Member[] getAllOtherMembers() { var tmp = new List<Member>(); using (IRecordsReader dr = SqlHelper.ExecuteReader( string.Format(m_SQLOptimizedMany.Trim(), "LOWER(SUBSTRING(text, 1, 1)) NOT IN ('a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z')", "umbracoNode.text"), SqlHelper.CreateParameter("@nodeObjectType", Member._objectType))) { while (dr.Read()) { Member m = new Member(dr.GetInt("id"), true); m.PopulateMemberFromReader(dr); tmp.Add(m); } } return tmp.ToArray(); }
/// <summary> /// Retrieve Members given an email /// /// Used when authentifying a Member /// </summary> /// <param name="email">The email of the member(s)</param> /// <returns>The members with the specified email</returns> public static Member[] GetMembersFromEmail(string email) { if (string.IsNullOrEmpty(email)) return null; var tmp = new List<Member>(); using (var dr = SqlHelper.ExecuteReader(string.Format(_sQLOptimizedMany.Trim(), "Email = @email", "umbracoNode.text"), SqlHelper.CreateParameter("@nodeObjectType", Member._objectType), SqlHelper.CreateParameter("@email", email.ToLower()))) { while (dr.Read()) { var m = new Member(dr.GetInt("id"), true); m.PopulateMemberFromReader(dr); tmp.Add(m); } } return tmp.ToArray(); }