Exemple #1
0
 public List<Profile> FindProfiles(Profile profile,IProfileRepository repo)
 {
     List<Profile> result;
     result = repo.Profiles
         .Where(m => m.New == false)
         .Where(m => m.ProfileId != profile.ProfileId)
         .ToList();
     return result;
 }
Exemple #2
0
        public void AddInteres(Profile profile, ProfileInteres profileInteres)
        {
            ProfileInteres interes = context.ProfileInteres.Find(profileInteres.ProfileInteresId);
            Profile interesToProfile = context.Profiles.Include(m => m.Intereses).Where(m => m.ProfileId == profile.ProfileId).FirstOrDefault();
            if ((interesToProfile != null) && (interes != null) && (!interesToProfile.Intereses.Contains(interes)))
            {

                interesToProfile.Intereses.Add(interes);
                context.SaveChanges();
            }
        }
Exemple #3
0
        public string CreateHtmlMessage(Profile profile, string message, DateTime dT, bool my = false, long messageid = 0)
        {
            TagBuilder tagContent = new TagBuilder("span");
            tagContent.AddCssClass("message-content");
            tagContent.InnerHtml = message;

            TagBuilder tagDate = new TagBuilder("span");
            tagDate.AddCssClass("message-date");
            tagDate.InnerHtml = dT.ToString();

            TagBuilder tagAuthor = new TagBuilder("a");
            var url = @"/Profile/Index/" + profile.ProfileId;
            tagAuthor.MergeAttribute("href", url);
            tagAuthor.AddCssClass("message-author");
            tagAuthor.InnerHtml = profile.FirstName + " " + profile.LastName;

            TagBuilder tagMessage = new TagBuilder("div");
            tagMessage.AddCssClass("message");
            tagMessage.InnerHtml = tagAuthor.ToString() + tagDate.ToString() + tagContent.ToString();

            TagBuilder tagAvatar = new TagBuilder("img");
            tagAvatar.AddCssClass("message-avatar");
            tagAvatar.MergeAttribute("src", profile.GetImageAvatarLink);

            TagBuilder tagChatMessage = new TagBuilder("div");
            if (my) {
                tagChatMessage.AddCssClass("chat-message left chat-message-unread");
            }
            else
            {
                tagChatMessage.AddCssClass("chat-message left chat-message-unread");
            }
            tagChatMessage.MergeAttribute("id", "messageid_" + messageid);
            tagChatMessage.InnerHtml = tagAvatar.ToString() + tagMessage.ToString();
            return tagChatMessage.ToString();
        }
Exemple #4
0
        public async Task<ActionResult> Register(RegisterViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = new ApplicationUser() { UserName = model.UserName, RegistrationDate = DateTime.Now, LastLoginTime = DateTime.Now, Email = model.Email };
                var result = await UserManager.CreateAsync(user, model.Password);
                if (result.Succeeded)
                {
                    await UserManager.AddToRoleAsync(user.Id, "user");
                    await SignInAsync(user, isPersistent: false);
                    Profile newProfile = new Profile { UserId = user.Id, New = true };
                    ProfileRepository.NewProfile(newProfile);
                    user.ProfileId = newProfile.ProfileId;
                    ProfileRepository.AddProfileAction(new ProfileAction
                    {
                        ProfileId = newProfile.ProfileId,
                        Date = DateTime.Now,
                        ProfileActionTypeId = 2,
                        Text = " Зарегистрировался!",
                        ProfileWhoId = newProfile.ProfileId
                    });
                    await UserManager.UpdateAsync(user);

                    SendEmailComfirmation(user.Id);
                    
                    //string code = this.UserManager.GenerateEmailConfirmationToken(user.Id);                    
                    //var callbackUrl = new Uri(Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme));
                    //this.UserManager.SendEmail(user.Id, "Подтверждение Email", "Пожалуйста подтвердите Email пройдя по <a href=\"" + callbackUrl + "\">ссылке</a>");

                    return RedirectToAction("Index", "Profile");
                }
                else
                {
                    AddErrors(result);
                }
            }

            // If we got this far, something failed, redisplay form
            return View(model);
        }
Exemple #5
0
        public List<Profile> GetContacts(Profile profile, IProfileRepository repo)
        {
            List<Profile> result=new List<Profile>();

            return result;
        }
