public async Task <ActionResult> ProfileView(int?mode) { if (mode == null) { mode = 0; } ViewBag.mode = mode; String userID = User.Identity.GetUserId(); if (userID == null || userID.Length == 0) { return(View()); } aspnetuserclaim aspUserClaim = db.aspnetuserclaims.Where(i => i.UserId == userID).Single(); switch (mode) { case 0: //Profile { string query = "SELECT * FROM userinfo WHERE userinfo.Id = '" + userID + "'"; userinfo UserInfo = await db.userinfoes.SqlQuery(query).SingleOrDefaultAsync(); query = "SELECT * FROM aspnetusers WHERE Id = '" + userID + "'"; aspnetuser aspnetUserInfo = await db.aspnetusers.SqlQuery(query).SingleOrDefaultAsync(); Models.RegisterViewModel model = new Models.RegisterViewModel(); model.Email = User.Identity.Name; //model.Password = ""; //model.ConfirmPassword = ""; model.UserName = UserInfo.UserName; model.Birthday = (DateTime)(UserInfo.Date_Of_Birth == null ? new DateTime() : UserInfo.Date_Of_Birth); model.Picture = UserInfo.Profile_Pic; model.Gender = (int)UserInfo.Gender; model.GenderPref = (int)UserInfo.Gender_Pref; model.PhoneNumber = aspnetUserInfo.PhoneNumber; model.Ethnicity = UserInfo.Ethnicity; model.Interests = UserInfo.Interests; model.City = UserInfo.City; model.County = UserInfo.County; model.Country = UserInfo.Country; model.Postcode = UserInfo.Postcode; model.AccountType = (int)(UserInfo.Account_Type == null ? 0 : UserInfo.Account_Type); ViewBag.GalleryPics = UserInfo.Gallery_Pics; ViewBag.PrivateGalleryPics = UserInfo.Private_Gallery_Pics; return(View("ProfileView", model)); } case 1: //Gallery { String GalleryPics = ""; if (userID != null) { string query = "SELECT * FROM userinfo WHERE userinfo.Id = '" + userID + "'"; System.Data.Entity.Infrastructure.DbSqlQuery <userinfo> userInfos = db.userinfoes.SqlQuery(query); userinfo UserInfo = null; if (userInfos != null) { UserInfo = await userInfos.SingleOrDefaultAsync(); } if (UserInfo != null && UserInfo.Gallery_Pics != null) { GalleryPics = UserInfo.Gallery_Pics; } } return(View("ProfileView", (object)GalleryPics)); } case 2: //Private Gallery { String GalleryPics = ""; if (userID != null) { string query = "SELECT * FROM userinfo WHERE userinfo.Id = '" + userID + "'"; System.Data.Entity.Infrastructure.DbSqlQuery <userinfo> userInfos = db.userinfoes.SqlQuery(query); userinfo UserInfo = null; if (userInfos != null) { UserInfo = await userInfos.SingleOrDefaultAsync(); } if (UserInfo != null && UserInfo.Gallery_Pics != null) { GalleryPics = UserInfo.Private_Gallery_Pics; } } return(View("ProfileView", (object)GalleryPics)); } } return(View()); }
public async Task <ActionResult> AddPrivateGallery(int mode, HttpPostedFileBase picture_selector, IEnumerable <string> gallery) { String userID = User.Identity.GetUserId(); String GalleryPics = ""; if (mode == 0) { //{{Upload Picture String FileName = picture_selector.FileName; if (picture_selector != null && userID != null) { string PictureDirectory = Server.MapPath("~/Content/UserPicture/Private/"); if (!Directory.Exists(PictureDirectory)) { Directory.CreateDirectory(PictureDirectory); } PictureDirectory += userID; if (!Directory.Exists(PictureDirectory)) { Directory.CreateDirectory(PictureDirectory); } if (System.IO.File.Exists(PictureDirectory + "/" + FileName)) { FileName = FileName.Insert(FileName.Length - 4, "(2)"); } var path = PictureDirectory + "/" + FileName; var data = new byte[picture_selector.ContentLength]; picture_selector.InputStream.Read(data, 0, picture_selector.ContentLength); using (var sw = new FileStream(path, FileMode.Create)) { sw.Write(data, 0, data.Length); } string query = "SELECT * FROM userinfo WHERE userinfo.Id = '" + userID + "'"; System.Data.Entity.Infrastructure.DbSqlQuery <userinfo> userInfos = db.userinfoes.SqlQuery(query); userinfo UserInfo = null; if (userInfos != null) { UserInfo = await userInfos.SingleOrDefaultAsync(); } if (UserInfo != null && UserInfo.Gallery_Pics != null) { GalleryPics = UserInfo.Private_Gallery_Pics; } GalleryPics += (GalleryPics.Length > 0 ? "," : "") + FileName; db.Database.ExecuteSqlCommand("UPDATE userinfo SET Private_Gallery_Pics = {0} where Id={1}", GalleryPics, userID); } //}}Upload Picture } else if (mode == 1 && gallery != null) { string query = "SELECT * FROM userinfo WHERE userinfo.Id = '" + userID + "'"; System.Data.Entity.Infrastructure.DbSqlQuery <userinfo> userInfos = db.userinfoes.SqlQuery(query); userinfo UserInfo = null; if (userInfos != null) { UserInfo = await userInfos.SingleOrDefaultAsync(); } if (UserInfo != null && UserInfo.Private_Gallery_Pics != null) { GalleryPics = UserInfo.Private_Gallery_Pics; } string PictureDirectory = Server.MapPath("~/Content/UserPicture/Private/"); PictureDirectory += userID; foreach (String name in gallery) { if (System.IO.File.Exists(PictureDirectory + "/" + name)) { System.IO.File.Delete(PictureDirectory + "/" + name); } GalleryPics = GalleryPics.Replace(name, ""); } string pattern = ",+"; Regex rgx = new Regex(pattern); GalleryPics = rgx.Replace(GalleryPics, ","); db.Database.ExecuteSqlCommand("UPDATE userinfo SET Private_Gallery_Pics = {0} where Id={1}", GalleryPics, userID); } ViewBag.mode = 2; return(View("ProfileView", (object)GalleryPics)); }