public UserProfile Save(UserProfile item)
 {
     return this._repository.Save(item);
 }
        //TODO: this should be moved to some other type of business logic
        public string UserLoggedIn(IUserProfileService _userService1, string openIdId, FetchResponse fetch)
        {
            UserProfile user = _userService1.Get().Where(x => x.OpenIdId == openIdId).SingleOrDefault();
            if (user == null)
            {
                user = new UserProfile();
                user.OpenIdId = openIdId;
            }
            if (fetch != null)
            {
                user.Name = (fetch.Attributes.Any(x => x.TypeUri == WellKnownAttributes.Name.FullName))
                    ? fetch.Attributes[WellKnownAttributes.Name.FullName].Values[0] :
                    ((fetch.Attributes.Any(x => x.TypeUri == WellKnownAttributes.Name.First))
                    ? fetch.Attributes[WellKnownAttributes.Name.First].Values[0] : ""
                    + " " + ((fetch.Attributes.Any(x => x.TypeUri == WellKnownAttributes.Name.Last))
                    ? fetch.Attributes[WellKnownAttributes.Name.Last].Values[0] : ""));
                user.Email = (fetch.Attributes.Any(x => x.TypeUri == WellKnownAttributes.Contact.Email))
                    ? fetch.Attributes[WellKnownAttributes.Contact.Email].Values[0] : "";
                //username should not include the email - it's creepy. Just use the name of the email
                user.UserName = user.Email; //.Substring(0, user.Email.IndexOf('@'));
            }
            else
            {
                /*
                http://username.myopenid.com/
                http://openid.aol.com/username
                */
                string http = "http://";
                if (openIdId.Contains("myopenid"))
                {
                    user.Name = openIdId.Substring(openIdId.IndexOf(http) + http.Length,
                        openIdId.IndexOf('.') - http.Length);
                }
                else if (openIdId.Contains("http://openid.aol.com/"))
                {
                    user.Name = openIdId.Substring(openIdId.LastIndexOf("/"));
                }
                user.UserName = user.Email;
            }

            user.LastSignInDate = DateTime.Now;  // Important
            _userService1.Save(user);

            return user.UserName;
        }
 public bool Delete(UserProfile item)
 {
     return false;
 }