Exemple #6
0
        public void UpdateProfile(Profile profile, ProfileUpdateMode mode = ProfileUpdateMode.None)
        {
            context.Profiles.Attach(profile);
            var entry = context.Entry(profile);
            entry.Property(e => e.New).IsModified = true;
            switch (mode)
            {
                case ProfileUpdateMode.Main:
                    entry.Property(e => e.FirstName).IsModified = true;
                    entry.Property(e => e.LastName).IsModified = true;
                    entry.Property(e => e.Town).IsModified = true;
                    entry.Property(e => e.ProfileSexId).IsModified = true;
                    entry.Property(e => e.ProfileActivityId).IsModified = true;
                    entry.Property(e => e.Birfday).IsModified = true;
                    entry.Property(e => e.ContactPhone).IsModified = true;
                    break;
                case ProfileUpdateMode.Dop:
                    entry.Property(e => e.AboutMe).IsModified = true;
                    entry.Property(e => e.ProfileAlcoholId).IsModified = true;
                    entry.Property(e => e.ProfileSmokingId).IsModified = true;
                    entry.Property(e => e.ProfileAnimalsId).IsModified = true;
                    entry.Property(e => e.ProfileSexWhoId).IsModified = true;
                    break;

                case ProfileUpdateMode.Avatar:
                    entry.Property(e => e.ImageType).IsModified = true;
                    entry.Property(e => e.ImageLink).IsModified = true;
                    entry.Property(e => e.ImageAvatarType).IsModified = true;
                    entry.Property(e => e.ImageAvatarLink).IsModified = true;
                    entry.Property(e => e.ImageAvatarBigType).IsModified = true;
                    entry.Property(e => e.ImageAvatarBigLink).IsModified = true;
                    break;
            }
            context.SaveChanges();

            //Profile updateProfile = context.Profiles.Find(profile.ProfileId);
            //if (updateProfile != null)
            //{
            //    updateProfile = profile;
            //    context.Profiles.AddOrUpdate(e => e.ProfileId, profile);
            //    context.SaveChanges();
            //}
        }
Exemple #7
0
 private IQueryable<Profile> FindProfilesQuery(Profile profile, FindProfilesParams param)
 {
     return this.Profiles
         .Where(m => m.New == false)
         .Where(m => m.ProfileId != profile.ProfileId)
         .Include(m=>m.Intereses)
         .OrderByDescending(m => m.LastName)
         .AsQueryable();
 }
Exemple #8
0
 public long GetFindProfilesCount(Profile profile, FindProfilesParams param)
 {
     return FindProfilesQuery(profile, param).Count();
 }
Exemple #9
0
 public void NewProfile(Profile profile)
 {
     context.Profiles.Add(profile);
     context.SaveChanges();
 }
Exemple #10
0
 public Profile GetDefaultProfile()
 {
     Profile result = new Profile();
     result.Activity = new ProfileActivity();
     return result;
 }
Exemple #11
0
 public int GetContactsCount(Profile profile)
 {
     int result = this.Profiles
        .Where(m => m.New == false)
        .Where(m => m.ProfileId != profile.ProfileId)
        .Where(m => m.MyMessage.Where(k => k.ProfileIdTo == profile.ProfileId).Count() > 0
            || m.MessageForMe.Where(k => k.ProfileIdFrom == profile.ProfileId).Count() > 0)
        .Count();
     return result;
 }
Exemple #12
0
        public List<Profile> GetContacts(Profile profile, int count = 0)
        {
            List<Profile> result;
            var query = this.Profiles
               .Where(m => m.New == false)
               .Where(m => m.ProfileId != profile.ProfileId)
               .Where(m => m.MyMessage.Where(k => k.ProfileIdTo == profile.ProfileId).Count() > 0
                   || m.MessageForMe.Where(k => k.ProfileIdFrom == profile.ProfileId).Count() > 0)
               .OrderBy(m => m.LastName)
               .ThenBy(m => m.ProfileId)
               .AsQueryable();

            if (count > 0)
                query = query.Take(count);
            result = query
               .ToList();
            return result;
        }
Exemple #13
0
 public List<Profile> FindProfiles(Profile profile, FindProfilesParams param)
 {
     List<Profile> result;
     var query = FindProfilesQuery(profile, param);
     if (param.Take != 0)
     {
         query = query.Skip(param.Skip).Take(param.Take);
     }
     result = query.ToList();
     return result;
 }
Exemple #14
0
 public void ClearIntereses(Profile profile)
 {
     //
     Profile interesToProfile = context.Profiles.Include(m => m.Intereses).Where(m => m.ProfileId == profile.ProfileId).FirstOrDefault();
     List<ProfileInteres> AllInteres = interesToProfile.Intereses.ToList();
     foreach (ProfileInteres interes in AllInteres)
     {
         RemoveInteres(interesToProfile, interes);
     }
 }